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

<channel>
	<title>Limegarden.net &#187; rant</title>
	<atom:link href="http://limegarden.net/tag/rant/feed/" rel="self" type="application/rss+xml" />
	<link>http://limegarden.net</link>
	<description>Personal site of Wouter Lindenhof</description>
	<lastBuildDate>Wed, 01 Feb 2012 23:07:09 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Burning the midnight oil</title>
		<link>http://limegarden.net/2011/02/07/burning-the-midnight-oil/</link>
		<comments>http://limegarden.net/2011/02/07/burning-the-midnight-oil/#comments</comments>
		<pubDate>Mon, 07 Feb 2011 22:01:33 +0000</pubDate>
		<dc:creator>Wouter Lindenhof</dc:creator>
				<category><![CDATA[Game development]]></category>
		<category><![CDATA[rant]]></category>

		<guid isPermaLink="false">http://limegarden.net/?p=417</guid>
		<description><![CDATA[Since a month I have been burning the midnight oil at creating a game, which is why this blog is a little bit inactive. The goal I have set is to create the first version (the so called "gold" version) within 6 months after starting. Meanwhile I'm ten days away of having the first month [...]]]></description>
			<content:encoded><![CDATA[<p>Since a month I have been burning the midnight oil at creating a game, which is why this blog is a little bit inactive.</p>
<p>The goal I have set is to create the first version (the so called "gold" version) within 6 months after starting. Meanwhile I'm ten days away of having the first month passing by and frankly not much is ready. I'm also running in a few challenges like how I would need do the terrain and whether I should focus on game-play first and then on the terrain.</p>
<p>This project has a huge experimental factor (I always try to add something knew in attempt to increase either my knowledge or frustration <img src='http://limegarden.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  ). In this case the biggest one is to create a commercial game within 6 months using nothing else except my spare time (which turns out to be like 16 hours or so each week). At the same time I'm also running a smaller experiment which is a developer diary. Every day I write a post on a private site in which I explain what I have done, what can be improved and what I should do the next day.</p>
<p>Having to keep track of logs is a nightmare for me but that small experiment is turning out to be quite a life saver. Not only can I look back and see what I was suppose to be working on but it also gives me a form of accountablity, which is important if you want to create similar products.</p>
<p>Anway I hope that next month or so I'm able to report that the gameplay is working.</p>
]]></content:encoded>
			<wfw:commentRss>http://limegarden.net/2011/02/07/burning-the-midnight-oil/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Never release poor quality!</title>
		<link>http://limegarden.net/2010/12/15/never-release-poor-quality/</link>
		<comments>http://limegarden.net/2010/12/15/never-release-poor-quality/#comments</comments>
		<pubDate>Wed, 15 Dec 2010 09:30:01 +0000</pubDate>
		<dc:creator>Wouter Lindenhof</dc:creator>
				<category><![CDATA[code]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Quality]]></category>
		<category><![CDATA[rant]]></category>

		<guid isPermaLink="false">http://limegarden.net/?p=405</guid>
		<description><![CDATA[One of the rules I have adopted is that I will never (if the choice is mine to make) release poor quality software/games/code/content/etc. I hate that rule with a passion even though I use it constantly. The reason why I hate it is because I often promise to release some code in the near future [...]]]></description>
			<content:encoded><![CDATA[<p>One of the rules I have adopted is that I will never (if the choice is mine to make) release poor quality software/games/code/content/etc. I hate that rule with a passion even though I use it constantly. The reason why I hate it is because I often promise to release some code in the near future but then decide I would rather break my promise than release poor quality. </p>
<p>The reason why I don't want to release poor quality code can be summarized as followed:</p>
<ol>
<li>Improving the quality of an existing product is hard. If anyone (me included) would use my code then there is good chance that some of the poorer quality rubs off on the other code, making the final product of lower quality.</li>
<li>Never feed a critic except his own words. I can't and won't recall the amount of times that I complained about some piece of code written by myself or others. If I complain about the code, why wouldn't others?</li>
<li>Poor craftmanships reflects poorly.</li>
<li>Releasing poor quality once, sets a precedent to lower the bar the next time you need to release something</li>
</ol>
<p>And for those reasons only a shocking 10% of my work is released and that excludes any projects that I write pure for testing. When I look at my blog I know that I have more drafts (articles I wrote, but never posted) than actually posted articles. </p>
<p>So if you were ever wondering when I would release the code, then there is good chance that I won't. And for that I'm sorry. (but frankly you should be glad I don't release it <img src='http://limegarden.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  )</p>
]]></content:encoded>
			<wfw:commentRss>http://limegarden.net/2010/12/15/never-release-poor-quality/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>I&#8217;m born in 1910</title>
		<link>http://limegarden.net/2010/08/16/im-born-in-1910/</link>
		<comments>http://limegarden.net/2010/08/16/im-born-in-1910/#comments</comments>
		<pubDate>Mon, 16 Aug 2010 06:59:43 +0000</pubDate>
		<dc:creator>Wouter Lindenhof</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[rant]]></category>

		<guid isPermaLink="false">http://limegarden.net/?p=363</guid>
		<description><![CDATA[Yes, it's true I'm a hundred years old, now please move over and let me read what I came to read. Of course, I'm not that old, but I have always wondered about the need for an age check. In the past I always filled them in correctly (2 years in the past) but now [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://limegarden.net/wp-content/uploads/2010/08/BioWare-Dragon-Age-Origins-Google-Chrome_2010-08-16_08-40-27.png"><img src="http://limegarden.net/wp-content/uploads/2010/08/BioWare-Dragon-Age-Origins-Google-Chrome_2010-08-16_08-40-27.png" alt="The age check as was displayed on the Bioware Dragon age site" title="BioWare  Dragon Age Origins - Google Chrome_2010-08-16_08-40-27" width="369" height="177" class="alignleft size-full wp-image-365" /></a><em>Yes, it's true I'm a hundred years old, now please move over and let me read what I came to read.</em></p>
<p>Of course, I'm not that old, but I have always wondered about the need for an age check. In the past I always filled them in correctly (2 years in the past) but now I see no need for it. The reason for an age check was because content distributors could keep someone away from certain content unless they were old enough. As if physical age should have been a determining factor. </p>
<p>Besides that it easy to work around (see screenshot, it's called lying, just so you know) couldn't they have just asked in what age group I fall? Am I or am I older than 21/18/15/13 et cetera. It would be one click instead of four clicks. And if they could also allow me to change my age after a wrong input, that would be nice. I once was 5 years old and could not correct it to 24, the solution was to delete the cookies and try again. </p>
<p>Please drop this system and use something more mature...</p>
<p>But the problem is that they use that information as marketing material to  answer the question "What should be our focus group?". Since I'm not the only one who 'cheats' his way around I guess that some people are still wondering what a bunch of 100 year old guys and girls are interested in games (and various other age limited stuff). </p>
]]></content:encoded>
			<wfw:commentRss>http://limegarden.net/2010/08/16/im-born-in-1910/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Driving in foreign country</title>
		<link>http://limegarden.net/2010/08/09/driving-in-foreign-country/</link>
		<comments>http://limegarden.net/2010/08/09/driving-in-foreign-country/#comments</comments>
		<pubDate>Mon, 09 Aug 2010 11:02:23 +0000</pubDate>
		<dc:creator>Wouter Lindenhof</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[rant]]></category>

		<guid isPermaLink="false">http://limegarden.net/?p=354</guid>
		<description><![CDATA[Yesterday I drove back from Belgium and I was surprised about the amount of cars overtaking me from the wrong side (some people were actually zigzagging through the traffic!), the amount of people who kept driving in the fast lane (rule is that you use the fast lane when overtaking) and speeding (I have seen [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday I drove back from Belgium and I was surprised about the amount of cars overtaking me from the wrong side (some people were actually zigzagging through the traffic!), the amount of people who kept driving in the fast lane (rule is that you use the fast lane when overtaking) and speeding (I have seen Ferrari and Porsches passing me in an instant while was I was already at (and a bit over) the speed limit) .</p>
<p>In the Netherlands we sometimes joke that the 'belgen' (Belgians) get their drivers license with a pack of coffee, but with what I have seen yesterday I can only hope that those people (excluding all normal, correct, driving Belgians) got their license with a pack of coffee.</p>
<p>Two weeks earlier I was on vacation in Ireland on a car vacation. There they don't have a formal institution for driving licenses (at least that is what I thought I heard on the radio) but in that week that I was driving there it didn't even come close to the number of traffic violations that I saw on a single day in Belgium.</p>
<p>I'm curious about what others think about drivers from other countries.</p>
]]></content:encoded>
			<wfw:commentRss>http://limegarden.net/2010/08/09/driving-in-foreign-country/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lady luck is using a loaded dice&#8230;</title>
		<link>http://limegarden.net/2010/06/29/lady-luck-is-using-loaded-dice/</link>
		<comments>http://limegarden.net/2010/06/29/lady-luck-is-using-loaded-dice/#comments</comments>
		<pubDate>Tue, 29 Jun 2010 15:54:24 +0000</pubDate>
		<dc:creator>Wouter Lindenhof</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[outlook]]></category>
		<category><![CDATA[rant]]></category>

		<guid isPermaLink="false">http://limegarden.net/?p=349</guid>
		<description><![CDATA[The one thing that I didn't backup was Outlook. My email is handled by GMail and since Outlook also syncs with my mobile phone, I already had a backup of my mail and my contacts. So being the adventurous type I decided against wasting my time and do a proper backup. Well, today, when I [...]]]></description>
			<content:encoded><![CDATA[<p>The one thing that I didn't backup was Outlook. My email is handled by GMail and since Outlook also syncs with my mobile phone, I already had a backup of my mail and my contacts.</p>
<p>So being the adventurous type I decided against wasting my time and do a proper backup. Well, today, when I wanted to call someone, I found out that all my contacts had been wiped from my mobile phone and as a result my backup was gone.<br />
I suspect that it has been my own fault, but based on the bad luck I'm having lately I'm suspecting Lady Luck to uses loaded dice to decide my chances...</p>
]]></content:encoded>
			<wfw:commentRss>http://limegarden.net/2010/06/29/lady-luck-is-using-loaded-dice/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Wierd evening</title>
		<link>http://limegarden.net/2010/06/25/wierd-evening/</link>
		<comments>http://limegarden.net/2010/06/25/wierd-evening/#comments</comments>
		<pubDate>Thu, 24 Jun 2010 23:49:47 +0000</pubDate>
		<dc:creator>Wouter Lindenhof</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[rant]]></category>

		<guid isPermaLink="false">http://limegarden.net/?p=346</guid>
		<description><![CDATA[Today went well, as far days go, that was until it hit 11 o'clock (I had been watching the football match between the Netherlands and Cameroon, which we won ). I went up to my room to see if my laptop had completed some maintenance work and was surprised to find "The computer has been [...]]]></description>
			<content:encoded><![CDATA[<p>Today went well, as far days go, that was until it hit 11 o'clock (I had been watching the football match between the Netherlands and Cameroon, which we won <img src='http://limegarden.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  ). I went up to my room to see if my laptop had completed some maintenance work and was surprised to find "The computer has been recovered"-message which is signal that something has gone horribly wrong. Clicking 'Ok' caused it to reboot and after swiping my finger (gotta love the fingerprint protection system) the computer logged in and Bang! Blue Screen followed by a reboot after which the computer tried to recover again.<br />
I decided to let the computer have another try before I would try and find out what was wrong, but needless to say, this rant is not about how happy I am that it has been fixed but that I didn't complete it.</p>
<p>To make a long story short I decided that it was quicker to just reinstall everything so as I was busy back up, my mom asked me to pick up my brother who had gone party. It was already the next day (it's now almost two in the morning) and to my suprise I found out that my bike (who he borrowed) was suddenly a folding bike and I'm prety sure that was not possible when he left. Apperantly he had to evade something which caused him to ride in to a low wall. The result: Bike broken and my favorite brother had a few scratches. </p>
<p>So now I'm reinstalling my system for the first time I bought it (almost four years ago, which is a record) and I'm without a bike. If the sky would drop on my head right now I wouldn't even be suprised. <img src='http://limegarden.net/wp-includes/images/smilies/icon_biggrin.gif' alt=':-D' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://limegarden.net/2010/06/25/wierd-evening/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Only one more day</title>
		<link>http://limegarden.net/2010/06/22/only-one-more-day/</link>
		<comments>http://limegarden.net/2010/06/22/only-one-more-day/#comments</comments>
		<pubDate>Tue, 22 Jun 2010 06:44:14 +0000</pubDate>
		<dc:creator>Wouter Lindenhof</dc:creator>
				<category><![CDATA[Brick4]]></category>
		<category><![CDATA[Project]]></category>
		<category><![CDATA[graduation project]]></category>
		<category><![CDATA[rant]]></category>
		<category><![CDATA[School]]></category>

		<guid isPermaLink="false">http://limegarden.net/?p=316</guid>
		<description><![CDATA[Tomorrow I will be defending my graduation work and if all goes well (it must be a strange turn of events if doesn't go well) I will know if I have completed my graduation. Only one more day]]></description>
			<content:encoded><![CDATA[<p>Tomorrow I will be defending my graduation work and if all goes well (it must be a strange turn of events if doesn't go well) I will know if I have completed my graduation.</p>
<p>Only one more day <img src='http://limegarden.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  </p>
]]></content:encoded>
			<wfw:commentRss>http://limegarden.net/2010/06/22/only-one-more-day/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Reverse updates</title>
		<link>http://limegarden.net/2010/06/09/reverse-updates/</link>
		<comments>http://limegarden.net/2010/06/09/reverse-updates/#comments</comments>
		<pubDate>Wed, 09 Jun 2010 06:45:02 +0000</pubDate>
		<dc:creator>Wouter Lindenhof</dc:creator>
				<category><![CDATA[Game development]]></category>
		<category><![CDATA[algorithms]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[ideas]]></category>
		<category><![CDATA[rant]]></category>

		<guid isPermaLink="false">http://limegarden.net/?p=314</guid>
		<description><![CDATA[It has been a while since I last posted something, but that is because I have been busy with my graduation (in case you were wondering). Anyway, today, while I was walking the dog, I suddenly realized how to fix a bottleneck for a certain game idea. The game idea was that the hero can [...]]]></description>
			<content:encoded><![CDATA[<p>It has been a while since I last posted something, but that is because I have been busy with my graduation (in case you were wondering).</p>
<p>Anyway, today, while I was walking the dog, I suddenly realized how to fix a bottleneck for a certain game idea. The game idea was that the hero can interact and affect lives of other characters in the game directly, the bottleneck however was that each character affects another character, which affects another character and so on. A simple example would be if you decide to buy a weapon or not. If you do buy a weapon the merchant will be able to stay in business, buy some bread. When he buys bread, the baker will be able to buy the next shipment of grain from the miller and the miller we be able to pay the farmer and everybody will be happy. Now if you don't the miller might not be able to some bread (he needs to eat also) which means that he goes out of business. Since he is the only miller in the entire region, there will be no more bread for quite some time and everybody dies from the hunger.</p>
<p>The problem with that game idea is that if you even simulate a small village (say 25 people) you will have a lot of relationships to go through. Even if it goes in one direction it will still be 1 hero times 1 person times 25 people times 24 people times 23 people et cetera. The total amount of relationships within the village would be 1.6E+25 (16 with 24 zeros behind it). Even if we say that any action will have not have any affect after 7 relationships that would still be 2.4 billion relationships that are affected. If we limit the amount of relationships to 7 for each person (so 7x7x7x7x7x7x7) it will be 823543 of relationships that need to be updated when the hero does something. And maybe one of those persons affected will need to perform an action that affects the community which means the entire process starts over again.</p>
<p>Of course the game is real time and the other people in the village don't require you to perform any action so if you have 3 or 4 villages you will have almost a constant rate of large social updates. Until this morning it was my firm belief that the above game idea should be hard if not impossible to execute unless you have some monster system. </p>
<p>I always thought in forward direction, what happened now dictates the future, until I thought about reversing the flow, the past is dictated by the future.</p>
<p>Lets take the previous example of buying a weapon or not. Although this is a fact now by the player, the game does not have access at that information at the current time. Let's say you meet the miller and find out he is alive. No matter what happened in the past, the future dictates past events that no matter what the miller survived and kept his job. And the only way that he has kept his job if the baker bought his grain and the only way that the baker could buy his grain was if some paid for his bread. If you made a major investment by buying a weapon (say a gold weapon) then he might credit you for it. If you weren't the cause something else must have happened for the influx of money that allowed the community to stay alive.</p>
<p>Now lets take the same example but the miller is dead. The past generated from that point on could dictate that the hero not buying could have caused it. Or if he did buy the past could credit something else (disease, war, bad crops et cetera).<br />
So what is so different about the reverse update compared to the forward update that it allows us to compact information in such a manner that the above game idea is possible?</p>
<p>Simply put: Forward updates are simulations, calculating exact future behavior, while reverse updates are emulations, imitation of past behavior. A forward update always has one cause (generally the hero) but has many effects (the merchant, the baker, the miller and the farmer). A reverse update has one effect (the baker) and will look for one cause for its current state which is a linear path. </p>
<p>I'm not certain if the solution always works as the past needs to be consistent (you can't undo the past) and certain actions always have a forward update, but for now the game idea seems possible again.</p>
]]></content:encoded>
			<wfw:commentRss>http://limegarden.net/2010/06/09/reverse-updates/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Evil dutch internet law proposal</title>
		<link>http://limegarden.net/2010/04/26/evil-dutch-internet-law-proposal/</link>
		<comments>http://limegarden.net/2010/04/26/evil-dutch-internet-law-proposal/#comments</comments>
		<pubDate>Mon, 26 Apr 2010 11:09:44 +0000</pubDate>
		<dc:creator>Wouter Lindenhof</dc:creator>
				<category><![CDATA[Legal]]></category>
		<category><![CDATA[Dutch Law]]></category>
		<category><![CDATA[rant]]></category>

		<guid isPermaLink="false">http://limegarden.net/?p=310</guid>
		<description><![CDATA[This morning I got a mail which was about a dutch law proposal. In the mail it said that the proposal basically means that you need to pay more when you download certain things from the internet. (the proposal can be found here however it's in dutch) I haven't read it as I don't know [...]]]></description>
			<content:encoded><![CDATA[<p>This morning I got a mail which was about a dutch law proposal. In the mail it said that the proposal basically means that you need to pay more when you download certain things from the internet. (the proposal can be found <a href="http://static.limegarden.net/dutch%20law%20documents/Wet%20rl%20136%20en%20140%20consultatieversie.pdf">here</a> however it's in dutch)</p>
<p>I haven't read it as I don't know the original and basically 21 pages of legal stuff is not what I see as entertaining. But after asking around it seems that the dutch government wants Internet providers to split. If you want access to certain things (like filesharing) you will need to pay extra.</p>
<p>Besides the fact that this is entirely evil, I only wonder "why?".<br />
Does the government (because that is where your money goes) need the money so bad, that they think of this?<br />
Or is it because to counter file sharing?</p>
<p>In either case there are tons of ways around it and besides: <strong>File sharing is legal</strong>. Sharing files you don't have the rights to (like the latest movie) is of course illegal. But using bittorrent, DC++, emule, IRC, Kazzaa (god forbids) or whatever tool you use is legal. Uploading material which you don't own (the "legal own" not the "physical, I-have-it-in-my-hands, own") is also not legal, and that seems common sense to me.</p>
<p>But if this change in the law is accepted than it means that legal sharing (for example sharing huge files to the other office overseas) requires you to pay extra for it. Even a kid would think of this as unfair and any adult should know better.</p>
<p>Sigh, I'm ranting but the Netherlands is slowly turning in a police state, where it seems you have to proof your innocence. :S </p>
]]></content:encoded>
			<wfw:commentRss>http://limegarden.net/2010/04/26/evil-dutch-internet-law-proposal/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Large scene rendering</title>
		<link>http://limegarden.net/2010/04/26/large-scene-rendering/</link>
		<comments>http://limegarden.net/2010/04/26/large-scene-rendering/#comments</comments>
		<pubDate>Mon, 26 Apr 2010 08:41:15 +0000</pubDate>
		<dc:creator>Wouter Lindenhof</dc:creator>
				<category><![CDATA[Game development]]></category>
		<category><![CDATA[algorithms]]></category>
		<category><![CDATA[graphics]]></category>
		<category><![CDATA[hardware]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[rant]]></category>

		<guid isPermaLink="false">http://limegarden.net/?p=308</guid>
		<description><![CDATA[There is one thing I don't like about floating point and integers and that is that they consist out of only certain amount of bits. An integer is at least 32 bits (on 32 systems at least). A float is also 32 bits. A double is 64 bits. Since I'm currently thinking about a space [...]]]></description>
			<content:encoded><![CDATA[<p>There is one thing I don't like about floating point and integers and that is that they consist out of only certain amount of bits. An integer is at least 32 bits (on 32 systems at least). A float is also 32 bits. A double is 64 bits.</p>
<p>Since I'm currently thinking about a space game, I was wondering how to create a huge battle field (a whole solar system) in real time while having all the precision I need. </p>
<p>Doubles are not fast and take a lot of space and although I don't worry about space, speed is a bigger issue. If I want a huge battle and here I'm going to throw some numbers: One side can have as maximum 85 huge ships, 3010 fighters, makes 3960 weapon slots, which makes 19800 bullets flying around. And that is only one side. Since I need two sides for a war, I need to double the values (190 ships, 6020 fighters, 7920 hardpoints, 39600 bullets). Lets say that everything is represented by one location (which a 3D vector) it would mean 53730 locations. 53730 locations times 3 would be 161190 and that times [cci_cpp]sizeof(double)[/cci_cpp] would be 161190 * 8 bytes = 1289520 bytes (about 1MB) which is a lot to start with even if you ignore the fact that the problem is more that I have a lot than the doubles are bigger.</p>
<p>As I was considering the problem I realized something else. When I'm rendering, I will need to use floats. DirectX 9 requires floats and although I could send doubles it would half my data bandwidth. So what ever I choose, in the end I will need to use floats unless I want to have some penalty.</p>
<p>Using doubles for vertices are is a bad idea for the sake of precision alone.</p>
<p>But then I started thinking...</p>
<p>I don't need to render using doubles, I can simply render everything with floats and to ensure that precision is maintained. If something is not within the safe area of floating point rendering (let's say floats can have a maximum of 1024, and yes I now it can be a lot more) but the object in question is 2048 units away, I still want to render it. You can't simply let a sun disappear because it is beyond the range of your numbers, that would be weird.</p>
<p>Instead everything that is more than 1024 units away will be rendered first (farthest away first) and the distance also scales it down. Than I clear the Z buffer and render everything in the 1024 range.</p>
<p>[cc_text]<br />
Sun has a size of 100<br />
Sun is 2048 units away<br />
Sun needs to be rendered.</p>
<p>To render it but maintain the correct look:<br />
Scale sun down so that at 1024 it would have the same<br />
size on screen as if it was rendered at 2048.<br />
[/cc_text]</p>
<p>It was so simple that I thought it was silly I never thought about it. How you scale it however depends on the view and projection matrix. </p>
<p>I'm still not certain if I want to use doubles, but for my second problem I have a solution. Now I need to find one for my first.</p>
]]></content:encoded>
			<wfw:commentRss>http://limegarden.net/2010/04/26/large-scene-rendering/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

