<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2793703685740109568</id><updated>2024-10-24T11:50:36.373+01:00</updated><category term="game"/><category term="rendering"/><category term="shaders"/><category term="life"/><category term="procrastination"/><category term="games"/><category term="portal"/><category term="linux"/><category term="3d printer"/><category term="books"/><category term="films"/><title type='text'>I really need a title!</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>52</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-2936875470547180542</id><published>2012-05-16T20:40:00.001+01:00</published><updated>2012-05-16T20:41:34.246+01:00</updated><title type='text'>So, I haven&#39;t blogged for the last few months...</title><content type='html'>I have, however:&lt;br /&gt;
&lt;br /&gt;
Rewritten most of the game code, improving nearly every bit in some way. It now loads faster, handles materials sensibly, is more flexible in general, handles physics meshes, and has consistent units and standards. Still needs light, improvements to the character controller, AI, load manager, region format, and sound spatialisation.&lt;br /&gt;
&lt;br /&gt;
Almost finished the moped:&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;480&quot; src=&quot;http://www.youtube.com/embed/JKTQG56nD6I&quot; width=&quot;853&quot;&gt;&lt;/iframe&gt;
&lt;/div&gt;
It just needs a couple of changes to the loom/code/variator to increase the top speed, a bigger battery set with 12v module, speedo calibration and bodywork replacement.&lt;br /&gt;
&lt;br /&gt;
Printed ABS and PLA (to some standard, anyway - I need to improve X tension, reduce wobble, heat the bed better and improve extruder calibration, but I&#39;ve had some strong, if ugly and dimensionally-dubious prints. It doesn&#39;t really cope with circles yet, but that can all be tuned.&lt;br /&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;&lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;480&quot; src=&quot;http://www.youtube.com/embed/rLdrCT1X3_E&quot; width=&quot;853&quot;&gt;&lt;/iframe&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
Seen some cool stuff:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://i.imgur.com/b4NHUh.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;425&quot; src=&quot;http://i.imgur.com/b4NHUh.jpg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
I&#39;ve just entered exam season once again, so this post will likely be a one-off until the summer.&lt;br /&gt;
&lt;br /&gt;
Charlie.</content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/2936875470547180542/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2012/05/so-i-havent-blogged-for-last-few-months.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/2936875470547180542'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/2936875470547180542'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2012/05/so-i-havent-blogged-for-last-few-months.html' title='So, I haven&#39;t blogged for the last few months...'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/JKTQG56nD6I/default.jpg" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-7322328532912483229</id><published>2012-01-16T00:30:00.000+00:00</published><updated>2012-01-16T02:42:40.203+00:00</updated><title type='text'>Physics</title><content type='html'>&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://imgur.com/IwnBu&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;http://i.imgur.com/IwnBul.jpg&quot; title=&quot;Hosted by imgur.com&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;There are 1002 balls in that picture. Feel free to count, I checked.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
Revision was *so* interesting that I took some time out to make that. Still not handling rotation, input or meshes yet (hence spheres, only bouncing vertically).&lt;br /&gt;
&lt;br /&gt;
Next week&#39;s post will probably be non-existent, given that I will have 4 exams in as many days.&lt;br /&gt;
&lt;br /&gt;
Charlie</content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/7322328532912483229/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2012/01/physics.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/7322328532912483229'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/7322328532912483229'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2012/01/physics.html' title='Physics'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-8892299557621257476</id><published>2012-01-09T02:50:00.000+00:00</published><updated>2012-01-09T02:51:20.049+00:00</updated><title type='text'>One Year</title><content type='html'>It&#39;s been about a year now since I started blogging every week - I&#39;m not sure yet, but it might be a good time to take a break, at least until exams are over.&lt;br /&gt;
&lt;br /&gt;
In this time, I&#39;ve:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Applied to University&lt;/li&gt;
&lt;li&gt;All but finished a 3D printer&lt;/li&gt;
&lt;li&gt;Learned about, written the sframework and renderer for a game engine&lt;/li&gt;
&lt;li&gt;Taken my AS-level exams and the DT A2 exam&lt;/li&gt;
&lt;li&gt;Torn down and bought the parts for an electric moped&lt;/li&gt;
&lt;li&gt;Helped shoot much of Yaseen&#39;s film&lt;/li&gt;
&lt;li&gt;Obtained the electronics and most of the physical parts for the quadrotor&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
So it&#39;s been pretty productive. Maybe this year I&#39;ll actually finish some more of these projects though!&lt;br /&gt;
Charlie</content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/8892299557621257476/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2012/01/52.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/8892299557621257476'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/8892299557621257476'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2012/01/52.html' title='One Year'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-6571883547807680077</id><published>2012-01-02T02:35:00.000+00:00</published><updated>2012-01-02T04:44:11.973+00:00</updated><title type='text'>Skeletons loaded!</title><content type='html'>So, I worked on skeletal animation and audio with varying degrees of success. Below is my second attempt (the intended model is shown somewhere below - it&#39;s a Hellknight from Doom):&lt;br /&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://imgur.com/sCKf8&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;http://i.imgur.com/sCKf8.png&quot; title=&quot;Hosted by imgur.com&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Not as beefy as the designers intended...?&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
Which, whilst bad, isn&#39;t as awful as my first attempt:&lt;br /&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://imgur.com/NrgzN&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;http://i.imgur.com/NrgzN.png&quot; title=&quot;Hosted by imgur.com&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Aforementioned&amp;nbsp;first attempt. Don&#39;t laugh...&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
Whilst it was looking almost humanoid, clearly something wasn&#39;t quite right. Since an unfortunate number of points were getting crushed towards the centre, and the head was the worst-affected, I thought it might be due to my rotation code. After disabling that and changing the direction in which the model is &quot;wound&quot; (clockwise vs anti-clockwise winding of points on the faces), I had the following:&lt;br /&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://imgur.com/le4L2&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;http://i.imgur.com/le4L2.png&quot; title=&quot;Hosted by imgur.com&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/The_Scream&quot;&gt;Ugly but better...&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
Finally realising a couple of pathetically silly mistakes (the transformed points being in the order w,x,y,z but instead using w, x,y and throwing away the z component, explaining the x-crushing, and doing the multiplications in reverse order), I was able to get the following:&lt;br /&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://imgur.com/ttYCy&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;http://i.imgur.com/ttYCy.png&quot; title=&quot;Hosted by imgur.com&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Success...&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
The edges of each skeleton are fuzzed because, like nearly everything, my anti-aliasing is now in a buggy, ghostly half-finished state (which is good - bug-hunting is much more fun and satisfying than writing from scratch, and jaggies are worse than the ghosting). The balls in the scenes (around the feet) are some more testing code I couldn&#39;t be bothered to switch off - they&#39;re sound emitters, moving around the scene emitting sound, as you might expect a sound emitter to do. I&#39;m not going to spend any more time on skeletons until time management is done better, so that it&#39;ll know what frame and sub-frame of animation to play.&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;
I&#39;ve also changed how lighting attenuation functions - now, an artist can define how lights fall off with distance. The next thing on the list is physics - I&#39;ve had some basic motion working in the engine but it&#39;s still very, very broken at the moment.&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Progress list:&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;u&gt;Still not started ,or architected terribly and completely broken&lt;/u&gt;&lt;/div&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;Physics/game logic/scene management/trees&lt;/li&gt;
&lt;li&gt;Shadowing&lt;/li&gt;
&lt;li&gt;Skybox and Water shaders.&lt;/li&gt;
&lt;li&gt;HUD&lt;/li&gt;
&lt;li&gt;Environment mapping&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;u&gt;Partially broken or significant work needed:&lt;/u&gt;&lt;/div&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;Audio, particularly spatial and streaming&lt;/li&gt;
&lt;li&gt;Speed of lighting, especially stencilling ops - avoid them using FragCoord, minimise calculations wherever possible.&lt;/li&gt;
&lt;li&gt;Skeleton interpolation&lt;/li&gt;
&lt;li&gt;Intersection&lt;/li&gt;
&lt;li&gt;Resource/update/download/network management&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;u&gt;To improve:&lt;/u&gt;&lt;/div&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;Antialiasing&lt;/li&gt;
&lt;li&gt;Time manager&lt;/li&gt;
&lt;li&gt;Light equation/materials/BDRF used&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Input and key binding (ties in with game logic)&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;u&gt;To touch up:&lt;/u&gt;&lt;/div&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;Model Format/Optimisation&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div&gt;
Of those, gameplay, physics, skeleton and sound are all that still need work before the game is playable for development purposes. If people are willing to play audio-less with a ball for a character, it&#39;s almost playable right now - as soon as I sort the physics problems I&#39;ve been having, I&#39;ll have a controllable ball interacting with the world.&lt;br /&gt;
&lt;br /&gt;
Charlie&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/6571883547807680077/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/12/skeletons-loaded.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/6571883547807680077'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/6571883547807680077'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/12/skeletons-loaded.html' title='Skeletons loaded!'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-6968081913050925305</id><published>2011-12-26T19:03:00.000+00:00</published><updated>2011-12-30T23:40:54.239+00:00</updated><title type='text'>Not Skeletal Animation</title><content type='html'>The set of points from last week were the raw data of the &quot;skeleton&quot; of a Hellknight from Doom 3 - I&#39;d intended to have skeletal animation at least somewhat working by today. No such luck, though I did fix the final issues of native library loading - it can now manage its own native code entirely, after adapting to some updates to JOGL, with a patch to skip over the part that my code already handles.&lt;br /&gt;
&lt;br /&gt;
On the 3D printer, I added the Y-endstops (both home and end), and calibrated and tidied the wiring almost completely. All that remains before actually printing parts now is the X-axis belt and endstop setup (and using a spirit level to re-level the machine). A heated bed might be necessary to get the best-quality prints, though I&#39;ll see how it performs without first.&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://imgur.com/fxb2T&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;640&quot; src=&quot;http://i.imgur.com/fxb2T.jpg&quot; title=&quot;Hosted by imgur.com&quot; width=&quot;425&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;The motor for my moped arrived, too...&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;/div&gt;
Finally, if you haven&#39;t already got it, there&#39;s possibly still time to pick up a copy of the &lt;a href=&quot;http://www.humblebundle.com/&quot;&gt;Humble Indie Bundle&lt;/a&gt;&amp;nbsp;(4) - pay what you want for some pretty awesome games (probably most notably, Super Meat Boy and Shank, both of which are gore-intense but brilliant games).&lt;br /&gt;
&lt;br /&gt;
Charlie&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/6968081913050925305/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/12/not-skeletal-animation.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/6968081913050925305'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/6968081913050925305'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/12/not-skeletal-animation.html' title='Not Skeletal Animation'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-5837767665422682786</id><published>2011-12-19T00:30:00.000+00:00</published><updated>2011-12-19T00:32:48.200+00:00</updated><title type='text'>Big steps</title><content type='html'>&lt;div style=&quot;text-align: center;&quot;&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
So, I&#39;ve made some pretty big leaps forward in the game programming:&amp;nbsp;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://imgur.com/Kpwaz&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;400&quot; src=&quot;http://i.imgur.com/Kpwaz.jpg&quot; title=&quot;Hosted by imgur.com&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;First half of edge detection&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
For the anti-aliasing, I decided to use a method pretty much exactly as used in &lt;a href=&quot;http://www.stalker-game.com/&quot;&gt;STALKER&lt;/a&gt;&amp;nbsp;- so far, it&#39;s only detecting edges via the surface normals, but soon it&#39;ll also use the depth buffer, to ensure that all the edges are &quot;caught&quot; (look at the pot on the left - its edge hasn&#39;t been detected because the change in surface direction between the two surfaces isn&#39;t great enough. Once all the edges have been detected, it&#39;s a simple and quick step to blur them and so cheaply &quot;fix&quot; aliasing.&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
This step is a post-processing step, as is &lt;a href=&quot;http://en.wikipedia.org/wiki/Screen_Space_Ambient_Occlusion&quot;&gt;SSAO&lt;/a&gt;. I&#39;ve also started to implement SSAO, though it needs configuring for the scene, and the blurring step is still not yet complete - it has to take into account depth, or the shadows will &quot;bleed&quot; onto bits they shouldn&#39;t. The final steps are exposure and colour correction - colour correction I&#39;ve already done, but in lower-quality versions, and exposure is still in the works (fixed exposure only works at the moment).&lt;br /&gt;
&lt;br /&gt;
I also wrote most of the intersection tests, which are going to form a fairly important part of the physics system, level layout and rendering optimisations. The overall plan is that every object in the world will be given a &quot;bounding box&quot;, and quickly checked against the feature in question (for example, for checking if an object is visible, it&#39;s checked against the viewing frustrum, or for physics, a ray representing the motion of an object can be checked against anything it&#39;s likely to collide with). This can be optimised by including all objects in a &quot;tree&quot; of bounding boxes, where each bounding box node completely contains all of its children, so if the parent is outside the area in question,all of its children can be quickly eliminated.&lt;br /&gt;
&lt;br /&gt;
The framework for a download and resource manager have been started - allowing files to be queued and made to download or update, and for resources no longer visible to be unloaded completely to save graphics memory.&lt;br /&gt;
&lt;br /&gt;
I also tidied up the controller code somewhat for Windows - it can now get the proper analog values, and detect the type of controller and battery level (and interestingly, also the type of battery in the controller) of Xbox controllers. Almost completely pointless but cool nonetheless.&lt;br /&gt;
&lt;br /&gt;
Finally, a teaser, most likely&amp;nbsp;for&amp;nbsp;next time:&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://imgur.com/vVJ5i&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;http://i.imgur.com/vVJ5i.png&quot; title=&quot;Hosted by imgur.com&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;No clues as to what this is for yet, but it should be interesting...&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
14500+ lines of code now, 333 TODOs listed.&lt;br /&gt;
Charlie&lt;/div&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/5837767665422682786/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/12/big-steps.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/5837767665422682786'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/5837767665422682786'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/12/big-steps.html' title='Big steps'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-5150310617655810806</id><published>2011-12-12T22:48:00.004+00:00</published><updated>2011-12-12T22:48:36.552+00:00</updated><title type='text'>XInput</title><content type='html'>&amp;nbsp;So, I spent far too long working on getting the Xbox controller working - instead of using their standard input libraries, Microsoft in their infinite wisdom chose to make a separate API for the sole purpose of interfacing with their controllers. As a result, I ended up downloading a C++ IDE, and using Java&#39;s native code to work with those APIs. On the plus side, it means that the vibrate and separate polling of the triggers can be done (using the previous method, only Trigger (R-L) can be read not R and L separately) , but under Windows only.&lt;br /&gt;
&lt;br /&gt;
Other than that, I tidied up the native code loading further - it now &quot;cleanly&quot; loads nearly all of the dlls or modules needed to run independent of platform and architecture (I still have to fix nativewindow though). Lights are now configurable in the engine rather than hard-coded into the shader (simple change but an important step), and I&#39;ve started to write the basic game code/world itself.&lt;br /&gt;
&lt;br /&gt;
Stuff I still need to do:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Intersection tests/resolver for physics, area scripting for levels&lt;/li&gt;
&lt;li&gt;Scene optimisation&lt;/li&gt;
&lt;li&gt;Decent gameplay code&lt;/li&gt;
&lt;li&gt;Improve the importer (bring lighting, more material properties in)&lt;/li&gt;
&lt;li&gt;Finish lighting optimisation - actually do the stencilling - additionally, light clip volumes&lt;/li&gt;
&lt;li&gt;Antialiasing&lt;/li&gt;
&lt;li&gt;Shadowing&lt;/li&gt;
&lt;li&gt;Audio&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;br /&gt;
Charlie&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/5150310617655810806/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/12/xinput.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/5150310617655810806'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/5150310617655810806'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/12/xinput.html' title='XInput'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-1445482699053126588</id><published>2011-12-05T02:28:00.001+00:00</published><updated>2011-12-05T03:24:05.526+00:00</updated><title type='text'>Small Steps</title><content type='html'>So, I finally sat down and spent a couple of hours coding the engine. I&#39;ve started to tidy up my code layout and sort out decent input and gameplay - and in part of that, I bought a USB Xbox gamepad and played around with using it as an input. Unfortunately, the rumble feature is broken in the library I was using but otherwise, the controller works nicely and gives a nicer feel to motion - it&#39;s much smoother than a keyboard, and seems a fairly natural way of controlling a platformer-style game. I also added some very basic mechanics - nothing more than the basic laws of motion at the moment, and nothing visual either.&amp;nbsp;&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Still planning to have something &quot;playable&quot; (i.e. vaguely resembling a game or game engine) by the end of the year if all goes well...&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Charlie&lt;/div&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/1445482699053126588/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/12/small-steps.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/1445482699053126588'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/1445482699053126588'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/12/small-steps.html' title='Small Steps'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-2978695307349880793</id><published>2011-11-28T03:09:00.001+00:00</published><updated>2011-11-28T03:27:11.834+00:00</updated><title type='text'>Super-Secret Project</title><content type='html'>Another terribly-short-and-limited blog post to follow, so I don&#39;t blame you if you skip this one. Work, parents&#39; evening, and the super-secret-project have been taking up most of my time. In no particular order, I &lt;i&gt;have&lt;/i&gt; managed to:&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Sort the 3D printer bed out - glass cut and bored successfully (or nearly finished, need to tidy and finish the holes)&lt;/li&gt;
&lt;li&gt;Nearly-finish the lighting optimisations - stencils are now working, and now just need to fiddle around with how the information about lighting is stored (radius, colour, position, shadow-casting)&lt;/li&gt;
&lt;li&gt;Finish most of the programming on the super-secret project for the time being. Hint: it involves&amp;nbsp;multiple virtual servers, a simple database, plenty of permissions, various types of buckets, and voxels.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Buy far too many games - RAGE, Amnesia, L4D2, FEAR series, and a couple of indie titles. I might do a mini-review when I get around to playing them.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
I leave you with an incredible video - worth watching in HD.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div align=&quot;center&quot;&gt;
&lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;480&quot; src=&quot;http://www.youtube.com/embed/430ykbW1zqA?hd=1&quot; width=&quot;853&quot;&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Charlie&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/2978695307349880793/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/11/super-secret-project.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/2978695307349880793'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/2978695307349880793'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/11/super-secret-project.html' title='Super-Secret Project'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/430ykbW1zqA/default.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-9004478991959247112</id><published>2011-11-21T02:27:00.001+00:00</published><updated>2011-11-21T03:14:56.370+00:00</updated><title type='text'>Bugfixes</title><content type='html'>This weekend, I got to see a legitimate Robot Wars battle at the NEC - two flipper-armed robots throwing each other (and themselves) around. I also saw and spoke to a couple of engineers on the Bloodhound SSC project and saw the vehicle itself.&lt;br /&gt;
&lt;br /&gt;
On the game, instead of coding anything new, I went through some of the very worst bits of my code and carefully removed a few of the worst-offending bugs.&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;The first one was that resizing the window would not resize the stencil buffer, resulting in some fairly unusual artifacts appearing. It took me a fair while to notice that I was actually allocating the buffer twice, and corrected it. Now I have stencils, which makes culling pixels for lighting very easy now.&lt;/li&gt;
&lt;li&gt;The second one was a silly mistake in how I handled texture path names. I&#39;d been doing it in a silly way (hard-coded slashes, which is death for cross-platform compatibility) - I went through and replaced most of them with the appropriate platform-independent solution.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;The final one was a complete pain to find and kill - I found that when changing camera angle with bright lights in the scene, the lights would flicker in a fairly irritating manner. I checked and double-checked my entire lighting code several times, as well as the matrix transformation, before realising that everything was (surprisingly) perfect. The actual issue was that my normal buffer was at too low a precision to make the lights adjust properly over a wide range of viewing angles. Unfortunately, a side effect of increasing the precision is that the lights now take longer to process - now, 800MP would seem to take (very approximately) half a second to run, giving me 16MP to use for lights, not 32MP (which is fair, given that I doubled the bits). It remains to be seen whether changing some of the other calculations (inverse of the matrices, reprojection, etc), lowering precision (8-bit floating not 16-bit floating buffers) and/or constraining the areas will be enough - though there&#39;s no reason it shouldn&#39;t.&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
I also managed to fix George&#39;s PS3 for the second time and started work on a super-secret project, which is going to be revealed fairly soon (on or before next week).</content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/9004478991959247112/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/11/bugfixes.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/9004478991959247112'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/9004478991959247112'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/11/bugfixes.html' title='Bugfixes'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-1390111281431915229</id><published>2011-11-14T03:32:00.001+00:00</published><updated>2011-11-14T03:56:21.361+00:00</updated><title type='text'>In Motion</title><content type='html'>The printer is finally moving of its own accord - I discovered a work-around for the firmware issue. Connecting the Arduino via USB, connecting in RepStrapper, and then finally applying power to the shield allows the board to connect. The thermistor readings work fine and I&#39;m pretty sure the heater MOSFETS do too, but the stepper boards get too warm to work effectively - I should have some thermal epoxy and old aluminium heatsinks spare to sort that out, though I dislike making any permanent changes to hardware (and that glue is just about as permanent as it gets). At the same time I should also be able to heatsink my 1W laser driver too, and get some pretty pictures of the beam at full power, without it cutting out as the thermal limiter kicks in. The only other option is to buy a new and higher-power circuit instead (torches have higher-power boards but with much less tight regulation, which should be OK for a tough laser diode, though it may shorten the life-span somewhat).&lt;br /&gt;
&lt;br /&gt;
I&#39;ve also played with the lighting shader code, and worked out that changing the data types (the &quot;quick fix&quot; solution to the lighting speed) is simply not enough to bring the time down to reasonable lengths - it saves a about 2 ms for 800 million pixels - not nearly enough. The only reasonable solution now is to apply the lighting calculation to less pixels - using an estimate of 0.75ms/4MP, that means that lighting can &quot;afford&quot; to light about 32MP and still leave enough processing time for pretty effects like depth of field, ambient light, SSAO and another lighting or material pass for skin, particles, and other effects. To restrict 100 lights to 32MP, the average visible light radius can be around 300 on-screen pixels, which is pretty reasonable - in a cluttered scene many of the lit pixels will be occluded anyway, so drawing the light with a depth comparison might save even more processing time. Shadows are also relatively cheap with this method but will still need careful planning. All of these estimates are based on a fast card at high resolution though, so others&#39; mileage may vary.&lt;br /&gt;
&lt;br /&gt;
Charlie</content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/1390111281431915229/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/11/in-motion.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/1390111281431915229'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/1390111281431915229'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/11/in-motion.html' title='In Motion'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-1469067854064298909</id><published>2011-11-07T03:56:00.001+00:00</published><updated>2011-11-07T03:58:50.733+00:00</updated><title type='text'>Thermistor Trouble</title><content type='html'>In the last week, I&#39;ve added multi-lights, tidied up my current lighting method and planned/written the beginnings of a skeleton-loader - the Doom 3 format is particularly nice for my purposes. Lights are currently too inefficient - 100 simultaneous non-shadowcasting lights run at about 7fps at 2560x1600. Admittedly, I&#39;ve taken some horrific shortcuts in the pursuit of simplicity (right now, for every pixel on the screen, for every light in view, it generates the inverse of a 4x4 matrix - not exactly a speedy process).. When I fix that particular source of inefficiency, I&#39;ll re-time everything, add shadows, and see if it still needs more work. After that is skeletons and game logic itself.&lt;br /&gt;
&lt;br /&gt;
As for the 3D printer, I (badly) drilled the holes through the glass bed - it&#39;s still usable, but has some irritating cracks. The firmware is unfortunately proving to be a bit of a pain - I haven&#39;t managed to get everything working reliably. I remember having a similar issue previously, which I think ended up tracing back to the thermistor board, of all places. The board currently sends back a &quot;start&quot; signal, but doesn&#39;t do anything useful afterwards, and drops the connection. With a bit of luck that issue shouldn&#39;t take much more time to trace down and I&#39;ll be all but ready to print!&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;Charlie</content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/1469067854064298909/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/11/in-last-week-ive-added-multi-lights.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/1469067854064298909'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/1469067854064298909'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/11/in-last-week-ive-added-multi-lights.html' title='Thermistor Trouble'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-7382173568230907355</id><published>2011-10-31T01:16:00.000+00:00</published><updated>2011-10-31T01:19:27.457+00:00</updated><title type='text'>Normal Mapping</title><content type='html'>I took a bit of time off from working on the 3D printer to get back into the coding for the game. I designed and added a basic model format (one which requires nearly no interpretation before it can be sent to the graphics card, which cut load time in half), and implemented normal mapping:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;http://i.imgur.com/Aig8n.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;388&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhy7tgmQumqKOBZOevwFLeG4haJZnxEZ4-M4QrO_rmdgj7WJIPSvcfkmP_2OeDMSnAROlNo0paNRUljkE4Vm2T7ZF8wig6LUojqF8CUpX956_LlxSqUy69tCuhiYEryvFb1nkq6Z1u-5Uc/s640/comparison.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Left-hand side: No normal mapping. Right-hand side: Normal mapped.&lt;br /&gt;
You will need to see the full-size image - note the detail on the lion&#39;s face and roughness of stone.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
Normal mapping takes a flat face (for example, the pillar on the right) and adds small peturbations to the direction in which the surface is facing, based on a texture. These changes can add virtual roughness or smoothness to a surface without increasing the geometric complexity, which can make the surface lighting look more realistic, at a minimal performance hit.&lt;br /&gt;
&lt;br /&gt;
The TODO list before something playable is ready:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Skeletal Animation&lt;/li&gt;
&lt;li&gt;Audio&lt;/li&gt;
&lt;li&gt;Streaming System&lt;/li&gt;
&lt;li&gt;Game Logic&lt;/li&gt;
&lt;li&gt;Mechanics&lt;/li&gt;
&lt;li&gt;Shadows/Specular Power/MultiLights/Graphical Tweaks&lt;/li&gt;
&lt;li&gt;Basic AI&lt;/li&gt;
&lt;li&gt;A world/level to experiment with.&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
I&#39;m aiming to tick on average one of these off per week, and have something completely playable by the end of the year. It&#39;s odd to think that I first played around with this code around New Year&#39;s time, and have now been working on this, on and (mostly) off, for almost a year!&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Charlie&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/7382173568230907355/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/10/normal-mapping.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/7382173568230907355'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/7382173568230907355'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/10/normal-mapping.html' title='Normal Mapping'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhy7tgmQumqKOBZOevwFLeG4haJZnxEZ4-M4QrO_rmdgj7WJIPSvcfkmP_2OeDMSnAROlNo0paNRUljkE4Vm2T7ZF8wig6LUojqF8CUpX956_LlxSqUy69tCuhiYEryvFb1nkq6Z1u-5Uc/s72-c/comparison.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-5976644582564994368</id><published>2011-10-24T03:34:00.002+01:00</published><updated>2011-10-24T03:34:21.138+01:00</updated><title type='text'>Ready to Print</title><content type='html'>The printer is now physically all but ready to go - all that remains is to finish the print-bed and belt, wire up everything and sort the electronics. This post will be edited when I finish.</content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/5976644582564994368/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/10/ready-to-print.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/5976644582564994368'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/5976644582564994368'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/10/ready-to-print.html' title='Ready to Print'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-7750895157672771879</id><published>2011-10-17T03:42:00.001+01:00</published><updated>2011-10-17T03:42:12.207+01:00</updated><title type='text'>It Extrudes!</title><content type='html'>After a weekend of heavy tinkering, I finally got the printer to spool a fair amount of plastic through the nozzle. The only bit I have left to finish now is the print bed, endstops, and the final bits of wiring/calibration - and then all of the optional bits, like insulation and taping the motor to reduce slip.&lt;br /&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-ltbRIIPMS1Xr0C6eriC0NuPVPTXHHMzH3tmrgaw5MKX_7j326jhpJy4enJA-9rxFP5blgJTLFbUejZNcNDCSelks96a9jKuYq6sDdwhjbqrf_UPziQbhPkS7luthFF3RSrfYLe5OLPc/s1600/IMG_1110.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;266&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-ltbRIIPMS1Xr0C6eriC0NuPVPTXHHMzH3tmrgaw5MKX_7j326jhpJy4enJA-9rxFP5blgJTLFbUejZNcNDCSelks96a9jKuYq6sDdwhjbqrf_UPziQbhPkS7luthFF3RSrfYLe5OLPc/s400/IMG_1110.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;The very first stages of the extruder assembly - the clamp on the right grips the &amp;nbsp;plastic filament tightly. The grub screws (in theory - not on my first run!) hold the hot end in.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhABRTfxZ59vN-crTuqsWpbtR6ijoUwNAZBHdcSlXj7KrvEGo4dehKgnWlCaMc-de8oB3IHKO5BO_bmXqlIVK66jpHe2Vm73gHwr9vtoTIGP4ySmMSRUwSnhyphenhyphenVzKeqLUfjD0PN7hdsAoo4/s1600/IMG_1109.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;266&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhABRTfxZ59vN-crTuqsWpbtR6ijoUwNAZBHdcSlXj7KrvEGo4dehKgnWlCaMc-de8oB3IHKO5BO_bmXqlIVK66jpHe2Vm73gHwr9vtoTIGP4ySmMSRUwSnhyphenhyphenVzKeqLUfjD0PN7hdsAoo4/s400/IMG_1109.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Later stage of the extruder construction - the big cog is driving the bolt, which in turn drags the filament through.&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg8mbpq9d1bfevtfx6iapOJVu5gltOS0vwcyMaDpW2vqqumEjsAQgiG6LlZ3blVhRtH0unrD2eFk4RrCy0sj7qyYRvRoSSvNA_p0T9WtOcGn-SlxT9l4YUN4rtWlklP3fphKP4mXtiQIfc/s1600/IMG_1115.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;266&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg8mbpq9d1bfevtfx6iapOJVu5gltOS0vwcyMaDpW2vqqumEjsAQgiG6LlZ3blVhRtH0unrD2eFk4RrCy0sj7qyYRvRoSSvNA_p0T9WtOcGn-SlxT9l4YUN4rtWlklP3fphKP4mXtiQIfc/s400/IMG_1115.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;The near-finished extruder, now with motor.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
No photos of the rest of it yet, I simply didn&#39;t have time - the SAQ isn&#39;t exactly the quickest form to fill out...&lt;br /&gt;
Charlie</content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/7750895157672771879/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/10/it-extrudes.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/7750895157672771879'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/7750895157672771879'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/10/it-extrudes.html' title='It Extrudes!'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-ltbRIIPMS1Xr0C6eriC0NuPVPTXHHMzH3tmrgaw5MKX_7j326jhpJy4enJA-9rxFP5blgJTLFbUejZNcNDCSelks96a9jKuYq6sDdwhjbqrf_UPziQbhPkS7luthFF3RSrfYLe5OLPc/s72-c/IMG_1110.JPG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-7880310127466913291</id><published>2011-10-10T02:52:00.002+01:00</published><updated>2011-10-10T02:52:30.371+01:00</updated><title type='text'>3D Printer</title><content type='html'>&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiT6mT5Bq1ZavUWk25Xh2iZwIY8SPQukpwTA0U1h1kwS1q7T7aIER2adOMd08PRIxFr87JYP08uKhqbl92ocxdJqhdWASiNLGE6KDsIO6al-SdnmSKSwV5OvAHq2lwEEDR6rmFmCDXY4fQ/s1600/prusa.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;313&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiT6mT5Bq1ZavUWk25Xh2iZwIY8SPQukpwTA0U1h1kwS1q7T7aIER2adOMd08PRIxFr87JYP08uKhqbl92ocxdJqhdWASiNLGE6KDsIO6al-SdnmSKSwV5OvAHq2lwEEDR6rmFmCDXY4fQ/s400/prusa.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Prusa Mendel so far&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: small;&quot;&gt;So, I spent a fairly long time over the weekend assembling my 3D printer. I&#39;m still waiting for some bearings for the extruder, the print bed. and the final motor but otherwise it&#39;s all ready to go. Not much else to say, really, except check back soon to see it printing!&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Charlie&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/7880310127466913291/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/10/3d-printer.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/7880310127466913291'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/7880310127466913291'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/10/3d-printer.html' title='3D Printer'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiT6mT5Bq1ZavUWk25Xh2iZwIY8SPQukpwTA0U1h1kwS1q7T7aIER2adOMd08PRIxFr87JYP08uKhqbl92ocxdJqhdWASiNLGE6KDsIO6al-SdnmSKSwV5OvAHq2lwEEDR6rmFmCDXY4fQ/s72-c/prusa.png" height="72" width="72"/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-5942043334027493054</id><published>2011-10-03T04:42:00.000+01:00</published><updated>2011-10-03T04:42:03.046+01:00</updated><title type='text'></title><content type='html'>I&#39;ve made little progress with the game - what I have done has been mainly aesthetic, no physics yet. Normal mapping is almost finished - just need to compute the tangents and it&#39;ll be ready. On the plus side, I&#39;ve made decent progress with the moped - it&#39;s in a decent condition given that it&#39;s been stored for several years with no maintenance. The brakes are even functional, though the front cable had seized. The gearbox (well, belt box) is also functional, but there&#39;s still plenty to do on it - for example, the engine has to be removed, lights sorted, legal bits checked, and it has to be weighed and measured fairly carefully, so that I can revise my estimates and get some real-world numbers to work with. I&#39;ll also have to buy the replacement bodywork. Motors are to be ordered shortly, it seems pointless to wait for delivery from China.

Charlie </content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/5942043334027493054/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/10/ive-made-little-progress-with-game-what.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/5942043334027493054'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/5942043334027493054'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/10/ive-made-little-progress-with-game-what.html' title=''/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-5153459125344583215</id><published>2011-09-26T03:37:00.002+01:00</published><updated>2011-09-26T22:22:58.529+01:00</updated><title type='text'>Scooter Mechanics</title><content type='html'>I spent the last few hours working out the mechanics for my electronic moped project - it should turn out to be fairly practical if I&#39;ve got my estimations right. The range on about £450 worth of batteries is the limiting factor - about 20-35 miles depending on speed and mechanical efficiency. The problem comes in when you factor in hills - even a mere 5% incline is enough to significantly eat into battery life. Combined with a 1 hour charge time, it should be pretty useful as a commuter or student vehicle though. I still need to wait to hear about sponsorship, funding, and the legal status of my &quot;donor&quot; moped, and look into the process and costs of registering the vehicle for on-road use after it&#39;s been rebuilt, but it looks like the project is, at least in theory, possible. Even if it isn&#39;t entirely road-legal, 6kW (8hp) in something that weighs around 45kg will be pretty fun for off-road use. &lt;br /&gt;
&lt;br /&gt;
The 3D printer project is not entirely forgotten either - expect to see more on that soon...&lt;br /&gt;
&lt;br /&gt;
I&#39;m also just going to leave this here regarding the quadrotor:&lt;br /&gt;&lt;br /&gt;
&lt;div align=&quot;center&quot;&gt;&lt;iframe width=&quot;640&quot; height=&quot;360&quot; src=&quot;http://www.youtube.com/embed/6N9rTnMvGBU?hd=1&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;&lt;/div&gt;
&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: xx-small;&quot;&gt;Yours textually&lt;/span&gt;&lt;br /&gt;
Charlie</content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/5153459125344583215/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/09/scooter-mechanics.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/5153459125344583215'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/5153459125344583215'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/09/scooter-mechanics.html' title='Scooter Mechanics'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/6N9rTnMvGBU/default.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-1080020682393441804</id><published>2011-09-19T01:52:00.001+01:00</published><updated>2011-09-19T01:52:07.165+01:00</updated><title type='text'>Personal statement: Complete!</title><content type='html'>Since the deadline for submitting my UCAS application is tomorrow, so I hope you can excuse a terrible post. Just to say that I haven&#39;t yet got shadow mapping done, but it&#39;s not too far off now. The quadrotor theoretically now has spinning blades (fun fact: the tip of the blades move at over 80ms-1), which will be tested fully later today.&lt;br /&gt;
&lt;br /&gt;
Charlie</content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/1080020682393441804/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/09/personal-statement-complete.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/1080020682393441804'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/1080020682393441804'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/09/personal-statement-complete.html' title='Personal statement: Complete!'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-3039981899691709871</id><published>2011-09-12T02:17:00.002+01:00</published><updated>2011-09-12T02:19:48.295+01:00</updated><title type='text'>Speculars: Sorted</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
Specular lighting is now sorted and working perfectly. I&#39;m also now able to re-build shaders virtually instantly, which means no load-up time for minor changes - which should make shadows much easier to create and debug - more on this next time. The next big hurdle is getting some real game logic running. SSAO and anti-aliasing can wait until there&#39;s something playable, with good scene management, and at least vaguely optimised.&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhouX79kaXnnWg3CnFcT5g4GiRzEuCllnbgyGgoYGGkOf0jiAhnBDDfr3Wo4baoUSx7wtTOKFgjsoI4PR9v82uqHImNFEno8FQSvDoQIc6H8O6YbTMZ8Oh6lBS7XAciWr1SZn7hycaCdEI/s1600/spec.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;496&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhouX79kaXnnWg3CnFcT5g4GiRzEuCllnbgyGgoYGGkOf0jiAhnBDDfr3Wo4baoUSx7wtTOKFgjsoI4PR9v82uqHImNFEno8FQSvDoQIc6H8O6YbTMZ8Oh6lBS7XAciWr1SZn7hycaCdEI/s640/spec.PNG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Charlie</content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/3039981899691709871/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/09/specular-lighting-is-now-sorted-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/3039981899691709871'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/3039981899691709871'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/09/specular-lighting-is-now-sorted-and.html' title='Speculars: Sorted'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhouX79kaXnnWg3CnFcT5g4GiRzEuCllnbgyGgoYGGkOf0jiAhnBDDfr3Wo4baoUSx7wtTOKFgjsoI4PR9v82uqHImNFEno8FQSvDoQIc6H8O6YbTMZ8Oh6lBS7XAciWr1SZn7hycaCdEI/s72-c/spec.PNG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-4612393725108208642</id><published>2011-09-05T03:25:00.001+01:00</published><updated>2011-09-05T03:28:19.145+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="game"/><category scheme="http://www.blogger.com/atom/ns#" term="rendering"/><category scheme="http://www.blogger.com/atom/ns#" term="shaders"/><title type='text'>Kind of Proper Lighting</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;Back to school tomorrow, already up too late. Ah well. Progress has been made on lighting - apart from shadowing and specular reflection, it&#39;s now fully usable. There are a number of speed improvements which still need to be done, but those changes will have no real effect on the image. Rendering speed is still acceptable as-is with the single light I&#39;ve been using to test, but it can easily be pushed up far faster than it is currently - I&#39;m using the simple but time-consuming approaches for now.&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0YWwEGZEzTcQ11Xp3eD3rDgmYuoDfHBolCqnzhsIHVdu-CaKJU30lHMUaFDNGpt2QM8hrfctpJMmFa4HS5RDvL0FYbR8jkeAqUrfm770R5VstcN5YWRga2f5sAa_OofO_muFnHvCkyMQ/s1600/reallight.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;310&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0YWwEGZEzTcQ11Xp3eD3rDgmYuoDfHBolCqnzhsIHVdu-CaKJU30lHMUaFDNGpt2QM8hrfctpJMmFa4HS5RDvL0FYbR8jkeAqUrfm770R5VstcN5YWRga2f5sAa_OofO_muFnHvCkyMQ/s400/reallight.PNG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Charlie</content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/4612393725108208642/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/09/kind-of-proper-lighting.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/4612393725108208642'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/4612393725108208642'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/09/kind-of-proper-lighting.html' title='Kind of Proper Lighting'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0YWwEGZEzTcQ11Xp3eD3rDgmYuoDfHBolCqnzhsIHVdu-CaKJU30lHMUaFDNGpt2QM8hrfctpJMmFa4HS5RDvL0FYbR8jkeAqUrfm770R5VstcN5YWRga2f5sAa_OofO_muFnHvCkyMQ/s72-c/reallight.PNG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-1055819946479219114</id><published>2011-08-29T00:01:00.007+01:00</published><updated>2011-08-29T00:01:00.221+01:00</updated><title type='text'>Lighting</title><content type='html'>So, if you can read this I&#39;m on holiday without reliable internet access - so this post will have to suffice. It shows the progress I&#39;ve made up to the time I started to pack. The light is unfortunately quite glitchy, and doesn&#39;t feature shadows, bump mapping or specular highlights.&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSyY2m_5em4k3WBaCnwdFo2QnuorrDHs7hgJny3Z2zDlHv7nKrXXMvt2jEKg-oawgO7BPmwQN5XtaYPQP7aJZs1SK2DJgLGW8saRKw7ghipa1QbmOg0CbGQ-htWPHNq155DVIA4l6P010/s1600/omglit.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;255&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSyY2m_5em4k3WBaCnwdFo2QnuorrDHs7hgJny3Z2zDlHv7nKrXXMvt2jEKg-oawgO7BPmwQN5XtaYPQP7aJZs1SK2DJgLGW8saRKw7ghipa1QbmOg0CbGQ-htWPHNq155DVIA4l6P010/s320/omglit.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Very basic multiplicative light.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: xx-small;&quot;&gt;Gen1:3&lt;/span&gt;&lt;br /&gt;
Charlie</content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/1055819946479219114/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/08/lighting.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/1055819946479219114'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/1055819946479219114'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/08/lighting.html' title='Lighting'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSyY2m_5em4k3WBaCnwdFo2QnuorrDHs7hgJny3Z2zDlHv7nKrXXMvt2jEKg-oawgO7BPmwQN5XtaYPQP7aJZs1SK2DJgLGW8saRKw7ghipa1QbmOg0CbGQ-htWPHNq155DVIA4l6P010/s72-c/omglit.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-5492982440348950281</id><published>2011-08-22T04:30:00.000+01:00</published><updated>2011-08-22T04:30:27.451+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="game"/><category scheme="http://www.blogger.com/atom/ns#" term="rendering"/><category scheme="http://www.blogger.com/atom/ns#" term="shaders"/><title type='text'>Sponza Atrium</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;Here&#39;s a simple first-look at the engine. Currently it&#39;s showing the base texture and tangent-space surface normals of Sponza, a model used for tests (mainly lighting). The next step is to shift the normals into viewing space (using the transpose of the inverse of the transformation matrix, for reasons I neither understand nor need to), and use them to light the scene. This now works on GL2 (DX9-level) hardware, with ideas to extend to GL3.X (DX10) or GL4 (DX11) and add new features (re-building a high polygon count from a set of smaller points and a map - geometry shader).&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhurHiESZyZRgdlBMpdij-B_CcKWvXol7ct2GdHHa7vvJq0Yd8H3eTTw5TM-zfqtAn5lxL6Pdz34oB9U3VmiW1KA543MDM0a_4lcKX6tTFiqbIdn_AxE38eGyDoUTdZbAe8n8xLOhUUbYo/s1600/sponza2.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;250&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhurHiESZyZRgdlBMpdij-B_CcKWvXol7ct2GdHHa7vvJq0Yd8H3eTTw5TM-zfqtAn5lxL6Pdz34oB9U3VmiW1KA543MDM0a_4lcKX6tTFiqbIdn_AxE38eGyDoUTdZbAe8n8xLOhUUbYo/s400/sponza2.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Base texture&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQqIIpiYO67OCaNuLffhUWaoqyelKJzv1nXHb5-NyaLVPtsgbtcbvoPbt-jTQTWC8iCUMo3zZjRo2w9BcR2XUv6tWw-mop8lGWsALpt-kpMNyXTLaIdSyfaOFNErZJqjz6t3z_Kd780y8/s1600/sponzatsn.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;250&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQqIIpiYO67OCaNuLffhUWaoqyelKJzv1nXHb5-NyaLVPtsgbtcbvoPbt-jTQTWC8iCUMo3zZjRo2w9BcR2XUv6tWw-mop8lGWsALpt-kpMNyXTLaIdSyfaOFNErZJqjz6t3z_Kd780y8/s400/sponzatsn.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Tangent-space normals - the light blue colour represents (0.5,0.5,1) as a colour, which works out to (0,0,1) as a vector - the&lt;br /&gt;
&quot;up&quot; direction with respect to the surface. I have since fixed the out-of-place stone texture - a bug in the model, not in my code for once!&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;Still a fair way off actually lighting it - I need a way of quickly working out the distances between points amongst other things. At my current rate that might be done in a few days. Skeletal animation, a game engine, net code and sound system are a while off.&lt;br /&gt;
&lt;br /&gt;
Come next Sunday, I&#39;ll be camping and so may not have internet access. If that is the case I&#39;ll have a scheduled post prepared. With any luck it&#39;ll feature working lighting.&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: xx-small;&quot;&gt;Fuck wasps.&lt;/span&gt;&lt;br /&gt;
Charlie</content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/5492982440348950281/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/08/sponza-atrium.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/5492982440348950281'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/5492982440348950281'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/08/sponza-atrium.html' title='Sponza Atrium'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhurHiESZyZRgdlBMpdij-B_CcKWvXol7ct2GdHHa7vvJq0Yd8H3eTTw5TM-zfqtAn5lxL6Pdz34oB9U3VmiW1KA543MDM0a_4lcKX6tTFiqbIdn_AxE38eGyDoUTdZbAe8n8xLOhUUbYo/s72-c/sponza2.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-6141089128690880657</id><published>2011-08-15T06:56:00.000+01:00</published><updated>2011-08-15T06:56:48.868+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="game"/><category scheme="http://www.blogger.com/atom/ns#" term="games"/><title type='text'>Fixed glitches, Minecraft</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;First things first, I fixed the graphical glitches which were occurring in my last screenshot - the depth buffer hadn&#39;t been set up correctly. The renderer can now project and transform objects, and essentially also supports textures. Still to add are normals, displacements, scene manager, skeletal animation, blend shader and lighting - but the heart of the deferred pipeline is now fully functional, which is always nice. In a couple of days I might be able to get a copy running in a web-browser, this post will be edited if I manage.&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0kus1OScPKr_9X9JamgXB-fZR_al6zTROdUN3aOsTm0jYDHTPlHkWZif1jFG-09lTOs5DaMsBaKDj2T2moQqJY5HOLHraKn8BoXQxyTfrLmFEjK073tou4OSzLq7T9pMAloZ-BgGawLg/s1600/Capture.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;236&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0kus1OScPKr_9X9JamgXB-fZR_al6zTROdUN3aOsTm0jYDHTPlHkWZif1jFG-09lTOs5DaMsBaKDj2T2moQqJY5HOLHraKn8BoXQxyTfrLmFEjK073tou4OSzLq7T9pMAloZ-BgGawLg/s320/Capture.PNG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Redness represents X axis, Green Y-ness, and Blue Z-ness. It&#39;s also possible to &quot;fly&quot; around the cube.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;Secondly, I started playing Minecraft Classic for a bit, then fell a little in love with the game. I purchased the Beta at about&amp;nbsp;midnight,&amp;nbsp;and have been playing it solidly since. It&#39;s absurdly addictive, but also brilliantly simple, and the DRM-free, play-wherever, indie quality of the game makes it all the better. It&#39;s also written by one man, in Java and using OpenGL (exactly the same as that ^^).&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: xx-small;&quot;&gt;Minecraft? More like mindcrack?&lt;/span&gt;&lt;br /&gt;
Charlie</content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/6141089128690880657/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/08/fixed-glitches-minecraft.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/6141089128690880657'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/6141089128690880657'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/08/fixed-glitches-minecraft.html' title='Fixed glitches, Minecraft'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0kus1OScPKr_9X9JamgXB-fZR_al6zTROdUN3aOsTm0jYDHTPlHkWZif1jFG-09lTOs5DaMsBaKDj2T2moQqJY5HOLHraKn8BoXQxyTfrLmFEjK073tou4OSzLq7T9pMAloZ-BgGawLg/s72-c/Capture.PNG" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2793703685740109568.post-4121505233312703274</id><published>2011-08-08T02:33:00.002+01:00</published><updated>2011-08-12T05:56:19.178+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="game"/><category scheme="http://www.blogger.com/atom/ns#" term="rendering"/><title type='text'>Back in the UK</title><content type='html'>The timelapse and images promised are in the process of being uploaded, and I&#39;m suffering from a fairly bad headache, so this will become a fully-fledged post tomorrow. Return in 18 hours. That&#39;s an order, soldier.&lt;br /&gt;
&lt;br /&gt;
Edit: OK, so the above might have been an exaggeration. I have made the timelapse but it&#39;s suffered from compression or rendering glitches. I shall re-render in something other than AE in the near future and post back. This edit is mainly to show what little progress I&#39;ve actually made on the game:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4bd9wVUer8wsy-3i1VwZgRQ9y_poLL6mk5X-u3uq-cjCR_iMQAYKHe5dManS0s8OpXaVeGilzAfEoILlWH3KBw2IEvGqMIlZnYo0PcRpSKGvzCNH41ypUz0c4m8ETYcr94EcgMCbxKB8/s1600/imadeyousomethignprettyblogtypepeople.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;310&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4bd9wVUer8wsy-3i1VwZgRQ9y_poLL6mk5X-u3uq-cjCR_iMQAYKHe5dManS0s8OpXaVeGilzAfEoILlWH3KBw2IEvGqMIlZnYo0PcRpSKGvzCNH41ypUz0c4m8ETYcr94EcgMCbxKB8/s400/imadeyousomethignprettyblogtypepeople.PNG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
If you look carefully at the full-size image you might be able to see the cube-ness of it (the lack of more than one colour deprives it of any real &quot;shape&quot; as such). It might not seem like much but it is perspective-ly correct (only the most technical of terms for you dedicated readers), and so means that there are no maths-related errors, anywhere in my code. It&#39;s also the beginning of a completely deferred pipeline (which means that lighting complexity is independent of geometric complexity, which is a huge benefit for complex scenes with lots of lights).&lt;br /&gt;
&lt;br /&gt;
Edit 2:&lt;br /&gt;
So I added some colour, and it turns out my maths might not be so perfect after all:&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhbX6I6jgIlWxBj9sgB7Mwl6oTeGDciARPy0akoSUMW-ejOtlJpZuL-ws_RxJsMDtPlYk6UEtSuGwgHttIN13kXRt8vxy3bjDiv77x4Ck7Liba3kYpRnlFgwSavHiLSK8aNj3B9Iozc11k/s1600/cube.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhbX6I6jgIlWxBj9sgB7Mwl6oTeGDciARPy0akoSUMW-ejOtlJpZuL-ws_RxJsMDtPlYk6UEtSuGwgHttIN13kXRt8vxy3bjDiv77x4Ck7Liba3kYpRnlFgwSavHiLSK8aNj3B9Iozc11k/s1600/cube.PNG&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;I appear to be missing a face.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;Bugs shall be fixed and a basic engine shall be running by next post. If I stop being lazy.&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: xx-small;&quot;&gt;That one picture warranted staying up until 5:43AM? YES!&lt;/span&gt;&lt;br /&gt;
Charlie</content><link rel='replies' type='application/atom+xml' href='http://reallyneedatitle.blogspot.com/feeds/4121505233312703274/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/08/back-in-uk.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/4121505233312703274'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2793703685740109568/posts/default/4121505233312703274'/><link rel='alternate' type='text/html' href='http://reallyneedatitle.blogspot.com/2011/08/back-in-uk.html' title='Back in the UK'/><author><name>Charlie</name><uri>http://www.blogger.com/profile/18171196319870800637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4bd9wVUer8wsy-3i1VwZgRQ9y_poLL6mk5X-u3uq-cjCR_iMQAYKHe5dManS0s8OpXaVeGilzAfEoILlWH3KBw2IEvGqMIlZnYo0PcRpSKGvzCNH41ypUz0c4m8ETYcr94EcgMCbxKB8/s72-c/imadeyousomethignprettyblogtypepeople.PNG" height="72" width="72"/><thr:total>0</thr:total></entry></feed>