<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Blog Kuliah Realitas Virtual Informatika ITS</title>
	<atom:link href="http://kuliahvrits.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://kuliahvrits.wordpress.com</link>
	<description>Just another WordPress.com weblog</description>
	<lastBuildDate>Tue, 15 Jun 2010 11:53:52 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='kuliahvrits.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Blog Kuliah Realitas Virtual Informatika ITS</title>
		<link>http://kuliahvrits.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://kuliahvrits.wordpress.com/osd.xml" title="Blog Kuliah Realitas Virtual Informatika ITS" />
	<atom:link rel='hub' href='http://kuliahvrits.wordpress.com/?pushpress=hub'/>
		<item>
		<title>ShiVa 3D Engine</title>
		<link>http://kuliahvrits.wordpress.com/2010/06/15/shiva-3d-engine/</link>
		<comments>http://kuliahvrits.wordpress.com/2010/06/15/shiva-3d-engine/#comments</comments>
		<pubDate>Tue, 15 Jun 2010 11:53:52 +0000</pubDate>
		<dc:creator>aldysefan</dc:creator>
				<category><![CDATA[Review]]></category>

		<guid isPermaLink="false">http://kuliahvrits.wordpress.com/?p=205</guid>
		<description><![CDATA[Shiva 3D Game Developer Shiva merupakan salah satu dari game development tools. Shiva berjalan pada system operasi windows dan juga Mac. ShiVa, sebuah WYSIWYP editor General Game Editor to handle all your data assets. The Game Editor is the masterpiece of your application. Data Explorer to browse your assets. Scene Viewer to display and edit [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kuliahvrits.wordpress.com&amp;blog=12325633&amp;post=205&amp;subd=kuliahvrits&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h2>Shiva 3D Game Developer</h2>
<p>Shiva merupakan salah satu dari game development tools. Shiva berjalan pada system operasi windows dan juga Mac.</p>
<h2>ShiVa, sebuah WYSIWYP editor</h2>
<p><strong>General</strong></p>
<p><em>Game Editor </em>to handle all your data assets.<br />
The Game Editor is the masterpiece of your application.<br />
<em>Data Explorer</em> to browse your assets.<br />
<em>Scene Viewer</em> to display and edit 3D content.<br />
<em>Attributes Editor</em> to edit common properties.</p>
<p><strong>Design</strong></p>
<p><em>NavMesh Editor</em> to create path-finding.<br />
<em>Material Editor </em>to create advanced shaders.<br />
<em>Ambience Editor</em> to create your atmosphere<br />
<em>Particle</em> and <em>Trail Editor</em> to add spectacular SFX.<br />
<em>HUD Editor</em> to create your 2D interface<br />
<em>Terrain Editor</em> to create vast landscapes</p>
<p><strong>Animation</strong></p>
<p><em>AnimClip Editor</em> to create object animations.<br />
Create, edit, smooth and delete animation curves.</p>
<p><strong>Code</strong></p>
<p><em>AIModel Editor</em> to declare variables, functions, states and handlers.<br />
<em>Script Editor</em> to write scripts in Lua language.</p>
<p><strong>Preview</strong></p>
<p><em>Performance Reporter</em> to analyze your fps with tons of engine counters<br />
This module is only available in the Advanced edition.</p>
<h2>3D Engine</h2>
<h3>Geometry</h3>
<p><img src="http://www.stonetrip.com/images/article/shiva/engine/mesh.png" alt="mesh" /><br />
Mendukung Polygonal mesh, seperti:<br />
- Static meshes<br />
- Skinned meshes with up to 4 joints per vertex</p>
<p>Dapat melakukan import Collada 3.x dan 4.x, dapat melakukan export XSI, Maya, Max, dan  yang lainnya</p>
<h3>Shaders</h3>
<p><img src="http://www.stonetrip.com/images/article/shiva/engine/shader.jpg" alt="shader" /><br />
Mendukung Shader sederhana dan advance (material), seperti:<br />
- Gouraud, Phong and Toon shadings<br />
- Vertex or pixel shader<br />
- Outline<br />
- Normal texture maps<br />
- Gloss texture maps<br />
- Noise texture maps<br />
- Animated textures<br />
- Dynamic textures<br />
- Procedural texture mapping coordinate generation (planar, spherical, perspective)<br />
- Shadows<br />
- Transparency<br />
<strong>Built-in material editor</strong></p>
<h3>Lights and shadows</h3>
<p><img src="http://www.stonetrip.com/images/article/shiva/engine/shadows.jpg" alt="shadows" /><br />
Per vertex shading<br />
Per pixel shading<br />
Dynamic shadow maps<br />
Cascaded shadow maps<br />
Directional and omni-directional light<br />
Up to 32 lights per surface.<br />
Import light maps<br />
Import vertex lighting<br />
Dynamic characters casting dynamic shadows<br />
Dynamic shadows handle alpha textures<br />
Up to 4096&#215;4096 shadow map<br />
<strong>Built-in lightmap compiler</strong> with light attenuation functions and AO</p>
<h3>Particles and trail system</h3>
<p><img src="http://www.stonetrip.com/images/article/shiva/engine/particle.jpg" alt="particle" /><br />
Dynamic particle system and motion trail support</p>
<p>Explosions, splashes<br />
Fire, rain, snow, underwater air bubbles, etc.<br />
Tire tracks on the road, in the sand, in the snow<br />
Localized retinal persistence (car fires at night, sword trails, etc.).</p>
<h3>Reflection and refraction</h3>
<p><img src="http://www.stonetrip.com/images/article/shiva/engine/reflexion.jpg" alt="reflection" /><br />
Dynamically-generated reflection and refraction textures<br />
Fog attenuation</p>
<p>Water effects<br />
Mirrors<br />
Heat haze<br />
Glass<br />
Ice, etc.</p>
<p><strong>Texturing</strong><br />
<img src="http://www.stonetrip.com/images/article/shiva/engine/texture.jpg" alt="texture" /><br />
Multi-texturing<br />
Up to 4096&#215;4096 textures<br />
Up to 5 textures per material<br />
Nearest, bilinear or trilinear filtering<br />
Anisotropic filtering<br />
Repeat, clamp or mirror addressing<br />
Mipmapping<br />
Compressed or not</p>
<h3>2D Post-Render Effects</h3>
<p><img src="http://www.stonetrip.com/images/article/shiva/engine/bloom.jpg" alt="bloom" /><br />
Dynamic cumulative post-render effects, including :<br />
- Light bloom<br />
- Color levels and saturation<br />
- Monochrome and sepia<br />
- Motion blur.<br />
- Depth of field<br />
- Distortion<br />
<strong>Built-in Ambience Editor</strong></p>
<h3>3D Special Effects</h3>
<p><img src="http://www.stonetrip.com/images/article/shiva/engine/fog.jpg" alt="fog" /><br />
Billboarding<br />
Classic and height fog<br />
Skybox</p>
<h3>2D Graphics</h3>
<p><img src="http://www.stonetrip.com/images/article/shiva/engine/hud.jpg" alt="hud" /><br />
ShiVa includes an integrated, dedicated user interface component management system: create dynamic, intelligent and autonomous interfaces.</p>
<p><strong>HUD components</strong><br />
- Common components (labels, buttons, editboxes, listboxes, checkbox, etc.)<br />
- Special components (video preview, webcam capture preview, etc.)<br />
- You can create your own controls.<br />
- Normal, modulated or additive components.</p>
<p><strong>Actions</strong><br />
- Create fade-in fade-out effects for components<br />
- Create dynamic, intelligent and autonomous interfaces.<br />
<strong>Built-in HUDEditor</strong></p>
<h3>Sound</h3>
<p><img src="http://www.stonetrip.com/images/article/shiva/engine/sound.jpg" alt="sound" /><br />
<strong> </strong><strong> </strong></p>
<p><strong>Punctual sounds</strong><br />
2D Sound<br />
3D Sound<br />
5.1 Surround Sound<br />
with real-time, script-based control of gain or pitch.<br />
3D sound positioning and specialization</p>
<p><strong>Ambient music</strong><br />
Streaming of large music files, including :<br />
- Volume control<br />
- Automatic cross-fade between music.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kuliahvrits.wordpress.com/205/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kuliahvrits.wordpress.com/205/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kuliahvrits.wordpress.com/205/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kuliahvrits.wordpress.com/205/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kuliahvrits.wordpress.com/205/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kuliahvrits.wordpress.com/205/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kuliahvrits.wordpress.com/205/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kuliahvrits.wordpress.com/205/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kuliahvrits.wordpress.com/205/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kuliahvrits.wordpress.com/205/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kuliahvrits.wordpress.com/205/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kuliahvrits.wordpress.com/205/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kuliahvrits.wordpress.com/205/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kuliahvrits.wordpress.com/205/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kuliahvrits.wordpress.com&amp;blog=12325633&amp;post=205&amp;subd=kuliahvrits&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kuliahvrits.wordpress.com/2010/06/15/shiva-3d-engine/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/60125ed3e15664808f3417d27529ce15?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">aldysefan</media:title>
		</media:content>

		<media:content url="http://www.stonetrip.com/images/article/shiva/engine/mesh.png" medium="image">
			<media:title type="html">mesh</media:title>
		</media:content>

		<media:content url="http://www.stonetrip.com/images/article/shiva/engine/shader.jpg" medium="image">
			<media:title type="html">shader</media:title>
		</media:content>

		<media:content url="http://www.stonetrip.com/images/article/shiva/engine/shadows.jpg" medium="image">
			<media:title type="html">shadows</media:title>
		</media:content>

		<media:content url="http://www.stonetrip.com/images/article/shiva/engine/particle.jpg" medium="image">
			<media:title type="html">particle</media:title>
		</media:content>

		<media:content url="http://www.stonetrip.com/images/article/shiva/engine/reflexion.jpg" medium="image">
			<media:title type="html">reflection</media:title>
		</media:content>

		<media:content url="http://www.stonetrip.com/images/article/shiva/engine/texture.jpg" medium="image">
			<media:title type="html">texture</media:title>
		</media:content>

		<media:content url="http://www.stonetrip.com/images/article/shiva/engine/bloom.jpg" medium="image">
			<media:title type="html">bloom</media:title>
		</media:content>

		<media:content url="http://www.stonetrip.com/images/article/shiva/engine/fog.jpg" medium="image">
			<media:title type="html">fog</media:title>
		</media:content>

		<media:content url="http://www.stonetrip.com/images/article/shiva/engine/hud.jpg" medium="image">
			<media:title type="html">hud</media:title>
		</media:content>

		<media:content url="http://www.stonetrip.com/images/article/shiva/engine/sound.jpg" medium="image">
			<media:title type="html">sound</media:title>
		</media:content>
	</item>
		<item>
		<title>PHYSIC ENGINE REVIEW</title>
		<link>http://kuliahvrits.wordpress.com/2010/06/15/physic-engine-review/</link>
		<comments>http://kuliahvrits.wordpress.com/2010/06/15/physic-engine-review/#comments</comments>
		<pubDate>Tue, 15 Jun 2010 11:53:49 +0000</pubDate>
		<dc:creator>adteba</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://kuliahvrits.wordpress.com/?p=224</guid>
		<description><![CDATA[Review physic  engine(PhysicEngine.dll) Implementasi pada MRDS Pada Microsoft Robotic Deveoper Studio terdapat physic engine yang dapat diimplementasikan pada Microsoft XNA  maupun framework-framework yang lain Physic engine tersebut berupa dynamic link library dengan nama PhysicEngine.dll Dengan dll tersebut maka dapat dengan mudah mendeteksi collision detection dengan menambahkan sebuah object. Jadi kita tidak perlu mendeklarasikan bagaimana object [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kuliahvrits.wordpress.com&amp;blog=12325633&amp;post=224&amp;subd=kuliahvrits&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><strong>Review physic  engine(PhysicEngine.dll) Implementasi pada  MRDS</strong></p>
<p>Pada Microsoft Robotic Deveoper Studio terdapat physic engine yang dapat  diimplementasikan pada Microsoft XNA  maupun framework-framework yang lain</p>
<p><a href="http://noen0909.files.wordpress.com/2010/06/g11.png"><img title="g1" src="http://noen0909.files.wordpress.com/2010/06/g11.png?w=300&#038;h=188" alt="" width="300" height="188" /></a></p>
<p>Physic engine tersebut berupa dynamic link library dengan nama  PhysicEngine.dll</p>
<p>Dengan dll tersebut maka dapat dengan mudah mendeteksi collision detection  dengan menambahkan sebuah object. Jadi kita tidak perlu mendeklarasikan  bagaimana object tersebut mempunyai massa jenis, berat jenis dll. Jadi kita  hanya perlu membuat object dan kita tambahkan reference PhysicEngine.dll</p>
<p>Berikut adalah contoh phisyc engine yang diimplementasikan pada MRDS</p>
<p><a href="http://noen0909.files.wordpress.com/2010/06/g2.png"><img title="g2" src="http://noen0909.files.wordpress.com/2010/06/g2.png?w=300&#038;h=188" alt="" width="300" height="188" /></a></p>
<p>Pada gambar diatas adalah adalah contoh implementasi PhysicEngine.dll yang  terdapat pada MRDS. Apabila kita ingin mengiplementasikan pada Microsoft XNA  maka kita tinggal memanggil reference-nya saja.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kuliahvrits.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kuliahvrits.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kuliahvrits.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kuliahvrits.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kuliahvrits.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kuliahvrits.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kuliahvrits.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kuliahvrits.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kuliahvrits.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kuliahvrits.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kuliahvrits.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kuliahvrits.wordpress.com/224/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kuliahvrits.wordpress.com/224/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kuliahvrits.wordpress.com/224/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kuliahvrits.wordpress.com&amp;blog=12325633&amp;post=224&amp;subd=kuliahvrits&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kuliahvrits.wordpress.com/2010/06/15/physic-engine-review/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c521f9cb7964240ae1bd4f05b6c752fe?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">adteba</media:title>
		</media:content>

		<media:content url="http://noen0909.files.wordpress.com/2010/06/g11.png?w=300" medium="image">
			<media:title type="html">g1</media:title>
		</media:content>

		<media:content url="http://noen0909.files.wordpress.com/2010/06/g2.png?w=300" medium="image">
			<media:title type="html">g2</media:title>
		</media:content>
	</item>
		<item>
		<title>FLADE (Flash Dynamic Engine)</title>
		<link>http://kuliahvrits.wordpress.com/2010/06/15/flade-flash-dynamic-engine-5/</link>
		<comments>http://kuliahvrits.wordpress.com/2010/06/15/flade-flash-dynamic-engine-5/#comments</comments>
		<pubDate>Tue, 15 Jun 2010 11:53:48 +0000</pubDate>
		<dc:creator>nuniq24</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://kuliahvrits.wordpress.com/?p=235</guid>
		<description><![CDATA[Action Script Engine For Flash FLADE ( Flash Dynamic Engine ) Flade (Flash Dynamics Engine) adalah open source actionscript 2.0 library untuk pensimulasian 2D physics menggunakan Verlet integration. Saat ini fitur rectangular, circular, &#38; wheel primitive, spring &#38; angular constraints, dan surface terdiri dari segmen garis, lingkaran, &#38; persegi panjang. Ini terutama dirancang untuk permainan [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kuliahvrits.wordpress.com&amp;blog=12325633&amp;post=235&amp;subd=kuliahvrits&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><span style="color:#ff0000;"><strong>Action Script Engine For Flash</strong></span></p>
<p><strong> </strong></p>
<p><span style="color:#0000ff;"><strong>FLADE ( Flash Dynamic Engine )</strong></span></p>
<p><strong> </strong></p>
<p>Flade (Flash Dynamics Engine) adalah open source actionscript 2.0 library untuk pensimulasian 2D physics menggunakan Verlet integration. Saat ini fitur rectangular, circular, &amp; wheel primitive, spring &amp; angular constraints, dan surface terdiri dari segmen garis, lingkaran, &amp; persegi panjang. Ini terutama dirancang untuk permainan dengan tujuan untuk kecepatan dan kemudahan penggunaan</p>
<p><strong> </strong></p>
<p><strong>Source : <span style="color:#0000ff;"><a href="http://www.cove.org/flade/">http://www.cove.org/flade/</a></span></strong></p>
<p><strong><span style="color:#0000ff;"><br />
</span></strong></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><span style="color:#0000ff;"><strong>APE (Actionscript Physic Engine)</strong></span></p>
<p>APE (Actionscript Physics Engine) merupakan free AS3 open source 2D physic engine untuk dipergunakan di Flash dan Flex</p>
<p><strong> </strong></p>
<p><strong>Source : <a href="http://www.cove.org/ape/">http://www.cove.org/ape/</a></strong></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><span style="color:#0000ff;"><strong>How to use this library ?</strong></span></p>
<ul>
<li>Put that library at the same folder</li>
<li>Enjoy it</li>
</ul>
<p><span style="color:#0000ff;"><strong>Flash Engine API</strong></span></p>
<ul>
<li>Damping API setDamping(double d) ;  Peredam vibration atau getaran.</li>
<li>Gravity API setGravity(double gx, double  gy) ; Set Gravitasi;</li>
<li>Sourface Bounce API setSurfaceBounce(double f) ; Set Permukaan atau bentuk Bounce;</li>
<li>Sourface Friction API setSurfaceFriction(double f);</li>
</ul>
<p><span style="color:#0000ff;"><strong>Contoh Pemanfaatan Flade Engine</strong></span></p>
<p><strong> </strong></p>
<p>Site :<span style="color:#000080;"> http://www.cove.org/ape/demo1.htm</span></p>
<p><strong> </strong></p>
<p>Site : <span style="color:#000080;">http://www.cove.org/ape/demo2.htm</span></p>
<table cellspacing="0" cellpadding="0" align="left">
<tbody>
<tr>
<td width="37" height="26"></td>
</tr>
<tr>
<td></td>
<td></td>
</tr>
</tbody>
</table>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kuliahvrits.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kuliahvrits.wordpress.com/235/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kuliahvrits.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kuliahvrits.wordpress.com/235/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kuliahvrits.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kuliahvrits.wordpress.com/235/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kuliahvrits.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kuliahvrits.wordpress.com/235/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kuliahvrits.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kuliahvrits.wordpress.com/235/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kuliahvrits.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kuliahvrits.wordpress.com/235/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kuliahvrits.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kuliahvrits.wordpress.com/235/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kuliahvrits.wordpress.com&amp;blog=12325633&amp;post=235&amp;subd=kuliahvrits&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kuliahvrits.wordpress.com/2010/06/15/flade-flash-dynamic-engine-5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e0818c7584f046bd6112a9237bd4d076?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">nuniq24</media:title>
		</media:content>
	</item>
		<item>
		<title>Farming Simulator 2009</title>
		<link>http://kuliahvrits.wordpress.com/2010/06/15/farming-simulator-2009/</link>
		<comments>http://kuliahvrits.wordpress.com/2010/06/15/farming-simulator-2009/#comments</comments>
		<pubDate>Tue, 15 Jun 2010 11:53:46 +0000</pubDate>
		<dc:creator>adteba</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://kuliahvrits.wordpress.com/?p=230</guid>
		<description><![CDATA[FARMING SIMULATOR Sekuel dari “farming Simulator 2008” yang berisi banyak fitur perbaikan. Memerankan seorang petani muda di pulau dan pengalaman kehidupan sehari-hari di pedesaan. Banyak pilihan kendaraan dan peralatan untuk menjelajahi pulau dari 4 KM persegi yang dapat ditelusuri secara bebas. Mainkan modus karir, mulai dengan peternakan yang masih sedikit dan kendaraan yang usang. Tujuan [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kuliahvrits.wordpress.com&amp;blog=12325633&amp;post=230&amp;subd=kuliahvrits&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>FARMING SIMULATOR</p>
<p><a href="http://noen0909.files.wordpress.com/2010/06/bg-header_en.jpg"><img title="bg-header_en" src="http://noen0909.files.wordpress.com/2010/06/bg-header_en.jpg?w=512&#038;h=109" alt="" width="512" height="109" /></a></p>
<p>Sekuel dari “farming Simulator 2008” yang berisi banyak fitur perbaikan.  Memerankan seorang petani muda di pulau dan pengalaman kehidupan sehari-hari di  pedesaan. Banyak pilihan kendaraan dan peralatan untuk menjelajahi pulau dari 4  KM persegi yang dapat ditelusuri secara bebas.<br />
Mainkan modus karir, mulai  dengan peternakan yang masih sedikit dan kendaraan yang usang. Tujuan anda  adalah mengembangkan lahan anda, meningkatkan kendaraan dan menjadi petani yang  sukses. Melalui beberapa tahapan pekerjaan seperti membajak sawah, melakukan  pembibitan, memelihara dan memanennya. Mengelola keuangan yang bisa membuat anda  mampu untuk membeli peralatan yang lebih baik. Anda dapat menjual maupun membeli  peralatan di toko yang ada di pulau tersebut. Banyak pilihan perlatan antara  lain 7 traktor dan 4 kombinasi alat untuk panen yang terdiri dari 20 mesin.  Dengan peralatan tersebut anda mampu untuk engelola sawah anda dengan baik.<br />
“Farming Simulator” juga terdiri dari berbagai misi yang berbeda dan  tutorial seperti keadaan yang sebenarnya. Kondisi siang malam dengan perubahan  cuaca juga terjadi dalam “farming simulator” ini anda juga dapat mengendalikan  kendaraan secara otomatis.</p>
<p><strong>Features</strong></p>
<ul>
<li>Mode karier dan session bisnis</li>
<li>Banyak misi yang berbeda dan tutorial</li>
<li>Banyak Kendaraan armada dengan mesin otomatis</li>
<li>Banyaknya peralatan canggih</li>
<li>4 tanaman yang berbeda : gandum, jagung, canola, barley</li>
<li>Siklus Waktu siang dan malam dengan perubahan cuaca</li>
<li>Traffik lalu lintas dan asisten yang jalankan oleh komputer</li>
<li>Download kendaraan tambahan dan peralatan</li>
</ul>
<p><strong>System Requirements</strong></p>
<ul>
<li>Microsoft Windows XP, Windows Vista or Windows 7</li>
<li>2.0 GHz Intel atau setara AMD processor</li>
<li>Nvidia Geforce 6800 Series, ATI Radeon X850, S3 Chrome 430 GT or better (min  128 MB VRAM)</li>
<li>1 GB RAM</li>
<li>1 GB free hard drive space</li>
<li>Soundcard</li>
</ul>
<ul><strong>Sound</strong></p>
<li>Suara kendaraan diterapkan(suara mesin kendaraan, suara peralatan)<strong>Action</strong></li>
<li>Pada kendaaraan harus seimbang antara beban belakang dan beban depan.</li>
<li>Terdapat urutan dalam bercocok tanam (bajak,tanam, semprot optional, panen)</li>
<li>Ketika diberi pupuk hasil lebih banyak.</li>
<li>Bisa terjadi tabrakan antara kendaraan.<strong>Environment</strong></li>
<li>Bisa melakukan jual beli</li>
<li>Sorot lampu kendaraan busa lebih terang</li>
<li>Dalam kondisi hujan tidak bisa panen.</li>
<li>Penerapan peralatan panen terhadap tanaman tertentu.</li>
<li>Sampah sisa hasil panen.</li>
<li>Lahan setelah dipanen berubah menjadi kosong.</li>
<li>Ada mobil lain di jalan yg lewat.</li>
<li>Ada tempat untuk melakukkan jual beli</li>
<li>Ada siang dan malam, dan kondisi cuaca</li>
</ul>
<p>di bawah ini merupakan link official site yang berisi tentang overview, official screenshot, dan lain lain :</p>
<p><a title="Farming Simulator Official Site" href="http://www.landwirtschafts-simulator.de/" target="_blank">Official Site</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kuliahvrits.wordpress.com/230/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kuliahvrits.wordpress.com/230/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kuliahvrits.wordpress.com/230/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kuliahvrits.wordpress.com/230/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kuliahvrits.wordpress.com/230/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kuliahvrits.wordpress.com/230/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kuliahvrits.wordpress.com/230/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kuliahvrits.wordpress.com/230/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kuliahvrits.wordpress.com/230/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kuliahvrits.wordpress.com/230/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kuliahvrits.wordpress.com/230/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kuliahvrits.wordpress.com/230/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kuliahvrits.wordpress.com/230/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kuliahvrits.wordpress.com/230/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kuliahvrits.wordpress.com&amp;blog=12325633&amp;post=230&amp;subd=kuliahvrits&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kuliahvrits.wordpress.com/2010/06/15/farming-simulator-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c521f9cb7964240ae1bd4f05b6c752fe?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">adteba</media:title>
		</media:content>

		<media:content url="http://noen0909.files.wordpress.com/2010/06/bg-header_en.jpg?w=300" medium="image">
			<media:title type="html">bg-header_en</media:title>
		</media:content>
	</item>
		<item>
		<title>Review UDK Unreal Engine 3</title>
		<link>http://kuliahvrits.wordpress.com/2010/06/14/review-udk-unreal-engine-3/</link>
		<comments>http://kuliahvrits.wordpress.com/2010/06/14/review-udk-unreal-engine-3/#comments</comments>
		<pubDate>Mon, 14 Jun 2010 16:16:54 +0000</pubDate>
		<dc:creator>aditrahman</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://kuliahvrits.wordpress.com/?p=186</guid>
		<description><![CDATA[﻿﻿ UDK (Unreal Development Kit) adalah Unreal Engine 3, kerangka kerja lengkap untuk pengembangan profesional. Semua tool yang kamu butuhkan untuk membuat games bagus, advanced visualizations dan simulasi 3D mendetail tersedia. Siapapun itu, banyak yang telah menggunakan Unreal Engine 3, diantaranya, developer game, studio TV, sutradara machinima, artist, dll. Jika kamu punya ide untuk direalisasikan, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kuliahvrits.wordpress.com&amp;blog=12325633&amp;post=186&amp;subd=kuliahvrits&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>﻿﻿</p>
<p>UDK (Unreal Development Kit) adalah Unreal Engine 3, kerangka kerja lengkap untuk pengembangan profesional. Semua tool yang kamu butuhkan untuk membuat games bagus, advanced visualizations dan simulasi 3D mendetail tersedia. Siapapun itu, banyak yang telah menggunakan Unreal Engine 3, diantaranya, developer game, studio TV, sutradara machinima, artist, dll. Jika kamu punya ide untuk direalisasikan, UDK is for you. Hanya UDK yang memiliki power, flexibility dan track record dari Unreal Engine 3. tool ini telah terbukti dengan releases dan awards yang tak terhitung banyaknya. There is no better way to make awesome games than with UE3. And best of all, it’s free. Penggunaan UDK untuk tujuan noncommercial bebas biaya. Theorically, semua orang sekarang memiliki kemampuan untuk membuat game seperti Gears of War 2.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kuliahvrits.wordpress.com/186/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kuliahvrits.wordpress.com/186/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kuliahvrits.wordpress.com/186/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kuliahvrits.wordpress.com/186/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kuliahvrits.wordpress.com/186/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kuliahvrits.wordpress.com/186/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kuliahvrits.wordpress.com/186/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kuliahvrits.wordpress.com/186/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kuliahvrits.wordpress.com/186/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kuliahvrits.wordpress.com/186/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kuliahvrits.wordpress.com/186/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kuliahvrits.wordpress.com/186/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kuliahvrits.wordpress.com/186/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kuliahvrits.wordpress.com/186/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kuliahvrits.wordpress.com&amp;blog=12325633&amp;post=186&amp;subd=kuliahvrits&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kuliahvrits.wordpress.com/2010/06/14/review-udk-unreal-engine-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a7a8b240de75b5483c10bb064bd02e7a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">adit</media:title>
		</media:content>
	</item>
		<item>
		<title>Review Game Football Manager 2010</title>
		<link>http://kuliahvrits.wordpress.com/2010/06/14/review-game-football-manager-2010/</link>
		<comments>http://kuliahvrits.wordpress.com/2010/06/14/review-game-football-manager-2010/#comments</comments>
		<pubDate>Mon, 14 Jun 2010 16:15:30 +0000</pubDate>
		<dc:creator>ahmadripai</dc:creator>
				<category><![CDATA[Review]]></category>
		<category><![CDATA[Football Manager 2010]]></category>

		<guid isPermaLink="false">http://kuliahvrits.wordpress.com/?p=183</guid>
		<description><![CDATA[Grafis Ada peningkatan tampilan yang signifikan di game Football Manager 2010 (FM2010) . Dibanding versi terdahulu, rasanya sekarang FM2010 lebih &#8220;kantor&#8221; (serasa jadi manajer betulan), lebih banyak space kosong, pandangan jadi lega waktu ngatur-ngatur tim kita. Tampilannya pun juga jadi lebih minimalis, tombol-tombol, panel-panel rapi ditata di bagian atas &#38; kiri layar. Sedikit melihat ke [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kuliahvrits.wordpress.com&amp;blog=12325633&amp;post=183&amp;subd=kuliahvrits&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h2 style="text-align:justify;">Grafis</h2>
<p style="text-align:justify;">Ada peningkatan tampilan yang signifikan di game Football Manager 2010 (FM2010) . Dibanding versi terdahulu, rasanya sekarang FM2010 lebih &#8220;kantor&#8221; (serasa jadi manajer betulan), lebih banyak space kosong, pandangan jadi lega waktu ngatur-ngatur tim kita. Tampilannya pun juga jadi lebih minimalis, tombol-tombol, panel-panel rapi ditata di bagian atas &amp; kiri layar.</p>
<p style="text-align:center;"><img class="aligncenter" src="http://www.totalvideogames.com/img/uploaded/www.totalvideogames.com_Football_Manager_2010-PCScreenshots17675Coach_Report_69190__size_655_2000.jpg" alt="http://www.totalvideogames.com/img/uploaded/www.totalvideogames.com_Football_Manager_2010-PCScreenshots17675Coach_Report_69190__size_655_2000.jpg" /></p>
<p style="text-align:justify;">Sedikit melihat ke bagian grafis waktu permainan berlangsung, di FM 2010 pemain bisa menikmati tampilan lapangan hijau 3D yang segar, ditambah dengan animasi permainan dari para pemain bola. Grafisnya juga bisa dibilang cukup baik, walaupun masih jauh kalau dibandingkan dengan grafis game sekelas PES. Toh, game ini titik beratnya di manajemen tim sepak bola : )</p>
<p style="text-align:center;"><img class="aligncenter" src="http://image.com.com/gamespot/images/2009/313/971354_20091110_screen019.jpg" alt=" Screenshot" width="540" /></p>
<h2 style="text-align:justify;">GamePlay</h2>
<p>Sudah lumrah jadi tradisi FM kalo permainannya fokus pada manajemen tim sepak bola. Kelebihan dari FM2010 ini ada tambahan fitur micro-management. Jadi strategi tim yang kita atur itu gak cuman terbatas di strategi secara umum, tapi juga strategi buat hadapi tim-tim tertentu secara khusus. Tentunya yang harus diatur juga bakal lebih banyak, tapi inilah serunya, lebih mendekati realita.</p>
<p style="text-align:center;"><img class="aligncenter" src="http://www.totalvideogames.com/img/uploaded/www.totalvideogames.com_Football_Manager_2010-PCScreenshots17679Match_Analysis2A_69194__size_655_2000.jpg" alt="" width="500" /></p>
<h2 style="text-align:justify;">Minimum Requirement</h2>
<ul style="text-align:justify;">
<li> OS: Windows XP/Vista/W7</li>
<li> Processor: XP: 1.4GHz or Faster / Vista/W7 : 2.0GHz or Faster</li>
<li> Supported Processors: Intel Pentium 4, Intel Core, AMD Athlon</li>
<li> Memory: XP: 512MB RAM / Vista/W7: 1.0GB RAM</li>
<li> Hard Drive Space: 2GB</li>
<li> DVD-Drive: 4x Speed</li>
<li> Video Card: 128MB *Supported Chipsets : (see below)</li>
<li> Sound Card: DirectX 9.0c compatible</li>
<li> Directx: Version 9.0c (included)</li>
<li> LAN: TCP/IP compliant</li>
<li style="text-align:justify;"> Input: Keyboard, Mouse</li>
</ul>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kuliahvrits.wordpress.com/183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kuliahvrits.wordpress.com/183/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kuliahvrits.wordpress.com/183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kuliahvrits.wordpress.com/183/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kuliahvrits.wordpress.com/183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kuliahvrits.wordpress.com/183/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kuliahvrits.wordpress.com/183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kuliahvrits.wordpress.com/183/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kuliahvrits.wordpress.com/183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kuliahvrits.wordpress.com/183/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kuliahvrits.wordpress.com/183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kuliahvrits.wordpress.com/183/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kuliahvrits.wordpress.com/183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kuliahvrits.wordpress.com/183/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kuliahvrits.wordpress.com&amp;blog=12325633&amp;post=183&amp;subd=kuliahvrits&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kuliahvrits.wordpress.com/2010/06/14/review-game-football-manager-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<georss:point>-7.287243 112.739048</georss:point>
		<geo:lat>-7.287243</geo:lat>
		<geo:long>112.739048</geo:long>
		<media:content url="http://1.gravatar.com/avatar/7a5296daf292c2334e163018e083729b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">riffdotblend</media:title>
		</media:content>

		<media:content url="http://www.totalvideogames.com/img/uploaded/www.totalvideogames.com_Football_Manager_2010-PCScreenshots17675Coach_Report_69190__size_655_2000.jpg" medium="image">
			<media:title type="html">http://www.totalvideogames.com/img/uploaded/www.totalvideogames.com_Football_Manager_2010-PCScreenshots17675Coach_Report_69190__size_655_2000.jpg</media:title>
		</media:content>

		<media:content url="http://image.com.com/gamespot/images/2009/313/971354_20091110_screen019.jpg" medium="image">
			<media:title type="html"> Screenshot</media:title>
		</media:content>

		<media:content url="http://www.totalvideogames.com/img/uploaded/www.totalvideogames.com_Football_Manager_2010-PCScreenshots17679Match_Analysis2A_69194__size_655_2000.jpg" medium="image" />
	</item>
		<item>
		<title>BEPUphysics &#8211; free physics engine library untuk XNA</title>
		<link>http://kuliahvrits.wordpress.com/2010/06/14/bepuphysics-free-physics-engine-library-untuk-xna/</link>
		<comments>http://kuliahvrits.wordpress.com/2010/06/14/bepuphysics-free-physics-engine-library-untuk-xna/#comments</comments>
		<pubDate>Mon, 14 Jun 2010 16:14:37 +0000</pubDate>
		<dc:creator>thariqn</dc:creator>
				<category><![CDATA[Review]]></category>
		<category><![CDATA[BEPUphysics]]></category>
		<category><![CDATA[Physics Engine]]></category>
		<category><![CDATA[XNA]]></category>

		<guid isPermaLink="false">http://kuliahvrits.wordpress.com/?p=188</guid>
		<description><![CDATA[BEPUphysics adalah sebuah 3D physics engine yang didesain secara spesifik untuk XNA Framework, dapat menghandle secara efektif simulasi dan interaksi simulasi dari rigid body dan dapat digunakan dalam dalam berbagai tahap pengembangan game. Beberapa fitur yang ditawarkan BEPUphysics : Support internal multithreading untuk jumlah thread yang bervariasi. Deteksi benturan untuk rigid body yang cepat &#38; [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kuliahvrits.wordpress.com&amp;blog=12325633&amp;post=188&amp;subd=kuliahvrits&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>BEPUphysics adalah sebuah 3D physics engine yang didesain secara spesifik untuk XNA Framework, dapat menghandle secara efektif simulasi dan interaksi simulasi dari rigid body dan dapat digunakan dalam dalam berbagai tahap pengembangan game.</p>
<p>Beberapa fitur yang ditawarkan BEPUphysics :</p>
<ul>
<li>Support internal multithreading untuk jumlah thread yang bervariasi.</li>
<li>Deteksi benturan untuk rigid body yang cepat &amp; robust.</li>
<li>Mensupport berbagai jenis obyek primitif, baik dinamik maupun kinematik, seperti : Convex hull, box, capsule, cone, cylinder, sphere, triangle, Minkowski Sum, &amp; Wrapped Objects.</li>
<li>Mensupport berbagai macam constraint, termasuk joint limit, velocity motor, &amp; servomechanisms.</li>
<li>System rule collision untuk mendefinisikan interaksi kompleks baik antar entitas maupun antar sekumpulan entitas.</li>
</ul>
<p>Selain itu, dll BEPUphysics tersedia dalam versi untuk Windows dan XBOX360.<br />
Untuk menggunakannya, diperlukan Visual C# 2008 dan XNA Game Studio 3.1. Pertama-tama, buatlah sebuah XNA 3.1 Windows Game project baru di Visual C#. Masukkan BEPUphysics.dll ke dalam project sebagai reference. Hal ini dilakukan dengan klik kanan di folder references di solution explorer, dan pilih &#8220;Add Reference&#8221;. Pilih tab Browse dan buka tempat di mana dll berada, lalu klik OK.</p>
<p><img src="http://blog.its.ac.id/thariqnugrohotomo/files/2010/06/1.jpg" alt="1" /></p>
<p>Setelah itu kita harus membuat sebuah Space object dari class dalam BEPUphysics. Semua obyek simulasi dapat di tambahkan dari sebuah instance Space.</p>
<p><code>Space space = new Space();</code></p>
<p>Buat sebuah field untuk space dan inisialisasi dalam metode LoadContent dari game. Untuk mengatasi error yang mungkin terjadi bila namespace belum direferensikan, dapat dilakukan dengan klik kanan di baris yang ditandai error, pilih Resolve, lalu pilih &#8220;using BEPUphysics&#8221;.</p>
<p><img src="http://blog.its.ac.id/thariqnugrohotomo/files/2010/06/2.jpg" alt="2" /></p>
<p>BEPUPhysics perlu mengetahui event &#8220;beat&#8221; dari siklus update dalam game. Dalam method Update dalam game, tambahkan baris berikut:</p>
<p><code>space.update(gameTime);</code></p>
<p>Sekarang kita akan menambahkan entitas ke dalamnya. Class Entity merepresentasikan obyek fisika umum yang menyusun space. Kita dapat membuat berbagai jenis entitas, termasuk Box, Cylinder, Sphere, Capsule, dan jenis lain yang dapat ditemui dalam namespace BEPUphysics.Entites.</p>
<p>Untuk menambahkan daratan/tanah, kita akan menggunakan sebuah box yang dibuat sebagai entitas kinematis. Tambahkan baris berikut ke dalam method LoadContent:</p>
<p><code>Box ground = new Box(Vector3.Zero, 30, 1, 30);</code></p>
<p>Parameter pertama adalah posisi box dan 3 parameter setelahnya adalah panjang, lebar, dan tebal. Tambahkan box tersebut ke dalam space :</p>
<p><code>space.add(ground);</code></p>
<p>Tambahkan juga beberapa cube dinamis di atasnya :</p>
<p><code>space.add(new Box(new Vector3(0, 4, 0), 1, 1, 1, 1));<br />
space.add(new Box(new Vector3(0, 8, 0), 1, 1, 1, 1));<br />
space.add(new Box(new Vector3(0, 12, 0), 1, 1, 1, 1));</code></p>
<p>Parameter terakhir di sini menandakan bahwa entitas ini dinamis, bukan kinematis seperti box untuk tanah/daratan tadi.<br />
Kemudian kita perlu memberi gravitasi ke dalam simulasi space :</p>
<p><code>space.simulationSettings.motionUpdate.gravity = new Vector3(0, -9.81f, 0);</code></p>
<p>Sekarang, semua entitas dalam space telah tersimulasikan secara fisika. Property-property dari entitas tersebut akan berubah sesuai dengan kondisi entitas setelah mengalami perubahan fisika. Tugas kita sekarang adalah memvisualisasikan! Kita perlu model balok/box dengan ukuran 1x1x1. Lalu tambahkan model ini sebagai Content dari game. File model tersebut dapat didapat dalam source code tutorial ini (link di bawah). Cukup copy dan paste model tersebut ke folder Content dalam solution explorer.</p>
<p><img src="http://blog.its.ac.id/thariqnugrohotomo/files/2010/06/3.jpg" alt="3" /></p>
<p>Buat field dalam game untuk menampung model tersebut :</p>
<p><code>public Model cubeModel;</code></p>
<p>Dalam method LoadContent tambahkan code untuk me-load file asset dari cube model :</p>
<p><code>cubeModel = Content.Load("cube");</code></p>
<p>Sekarang kita telah memiliki obyek visual untuk merepresentasikan entitas fisika kita. Sisanya hanya tinggal menghubungkan obyek visual tersebut dengan data property entitas simulasi, dan memvisualisasikan entitas itu. Dalam method Draw kita menambahkan code yang umum digunakan untuk menggambarkan model :<br />
<code><br />
// setting camera / viewer<br />
Vector3 cameraPosition = new Vector3(0, 3, 10);<br />
Matrix view = Matrix.CreateLookAt(cameraPosition, Vector3.Zero, Vector3.Up);<br />
Matrix projection = Matrix.CreatePerspectiveFieldOfView(MathHelper.PiOver4, 4f / 3f, .1f, 10000.0f);</code></p>
<p><code><br />
Matrix[] boneTransforms = new Matrix[cubeModel.Bones.Count];<br />
cubeModel.CopyAbsoluteBoneTransformsTo(boneTransforms);<br />
foreach (Entity e in space.entities) {<br />
Box box = e as Box;<br />
if (box != null) {<br />
foreach (ModelMesh mesh in cubeModel.Meshes) {<br />
foreach (BasicEffect effect in mesh.Effects) {<br />
effect.EnableDefaultLighting();<br />
effect.World = e.worldTransform;<br />
effect.View = view;<br />
effect.Projection = projection;<br />
}<br />
mesh.Draw();<br />
}<br />
}<br />
}</code></p>
<p>Sekarang compile dan jalan program, maka akan terlihat beberapa balok jatuh dan saling bertumpuk.</p>
<p>Source dari tutorial di atas dapat diperoleh di <a href="http://www.bepu-games.com/BEPUphysics/downloads/Documentation/GettingStartedDemo.zip">sini</a>.</p>
<p>Info lebih lanjut, dapat diakses di <a href="http://www.bepu-games.com/BEPUphysics/">www.bepu-games.com/BEPUphysics</a> atau <a href="http://www.bepuphysics.com">www.bepuphysics.com</a>.<br />
Beberapa video demo aplikasi yang menunjukkan kemampuan dari engine ini dapat dilihat di <a href="http://www.bepu-games.com/BEPUphysics/mediasection.htm">sini</a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kuliahvrits.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kuliahvrits.wordpress.com/188/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kuliahvrits.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kuliahvrits.wordpress.com/188/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kuliahvrits.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kuliahvrits.wordpress.com/188/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kuliahvrits.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kuliahvrits.wordpress.com/188/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kuliahvrits.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kuliahvrits.wordpress.com/188/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kuliahvrits.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kuliahvrits.wordpress.com/188/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kuliahvrits.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kuliahvrits.wordpress.com/188/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kuliahvrits.wordpress.com&amp;blog=12325633&amp;post=188&amp;subd=kuliahvrits&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kuliahvrits.wordpress.com/2010/06/14/bepuphysics-free-physics-engine-library-untuk-xna/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/19dc9cc66e7493af6553c18fc5c72918?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">thariqn</media:title>
		</media:content>

		<media:content url="http://blog.its.ac.id/thariqnugrohotomo/files/2010/06/1.jpg" medium="image">
			<media:title type="html">1</media:title>
		</media:content>

		<media:content url="http://blog.its.ac.id/thariqnugrohotomo/files/2010/06/2.jpg" medium="image">
			<media:title type="html">2</media:title>
		</media:content>

		<media:content url="http://blog.its.ac.id/thariqnugrohotomo/files/2010/06/3.jpg" medium="image">
			<media:title type="html">3</media:title>
		</media:content>
	</item>
		<item>
		<title>FLADE ( Flash Dynamic Engine )</title>
		<link>http://kuliahvrits.wordpress.com/2010/06/14/flade-flash-dynamic-engine-3/</link>
		<comments>http://kuliahvrits.wordpress.com/2010/06/14/flade-flash-dynamic-engine-3/#comments</comments>
		<pubDate>Mon, 14 Jun 2010 15:16:55 +0000</pubDate>
		<dc:creator>nuniq24</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://kuliahvrits.wordpress.com/?p=177</guid>
		<description><![CDATA[Action Script Engine For Flash FLADE ( Flash Dynamic Engine ) Flade (Flash Dynamics Engine) adalah open source actionscript 2.0 library untuk pensimulasian 2D physics menggunakan Verlet integration. Saat ini fitur rectangular, circular, &#38; wheel primitive, spring &#38; angular constraints, dan surface terdiri dari segmen garis, lingkaran, &#38; persegi panjang. Ini terutama dirancang untuk permainan [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kuliahvrits.wordpress.com&amp;blog=12325633&amp;post=177&amp;subd=kuliahvrits&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><strong>Action Script Engine For Flash</strong></p>
<p><strong>FLADE ( Flash Dynamic Engine )</strong></p>
<p>Flade (Flash Dynamics Engine) adalah open source actionscript 2.0 library untuk pensimulasian 2D physics menggunakan Verlet integration. Saat ini fitur rectangular, circular, &amp; wheel primitive, spring &amp; angular constraints, dan surface terdiri dari segmen garis, lingkaran, &amp; persegi panjang. Ini terutama dirancang untuk permainan dengan tujuan untuk kecepatan dan kemudahan penggunaan</p>
<p><strong>Source : <a href="http://www.cove.org/flade/">http://www.cove.org/flade/</a></strong></p>
<p><strong>APE (Actionscript Physic Engine)</strong></p>
<p>APE (Actionscript Physics Engine) merupakan free AS3 open source 2D physic engine untuk dipergunakan di Flash dan Flex</p>
<p><strong>Source : <a href="http://www.cove.org/ape/">http://www.cove.org/ape/</a></strong></p>
<p><strong>How to use this library ?</strong></p>
<p>- Put that library at the same folder</p>
<p>- Enjoy it</p>
<p><strong>Flash Engine API</strong></p>
<p>Damping API</p>
<p>setDamping(double d);</p>
<p>Peredam vibration atau getaran.</p>
<p>Gravity API</p>
<p>setGravity(double gx, double gy);</p>
<p>Set Gravitasi;</p>
<p>Sourface Bounce API</p>
<p>setSurfaceBounce(double f);</p>
<p>Set Permukaan atau bentuk Bounce;</p>
<p>Sourface Friction API</p>
<p>setSurfaceFriction(double f);</p>
<p><strong>Contoh Pemanfaatan Flade Engine</strong></p>
<p>Site : <a href="http://www.cove.org/ape/demo1.htm">http://www.cove.org/ape/demo1.htm</a></p>
<p><img src="image002.jpg@01CB0C0C.1D75C770" alt="P1" width="484" height="298" /></p>
<p>Site : <a href="http://www.cove.org/ape/demo2.htm">http://www.cove.org/ape/demo2.htm</a></p>
<table cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td><img src="image004.jpg@01CB0C0C.1D75C770" alt="P2" width="522" height="316" /></td>
</tr>
</tbody>
</table>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kuliahvrits.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kuliahvrits.wordpress.com/177/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kuliahvrits.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kuliahvrits.wordpress.com/177/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kuliahvrits.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kuliahvrits.wordpress.com/177/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kuliahvrits.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kuliahvrits.wordpress.com/177/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kuliahvrits.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kuliahvrits.wordpress.com/177/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kuliahvrits.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kuliahvrits.wordpress.com/177/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kuliahvrits.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kuliahvrits.wordpress.com/177/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kuliahvrits.wordpress.com&amp;blog=12325633&amp;post=177&amp;subd=kuliahvrits&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kuliahvrits.wordpress.com/2010/06/14/flade-flash-dynamic-engine-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e0818c7584f046bd6112a9237bd4d076?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">nuniq24</media:title>
		</media:content>

		<media:content url="image002.jpg@01CB0C0C.1D75C770" medium="image">
			<media:title type="html">P1</media:title>
		</media:content>

		<media:content url="image004.jpg@01CB0C0C.1D75C770" medium="image">
			<media:title type="html">P2</media:title>
		</media:content>
	</item>
		<item>
		<title>Review Blender GameKit Physic Engine</title>
		<link>http://kuliahvrits.wordpress.com/2010/06/14/review-blender-gamekit-physic-engine/</link>
		<comments>http://kuliahvrits.wordpress.com/2010/06/14/review-blender-gamekit-physic-engine/#comments</comments>
		<pubDate>Mon, 14 Jun 2010 13:32:34 +0000</pubDate>
		<dc:creator>ahmadripai</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://kuliahvrits.wordpress.com/?p=140</guid>
		<description><![CDATA[Dalam postingan kali ini, tim “BlenderTok!” akan mempersembahkan sebuah review tentang physic engine dari Blender. Tentunya udah pada tau kan, apa itu Blender? Kalo blom, coba jalan2 ke sini dulu. Kalo udah tau ya, skip aja, langsung baca review dari kami. Review ini dibuat untuk mengabadikan presentasi kami di kuliah Realitas Virtual 2009 Jurusan Informatika [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kuliahvrits.wordpress.com&amp;blog=12325633&amp;post=140&amp;subd=kuliahvrits&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:justify;">Dalam postingan kali ini, tim “BlenderTok!” akan mempersembahkan sebuah review tentang physic engine dari Blender. Tentunya udah pada tau kan, apa itu Blender? Kalo blom, coba jalan2 ke <a href="http://www.blender.org/">sini</a> dulu. Kalo udah tau ya, skip aja, langsung baca review dari kami. Review ini dibuat untuk mengabadikan presentasi kami di kuliah Realitas Virtual 2009 Jurusan Informatika ITS, semoga bisa bermanfaat buat yang baca.</p>
<p style="text-align:justify;">Langsung aja, masuk ke pembahasan tentang game engine-nya dulu. Bahas yang umum dulu supaya gak berat di otak : D. Blender Game Engine ini punya kelebihan yang cukup menonjol dibandingkan kompetitornya, yaitu GRATIS! Developer, terutama para hobyist ataupun developer game kecil-kecilan gak perlu menguras kantong buat bisa bikin game yang enjoyable. Fitur-fitur yang ada di Blender Game Engine adalah</p>
<h2 style="text-align:justify;">Blender Creation Suite</h2>
<p style="text-align:justify;"><img style="cursor:0;" src="http://kemasdimas.com/images/blender/interface_lg.png" alt="http://www.techimo.com/images/img2/blender3d/interface_lg.png" width="500" /></p>
<p style="text-align:justify;">Blender nyediain antarmuka yang lengkap. Kontrol-kontrol untuk animasi ataupun modelling bisa gampang diakses, ditambah lagi dengan gampangnya kostumasi antarmuka. Bentuk antarmuka yang “advanced” ini ditujukan buat mempermudah desainer yang biasa berkarya via GIMP / Photoshop bisa gampang adaptasi dengan Blender.</p>
<h2 style="text-align:justify;">Blender 3D Modelling</h2>
<p style="text-align:justify;"><img style="cursor:0;" src="http://kemasdimas.com/images/blender/modelling_lg.png" alt="http://www.techimo.com/images/img2/blender3d/modelling_lg.png" width="500" /></p>
<p style="text-align:justify;">Blender ngedukung banyak operasi modelling 3D. Mau buat polygon, NURBS surface, kurva bezier, b-spline, vector fonts, dll bisa dibuat via Blender, hebatnya lagi, Blender juga nyediakan mode editing model, contohnya extrude, screw, warp, subdivide, noise &amp; smooth.</p>
<h2 style="text-align:justify;">Blender 3D Animation</h2>
<p style="text-align:justify;"><img style="cursor:0;" src="http://kemasdimas.com/images/blender/animation_lg.png" alt="http://www.techimo.com/images/img2/blender3d/animation_lg.png" width="500" /></p>
<p style="text-align:justify;">Fitur animasi yang ada di blender juga gak bisa dipandang sebelah mata. Blender punya fitur animasi skeleton deformation with forward/inverse kinematics, auto skinning, interactive vertex 3D paint, morphing vertex keyframe, animatable lattice deformation, dan non-linear animation mixing dipadu dengan pathtracking otomatis. Buat animasinya, blender nyediakan mode WYSIWYG (What You See Is What You Get) dan mode scripting via Phyton.</p>
<h2 style="text-align:justify;">Blender Game Creation</h2>
<p style="text-align:justify;"><img style="cursor:0;" src="http://kemasdimas.com/images/blender/realtime_lg.png" alt="http://www.techimo.com/images/img2/blender3d/realtime_lg.png" width="500" /></p>
<p style="text-align:justify;">Seperti udah dibilang di atas kalo Blender ini gak bisa dipandang sebelah mata, fitur-fitur buat game creation dikemas bisa dibilang sangat mumpuni. Blender Game Engine punya fitur-fitur<br />
<!--[if gte mso 9]&gt;  Normal 0     false false false  EN-US X-NONE X-NONE              MicrosoftInternetExplorer4              &lt;![endif]--><!--[if gte mso 9]&gt;                                                                                                                                            &lt;![endif]--><!--  /* Font Definitions */  @font-face 	{font-family:"Cambria Math"; 	panose-1:2 4 5 3 5 4 6 3 2 4; 	mso-font-charset:1; 	mso-generic-font-family:roman; 	mso-font-format:other; 	mso-font-pitch:variable; 	mso-font-signature:0 0 0 0 0 0;} @font-face 	{font-family:Calibri; 	panose-1:2 15 5 2 2 2 4 3 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:-520092929 1073786111 9 0 415 0;} @font-face 	{font-family:Verdana; 	panose-1:2 11 6 4 3 5 4 4 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:-1593833729 1073750107 16 0 415 0;}  /* Style Definitions */  p.MsoNormal, li.MsoNormal, div.MsoNormal 	{mso-style-unhide:no; 	mso-style-qformat:yes; 	mso-style-parent:""; 	margin-top:0cm; 	margin-right:0cm; 	margin-bottom:10.0pt; 	margin-left:0cm; 	line-height:115%; 	mso-pagination:widow-orphan; 	font-size:11.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:Calibri; 	mso-fareast-theme-font:minor-latin; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi; 	mso-no-proof:yes;} .MsoChpDefault 	{mso-style-type:export-only; 	mso-default-props:yes; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:Calibri; 	mso-fareast-theme-font:minor-latin; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Times New Roman"; 	mso-bidi-theme-font:minor-bidi;} .MsoPapDefault 	{mso-style-type:export-only; 	margin-bottom:10.0pt; 	line-height:115%;} @page Section1 	{size:612.0pt 792.0pt; 	margin:72.0pt 72.0pt 72.0pt 72.0pt; 	mso-header-margin:36.0pt; 	mso-footer-margin:36.0pt; 	mso-paper-source:0;} div.Section1 	{page:Section1;} --><!--[if gte mso 10]&gt; &lt;!   /* Style Definitions */  table.MsoNormalTable 	{mso-style-name:&quot;Table Normal&quot;; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	mso-style-noshow:yes; 	mso-style-priority:99; 	mso-style-qformat:yes; 	mso-style-parent:&quot;&quot;; 	mso-padding-alt:0cm 5.4pt 0cm 5.4pt; 	mso-para-margin-top:0cm; 	mso-para-margin-right:0cm; 	mso-para-margin-bottom:10.0pt; 	mso-para-margin-left:0cm; 	line-height:115%; 	mso-pagination:widow-orphan; 	font-size:11.0pt; 	font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:&quot;Times New Roman&quot;; 	mso-bidi-theme-font:minor-bidi;} --> <!--[endif]--></p>
<ol style="text-align:justify;">
<li><span style="font-size:10pt;line-height:115%;font-family:&amp;">Graphical Editors (WYSIWYG)</span></li>
<li><span style="font-size:10pt;line-height:115%;font-family:&amp;">Collision Detection</span></li>
<li><span style="font-size:10pt;line-height:115%;font-family:&amp;">Dynamics Simulation</span></li>
<li><span style="font-size:10pt;line-height:115%;font-family:&amp;">Python Scripting</span></li>
<li><span style="font-size:10pt;line-height:115%;font-family:&amp;">Scene Multi-Layering</span></li>
<li><span style="font-size:10pt;line-height:115%;font-family:&amp;">Overlays</span></li>
<li><span style="font-size:10pt;line-height:115%;font-family:&amp;">Game Logic</span></li>
<li><span style="font-size:10pt;line-height:115%;font-family:&amp;">Artificial Intelligence</span></li>
<li><span style="font-size:10pt;line-height:115%;font-family:&amp;">Physics</span></li>
<li><span style="font-size:10pt;line-height:115%;font-family:&amp;">Input</span></li>
<li><span style="font-size:10pt;line-height:115%;font-family:&amp;">Output</span></li>
<li><span style="font-size:10pt;line-height:115%;font-family:&amp;">3D Rendering</span></li>
</ol>
<p style="text-align:justify;">Setelah bahas fitur-fitur Blender Game Engine, sekarang waktunya bahas tentang Physic Engine yang ada di BGE. BGE punya Physic Engine yang namanya <a href="http://bulletphysics.org/mediawiki-1.5.8/index.php/Bullet_Physics_Features_in_Blender">Bullet Physic</a>. Bullet Physic punya beberapa bounding surface, jadi objek yang dibuat bisa lebih variatif &amp; collision boundarynya lebih fleksibel. Bound surface di BP (Bullet Physic) adalah</p>
<ul style="text-align:justify;">
<li>Box</li>
<li>Sphere</li>
<li>Convex Hull</li>
<li>Cylinder</li>
<li>Cone</li>
<li>Static Triangle Mesh</li>
</ul>
<p style="text-align:justify;">Untuk deteksi tabrakan / sentuhan dengan benda-benda disekitar objek, BP ngandalin 3 cara collision detection, yaitu</p>
<ul style="text-align:justify;">
<li> Ray Sensor</li>
<li> Near Sensor</li>
<li> Collision Sensor</li>
</ul>
<p>Di bawah ini, contoh Phyton script yang dipake buat logic di BGE</p>
<h3><span class="comment comment_line comment_line_number-sign comment_line_number-sign_python">#aim.py</span></h3>
<pre class="textmate-source">
<pre class="sunburst">cont <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">GameLogic.getCurrentController(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"> </span>)</span>
player <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getOwner()</span>
remote <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"Remote"</span></span>)</span>.<span class="meta meta_function-call meta_function-call_python">getOwner()</span>
mousemove <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getSensor(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_single string_quoted_single_single-line string_quoted_single_single-line_python">'mousemove'</span></span>)</span>

remori <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">remote.getOrientation()</span>
<span class="meta meta_function-call meta_function-call_python">player.setOrientation(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">remori</span>)</span>

<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">if</span> player.init <span class="keyword keyword_operator keyword_operator_comparison keyword_operator_comparison_python">==</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span>:
	player.initx <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">mousemove.getXPosition()</span>
	player.inity <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">mousemove.getYPosition()</span>
	player.init <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span>
	player.mousex <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="constant constant_numeric constant_numeric_float constant_numeric_float_python">0.0</span>
	player.mousey <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="constant constant_numeric constant_numeric_float constant_numeric_float_python">0.0</span>

<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">if</span> player.init <span class="keyword keyword_operator keyword_operator_comparison keyword_operator_comparison_python">==</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span> <span class="keyword keyword_operator keyword_operator_logical keyword_operator_logical_python">and</span> <span class="meta meta_function-call meta_function-call_python">mousemove.isPositive()</span>:
	<span class="keyword keyword_control keyword_control_import keyword_control_import_from keyword_control_import_from_python">from</span> Rasterizer <span class="keyword keyword_control keyword_control_import keyword_control_import_python">import</span> setMousePosition
	shoulderipo <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_single string_quoted_single_single-line string_quoted_single_single-line_python">'shoulderipo'</span></span>)</span>
	playerrot <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"Remote"</span></span>)</span>
	shoulder <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">shoulderipo.getOwner()</span>
	nmousex <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">mousemove.getXPosition()</span> <span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">-</span> player.initx
	nmousey <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">mousemove.getYPosition()</span> <span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">-</span> player.inity
	player.mousex<span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> player.mousex <span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">+</span> (<span class="meta meta_function-call meta_function-call_python"><span class="support support_type support_type_python">float</span>(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">nmousex</span>)</span> <span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">-</span> player.mousex) <span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">*</span> player.mousefilter
	player.mousey<span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> player.mousey <span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">+</span> (<span class="meta meta_function-call meta_function-call_python"><span class="support support_type support_type_python">float</span>(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">nmousey</span>)</span> <span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">-</span> player.mousey) <span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">*</span> player.mousefilter

	<span class="meta meta_function-call meta_function-call_python">setMousePosition(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">player.initx, player.inity</span>)</span>
	remote.rot <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_augmented keyword_operator_assignment_augmented_python">-=</span> (player.mousex <span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">*</span> player.sensitivity)
	shoulder.pitch <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_augmented keyword_operator_assignment_augmented_python">-=</span> (player.mousey <span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">*</span> player.sensitivity)
	<span class="meta meta_function-call meta_function-call_python">GameLogic.addActiveActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">playerrot, <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>)</span>
	<span class="meta meta_function-call meta_function-call_python">GameLogic.addActiveActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">shoulderipo, <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>)</span>
</pre>
</pre>
<h3><span class="comment comment_line comment_line_number-sign comment_line_number-sign_python">#bulletforce.py</span></h3>
<pre class="textmate-source">
<pre class="sunburst">
<pre class="sunburst">cont <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">GameLogic.getCurrentController()</span>
own <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getOwner()</span>
camown <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">GameLogic.getCurrentScene()</span>.<span class="meta meta_function-call meta_function-call_python">getObjectList()</span><span class="meta meta_item-access meta_item-access_python">[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"OBcamera0"</span></span>]</span>

lmb <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getSensor(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"fire"</span></span>)</span>
ray_all <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getSensor(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"ray_all"</span></span>)</span>
add_force <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"add_force"</span></span>)</span>

forceobj <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">add_force.getLastCreatedObject()</span>

<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">if</span> own.force <span class="keyword keyword_operator keyword_operator_logical keyword_operator_logical_python">and</span> <span class="meta meta_function-call meta_function-call_python">ray_all.isPositive()</span>:
	hit_pos <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">ray_all.getHitPosition()</span>
	<span class="meta meta_function-call meta_function-call_python">forceobj.setOrientation(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="meta meta_function-call meta_function-call_python">camown.getOrientation()</span></span>)</span>
	<span class="meta meta_function-call meta_function-call_python">forceobj.setPosition(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">hit_pos</span>)</span>
	own.force <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span>

apply_force <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">ray_all.isPositive()</span> <span class="keyword keyword_operator keyword_operator_logical keyword_operator_logical_python">and</span> <span class="meta meta_function-call meta_function-call_python">lmb.isPositive()</span>

<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">if</span> apply_force:
	<span class="meta meta_function-call meta_function-call_python">GameLogic.addActiveActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">add_force, <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>)</span>
	own.force <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span>
</pre>
</pre>
</pre>
<h3><span class="comment comment_line comment_line_number-sign comment_line_number-sign_python">#fireaction.py</span></h3>
<pre class="textmate-source">
<pre class="sunburst">
<pre class="sunburst">cont <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">GameLogic.getCurrentController()</span>
own <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getOwner()</span>
ownAmmo <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">GameLogic.getCurrentScene()</span>.<span class="meta meta_function-call meta_function-call_python">getObjectList()</span><span class="meta meta_item-access meta_item-access_python">[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"OBAmmo"</span></span>]</span>
ownMags <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">GameLogic.getCurrentScene()</span>.<span class="meta meta_function-call meta_function-call_python">getObjectList()</span><span class="meta meta_item-access meta_item-access_python">[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"OBMags"</span></span>]</span>

endmag <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getSensor(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"endmag"</span></span>)</span>
lclick <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getSensor(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"lclick"</span></span>)</span> <span class="comment comment_line comment_line_number-sign comment_line_number-sign_python"># Just mouse click</span>
shoot <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getSensor(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"fire"</span></span>)</span> <span class="comment comment_line comment_line_number-sign comment_line_number-sign_python"># ACTUAL FIRE (rate control)</span>
R <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getSensor(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"R"</span></span>)</span>

recoil <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"recoil"</span></span>)</span> <span class="comment comment_line comment_line_number-sign comment_line_number-sign_python">#gun anim ipo</span>
fire <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"fire"</span></span>)</span> <span class="comment comment_line comment_line_number-sign comment_line_number-sign_python">#gun anim ipo</span>
trigger <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"trigger"</span></span>)</span>
magspawn <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"magspawn"</span></span>)</span>

<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">if</span> <span class="meta meta_function-call meta_function-call_python">endmag.isPositive()</span>:
	ownMags.Text <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_augmented keyword_operator_assignment_augmented_python">+=</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span>

<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">if</span> ownAmmo.Text <span class="keyword keyword_operator keyword_operator_comparison keyword_operator_comparison_python">&gt;</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span> <span class="keyword keyword_operator keyword_operator_logical keyword_operator_logical_python">and</span> <span class="meta meta_function-call meta_function-call_python">lclick.isPositive()</span>:
	<span class="comment comment_line comment_line_number-sign comment_line_number-sign_python">#This actuator "IS" the trigger (turns on shoot, at specific frame)</span>
	<span class="meta meta_function-call meta_function-call_python">GameLogic.addActiveActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">trigger, <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>)</span>

<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">if</span> <span class="meta meta_function-call meta_function-call_python">shoot.isPositive()</span>:
	ownAmmo.Text <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_augmented keyword_operator_assignment_augmented_python">-=</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span>
	<span class="meta meta_function-call meta_function-call_python">GameLogic.addActiveActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">recoil, <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>)</span>
	<span class="meta meta_function-call meta_function-call_python">GameLogic.addActiveActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">fire, <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>)</span>

<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">if</span> ownMags.Text <span class="keyword keyword_operator keyword_operator_comparison keyword_operator_comparison_python">&gt;</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span> <span class="keyword keyword_operator keyword_operator_logical keyword_operator_logical_python">and</span> ownAmmo.Text <span class="keyword keyword_operator keyword_operator_comparison keyword_operator_comparison_python">&lt;</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span> <span class="keyword keyword_operator keyword_operator_logical keyword_operator_logical_python">and</span> <span class="meta meta_function-call meta_function-call_python">R.isPositive()</span>:
	ownMags.Text <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_augmented keyword_operator_assignment_augmented_python">-=</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span>
	ownAmmo.Text <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">50</span>
	<span class="meta meta_function-call meta_function-call_python">GameLogic.addActiveActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">recoil, <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>)</span>
	<span class="meta meta_function-call meta_function-call_python">GameLogic.addActiveActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">magspawn, <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>)</span>
</pre>
</pre>
</pre>
<h3><span class="comment comment_line comment_line_number-sign comment_line_number-sign_python">#walk.py</span></h3>
<pre class="textmate-source">
<pre class="sunburst">
<pre class="sunburst">
<pre class="sunburst">cont <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">GameLogic.getCurrentController()</span>
own <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getOwner()</span>

g1 <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getSensor(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"g1"</span></span>)</span>.<span class="meta meta_function-call meta_function-call_python">isPositive()</span>
g2 <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getSensor(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"g2"</span></span>)</span>.<span class="meta meta_function-call meta_function-call_python">isPositive()</span>
g3 <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getSensor(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"g3"</span></span>)</span>.<span class="meta meta_function-call meta_function-call_python">isPositive()</span>
g4 <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getSensor(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"g4"</span></span>)</span>.<span class="meta meta_function-call meta_function-call_python">isPositive()</span>
jump <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getSensor(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"Space"</span></span>)</span>
fwd <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getSensor(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"W"</span></span>)</span>
back <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getSensor(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"S"</span></span>)</span>
slft <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getSensor(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"A"</span></span>)</span>
srght <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getSensor(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"D"</span></span>)</span>
shift <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getSensor(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"shift"</span></span>)</span>
lctrl <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getSensor(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"lctrl"</span></span>)</span>

act <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"floormove"</span></span>)</span>
crouch <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"crouch"</span></span>)</span>
idle <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"idle"</span></span>)</span> <span class="comment comment_line comment_line_number-sign comment_line_number-sign_python">#gun anim ipo</span>
run <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"run"</span></span>)</span> <span class="comment comment_line comment_line_number-sign comment_line_number-sign_python">#gun anim ipo</span>

ownc <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">crouch.getOwner()</span>

speed <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">6</span>
jspeed <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span>
sqrt2over2 <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="constant constant_numeric constant_numeric_float constant_numeric_float_python">0.70710678</span>

<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">if</span> g1 <span class="keyword keyword_operator keyword_operator_logical keyword_operator_logical_python">or</span> g2 <span class="keyword keyword_operator keyword_operator_logical keyword_operator_logical_python">or</span> g3 <span class="keyword keyword_operator keyword_operator_logical keyword_operator_logical_python">or</span> g4:

	<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">if</span> <span class="meta meta_function-call meta_function-call_python">lctrl.isPositive()</span>:
		speed <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">2</span>
		<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">if</span> ownc.frame <span class="keyword keyword_operator keyword_operator_comparison keyword_operator_comparison_python">&lt;</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">20</span>:
			ownc.frame <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_augmented keyword_operator_assignment_augmented_python">+=</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span>
			<span class="meta meta_function-call meta_function-call_python">GameLogic.addActiveActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">crouch, <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>)</span>
	<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">if</span>  <span class="keyword keyword_operator keyword_operator_logical keyword_operator_logical_python">not</span> <span class="meta meta_function-call meta_function-call_python">lctrl.isPositive()</span> <span class="keyword keyword_operator keyword_operator_logical keyword_operator_logical_python">and</span> ownc.frame <span class="keyword keyword_operator keyword_operator_comparison keyword_operator_comparison_python">&gt;</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span>:
		ownc.frame <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_augmented keyword_operator_assignment_augmented_python">-=</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span>
		<span class="meta meta_function-call meta_function-call_python">GameLogic.addActiveActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">crouch, <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>)</span>
	<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">else</span>:
		<span class="meta meta_function-call meta_function-call_python">GameLogic.addActiveActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">crouch, <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span></span>)</span>

	<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">if</span> <span class="meta meta_function-call meta_function-call_python">shift.isPositive()</span>:
		speed <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">3</span>

	fspeed <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> speed <span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">*</span> (<span class="meta meta_function-call meta_function-call_python">fwd.isPositive()</span> <span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">-</span> <span class="meta meta_function-call meta_function-call_python">back.isPositive()</span>)
	sspeed <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> speed <span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">*</span> (<span class="meta meta_function-call meta_function-call_python">srght.isPositive()</span> <span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">-</span> <span class="meta meta_function-call meta_function-call_python">slft.isPositive()</span>)

	<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">if</span> fspeed <span class="keyword keyword_operator keyword_operator_logical keyword_operator_logical_python">and</span> sspeed:
		fspeed <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_augmented keyword_operator_assignment_augmented_python">*=</span> sqrt2over2
		sspeed <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_augmented keyword_operator_assignment_augmented_python">*=</span> sqrt2over2

	<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">if</span> own.rel <span class="keyword keyword_operator keyword_operator_comparison keyword_operator_comparison_python">==</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span>:
		fspeed <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span>
		sspeed <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span>

	<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">if</span> <span class="keyword keyword_operator keyword_operator_logical keyword_operator_logical_python">not</span> <span class="meta meta_function-call meta_function-call_python">jump.isPositive()</span>:
		own.jstate <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span>

	<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">if</span> <span class="meta meta_function-call meta_function-call_python">jump.isPositive()</span> <span class="keyword keyword_operator keyword_operator_logical keyword_operator_logical_python">and</span> own.jstate <span class="keyword keyword_operator keyword_operator_comparison keyword_operator_comparison_python">==</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span>:
		jspeed <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">6</span>
		own.jstate <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span>
		own.rel <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span>

	<span class="meta meta_function-call meta_function-call_python">act.setLinearVelocity(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">sspeed, fspeed, jspeed, <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>)</span>
	<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">if</span> <span class="meta meta_structure meta_structure_list meta_structure_list_python">[<span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python">sspeed</span>, <span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python">fspeed</span>, <span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python">jspeed</span>]</span> <span class="keyword keyword_operator keyword_operator_comparison keyword_operator_comparison_python">==</span> <span class="meta meta_structure meta_structure_list meta_structure_list_python">[<span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span></span>, <span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span></span>, <span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span></span>]</span>:
		<span class="meta meta_function-call meta_function-call_python">GameLogic.addActiveActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">idle, <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>)</span>
		<span class="meta meta_function-call meta_function-call_python">GameLogic.addActiveActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">run, <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span></span>)</span>
		<span class="meta meta_function-call meta_function-call_python">GameLogic.addActiveActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">act, <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span></span>)</span>
	<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">else</span>:
		<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">if</span> (<span class="meta meta_function-call meta_function-call_python">lctrl.isPositive()</span> <span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">+</span> <span class="meta meta_function-call meta_function-call_python">shift.isPositive()</span> <span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">+</span> jspeed) <span class="keyword keyword_operator keyword_operator_comparison keyword_operator_comparison_python">==</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span>:
			<span class="meta meta_function-call meta_function-call_python">GameLogic.addActiveActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">idle, <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span></span>)</span>
			<span class="meta meta_function-call meta_function-call_python">GameLogic.addActiveActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">run, <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>)</span>
		<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">else</span>:
			<span class="meta meta_function-call meta_function-call_python">GameLogic.addActiveActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">idle, <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>)</span>
			<span class="meta meta_function-call meta_function-call_python">GameLogic.addActiveActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">run, <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span></span>)</span>
		<span class="meta meta_function-call meta_function-call_python">GameLogic.addActiveActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">act, <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>)</span>
<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">else</span>:
	<span class="meta meta_function-call meta_function-call_python">GameLogic.addActiveActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">act, <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span></span>)</span>
	own.rel <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span>
</pre>
</pre>
</pre>
</pre>
<h3><span class="comment comment_line comment_line_number-sign comment_line_number-sign_python">#bullethole.py</span></h3>
<pre class="textmate-source">
<pre class="sunburst">
<pre class="sunburst">
<pre class="sunburst"><span class="keyword keyword_control keyword_control_import keyword_control_import_from keyword_control_import_from_python">from</span> math <span class="keyword keyword_control keyword_control_import keyword_control_import_python">import</span> sin, cos, sqrt

<span class="comment comment_line comment_line_number-sign comment_line_number-sign_python"># vector functions</span>
<span class="meta meta_function meta_function_python"><span class="storage storage_type storage_type_function storage_type_function_python">def</span> <span class="entity entity_name entity_name_function entity_name_function_python">VEC_length</span>(<span class="meta meta_function meta_function_parameters meta_function_parameters_python"><span class="variable variable_parameter variable_parameter_function variable_parameter_function_python">x</span></span>):</span>
	<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">return</span> <span class="meta meta_function-call meta_function-call_python">sqrt(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="meta meta_item-access meta_item-access_python">x[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span></span>]</span><span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">*</span><span class="meta meta_item-access meta_item-access_python">x[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span></span>]</span><span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">+</span><span class="meta meta_item-access meta_item-access_python">x[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>]</span><span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">*</span><span class="meta meta_item-access meta_item-access_python">x[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>]</span><span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">+</span><span class="meta meta_item-access meta_item-access_python">x[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">2</span></span>]</span><span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">*</span><span class="meta meta_item-access meta_item-access_python">x[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">2</span></span>]</span></span>)</span>
<span class="meta meta_function meta_function_python"><span class="storage storage_type storage_type_function storage_type_function_python">def</span> <span class="entity entity_name entity_name_function entity_name_function_python">VEC_normalize</span>(<span class="meta meta_function meta_function_parameters meta_function_parameters_python"><span class="variable variable_parameter variable_parameter_function variable_parameter_function_python">x</span></span>):</span>
	length <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">VEC_length(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">x</span>)</span>
	<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">return</span> <span class="meta meta_structure meta_structure_list meta_structure_list_python">[<span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python"><span class="meta meta_item-access meta_item-access_python">x[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span></span>]</span><span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">/</span>length</span>,<span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python"><span class="meta meta_item-access meta_item-access_python">x[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>]</span><span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">/</span>length</span>,<span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python"><span class="meta meta_item-access meta_item-access_python">x[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">2</span></span>]</span><span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">/</span>length</span>]</span>
<span class="meta meta_function meta_function_python"><span class="storage storage_type storage_type_function storage_type_function_python">def</span> <span class="entity entity_name entity_name_function entity_name_function_python">VEC_cross</span>(<span class="meta meta_function meta_function_parameters meta_function_parameters_python"><span class="variable variable_parameter variable_parameter_function variable_parameter_function_python">x</span>, <span class="variable variable_parameter variable_parameter_function variable_parameter_function_python">y</span></span>):</span>
	<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">return</span>  <span class="meta meta_structure meta_structure_list meta_structure_list_python">[<span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python"><span class="meta meta_item-access meta_item-access_python">x[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>]</span><span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">*</span><span class="meta meta_item-access meta_item-access_python">y[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">2</span></span>]</span> <span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">-</span> <span class="meta meta_item-access meta_item-access_python">x[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">2</span></span>]</span><span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">*</span><span class="meta meta_item-access meta_item-access_python">y[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>]</span></span>,<span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python">
			 <span class="meta meta_item-access meta_item-access_python">x[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">2</span></span>]</span><span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">*</span><span class="meta meta_item-access meta_item-access_python">y[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span></span>]</span> <span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">-</span> <span class="meta meta_item-access meta_item-access_python">x[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span></span>]</span><span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">*</span><span class="meta meta_item-access meta_item-access_python">y[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">2</span></span>]</span></span>,<span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python">
			 <span class="meta meta_item-access meta_item-access_python">x[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span></span>]</span><span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">*</span><span class="meta meta_item-access meta_item-access_python">y[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>]</span> <span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">-</span> <span class="meta meta_item-access meta_item-access_python">x[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>]</span><span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">*</span><span class="meta meta_item-access meta_item-access_python">y[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span></span>]</span></span>]</span>
<span class="meta meta_function meta_function_python"><span class="storage storage_type storage_type_function storage_type_function_python">def</span> <span class="entity entity_name entity_name_function entity_name_function_python">VEC_min</span>(<span class="meta meta_function meta_function_parameters meta_function_parameters_python"><span class="variable variable_parameter variable_parameter_function variable_parameter_function_python">x</span>, <span class="variable variable_parameter variable_parameter_function variable_parameter_function_python">y</span></span>):</span>
	<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">return</span> <span class="meta meta_structure meta_structure_list meta_structure_list_python">[<span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python"><span class="meta meta_item-access meta_item-access_python">x[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span></span>]</span> <span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">-</span> <span class="meta meta_item-access meta_item-access_python">y[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span></span>]</span></span>, <span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python"><span class="meta meta_item-access meta_item-access_python">x[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>]</span> <span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">-</span> <span class="meta meta_item-access meta_item-access_python">y[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>]</span></span>, <span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python"><span class="meta meta_item-access meta_item-access_python">x[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">2</span></span>]</span> <span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">-</span> <span class="meta meta_item-access meta_item-access_python">y[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">2</span></span>]</span></span>]</span>
<span class="meta meta_function meta_function_python"><span class="storage storage_type storage_type_function storage_type_function_python">def</span> <span class="entity entity_name entity_name_function entity_name_function_python">MAT_trackvector</span>(<span class="meta meta_function meta_function_parameters meta_function_parameters_python"><span class="variable variable_parameter variable_parameter_function variable_parameter_function_python">fw</span>, <span class="variable variable_parameter variable_parameter_function variable_parameter_function_python">y</span></span>):</span>
	<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">if</span> <span class="meta meta_function-call meta_function-call_python"><span class="support support_function support_function_builtin support_function_builtin_python">abs</span>(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="meta meta_function-call meta_function-call_python"><span class="support support_function support_function_builtin support_function_builtin_python">abs</span>(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="meta meta_item-access meta_item-access_python">fw[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">2</span></span>]</span></span>)</span> <span class="keyword keyword_operator keyword_operator_arithmetic keyword_operator_arithmetic_python">-</span> <span class="meta meta_function-call meta_function-call_python"><span class="support support_function support_function_builtin support_function_builtin_python">abs</span>(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="meta meta_item-access meta_item-access_python">y[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">2</span></span>]</span></span>)</span></span>)</span> <span class="keyword keyword_operator keyword_operator_comparison keyword_operator_comparison_python">&lt;</span> <span class="constant constant_numeric constant_numeric_float constant_numeric_float_python">.001</span>: <span class="comment comment_line comment_line_number-sign comment_line_number-sign_python">#prevent gimbol lock</span>
		<span class="meta meta_function-call meta_function-call_python">y.append(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="meta meta_item-access meta_item-access_python">y[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span></span>]</span></span>)</span>
		<span class="keyword keyword_other keyword_other_python">del</span> <span class="meta meta_item-access meta_item-access_python">y[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span></span>]</span>
	right <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">VEC_normalize(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="meta meta_function-call meta_function-call_python">VEC_cross(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">y, fw</span>)</span></span>)</span>
	up <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">VEC_cross(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">fw, right</span>)</span>
	<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">return</span> <span class="meta meta_structure meta_structure_list meta_structure_list_python">[<span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python"><span class="meta meta_structure meta_structure_list meta_structure_list_python">[<span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python"><span class="meta meta_item-access meta_item-access_python">right[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span></span>]</span></span>, <span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python"><span class="meta meta_item-access meta_item-access_python">up[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span></span>]</span></span>, <span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python"><span class="meta meta_item-access meta_item-access_python">fw[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span></span>]</span></span>]</span></span>,<span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python">
		<span class="meta meta_structure meta_structure_list meta_structure_list_python">[<span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python"><span class="meta meta_item-access meta_item-access_python">right[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>]</span></span>, <span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python"><span class="meta meta_item-access meta_item-access_python">up[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>]</span></span>, <span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python"><span class="meta meta_item-access meta_item-access_python">fw[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>]</span></span>]</span></span>,<span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python">
		<span class="meta meta_structure meta_structure_list meta_structure_list_python">[<span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python"><span class="meta meta_item-access meta_item-access_python">right[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">2</span></span>]</span></span>, <span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python"><span class="meta meta_item-access meta_item-access_python">up[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">2</span></span>]</span></span>, <span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python"><span class="meta meta_item-access meta_item-access_python">fw[<span class="meta meta_item-access meta_item-access_arguments meta_item-access_arguments_python"><span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">2</span></span>]</span></span>]</span></span>]</span>

cont <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">GameLogic.getCurrentController()</span>
obj <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getOwner()</span>
ray_sensor <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getSensor(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"ray_bullet"</span></span>)</span>
lmb_sensor <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getSensor(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"fire"</span></span>)</span>
add_bullet_act <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">cont.getActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="string string_quoted string_quoted_double string_quoted_double_single-line string_quoted_double_single-line_python">"add_bullet"</span></span>)</span>

<span class="comment comment_line comment_line_number-sign comment_line_number-sign_python"># position the last added bullet hole</span>
newobj <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">add_bullet_act.getLastCreatedObject()</span>
<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">if</span> obj.ebhole <span class="keyword keyword_operator keyword_operator_logical keyword_operator_logical_python">and</span> <span class="meta meta_function-call meta_function-call_python">ray_sensor.isPositive()</span>:
	hit_pos <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">ray_sensor.getHitPosition()</span>
	hit_norm <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">ray_sensor.getHitNormal()</span>
	<span class="meta meta_function-call meta_function-call_python">newobj.setOrientation(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python"><span class="meta meta_function-call meta_function-call_python">MAT_trackvector(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">hit_norm, <span class="meta meta_structure meta_structure_list meta_structure_list_python">[<span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python"><span class="constant constant_numeric constant_numeric_float constant_numeric_float_python">0.0</span></span>,<span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python"><span class="constant constant_numeric constant_numeric_float constant_numeric_float_python">0.0</span></span>,<span class="meta meta_structure meta_structure_list meta_structure_list_item meta_structure_list_item_python"><span class="constant constant_numeric constant_numeric_float constant_numeric_float_python">1.0</span></span>]</span></span>)</span></span>)</span>
	<span class="meta meta_function-call meta_function-call_python">newobj.setPosition(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">hit_pos</span>)</span>
	obj.ebhole <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">0</span>

<span class="comment comment_line comment_line_number-sign comment_line_number-sign_python"># determine wether or not to create a new bullet hole</span>
make_bullet <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="meta meta_function-call meta_function-call_python">ray_sensor.isPositive()</span> <span class="keyword keyword_operator keyword_operator_logical keyword_operator_logical_python">and</span> <span class="meta meta_function-call meta_function-call_python">lmb_sensor.isPositive()</span>

<span class="keyword keyword_control keyword_control_flow keyword_control_flow_python">if</span> make_bullet:
	<span class="meta meta_function-call meta_function-call_python">GameLogic.addActiveActuator(<span class="meta meta_function-call meta_function-call_arguments meta_function-call_arguments_python">add_bullet_act, <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span></span>)</span>
	obj.ebhole <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_python">=</span> <span class="constant constant_numeric constant_numeric_integer constant_numeric_integer_decimal constant_numeric_integer_decimal_python">1</span>
</pre>
</pre>
<blockquote>
<p style="text-align:right;padding-left:30px;">Kalo mau file yang kami pakai demo, bisa download <a href="http://www.4shared.com/file/SisdZaui/FPS_template.html">di sini</a>.</p>
<p style="text-align:right;padding-left:30px;">Supported by <a href="http://studioasiah.com/">Studio Asiah dot Com</a> &amp; <a href="http://kemasdimas.com/">KemasDimas.Com : Catatan Harian Untuk Berbagi</a></p>
</blockquote>
</pre>
</pre>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kuliahvrits.wordpress.com/140/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kuliahvrits.wordpress.com/140/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kuliahvrits.wordpress.com/140/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kuliahvrits.wordpress.com/140/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kuliahvrits.wordpress.com/140/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kuliahvrits.wordpress.com/140/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kuliahvrits.wordpress.com/140/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kuliahvrits.wordpress.com/140/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kuliahvrits.wordpress.com/140/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kuliahvrits.wordpress.com/140/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kuliahvrits.wordpress.com/140/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kuliahvrits.wordpress.com/140/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kuliahvrits.wordpress.com/140/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kuliahvrits.wordpress.com/140/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kuliahvrits.wordpress.com&amp;blog=12325633&amp;post=140&amp;subd=kuliahvrits&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kuliahvrits.wordpress.com/2010/06/14/review-blender-gamekit-physic-engine/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<georss:point>-7.287243 112.739048</georss:point>
		<geo:lat>-7.287243</geo:lat>
		<geo:long>112.739048</geo:long>
		<media:content url="http://1.gravatar.com/avatar/7a5296daf292c2334e163018e083729b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">riffdotblend</media:title>
		</media:content>

		<media:content url="http://kemasdimas.com/images/blender/interface_lg.png" medium="image">
			<media:title type="html">http://www.techimo.com/images/img2/blender3d/interface_lg.png</media:title>
		</media:content>

		<media:content url="http://kemasdimas.com/images/blender/modelling_lg.png" medium="image">
			<media:title type="html">http://www.techimo.com/images/img2/blender3d/modelling_lg.png</media:title>
		</media:content>

		<media:content url="http://kemasdimas.com/images/blender/animation_lg.png" medium="image">
			<media:title type="html">http://www.techimo.com/images/img2/blender3d/animation_lg.png</media:title>
		</media:content>

		<media:content url="http://kemasdimas.com/images/blender/realtime_lg.png" medium="image">
			<media:title type="html">http://www.techimo.com/images/img2/blender3d/realtime_lg.png</media:title>
		</media:content>
	</item>
		<item>
		<title>Physics Engine dengan Unity3D</title>
		<link>http://kuliahvrits.wordpress.com/2010/06/14/physics-engine-dengan-unity3d/</link>
		<comments>http://kuliahvrits.wordpress.com/2010/06/14/physics-engine-dengan-unity3d/#comments</comments>
		<pubDate>Mon, 14 Jun 2010 07:20:00 +0000</pubDate>
		<dc:creator>fitraraditya</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Physic Engine]]></category>
		<category><![CDATA[Unity]]></category>

		<guid isPermaLink="false">http://kuliahvrits.wordpress.com/?p=119</guid>
		<description><![CDATA[Unity adalah game engine berbasis 3D yang berjalan di windows dan Mac OS X platform. Dengan Unity dapat dihasilkan game berplatform Windows, Mac, Wii, ipad atau iphone. Selain itu dapat juga dihasilkan browser game yang dapat dimainkan dengan menginstall Unity web player plugin yang dapat dimainkan seperti halnya game-game flash pada umumnya. Unity terdapat dua [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kuliahvrits.wordpress.com&amp;blog=12325633&amp;post=119&amp;subd=kuliahvrits&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Unity adalah game engine berbasis 3D yang berjalan di windows dan Mac OS X  platform. Dengan Unity dapat dihasilkan game berplatform Windows, Mac,  Wii, ipad atau iphone. Selain itu dapat juga dihasilkan browser game  yang dapat dimainkan dengan menginstall Unity web player plugin yang dapat dimainkan seperti  halnya game-game flash pada umumnya. Unity terdapat dua macam versi, yaitu versi free dan pro. Untuk versi free memiliki fitur dan assets yang terbatas. Tetapi untuk sekedar belajar atau mengembangkan suatu aplikasi sederhana Unity versi free dirasa cukup.</p>
<p style="text-align:center;"><img class="aligncenter" src="http://unity3d.com/unity/features/images/overview-broad.jpg" alt="Unity" width="327" height="180" /></p>
<p>Unity menawarkan beberapa fitur untuk menangani physic, antara lain:</p>
<ol>
<li>NVIDIA® PhysX®</li>
<p>Built in for NVIDIA</p>
<li>Rigidbodies</li>
<p>Dengan rigidbodies dapat disimulasikan tabrakan, tekanan serta joint tanpa menambahkan suatu script apapun.<br />
<img src="http://unity3d.com/support/documentation/Images/manual/class-Rigidbody-0.jpg" alt="Rigidbodies" /></p>
<p>Dalam rigidbody ada beberapa property yang mengatur pergerakan suatu object, antara lain:</p>
<ul>
<li><strong>Mass</strong>: massa object dalam kilogram. Direkomendasikan nilai suatu massa  object tidak kurang dari 100 kali dari object rigidbody yang lain.</li>
<li><strong>Drag</strong>: nilai dari hambatan udara dengan object. 0 berarti  tidak ada hambatan udara, dan tak terhingga membuat objek berhenti seketika.</li>
<li><strong>Angular Drag</strong>: nilai dari hambatan udara yang mempengaruhi object ketika berputar pada torsinya. 0  berarti tidak ada hambatan udara, dan tak terhingga membuat objek segera  berhenti berputar.</li>
<li><strong>Use Gravity</strong>: suatu object apakah dipengaruhi oleh gravitasi atau tidak.</li>
<li><strong>Is Kinematic</strong>: jika diaktifkan, maka object tidak dipengaruhi oleh physic engine tetapi oleh transform.</li>
<li><strong>Interpolate</strong>: gunakan property ini jika terjadi keanehan dalam object.</li>
<li><strong>Freeze Rotation</strong>: jika diaktifkan maka object tidak akan dirotasi selain menggunakan <strong>transform.Rotate()</strong></li>
</ul>
<li>Joints</li>
<p>Engsel, sendi dalam pembuatan object 3D dapat dengan mudah disimulasikan dengan Unity.</p>
<li>Ragdolls</li>
<p>Unity mempunyai wizard yang dalam sekejap dapat membuat ragdoll dari sebuah animated character. Dalam ragdoll ini dapat disisipkan suatu script sehingga mempunyai behavior tersendiri.</p>
<span style="text-align:center; display: block;"><a href="http://kuliahvrits.wordpress.com/2010/06/14/physics-engine-dengan-unity3d/"><img src="http://img.youtube.com/vi/g0lTE4sCyKI/2.jpg" alt="" /></a></span>
<li>Cars</li>
<p>Membuat Game balap belum pernah semudah mengunakan Unity. Unity menyediakan wheel collider yang secara akurat menyimulasikan traksi roda pada ban.</p>
<p><span style="text-align:center; display: block;"><a href="http://kuliahvrits.wordpress.com/2010/06/14/physics-engine-dengan-unity3d/"><img src="http://img.youtube.com/vi/gv9c_C2O1-0/2.jpg" alt="" /></a></span></ol>
<p style="text-align:center;">Di bawah ini adalah beberapa screenshot dari program unity yang telah dibuat oleh kelompok kami.<br />
<img class="aligncenter" src="http://i47.tinypic.com/33l36lz.jpg" alt="Sebuah Object Pesawat yang mempunyai gravitasi" width="480" height="300" /><br />
<img class="aligncenter" src="http://i48.tinypic.com/2mmcp01.jpg" alt="Pohon yang mempunyai efek rigidbody" width="480" height="300" /><br />
<img class="aligncenter" src="http://i49.tinypic.com/2sbo47r.jpg" alt="Event collide untuk tong dan senapan" width="480" height="300" /><br />
<img class="aligncenter" src="http://i47.tinypic.com/2ahscd5.jpg" alt="" width="480" height="300" /></p>
<p><a href="http://unity3d.com/support/documentation/Components/comp-DynamicsGroup.html">REFERENSI UNTUK UNITY PHYSIC ENGINE</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/kuliahvrits.wordpress.com/119/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/kuliahvrits.wordpress.com/119/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/kuliahvrits.wordpress.com/119/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/kuliahvrits.wordpress.com/119/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/kuliahvrits.wordpress.com/119/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/kuliahvrits.wordpress.com/119/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/kuliahvrits.wordpress.com/119/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/kuliahvrits.wordpress.com/119/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/kuliahvrits.wordpress.com/119/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/kuliahvrits.wordpress.com/119/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/kuliahvrits.wordpress.com/119/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/kuliahvrits.wordpress.com/119/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/kuliahvrits.wordpress.com/119/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/kuliahvrits.wordpress.com/119/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kuliahvrits.wordpress.com&amp;blog=12325633&amp;post=119&amp;subd=kuliahvrits&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://kuliahvrits.wordpress.com/2010/06/14/physics-engine-dengan-unity3d/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1d1b25d865842b5c35df30270b4fae65?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">dith</media:title>
		</media:content>

		<media:content url="http://unity3d.com/unity/features/images/overview-broad.jpg" medium="image">
			<media:title type="html">Unity</media:title>
		</media:content>

		<media:content url="http://unity3d.com/support/documentation/Images/manual/class-Rigidbody-0.jpg" medium="image">
			<media:title type="html">Rigidbodies</media:title>
		</media:content>

		<media:content url="http://i47.tinypic.com/33l36lz.jpg" medium="image">
			<media:title type="html">Sebuah Object Pesawat yang mempunyai gravitasi</media:title>
		</media:content>

		<media:content url="http://i48.tinypic.com/2mmcp01.jpg" medium="image">
			<media:title type="html">Pohon yang mempunyai efek rigidbody</media:title>
		</media:content>

		<media:content url="http://i49.tinypic.com/2sbo47r.jpg" medium="image">
			<media:title type="html">Event collide untuk tong dan senapan</media:title>
		</media:content>

		<media:content url="http://i47.tinypic.com/2ahscd5.jpg" medium="image" />
	</item>
	</channel>
</rss>
