<?xml version="1.0" encoding="utf-8"?>
<comments>
  <row Id="1" PostId="22" Score="4" Text="One thing to add, using a language other than the final target language will prevent your prototype from becoming production code. You may want to take that into consideration when thinking of the politics of your company." CreationDate="2010-07-14T19:23:22.840" UserId="41" />
  <row Id="3" PostId="40" Text="Have you had any experience with it? Is it fairly stable, well written, and good for 3D beginners? I can easily google up a list of 3D engines (as you see from my question), I'm looking for more insight into which is a good choice, and why. Thanks." CreationDate="2010-07-14T19:27:05.203" UserId="48" />
  <row Id="4" PostId="40" Score="1" Text="But Ogre3D isn't an engine. It is a 3d rendering library. You have to either choose an engine that's built on ogre or build your own." CreationDate="2010-07-14T19:27:12.127" UserId="43" />
  <row Id="5" PostId="37" Text="Oh my. While I was typing this, the same answer was given about a gazillion times. Sorry :)" CreationDate="2010-07-14T19:27:29.397" UserId="20" />
  <row Id="7" PostId="25" Score="4" Text="Freesound is a great resource. Most of it still needs some editing, but they make a great start." CreationDate="2010-07-14T19:28:44.153" UserId="6" />
  <row Id="8" PostId="33" Score="1" Text="I have in fact been doing this. I find that the 3D aspect of unity though tends to get in the way insofar as user interface is concerned. Also I always end up making a dummy scene that has nothing but a camera with my root script attached. I'll check out the link you mentioned though!" CreationDate="2010-07-14T19:29:02.093" UserId="30" />
  <row Id="9" PostId="41" Text="Starting from where? Absolutely no experience in anything relating whatsoever? Or competent in some aspect of programming?" CreationDate="2010-07-14T19:29:23.357" UserId="14" />
  <row Id="10" PostId="18" Text="Did Unity survive the iOS 4 &quot;non native code&quot; shenanigans in the end?" CreationDate="2010-07-14T19:29:34.383" UserId="78" />
  <row Id="11" PostId="17" Text="What platforms are you talking about?  Does it have to work across platforms?" CreationDate="2010-07-14T19:31:14.303" UserId="34" />
  <row Id="12" PostId="22" Score="1" Text="@jessecurry, I love how you said &quot;help prevent.&quot;  I've seen prototyped Ruby code go life in a few days along with installing ruby support on the hosting servers." CreationDate="2010-07-14T19:31:33.210" UserId="63" />
  <row Id="13" PostId="17" Text="@Dennis specifically using Java and developing for Android." CreationDate="2010-07-14T19:31:55.643" UserId="47" />
  <row Id="14" PostId="40" Score="2" Text="I've had extensive experience with Ogre3d; It's *very* stable and well written, and does a great job of taking care of mundane tasks (scene culling, mesh loading, billboards/particles). Fire is correct in that it's not a Game Engine; but Ogre can be (and often is) incorporated with other libraries to make one. It's a fantastic step above &quot;drawing individual triangles and writing my own 3D object loader&quot;, but it is just a rendering library. If that's what you want, it's a great library with an active and supportive community." CreationDate="2010-07-14T19:32:52.257" UserId="9" />
  <row Id="15" PostId="50" Score="6" Text="Lua is very popular because it provides &quot;meta language&quot; features. You can implement object-oriented structures, or pure procedural functions, etc. It has a very simple C interface, and gives the engine developer a lot of flexibility in the language itself." CreationDate="2010-07-14T19:34:52.873" UserId="9" />
  <row Id="16" PostId="18" Text="That’s what I was wondering myself…" CreationDate="2010-07-14T19:35:09.067" UserId="72" />
  <row Id="17" PostId="18" Text="So far, yes. Apple doesn't seem to have any specific gripe with Unity. And Unity seems pretty confident about their future on the iPhone. I know that they have had direct talks with Apple." CreationDate="2010-07-14T19:35:30.393" UserId="30" />
  <row Id="18" PostId="42" Score="1" Text="Possible Community Wiki?" CreationDate="2010-07-14T19:39:01.197" UserId="97" />
  <row Id="19" PostId="62" Text="Sure, but I forgot to mention that is not an option. Major problem being that raster and vector content creation is totally different (raster being far better for artists). One option would be to create multiple raster assets though, but I strongly believe there must be a better solution. For example, creating assets for largest supported res/aspect ratio and scaling down in lower res runtime versions on the fly or somethign like that. Positioning remains the problem still though." CreationDate="2010-07-14T19:39:12.117" UserId="19" />
  <row Id="20" PostId="63" Text="That was a fun way to spend five minutes playing around :P" CreationDate="2010-07-14T19:40:00.693" UserId="23" />
  <row Id="21" PostId="76" Text="That's a good point about C# and Java being managed instead of interpreted... edited my question to make it more accurate :)" CreationDate="2010-07-14T19:43:40.310" UserId="13" />
  <row Id="22" PostId="62" Text="Yes, that's also an option, if you can bear the quality loss and performance issues." CreationDate="2010-07-14T19:44:05.083" UserId="35" />
  <row Id="23" PostId="71" Text="Great articles indeed =)  +1" CreationDate="2010-07-14T19:44:05.753" UserId="97" />
  <row Id="25" PostId="86" Score="2" Text="The devkitPro SDK files are still hosted on sourceforge, you can always download them there: http://sourceforge.net/projects/devkitpro/" CreationDate="2010-07-14T19:48:57.677" UserId="21" />
  <row Id="26" PostId="85" Text="I think that your question is subjective and argumentative." CreationDate="2010-07-14T19:49:02.717" UserId="82" />
  <row Id="27" PostId="83" Text="Do a degree I am using an existing engine for reference.  I'm attempting to port the SMAUG code base to C# from the existing C base.  So the feature set is mostly defined, it's just getting it working in C#." CreationDate="2010-07-14T19:49:58.360" UserId="67" />
  <row Id="28" PostId="107" Score="1" Text="If you're an indie developer and you don't already read Cliff's blog, you're really missing out.  Reading that blog alone is motivating." CreationDate="2010-07-14T19:52:09.713" UserId="29" />
  <row Id="29" PostId="113" Text="Yeah, thanks for the note, already corrected the interpreted/managed thing ;)&#xA;Also, good point with the meshes  floating about the scene. Didn't think of that when thinking about GC problems..." CreationDate="2010-07-14T19:53:16.607" UserId="13" />
  <row Id="33" PostId="85" Score="18" Text="@alFador: I think tips on effectively managing a project are neither subjective nor argumentative. There are a lot of processes out there that try to solve problems like project management. But you are right on keeping yourself motivated, that's a rather subjective topic... I'll change that. " CreationDate="2010-07-14T19:55:22.483" UserId="13" />
  <row Id="34" PostId="105" Score="2" Text="applicationWillTerminate only works for applications that do not support multitasking or for the pre-4.0 SDK.  It's better to use applicationDidEnterBackground with post-4.0 code." CreationDate="2010-07-14T19:58:53.597" UserId="34" />
  <row Id="35" PostId="130" Text="For what purpose? To make the game or to pitch it to an investor?" CreationDate="2010-07-14T20:00:10.053" UserId="119" />
  <row Id="37" PostId="9" Text="Good question! I was pondering this myself recently and figured that a modern terrain renderer would focus more on getting the GPU to do as much of the work as possible rather than on minimizing poly count like ROAM did. The answer would depend on the capabilities of the hardware as well. For example, on DirectX11/OpenGL4 you could generate the geometry on the GPU, but on older GPUs you'd have to provide vertex buffers to draw, but these could be re-used as height displacement could be done in a vertex shader. " CreationDate="2010-07-14T20:00:54.263" UserId="93" />
  <row Id="38" PostId="130" Text="To make the game." CreationDate="2010-07-14T20:01:02.547" UserId="35" />
  <row Id="39" PostId="104" Text="You can actually get a lot done with the time the OS gives you to shut down.  I was able to persist quite a few game objects (a few hundred at least) using the method I described in my answer in that time.  Even on the slow 1G iPod touch.  Depending on the type of game you are making, the CoreData solution may work better for when the app is quiting, but at the expense of slower game play." CreationDate="2010-07-14T20:01:36.600" UserId="34" />
  <row Id="40" PostId="49" Text="OpenFeint has been announced for Android -- see http://www.openfeint.com/developers/android ." CreationDate="2010-07-14T20:02:59.657" UserId="34" />
  <row Id="41" PostId="130" Text="@Matias are you just copy pasting the questions from area51?" CreationDate="2010-07-14T20:05:20.850" UserId="10" />
  <row Id="42" PostId="146" Text="Then wouldn't the minimum essentially be:  everything you need to start work on the game. :p" CreationDate="2010-07-14T20:06:16.217" UserId="14" />
  <row Id="44" PostId="115" Text="Yeah, thats a good video, definitely worth a watch especially when he talks about efficiency." CreationDate="2010-07-14T20:06:38.587" UserId="122" />
  <row Id="45" PostId="121" Text="Garbage collection can be dealt with, at least in C#, reasonably well, so I wouldn't say that it's a deal-breaker. With proper threading and awareness of program state, you can avoid performance issues.&#xA;&#xA;It's still another thing you have to think about, and it does make the managed language a little less managed." CreationDate="2010-07-14T20:07:20.223" UserId="9" />
  <row Id="46" PostId="148" Text="Thanks!  This looks really informative." CreationDate="2010-07-14T20:07:25.807" UserId="21" />
  <row Id="47" PostId="146" Text="@Noctrine by definition, sure :)" CreationDate="2010-07-14T20:07:50.657" UserId="10" />
  <row Id="48" PostId="92" Text="Javascript is a really good idea. I wonder why it doesn't seem to have had traction in this space? Any ideas?" CreationDate="2010-07-14T20:09:00.047" UserId="31" />
  <row Id="49" PostId="126" Score="1" Text="Some good points here.&#xA;&#xA;One thing to think about, is why do you want a scripting language when your game is written in c#? C++ engines can gain alot of agility from using a scripting language, as C++ typically takes a long time to compile. C# is pritty quick in this regard.&#xA;&#xA;If for some reason you want your scripts compiled at runtime, you could always use CodeDom (or any other code generation methods) to compile a CS file at load time, but this would only work on PC. Theres a chapter on this in the book &quot;Game Engine Toolset Development&quot;" CreationDate="2010-07-14T20:13:14.140" UserId="120" />
  <row Id="50" PostId="24" Score="1" Text="+1 for the PRagmatic Programmer ref." CreationDate="2010-07-14T20:13:20.287" UserId="137" />
  <row Id="51" PostId="121" Score="4" Text="It's worth noting that in .NET 4, the garbage collector supports background collection for all three generations of objects. This should effectively minimize the performance impact of garbage collection in games.&#xA;&#xA;Relevant Link: http://geekswithblogs.net/sdorman/archive/2008/11/07/clr-4.0-garbage-collection-changes.aspx" CreationDate="2010-07-14T20:14:06.150" UserId="136" />
  <row Id="52" PostId="63" Text="Same thing I posted ( http://gamedev.stackexchange.com/questions/8/where-can-i-find-free-sounds-for-my-game/10#10 ), but thanks for mentioning the Flash version" CreationDate="2010-07-14T20:15:27.427" UserId="47" />
  <row Id="55" PostId="141" Text="Got any example sites to recruit said people?" CreationDate="2010-07-14T20:17:31.523" UserId="47" />
  <row Id="56" PostId="50" Text="To add to Karantza's comment, artists tend to love Lua too because it's very approachable, with plain and forgiving syntax. If your codebase is C or C++, I would highly recommend it." CreationDate="2010-07-14T20:17:35.987" UserId="6" />
  <row Id="57" PostId="119" Score="16" Text="In regards to security, I spoke to an MMO developer who said &quot;we assume all players are cheaters, so we do everything server side.&quot; This severely constrained them in CPU time, because they couldn't off-load virtually anything to client side. This is why MMO AI is so dreadful." CreationDate="2010-07-14T20:17:55.687" UserId="31" />
  <row Id="58" PostId="73" Text="Retail, PSN publishing should be another question topic." CreationDate="2010-07-14T20:18:08.293" UserId="35" />
  <row Id="59" PostId="32" Text="+1 for SDL. Very good for cross platforming." CreationDate="2010-07-14T20:19:07.353" UserId="122" />
  <row Id="60" PostId="92" Text="JavaScript does have traction. Unity uses it. So does Wolfire Games for their engine." CreationDate="2010-07-14T20:19:54.297" UserId="138" />
  <row Id="61" PostId="137" Score="3" Text="SlimDX also has the benefit of being compatible with WPF's Direct3D interop support, which (depending on the type of game you're developing) could be very useful.  There is no official support for WPF/XNA interop, and while I believe some people have managed to get the two working together, the process was hack-y and fragile." CreationDate="2010-07-14T20:20:29.537" UserId="136" />
  <row Id="62" PostId="1" Text="Should this be community-wiki? Seems very listy." CreationDate="2010-07-14T20:25:40.287" UserId="14" />
  <row Id="63" PostId="137" Text="I should add that there *is* an effort to get XNA working cross-platform with Mono (see MonoXNA), which might factor into the decision of which framework to use." CreationDate="2010-07-14T20:27:23.497" UserId="136" />
  <row Id="64" PostId="76" Score="1" Text="Marshalling in general is a performance bottleneck, but it helps too to be aware of blittable types - types that can be mapped directly to unmanaged memory without significant performance impact. http://msdn.microsoft.com/en-us/library/75dwhxf7.aspx" CreationDate="2010-07-14T20:28:28.907" UserId="6" />
  <row Id="65" PostId="85" Text="I would argue there is a lot of advice out there on how to keep people motivated. You're dealing with people that had to find tricks to keep themselves going. Some of those tricks work across most of the board (ie: break down a large task into much smaller tasks)." CreationDate="2010-07-14T20:32:59.193" UserId="55" />
  <row Id="67" PostId="193" Score="4" Text="Only problem with IronPython, it wont run on the xbox360.  It is fine if you want to use it for PC only.  IronPyton uses System.Reflection.Emit a lot, and that is not available on the Xbox's .net Framework." CreationDate="2010-07-14T20:39:00.443" UserId="38" />
  <row Id="68" PostId="130" Text="@Olafur No, is a common question." CreationDate="2010-07-14T20:41:52.887" UserId="35" />
  <row Id="69" PostId="150" Text="This link has a pretty good description: http://wiki.maemo.org/OpenGL-ES" CreationDate="2010-07-14T20:46:25.090" UserId="116" />
  <row Id="71" PostId="208" Score="3" Text="If you do that, you have to either scale up your distant quads to compensate for the distance scaling, or set up a projection matrix that doesn't apply any perspective. It may just be easier to translate the quads yourself." CreationDate="2010-07-14T20:56:24.537" UserId="160" />
  <row Id="72" PostId="203" Text="The second point cannot be stressed enough. Make sure you know who the game is aimed for (meaning that, if it's a casual game, you'd want to have it on at least OSX and Windows, thus OpenGL would be the best option).&#xA;&#xA;&#xA;As for the third point - and this is where the engine comes into play - is also important. It would be illogical to use a feature-rich, resource-heavy engine like Unreal to make a DS game. The point is also related to what I said regarding the second one: Establish who the game is aimed for. If you're going for a casual game, most people's computers won't handle, say, particles." CreationDate="2010-07-14T20:58:10.723" />
  <row Id="73" PostId="69" Text="Is their project an RTS, by chance? I'm not so much unfamiliar with Unity, more really RTSs." CreationDate="2010-07-14T21:00:01.593" UserId="53" />
  <row Id="74" PostId="58" Text="Were any of the PoCs RTS games, by chance?" CreationDate="2010-07-14T21:00:37.147" UserId="53" />
  <row Id="75" PostId="176" Score="3" Text="Pain.NET? ouch." CreationDate="2010-07-14T21:00:40.563" UserId="48" />
  <row Id="76" PostId="215" Text="Yes, that's what i have." CreationDate="2010-07-14T21:00:49.453" UserId="35" />
  <row Id="77" PostId="130" Text="@Matias not referring to that, but to the sprite resource and texture atlas questions." CreationDate="2010-07-14T21:01:47.597" UserId="10" />
  <row Id="78" PostId="178" Text="Are you trying to optimize fuel use (total torque exerted) or speed?  Also, is the ship starting off with zero angular velocity at the beginning of this operation?" CreationDate="2010-07-14T21:01:56.317" UserId="97" />
  <row Id="79" PostId="205" Score="3" Text="Additionally you can tell the Garbage Collector to run explicitly if you've just finished an allocate/free heavy loop or if you find you have spare cycles." CreationDate="2010-07-14T21:03:37.933" UserId="23" />
  <row Id="80" PostId="207" Text="What Iain said, plus I take the &quot;parallax factor&quot; (1, 0.5 and 0.2 in Iain's code) and make it a parameter describing my layers, that way I can adjust the parallax subtlety (or at runtime)." CreationDate="2010-07-14T21:07:07.677" UserId="109" />
  <row Id="82" PostId="50" Score="2" Text="I'm not convinced python would make a good choice. The C bindings for python are much more geared towards extending python with C, then embedding python in C." CreationDate="2010-07-14T21:09:00.247" UserId="174" />
  <row Id="83" PostId="222" Score="4" Text="This is going to end up being a list at best, advertisement thread at worst. Should be CW." CreationDate="2010-07-14T21:09:30.680" UserId="14" />
  <row Id="85" PostId="58" Text="@Lance Sadly no, it's mostly been Action-adventure stuff and recently fighting game mechanics." CreationDate="2010-07-14T21:14:35.203" UserId="14" />
  <row Id="86" PostId="50" Score="5" Text="From what I've heard, Ĺua also has good runtime performance when compared to other scripting languages like Python. (and it has full support for closures - a really nifty feature if you ask me..)" CreationDate="2010-07-14T21:15:10.850" UserId="178" />
  <row Id="87" PostId="28" Text="Olafur - I'd say Troll2D was your answer so you should start with that. Box2d should be the afterthought. " CreationDate="2010-07-14T21:15:35.797" UserId="119" />
  <row Id="88" PostId="221" Score="2" Text="If you program in Erlang, then your whole system is hot-swappable :)" CreationDate="2010-07-14T21:15:43.300" UserId="10" />
  <row Id="90" PostId="228" Text="Aspect ratio worries me though. For example, it's not a huge leap from 1080p to 720p since aspect is the same, we're deling with simple scaling then. What happens when you have say 1080p vs 1680x1050. Do I show more of level, wider FOV on larger aspect, sort of a margin? Like, design for wider aspect with a safe area where all of the important content goes, so as not to be cropped off screen on narrower aspects." CreationDate="2010-07-14T21:18:38.700" UserId="19" />
  <row Id="91" PostId="18" Score="1" Text="Here's the latest info from Unity regarding the aforementioned shenanigans http://blogs.unity3d.com/2010/07/02/unity-and-ios-4-0-update-iii/" CreationDate="2010-07-14T21:19:48.450" UserId="30" />
  <row Id="92" PostId="228" Text="I'll update question with visual presentation of this solution. Seems like there is no other way." CreationDate="2010-07-14T21:21:58.610" UserId="19" />
  <row Id="94" PostId="234" Score="3" Text="If you are going to use this with XNA, I'd suggest using TiledLib. The library comes with a full content pipeline extension project that will parse and build the .tmx file along with a runtime library that allows access to the data in the map file.&#xA;&#xA;http://tiledlib.codeplex.com/" CreationDate="2010-07-14T21:23:28.907" UserId="38" />
  <row Id="95" PostId="246" Score="1" Text="+1 for Subversion + TortoiseSVN on windows" CreationDate="2010-07-14T21:26:10.607" />
  <row Id="96" PostId="245" Score="1" Text="This is a question that should be asked on StackOverflow or SuperUser, there are lots of answers there already... There isn't any Game Design, Game Development or Asset Creation here." CreationDate="2010-07-14T21:26:19.297" UserId="158" />
  <row Id="97" PostId="246" Score="1" Text="I use Subversion along with TortoiseSVN.  And I use AnkhSVN plug-in for Visual Studio." CreationDate="2010-07-14T21:27:50.687" UserId="38" />
  <row Id="99" PostId="245" Text="The post by munificient although makes me wonder, maybe the question should state that it is regarding games. This would make John C his answer a bad answer and munificent a good answer. Related Meta question: http://meta.gamedev.stackexchange.com/questions/3/programming-questions-here-or-belongs-on-stackoverflow" CreationDate="2010-07-14T21:29:03.590" UserId="158" />
  <row Id="100" PostId="255" Score="1" Text="There is also a free, non-expiring 2-user license which you can use for evaluating Perforce." CreationDate="2010-07-14T21:31:22.233" UserId="143" />
  <row Id="101" PostId="245" Text="Consider the question changed." CreationDate="2010-07-14T21:33:22.577" UserId="165" />
  <row Id="102" PostId="22" Text="@Tetrad Unless you want to prove performance, language choice doesn't matter for proving out tech, either. I.e. to answer the question &quot;Would this work at all&quot;, a quick scripted prototype can give you all the answers you need." CreationDate="2010-07-14T21:33:27.363" UserId="181" />
  <row Id="103" PostId="178" Text="Well, to optimize for speed would be to have neigh-infinite acceleration, and to optimize for fuel use would be to have nearly zero acceleration. So, in practice, I'll use a trade-off that looks good.&#xA;&#xA;As for starting angular velocity, hopefully I'll be able to include that in the calculation naturally." CreationDate="2010-07-14T21:34:00.937" UserId="9" />
  <row Id="104" PostId="233" Text="You're very correct about this being the case for linear motion. My main concern was using an algorithm like this with a physics engine that only provides me with yaw, pitch, and roll control for torque. Those axes aren't orthogonal once you start rotating, so I was hoping that there was a better solution. Your approach to timing, however, will still apply regardless." CreationDate="2010-07-14T21:37:25.460" UserId="9" />
  <row Id="105" PostId="233" Text="Ah; sorry, I must not have understood your question.  I'm not sure I can answer more thoroughly without seeing the specs of your engine.  But surely there is a way to apply constant torque in a constant direction?" CreationDate="2010-07-14T21:42:56.723" UserId="97" />
  <row Id="106" PostId="32" Text="It doesn't appear that they have a version 1.3 &quot;stable&quot; yet which is the version you will want for iphone support. You will probably need to grab the 1.3 version from their HG repo and build it yourself." CreationDate="2010-07-14T21:44:00.547" UserId="188" />
  <row Id="107" PostId="249" Score="1" Text="Yes, there are books, tutorials, sites, interesting articles and other questions regarding this." CreationDate="2010-07-14T21:49:53.600" UserId="189" />
  <row Id="108" PostId="22" Text="@Rachel Well sure, which is why I prefaced the entire question with &quot;it depends&quot;." CreationDate="2010-07-14T21:52:25.847" UserId="51" />
  <row Id="110" PostId="270" Score="5" Text="map&lt;&gt; is almost never what you want to use for anything memory  or CPU efficient within the context of a game. hash_map&lt;&gt; is almost always a better choice, although the performance of hash_map differs heavily with vendor.&#xA;&#xA;If you are building a game that is either for console or features scalable network play STL can absolutely be too slow or bloated for your purposes." CreationDate="2010-07-14T22:03:49.540" UserId="162" />
  <row Id="111" PostId="239" Score="108" Text="+1 for finding a mathematical way to say &quot;because it's MASSIVE&quot;" CreationDate="2010-07-14T22:07:16.073" UserId="30" />
  <row Id="113" PostId="193" Text="A very good point.  Updated." CreationDate="2010-07-14T22:12:40.013" UserId="136" />
  <row Id="114" PostId="196" Score="1" Text="Ardour which is a digital audio workstation is worth taking a look at as far as sound goes" CreationDate="2010-07-14T22:17:32.537" UserId="164" />
  <row Id="116" PostId="119" Text="I made a question regarding the third alinea of your answer: http://gamedev.stackexchange.com/questions/249/how-to-write-a-network-game" CreationDate="2010-07-14T22:22:20.053" UserId="158" />
  <row Id="117" PostId="82" Text="Also, those of you in the &quot;audience&quot;, upvote each of the tools you use so that hopefully the top answers will be the most widely used tools. (and perhaps downvote ones that you don't recommend? I dunno)" CreationDate="2010-07-14T22:23:25.107" UserId="189" />
  <row Id="118" PostId="268" Score="9" Text="The EASTL is a good reading http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2271.html" CreationDate="2010-07-14T22:24:57.990" UserId="35" />
  <row Id="120" PostId="246" Text="Subversion is nice, especially for games, since you can transparently include binary files (art assets) along with code in the repository. (Others may do this too, but my experience is with SVN)" CreationDate="2010-07-14T22:41:37.710" UserId="9" />
  <row Id="121" PostId="165" Score="1" Text="That list is a solid starting point. They are a bit light on the roles for design though. As projects continue to expand in complexity, the design field has begun to splinter into a number of specialized rolls just like art/programming.&#xA;&#xA;Design now spans a range that includes writing/story development, system design, level design, and scripting. Although designers are often forces to wear more hats and hop between these fields. Particularly on smaller teams." CreationDate="2010-07-14T22:43:05.883" UserId="154" />
  <row Id="122" PostId="282" Score="2" Text="@Tetrad, I hate to criticize a fellow UnityAnswers comrade :) But this has already been answered extensively on StackOverflow. Plus, here - we're the ones *trying* to get hired, not doing the hiring. :) Post a question about how to bypass those stupid interview questions. :)" CreationDate="2010-07-14T22:45:21.950" UserId="165" />
  <row Id="123" PostId="268" Score="1" Text="Yup, that's the one I meant by &quot;used our own implementation&quot;. :)" CreationDate="2010-07-14T22:48:02.100" UserId="160" />
  <row Id="124" PostId="239" Score="15" Text="The number of assets is the most impressive one for me. Imagine you're at home cranking on your little game project and every time you write just *five* lines of code, you have to stop and completely author, export, test and complete some texture, sound, model, or animation." CreationDate="2010-07-14T22:50:44.720" UserId="160" />
  <row Id="125" PostId="250" Score="2" Text="Not saying you're wrong, but some companies *have* tried to succeed with only one player-type, such as *killers* in **Darkfall**, a pvp-only game." CreationDate="2010-07-14T23:12:06.887" UserId="165" />
  <row Id="126" PostId="282" Score="4" Text="I'll respectfully disagree with you on the second point.  Personally I find game project management and team dynamics to be just as big of an issue to shipping games as problems that people &quot;on the ground&quot; have.  Good games are made by good teams which have good people." CreationDate="2010-07-14T23:15:09.017" UserId="51" />
  <row Id="127" PostId="85" Text="Motivation tips may not be argumentative, but they're definitely subjective. Different people are motivated by different things." CreationDate="2010-07-14T23:19:22.647" UserId="165" />
  <row Id="128" PostId="282" Text="I think what John C was getting at was that there are plenty of answers on SO for interview based programming tests. I also don't think that basing a decision on a programming test should be the final determination. " CreationDate="2010-07-14T23:20:05.560" UserId="188" />
  <row Id="129" PostId="300" Score="5" Text="Remember, as Alex Trebek might say, &quot;Your question must be in the form of a *question* &quot;. Don't put your Answer in the Question, please - put it in a new Answer. And consider making the whole thing a **wiki**, since it doesn't have a *single* right answer." CreationDate="2010-07-14T23:23:26.087" UserId="165" />
  <row Id="130" PostId="238" Text="Wow... brilliant! Longest 'overview' I've ever read :P" CreationDate="2010-07-14T23:27:26.300" />
  <row Id="131" PostId="306" Text="Snap, didn't see your reply quick enough" CreationDate="2010-07-14T23:27:48.217" UserId="122" />
  <row Id="132" PostId="300" Text="Ah good point! How do I make something a wiki? I'm not seeing a link." CreationDate="2010-07-14T23:34:55.927" UserId="188" />
  <row Id="133" PostId="86" Text="devkitPro is great. It should be noted though that there is no path from devkitPro homebrew to legitimate release through nintendo. At least not that I know of. So you can't make a game with devkitPro and expect that someday you'll get to release that game commercially." CreationDate="2010-07-14T23:40:35.717" UserId="19" />
  <row Id="134" PostId="193" Score="2" Text="Dont think xbox is getting Reflection.Emit any time soon, as winPhone has both xna and silverlight and does not support that namespace" CreationDate="2010-07-14T23:42:33.683" UserId="120" />
  <row Id="135" PostId="232" Score="1" Text="The 3D buzz tutorials were great, recommended to anyone who already knows c# as that's the language they use for scripting." CreationDate="2010-07-14T23:47:45.017" UserId="122" />
  <row Id="137" PostId="273" Score="7" Text="Issues with STL's memory use and games can usually be solved with custom allocator classes. Indeed, at my previous job, our &quot;custom&quot; vector class was just a thin wrapper around `std::vector` that overrode the default allocator." CreationDate="2010-07-14T23:51:39.890" UserId="211" />
  <row Id="138" PostId="286" Score="1" Text="+1 for Ogre approach. I know about it, have read through some of the code. I was more interested to hear personal stories about the approach though and what other people do in situation like that." CreationDate="2010-07-14T23:53:39.043" UserId="19" />
  <row Id="139" PostId="286" Score="2" Text="Thanks! Well I would do it mostly the way Ogre did. I've used the Interface/Factory approach in a lot of cross platform development and I'm actually not sure how I would do it otherwise. I would say that you absolutely need to be working on multiple platforms at the same time though.  Do not try and code everything on Windows and than try to port to Mac for instance. " CreationDate="2010-07-15T00:12:05.683" UserId="188" />
  <row Id="140" PostId="306" Text="No worries. There's bound to be some overlap when people are looking up info :)" CreationDate="2010-07-15T00:13:58.007" UserId="140" />
  <row Id="141" PostId="321" Text="Somehow managed to miss that in your list." CreationDate="2010-07-15T00:16:15.537" UserId="188" />
  <row Id="142" PostId="300" Text="When you edit it, you should see a checkbox at bottom right. And if you make your Question a wiki, it automatically makes the answers as wiki. Then you should cut/paste your existing answers into one." CreationDate="2010-07-15T00:53:37.770" UserId="165" />
  <row Id="143" PostId="312" Score="1" Text="Thanks, that looks decent, although something running on OS X would be ideal." CreationDate="2010-07-15T00:55:59.277" UserId="58" />
  <row Id="144" PostId="41" Text="Starting from some basic programming experience." CreationDate="2010-07-15T01:03:08.327" UserId="37" />
  <row Id="145" PostId="201" Text="You can get a student version at http://students.autodesk.com - I'm not sure if there are any legal restrictions on it regarding rights to publish any work produced with it though." CreationDate="2010-07-15T01:32:20.650" />
  <row Id="146" PostId="277" Score="2" Text="In practice, toward the end of a project, performance tends to be a critical problem.  If you use STL, you have very little opportunity for optimization because it takes your specific applications and solves them in a general way.  Solving specific cases in a specific way (and without dynamic memory allocation) is almost always higher-performance." CreationDate="2010-07-15T01:33:46.073" UserId="217" />
  <row Id="147" PostId="341" Score="5" Text="Not that I'm disagreeing with you, but the most common languages are arguably the most supported and therefore are more likely to be maintainable than something more esoteric.  Choosing popular languages has its benefits." CreationDate="2010-07-15T01:50:54.100" UserId="51" />
  <row Id="148" PostId="341" Score="3" Text="@Tetrad oh I agree fully. But this has often led down a road where something could have been solved in a much simpler manner with some other tool/language." CreationDate="2010-07-15T01:58:56.577" UserId="10" />
  <row Id="149" PostId="310" Text="Not that those are bad questions, but the scope of this one is more specifically towards non-senior people who might need training and oversight.  I don't have a problem picking out good senior people.  I have a problem trying to find smart people who just don't have enough experience to sound good in a traditional interview." CreationDate="2010-07-15T02:00:21.283" UserId="51" />
  <row Id="150" PostId="268" Score="2" Text="If you have the opportunity to locate and buy Best of Game Programming Gems, do it. There is an article title &quot;Using the STL in Game Programming&quot; by James Boer, ArenaNet, where he makes a really good case of using the STL." CreationDate="2010-07-15T02:14:22.780" UserId="33" />
  <row Id="151" PostId="350" Text="in contrast to my answer here (http://meta.gamedev.stackexchange.com/questions/3/programming-questions-here-or-belongs-on-stackoverflow) this is, IMHO, off topic for GameDev. Something like this would be well suited for SO" CreationDate="2010-07-15T02:49:11.340" UserId="159" />
  <row Id="152" PostId="239" Score="5" Text="I was going to say there are only around 4000 quests but I was wrong wowhead has a list of 8446 quests but these are not all accessible in the game. They also list 36406 items. Now wow is a huge game. Ever think of writing a mud?" CreationDate="2010-07-15T03:10:01.443" UserId="231" />
  <row Id="153" PostId="310" Score="1" Text="@Tetrad, only one of the Questions mentioned *senior*, and I mainly picked it because it mentioned the *FizzBuzz* test, which could at least help you phone-screen people. :)" CreationDate="2010-07-15T03:14:44.827" UserId="165" />
  <row Id="155" PostId="193" Score="1" Text="You could be right.  WP7 does not actually run Silverlight, but &quot;Silverlight Mobile Compact Framework&quot;, which is based on .NET CF instead of .NET.  I believe the Xbox 360 also runs .NET CF instead of the full .NET Framework, so it's likely to end up with a similar implementation to that of WP7.  Oh well." CreationDate="2010-07-15T03:19:34.957" UserId="136" />
  <row Id="157" PostId="333" Text="Allegorithmic was the company that I originally first heard about when the buzz bomb hit and their client list has some big players but, considering they've been in business for a long time, it's still pretty small." CreationDate="2010-07-15T03:30:08.237" UserId="214" />
  <row Id="158" PostId="329" Text="Good points, but graph theory and game development are not one in the same and my concern is of the latter." CreationDate="2010-07-15T03:31:47.397" UserId="214" />
  <row Id="160" PostId="40" Text="+1 For Ogre 3D&#xA;We have actually used this engine in many of our commercial projects and we are very pleased by it." CreationDate="2010-07-15T03:58:30.743" />
  <row Id="161" PostId="329" Text="Graph Theory and game development are inherently tied.  Most AI logics and decisions/choice algorithms are best modeled with graph theory; Physics engines optimize with graph theory, Procedural Generation has a lot intertwined with it, as well as many other aspects of game design that I have not even come to realize.  The other algorithms might not be useful for pathfinding, but they will come up in other parts of your game." CreationDate="2010-07-15T04:30:30.250" UserId="97" />
  <row Id="162" PostId="351" Score="3" Text="A community wiki question if I ever saw one." CreationDate="2010-07-15T04:31:38.360" UserId="97" />
  <row Id="163" PostId="246" Score="2" Text="Subversion is nice, but nowhere in the answer does it addresses the question asking specifically about game development-related version control.  Of course the asker already knows about subversion; he wants to know now, in the gaming industry, what version control works **BEST**  for game-development-related purposes." CreationDate="2010-07-15T04:34:04.270" UserId="97" />
  <row Id="164" PostId="245" Score="1" Text="None of these answers address **game-specific issues**!  The top rated answer does not even mention game design at all!" CreationDate="2010-07-15T04:34:55.457" UserId="97" />
  <row Id="166" PostId="357" Text="Seconded on all of what Avee said." CreationDate="2010-07-15T04:47:54.770" UserId="240" />
  <row Id="167" PostId="137" Text="@Mikw Strobel: +1, but remember that a big selling point for XNA is the ability to deploy/sell to the 360 and all of the WPF/XNA stuff I've seen won't run on the 360." CreationDate="2010-07-15T05:34:56.100" UserId="214" />
  <row Id="168" PostId="174" Text="XNA is beginner friendly, but it's also in a state of flux (especially) right now. 4.0 will have a number of breaking changes and that's annoying to keep up with when you're getting your feet wet." CreationDate="2010-07-15T05:36:39.527" UserId="214" />
  <row Id="169" PostId="246" Text="Another advantage of Subversion is that there are many bug tracking systems that you can plug onto it (Bugzilla, Trac, ...)" CreationDate="2010-07-15T05:48:24.767" UserId="88" />
  <row Id="170" PostId="206" Score="3" Text="+1 - Excellent answer. I learnt most of these tips the hard way. :)" CreationDate="2010-07-15T06:36:03.170" UserId="195" />
  <row Id="171" PostId="226" Score="1" Text="Great overview, that was exactly the kind of answer I was looking for!" CreationDate="2010-07-15T06:59:19.890" UserId="13" />
  <row Id="172" PostId="373" Text="Coincidentally, I'm reading Stroustrup's &quot;The Design and Evolution of C++&quot; right now, and he really emphasizes one of his design philosophies for C++ to be &quot;as close to C, but no closer&quot;, in particular the performance difference must be negligible." CreationDate="2010-07-15T07:01:11.913" UserId="256" />
  <row Id="173" PostId="233" Text="Yeah, your answer is probably as close as possible. I solved my particular problem by hacking at the quaternions until I got something to which the linear algorithm would apply. Thanks!" CreationDate="2010-07-15T07:12:53.163" UserId="9" />
  <row Id="174" PostId="350" Score="6" Text="I disagree, if only because there's nothing about this question that implies programming specific.  Some of the best ones I've seen in the past have been animation related, or while I was a level designer.  In that meta question, I agree with the person who said it's about the audience, not necessarily the content." CreationDate="2010-07-15T07:20:19.513" UserId="51" />
  <row Id="177" PostId="246" Text="This is my weapon of choice, too. There are problems with any SCM doing Unity projects (until they release a better version), but it has been great for all my other projects so far.&#xA;&#xA;I don't use plugins for each IDE, I use Tortoise SVN. Most IDEs are ok with that. Visual Studio, Python files, AS3 projects with FlashDevelop ... it's all good. Simple, easy, and pretty reliable.&#xA;&#xA;Probably not good for large assets, but I have yet to use it as such.&#xA;&#xA;I host it on a remote server and perform backups regularly, but I would host it on my own machine if no other option were available." CreationDate="2010-07-15T07:44:44.820" UserId="144" />
  <row Id="178" PostId="374" Score="2" Text="with one of my favorite games ever (Rogue) being written in LISP, this question (and its answer potential) is very interesting to me." CreationDate="2010-07-15T07:47:18.277" UserId="97" />
  <row Id="179" PostId="250" Score="1" Text="Yeah, you can try that but it does limit your audience somewhat, making the financial constraints even more inhibiting. My comment is more about why a traditional MMO is hard to make, there are many hybrid styles that I think would be easier to develop" CreationDate="2010-07-15T08:11:07.987" UserId="162" />
  <row Id="181" PostId="373" Text="id software writes their engines in pure C." CreationDate="2010-07-15T08:32:22.817" UserId="202" />
  <row Id="183" PostId="380" Text="My initial thought might be to write the scaffolding and state handling with an imperative language, and then do game logic and such with functional bits. With .NET and C#/F# this would be very easy, for example, since they use the same libraries and can talk to each other with no real penalty that I know of." CreationDate="2010-07-15T10:32:19.017" UserId="254" />
  <row Id="184" PostId="409" Text="You really [like](http://gaming.stackexchange.com/questions/1996/a-list-of-good-air-traffic-simulation-games) Air Traffic Simulation, don't you? :p" CreationDate="2010-07-15T10:48:23.583" UserId="252" />
  <row Id="186" PostId="328" Text="[sounds interesting](http://en.wikipedia.org/wiki/Haxe)." CreationDate="2010-07-15T11:00:56.780" UserId="252" />
  <row Id="187" PostId="305" Score="2" Text="+1 for the bigfiles extension... I'm SO going to try that." CreationDate="2010-07-15T11:07:55.193" UserId="7" />
  <row Id="188" PostId="245" Score="1" Text="*Game Development* has specific demands for version control and post-release patch handling, so I think it is a valid question to this site." CreationDate="2010-07-15T11:11:21.460" UserId="7" />
  <row Id="189" PostId="249" Text="I've turned this into a community wiki as there are multiple answers possible." CreationDate="2010-07-15T11:23:42.513" UserId="158" />
  <row Id="190" PostId="187" Text="Why is Things selling for £45. It looks really nice and polished but can it do anything that free apps like RTM or Todoist can't do?" CreationDate="2010-07-15T11:53:53.070" UserId="122" />
  <row Id="191" PostId="421" Text="The exact steps depend massively on the language you want to add.  Have a look at http://gamedev.stackexchange.com/questions/11/what-scripting-language-should-i-choose-for-my-game&#xA;" CreationDate="2010-07-15T12:03:08.700" UserId="259" />
  <row Id="192" PostId="420" Score="1" Text="The link to the ppt is 404. &gt;_&lt;" CreationDate="2010-07-15T12:04:03.987" UserId="259" />
  <row Id="194" PostId="428" Text="Oh cool. I didn't know Steam would actually accept XNA games.  " CreationDate="2010-07-15T13:03:55.130" UserId="117" />
  <row Id="195" PostId="5" Score="1" Text="This question is vague and subjective.  What resources are you talking about?  They could be anything." CreationDate="2010-07-15T13:25:35.613" UserId="283" />
  <row Id="196" PostId="420" Text="@tenpn: It's a pptx: http://files.aigamedev.com/coverage/GAIC10_PaoloManinetti.pptx" CreationDate="2010-07-15T13:29:45.680" UserId="18" />
  <row Id="197" PostId="7" Text="This question is better asked on Stack Overflow, as there is little about it that is specific to games." CreationDate="2010-07-15T13:33:07.887" UserId="283" />
  <row Id="198" PostId="428" Text="what happens if the user doesn't have .NET installed?" CreationDate="2010-07-15T13:50:08.097" UserId="119" />
  <row Id="199" PostId="427" Text="+1 for realistic airport and route points. Further: Add time scheduling conflicts, limited airport resources (#planes that can land/start per time unit etc) etc" CreationDate="2010-07-15T13:52:31.210" UserId="202" />
  <row Id="200" PostId="441" Text="Thanks.  I'm talking specifically about interesting race behaviours here rather than balancing or difficulty levels, but I'll bear it in mind." CreationDate="2010-07-15T14:12:30.443" UserId="259" />
  <row Id="201" PostId="7" Score="20" Text="@Chris: Strongly disagree: The question specifically mentions games! The issues you encounter when you've got to push an update every 16ms are very different to what you'd get in most desktop applications." CreationDate="2010-07-15T14:23:46.940" UserId="288" />
  <row Id="202" PostId="436" Score="6" Text="Lua is widely used in iPhone applications, and changes were made to the terms that allow it. See here: http://www.appleoutsider.com/2010/06/10/hello-lua/" CreationDate="2010-07-15T14:35:06.333" UserId="8" />
  <row Id="203" PostId="436" Text="Ah, good to know. Thanks for the link." CreationDate="2010-07-15T14:38:22.800" UserId="6" />
  <row Id="205" PostId="428" Score="1" Text="You can write an installer to check for both .NET and XNA. I've done it for almost all the small games I've released for XNA" CreationDate="2010-07-15T14:41:23.603" UserId="292" />
  <row Id="212" PostId="454" Score="1" Text="That's great if you actually have the resources to run a dedicated server, but it's quite simplistic way of looking at it. Most likely you'd still do a lot of the logic on the clients and a minimal subset of the logic on the server, with occasional syncronisation to enforce basic rules.&#xA;&#xA;It also doesn't necessarily prevent against all the client-side cheats like wallhacks/memory manipulation to fool the client into revealing useful information/etc" CreationDate="2010-07-15T15:06:08.990" UserId="279" />
  <row Id="215" PostId="395" Text="What do you mean by 'because of the closed and open lists'? Sans-heuristic, A* == Dijkstra" CreationDate="2010-07-15T15:23:46.893" UserId="214" />
  <row Id="216" PostId="464" Text="Ok, I am now officially hooked again.  In an effort to give something back, I want to find places I can leverage my current skill-set to help the community." CreationDate="2010-07-15T15:35:12.153" UserId="290" />
  <row Id="218" PostId="37" Text="Just noticed that the book in mentioned is also on Google-Books (although not complete). Read it here: http://books.google.com/books?id=gDLpyWtFacYC" CreationDate="2010-07-15T16:05:30.660" UserId="20" />
  <row Id="219" PostId="256" Score="1" Text="great link, thx!" CreationDate="2010-07-15T16:18:41.617" UserId="202" />
  <row Id="220" PostId="245" Score="3" Text="Anyone's who's worked on a AAA title knows this is an on-topic question. Subversion and Mercurial/Git are designed for fundamentally different projects and cannot (and likely will never be able to) handle a game development situation - there's just too much data." CreationDate="2010-07-15T16:26:22.173" UserId="297" />
  <row Id="221" PostId="462" Text="Great, thanks for the info.  " CreationDate="2010-07-15T16:29:08.970" UserId="117" />
  <row Id="222" PostId="246" Score="3" Text="Subversion is *not even close* to being able to handle the customized workspaces (limited views), team permissions, or sheer amount of data involved in the average game today." CreationDate="2010-07-15T16:29:10.640" UserId="297" />
  <row Id="223" PostId="381" Text="You should probably clarify what kind of framework you're talking about? 3D Graphics Framework?" CreationDate="2010-07-15T16:31:58.157" UserId="20" />
  <row Id="224" PostId="373" Text="Until Id Tech 4" CreationDate="2010-07-15T16:40:37.853" UserId="268" />
  <row Id="225" PostId="187" Text="They kept it extremely simple. Some people like simple and polished, but it's hard to say it's worth £45. If you're a Windows user, I really like this one -- http://bit.ly/9dAelc" CreationDate="2010-07-15T16:50:48.730" UserId="55" />
  <row Id="226" PostId="7" Score="4" Text="Since there is no &quot;answer&quot; I would suggest this be a wiki." CreationDate="2010-07-15T17:02:41.987" UserId="299" />
  <row Id="227" PostId="226" Text="Because XNA is such a large community I would like to add Henge3D to physics, Sunburn to Graphics, and sgMotion and XNAnimation to Graphics (or Animation). " CreationDate="2010-07-15T17:04:36.867" UserId="299" />
  <row Id="228" PostId="480" Text="Note - this is intended to *replace* Question http://gamedev.stackexchange.com/questions/245/what-version-control-systems-work-best-with-games. In 72 hours I am going to delete that question - I leave it up for now, to give people time to copy over their Answers/comments to *this* Question. :)" CreationDate="2010-07-15T17:37:29.373" UserId="165" />
  <row Id="229" PostId="475" Text="I know jmonkeyengine, I have used it in the past, but it is not what I am looking for right now. Thanks for the answer." CreationDate="2010-07-15T17:38:33.287" UserId="107" />
  <row Id="231" PostId="480" Text="This will probably end up being one of my favorite questions, if people follow the editing instructions. Working on a Game Dev specific solution for this now :D" CreationDate="2010-07-15T17:39:50.507" UserId="14" />
  <row Id="232" PostId="480" Text="@Noctrine, you had to add the disclaimer *if*, didn't you? :) Of *course* people will follow instructions..." CreationDate="2010-07-15T17:41:27.260" UserId="165" />
  <row Id="233" PostId="480" Text="Don't delete the other question. If it's really off topic (I don't think it is) it can be closed and archived. It can also be closed as a duplicate of this one." CreationDate="2010-07-15T17:42:49.783" UserId="18" />
  <row Id="234" PostId="255" Text="Perforce is particularly robust for projects with complex directory hierarchies and upwards of several dozen developers committing at the same time. Perforce also ships with a couple of tools, such as P4Merge, which is basically their Diff and Merge GUI. It's nothing special but it works and has a pretty nice visual representation for developers to compare changes." CreationDate="2010-07-15T17:43:30.080" UserId="305" />
  <row Id="235" PostId="480" Text="@Firas, it *was* closed - and re-opened :) Regardless, I think this formulation is better (and yes, it's a wiki) - and if people copy over their answers, this one *should* cover all the information in the other question." CreationDate="2010-07-15T17:44:28.907" UserId="165" />
  <row Id="237" PostId="480" Text="@Cylops: I disagree. I voted to close it as a duplicate of this question. You can't be sure that everyone will copy their answers here." CreationDate="2010-07-15T17:48:01.040" UserId="18" />
  <row Id="240" PostId="285" Text="extremely nice music!  thanks for the link." CreationDate="2010-07-15T18:02:27.030" UserId="290" />
  <row Id="241" PostId="350" Score="4" Text="Given that he's made it a wiki, I don't have a problem with it." CreationDate="2010-07-15T18:04:15.640" UserId="165" />
  <row Id="242" PostId="379" Score="2" Text="Note that if you're doing console development, JITing code is apparently out of the question because you can't mark data pages as executable.  The IL it has to be pre-compiled to the target platform." CreationDate="2010-07-15T18:06:38.303" UserId="292" />
  <row Id="243" PostId="428" Score="1" Text="Steam has support for checking for dependencies and installing them, i assume impulse has a similar system. " CreationDate="2010-07-15T18:07:26.443" UserId="120" />
  <row Id="244" PostId="481" Text="Large projects - KDE, GNOME." CreationDate="2010-07-15T18:10:44.457" UserId="35" />
  <row Id="245" PostId="480" Text="@Firas, I don't care either way, but if it keeps getting *downvoted*, I'm deleting it. :) I'm only leaving it undeleted to give people time to copy over their answers. " CreationDate="2010-07-15T18:12:11.020" UserId="165" />
  <row Id="248" PostId="350" Text="i also feel this is off topic. still, there are site out dedicated to this sort of thing like http://igetyourfail.blogspot.com/" CreationDate="2010-07-15T18:24:29.437" UserId="120" />
  <row Id="249" PostId="480" Text="@Cyclops: I think you can edit it to be community wiki and then downvotes won't have an effect. Perhaps a moderator can merge the answers of that question with this one?" CreationDate="2010-07-15T18:27:07.543" UserId="18" />
  <row Id="250" PostId="232" Text="Especially since Unity hasn't completed it's C# Documentation." CreationDate="2010-07-15T18:27:26.810" UserId="14" />
  <row Id="251" PostId="350" Score="6" Text="@Cubed2D, I do actually agree that it's off-topic. But under some circumstance, I don't think it's a problem. It's a wiki, so no point-farming :) It could be funny - and we *might* actually learn something from some of the answers. And it helps make this *our own* community, as distinct from being SO rejects. :) So let's re-open." CreationDate="2010-07-15T18:32:02.527" UserId="165" />
  <row Id="252" PostId="480" Text="@Firas, good point, thanks. It's now wiki'ed, so once people vote/close it, I won't delete it." CreationDate="2010-07-15T18:40:15.957" UserId="165" />
  <row Id="254" PostId="206" Score="2" Text="These are mostly obvious things that somehow everyone (myself included) forgets. Thanks for reminding everyone." CreationDate="2010-07-15T18:55:55.097" UserId="301" />
  <row Id="255" PostId="493" Score="1" Text="I love the idea of hierarchy of branches allowing QA to test changes before they make it to mainline, or easy creation and validation of demos." CreationDate="2010-07-15T18:58:50.850" UserId="259" />
  <row Id="260" PostId="465" Text="Could you clarify what you mean by that? Simply hierarchical transforms? Some sort of skinning? Ragdoll? IK?&#xA;&#xA;" CreationDate="2010-07-15T19:05:58.820" UserId="181" />
  <row Id="261" PostId="493" Text="@tenpn, is that a feature of distributed VCS in general, or just Git?" CreationDate="2010-07-15T19:08:11.623" UserId="165" />
  <row Id="263" PostId="409" Text="Yes I do. Thanks, you found me!!! :)" CreationDate="2010-07-15T19:14:08.970" UserId="72" />
  <row Id="264" PostId="72" Text="There's nothing ethically wrong with building a homebrew game. Even legally you are mostly in the clear, the only problem is that the devices for running homebrew game are often also capable of running pirated games, but you don't have to use it for that." CreationDate="2010-07-15T19:23:13.113" UserId="48" />
  <row Id="265" PostId="113" Score="1" Text="`IDisposable` allows deterministic cleanup of time-critical and unmanaged resources, but does not directly affect finalization or the garbage collector." CreationDate="2010-07-15T19:25:42.517" UserId="297" />
  <row Id="266" PostId="231" Text="You also gain Android phone support (newer ones at least), and probably Palm/Blackberry/Windows Mobile support as well in the future." CreationDate="2010-07-15T19:26:07.383" UserId="48" />
  <row Id="267" PostId="218" Text="Too bad this violates the iTunes store agreement, since you're writing in something that's not C/C++/ObjC, and using a translation layer. You might get approved still, but they could pull you in the future. Personally I wouldn't risk it." CreationDate="2010-07-15T19:26:58.287" UserId="48" />
  <row Id="268" PostId="40" Text="Ok, I'm looking for something a little easier to get started with than Ogre3D. Something more of a Game Engine than just a Rendering Library. Thanks for the input though." CreationDate="2010-07-15T19:28:50.497" UserId="48" />
  <row Id="269" PostId="121" Text="Garbage collectors are evolving, and as noted by Mike Strobel, some are already in production that nearly eliminate this pitfall." CreationDate="2010-07-15T19:29:25.393" UserId="297" />
  <row Id="271" PostId="442" Score="2" Text="not HTML5, just DHTML I believe. Plus the sound was done through Flash. This was all to get maximum compatibility." CreationDate="2010-07-15T19:40:40.920" UserId="119" />
  <row Id="272" PostId="441" Score="2" Text="Nearly all racing games include some form of rubber-banding to keep the player in the action, or keep the AI close to good player. The trick is to be subtle with it and know when to turn it off. Once the player notices they feel cheated." CreationDate="2010-07-15T19:42:12.820" UserId="154" />
  <row Id="273" PostId="300" Score="1" Text="For a community wiki like this, it's much more useful if you place exactly one link per answer, so they can be voted on." CreationDate="2010-07-15T19:47:30.013" UserId="297" />
  <row Id="274" PostId="504" Text="It would help if you described what your problems are that you encounter." CreationDate="2010-07-15T19:51:38.680" UserId="181" />
  <row Id="277" PostId="500" Score="1" Text="+1 for cocos2d. It is a very good option. Many games use it now: http://www.cocos2d-iphone.org/games/" CreationDate="2010-07-15T20:01:48.827" UserId="8" />
  <row Id="278" PostId="506" Text="+1 That is an outsanding book. " CreationDate="2010-07-15T20:05:35.073" UserId="55" />
  <row Id="279" PostId="72" Text="@Davr Doesn't Nintendo try for a blanket ban on all modifications of their consoles whatsoever? I know they are 100% against emulation for any reason what-so-ever." CreationDate="2010-07-15T20:14:49.870" UserId="14" />
  <row Id="280" PostId="512" Text="You nailed it!  That was the most annoying problem I had." CreationDate="2010-07-15T20:15:30.337" UserId="29" />
  <row Id="281" PostId="507" Text="I tried something similar to a grid-based approach. I basically created track pieces so that you could click them together in a way to give a little more freedom than simple grids.  Very similar concept, I think.  It worked ok, but drawing the tracks by selecting the appropriate piece each time kind of sucked." CreationDate="2010-07-15T20:20:27.533" UserId="29" />
  <row Id="282" PostId="267" Text="Absolutely. You need to prove you can create something. There are a lot of people that don't do this and hope for the best. If I'm looking at someone with independent projects vs. somebody who has nothing, it's a no brainer. " CreationDate="2010-07-15T20:21:23.647" UserId="55" />
  <row Id="283" PostId="439" Text="Exactly. Just test on a wide range of lower-end machines." CreationDate="2010-07-15T20:23:13.813" UserId="55" />
  <row Id="285" PostId="405" Score="5" Text="If Adobe doesn't get their act together Flash will be replaced by HTML5 and I personally won't shed a tear." CreationDate="2010-07-15T20:56:14.937" UserId="303" />
  <row Id="286" PostId="510" Text="+1 for sucking! lern2cad :)" CreationDate="2010-07-15T21:03:31.423" UserId="41" />
  <row Id="287" PostId="494" Text="Oh damn, you hit nostalgia bug hard with that one!" CreationDate="2010-07-15T21:07:08.357" UserId="19" />
  <row Id="289" PostId="523" Score="3" Text="Sounds like a good idea. Make a note to come back and share the results! :)" CreationDate="2010-07-15T21:20:06.153" UserId="55" />
  <row Id="290" PostId="508" Text="There really isn't going to be a definitive answer, because this is speaking from personal experience.  If it were asking about the &quot;norm&quot; (including professional and for-profit indie games on varying platforms), this might have a definite answer.  But until then, this should be community wiki." CreationDate="2010-07-15T21:47:16.287" UserId="97" />
  <row Id="291" PostId="448" Text="The company that closed down, was Loki games. However, there is now Linux Game Publishing (LGP) that does much the same job." CreationDate="2010-07-15T22:08:08.620" UserId="174" />
  <row Id="292" PostId="539" Text="Very good answer. For Max tutorials I'd recommend http://www.3d-palace.com, lots of free stuff there as well." CreationDate="2010-07-15T22:09:08.980" UserId="267" />
  <row Id="293" PostId="385" Score="2" Text="Is there *anything* ImageMagick can't do? :)" CreationDate="2010-07-15T22:25:59.557" UserId="140" />
  <row Id="294" PostId="350" Text="good argument, you win :)" CreationDate="2010-07-15T22:49:16.303" UserId="120" />
  <row Id="295" PostId="361" Text="Sure, I can find free fonts everywhere on the Internet. Most of them have unclear licenses or if the licenses are clear they explicitly exclude software embedding." CreationDate="2010-07-15T23:16:28.353" UserId="208" />
  <row Id="296" PostId="413" Score="1" Text="According to that site, &quot;No Blambot font may be altered or redisributed without the express, paid permission of Nate Piekos.&quot; This would seem to exclude embedding the font in an Open Source game." CreationDate="2010-07-15T23:20:55.457" UserId="208" />
  <row Id="297" PostId="398" Text="+1 for a license that explicitly says you can redistribute the font." CreationDate="2010-07-15T23:23:48.183" UserId="208" />
  <row Id="298" PostId="511" Score="2" Text="Not sure if it was deliberate, but it is true that most projects take more than 100% of your time. :P" CreationDate="2010-07-16T00:06:17.607" UserId="195" />
  <row Id="299" PostId="417" Score="1" Text="Thanks, Google! Seriously though, this isn't super helpful. If I listed every website on the internet it would be similar to this" CreationDate="2010-07-16T00:06:46.263" UserId="77" />
  <row Id="301" PostId="548" Score="3" Text="Is this a question about The Blender Game Engine? (If so, perhaps you should mention it/tag it.) Or just using Blender for modelling?" CreationDate="2010-07-16T00:37:32.473" UserId="288" />
  <row Id="302" PostId="196" Text="@Steve Ardour has certainly come a long way since the last time I had a look at it. Not quite what I am after as the MIDI stuff is lacking compared to Apple Logic Studio, but not bad all the same." CreationDate="2010-07-16T02:45:26.393" UserId="123" />
  <row Id="303" PostId="529" Score="1" Text="+1 for the Art of Game Design. Great book. I am using it on one of my projects right now." CreationDate="2010-07-16T02:46:46.280" UserId="83" />
  <row Id="304" PostId="81" Text="I use to create games in Allegro all the time. Loved it." CreationDate="2010-07-16T02:48:50.380" UserId="83" />
  <row Id="305" PostId="555" Score="17" Text="So what's the bug??? Pilots have a saying: &quot;Any landing that you can walk away from, is a good landing - and if you can re-use the plane, it's a *great* landing.&quot;" CreationDate="2010-07-16T02:57:24.133" UserId="165" />
  <row Id="306" PostId="501" Score="1" Text="A few open source game projects on CodePlex that I have worked on at one time or another:&#xA;&#xA;http://supremacy.codeplex.com/&#xA;&#xA;http://majestyofomega.codeplex.com/&#xA;&#xA;http://bote.codeplex.com/  " CreationDate="2010-07-16T03:26:24.873" UserId="136" />
  <row Id="307" PostId="206" Score="8" Text="In line with &quot;Shipping is a feature&quot;, don't get caught up in constant revisit-&gt;reimplement-&gt;repeat cycles.  You're not going to get everything right the first time, the tenth time, or ever.  There will undoubtedly be features or mechanics that you are not completely satisfied with.  Avoid the temptation to keep going back and changing every little thing.  You don't want to end up like Duke Nukem Forever :)." CreationDate="2010-07-16T03:31:35.750" UserId="136" />
  <row Id="308" PostId="465" Text="I am looking for something simple, no rag dolls, no inverse kinematics, only animations made with a skeleton and key frames, in 2d. I think that what I really want to know is which format is used for those kind of animations and if exists an application and/or a java library to edit and load them, respectively. Thanks" CreationDate="2010-07-16T03:50:48.147" UserId="107" />
  <row Id="310" PostId="486" Text="I like how it's free for indy games" CreationDate="2010-07-16T06:44:52.037" UserId="102" />
  <row Id="311" PostId="493" Text="no VCS in general" CreationDate="2010-07-16T07:39:55.327" UserId="259" />
  <row Id="312" PostId="405" Text="@Simuri - I kind of agree.  I've used their Flex stuff professionally, and compared to the way Sun manages Java, I'd say Adobe is a lot more... sloppy (for lack of a better word)." CreationDate="2010-07-16T07:48:18.270" UserId="256" />
  <row Id="313" PostId="555" Score="3" Text="The length of the cross product gives you (sort of) the parallelism of two vectors. If the vectors are parallel, it's zero. If the vectors are perpendicular, it's large. Unfortunately, if the vectors are *opposite*, it's still zero . . . so it was accepting &quot;upside down&quot; as &quot;level&quot;. Which, technically, it is." CreationDate="2010-07-16T07:57:49.667" UserId="323" />
  <row Id="314" PostId="577" Text="+1 for the keylog output" CreationDate="2010-07-16T08:09:43.727" UserId="259" />
  <row Id="315" PostId="566" Text="I'd argue that 2) is a red herring.  For any sufficently interesting script, a non-progammer will need more handholding or debugging help with it than is worth it.  &#xA;&#xA;There are good programmer-designers out there who don't need help, but you can't slap Lua For Dummies on the desk of a regular level designer and expect them to churn out fun." CreationDate="2010-07-16T08:41:06.320" UserId="259" />
  <row Id="316" PostId="575" Score="1" Text="Thanks, this was good adwice." CreationDate="2010-07-16T08:46:24.747" UserId="244" />
  <row Id="317" PostId="381" Text="@bummzack: actually, every kind of. also including input, audio, video,... But that's too general I guess, so yes, most of all I'm interested in 3D" CreationDate="2010-07-16T08:58:04.407" UserId="252" />
  <row Id="318" PostId="530" Text="Excellent book. Used it in a general UI design class back in my college days. Need to acquire a copy of my own for the bookshelf." CreationDate="2010-07-16T09:21:38.560" UserId="254" />
  <row Id="319" PostId="587" Text="Thanks for your answer! I have a feeling abs might be quite slow in Actionscript. When I get some more answers I will benchmark them." CreationDate="2010-07-16T09:35:03.933" UserId="119" />
  <row Id="320" PostId="586" Text="Are these axis or object-aligned bounding boxes?" CreationDate="2010-07-16T09:48:18.133" UserId="259" />
  <row Id="321" PostId="587" Score="3" Text="This obviously assumes the boxes are axis-aligned.  " CreationDate="2010-07-16T09:48:51.910" UserId="259" />
  <row Id="322" PostId="587" Score="1" Text="Abs shouldn't be particularly slow - no slower than a conditional, at least, and the only way to do it without abs (that I'm aware of) involves extra conditionals." CreationDate="2010-07-16T09:51:22.640" UserId="323" />
  <row Id="323" PostId="587" Score="2" Text="Yes, it does assume axis-aligned boxes. The structures as described don't have any way of indicating rotation, though, so I felt it was safe." CreationDate="2010-07-16T09:52:03.810" UserId="323" />
  <row Id="324" PostId="518" Text="Another option to SDL is Simple Fast Multimedia Library. It provides similar capabilities to SDL but is Object Oriented and fairly useful. The tutorials on the website are fairly comprehensive much like the lazyfoo tutorials. http://www.sfml-dev.org/" CreationDate="2010-07-16T10:10:31.677" UserId="332" />
  <row Id="325" PostId="466" Score="1" Text="I cannot recommend this book highly enough. If you're looking for hand-holding code samples, this is not the book for you. But if you're looking for a high level tour of all the components that make up a modern game engine and how they fit together, this is absolutely a stellar book. The writing style is very professional (it was written as a textbook) but accessible to anyone with a basic knowledge of Computer Science principles." CreationDate="2010-07-16T10:31:09.537" UserId="263" />
  <row Id="326" PostId="587" Text="fair enough, good point." CreationDate="2010-07-16T10:34:04.933" UserId="259" />
  <row Id="327" PostId="187" Score="1" Text="Very nice summary. Too bad you can only accept one answer here, else I would accept this one, too. Thanks for the effort, though! :)" CreationDate="2010-07-16T11:12:02.227" UserId="13" />
  <row Id="328" PostId="7" Text="@Chris: You're right, changed it to wiki." CreationDate="2010-07-16T11:13:40.757" UserId="13" />
  <row Id="329" PostId="420" Text="ta -- his approach is interesting but the code I'm currently working with is actually more advanced!" CreationDate="2010-07-16T11:37:36.243" UserId="259" />
  <row Id="331" PostId="511" Text="Yes... Deliberate... *shifty eyes* xD" CreationDate="2010-07-16T11:53:50.207" UserId="127" />
  <row Id="332" PostId="205" Score="6" Text="The `using` statement has nothing to do with garbage collection! It's for `IDisposable` objects - which are for releasing unmanaged resources (ie: those which are *not handled by the garbage collector*)." CreationDate="2010-07-16T11:59:36.653" UserId="288" />
  <row Id="333" PostId="386" Text="Does any big studio actually use boost? Even STL usage is still under debate, because of portability. At least for console engines." CreationDate="2010-07-16T12:05:42.053" UserId="249" />
  <row Id="334" PostId="594" Text="I wasn't thinking of rotation, but thanks that's an interesting link." CreationDate="2010-07-16T12:17:11.000" UserId="119" />
  <row Id="335" PostId="601" Score="1" Text="There seems to be three types of verb, one type for zero nouns, another for two, etc.  They're not the same class of object.&#xA;&#xA;You can't &quot;look at octopus with pickle jar&quot; so `look` is a single-noun verb, etc." CreationDate="2010-07-16T13:17:41.900" UserId="259" />
  <row Id="336" PostId="539" Score="1" Text="&quot;you need only a few weeks at most to learn any of these programs sufficiently to know pretty much everything you need to know&quot; - Oh I guess I must be doing it wrong :(" CreationDate="2010-07-16T13:19:56.357" UserId="119" />
  <row Id="337" PostId="572" Text="Uhmn... this doesn't seem to answer my question at all. The entire point of my question is wrapping a rope around a world made of polygons. Gusanos seems to have no wrapping and a bitmap world." CreationDate="2010-07-16T13:29:50.267" UserId="288" />
  <row Id="338" PostId="571" Score="2" Text="Interesting note about the Bigfiles Extension - that addresses one of the problems reported in the original thread, that Distributed VCS wouldn't fit well with game productions that had large numbers of binary file assets." CreationDate="2010-07-16T13:30:22.497" UserId="165" />
  <row Id="339" PostId="463" Text="If you want to make &quot;one of those&quot; first person shooters, go for scene graph.&#xA;&#xA;If you want to make games, use your brain.&#xA;(I use scene graphs for teaching, but never for production code.)&#xA;" CreationDate="2010-07-16T13:31:30.417" UserId="335" />
  <row Id="340" PostId="555" Text="Yeah, I understood it, that was a joke. :)" CreationDate="2010-07-16T13:32:07.203" UserId="165" />
  <row Id="341" PostId="267" Text="Can't agree more. Write games.&#xA;And expect that they want to see your code,&#xA;so better have one very polished example!&#xA;" CreationDate="2010-07-16T13:35:14.387" UserId="335" />
  <row Id="342" PostId="607" Text="Thanks, that was informative. I think I will go for untrusted clients, and do must of the work on the server. I will not have many players at the beginning." CreationDate="2010-07-16T13:39:35.953" UserId="244" />
  <row Id="343" PostId="607" Score="1" Text="&quot;I will not have many players...&quot;&#xA;I can't count the number of developers giving me that line and coming back six weeks later with: &quot;I have these 5000 players wanting to pay to play my game, but I cannot scale :(&quot;.&#xA;Just keep that in mind!&#xA;" CreationDate="2010-07-16T13:43:58.140" UserId="335" />
  <row Id="344" PostId="206" Score="3" Text="+1 for &quot;Do a little each day&quot;. That's the single best hint you will get. Momentum builds up pretty fast when you just do a little _every_ day. One or two skipped days will bring you to a grinding halt.&#xA;" CreationDate="2010-07-16T13:46:11.927" UserId="335" />
  <row Id="345" PostId="405" Score="2" Text="I certainly agree that Adobe need to get their act together. But HTML5 is so obviously just the latest buzzword (like AJAX, Web2.0 previously) and not a real technology you'd want to go out and use right now." CreationDate="2010-07-16T13:46:27.713" UserId="119" />
  <row Id="346" PostId="600" Text="Thanks for that! Exactly what I wanted to know. " CreationDate="2010-07-16T13:52:30.447" UserId="261" />
  <row Id="347" PostId="555" Score="3" Text="I thought you might have, but it occured to me that other people may want an explanation anyway :)" CreationDate="2010-07-16T13:57:29.980" UserId="323" />
  <row Id="348" PostId="563" Score="1" Text="+1 as I did the port for AngelXNA ;)" CreationDate="2010-07-16T13:58:27.950" UserId="292" />
  <row Id="349" PostId="50" Score="1" Text="I've been using Lua extensively in my games. It has been fantastic (and yes, closures and coroutines are wonderful.) Strongly recommended." CreationDate="2010-07-16T14:08:44.930" UserId="323" />
  <row Id="350" PostId="463" Score="1" Text="care to expand on that or provide a link? " CreationDate="2010-07-16T14:20:38.270" UserId="259" />
  <row Id="351" PostId="565" Text="Cool toolset.  So you are using libcurl to post back a results file and a custom Django application to interpret and present? " CreationDate="2010-07-16T14:20:38.990" UserId="290" />
  <row Id="352" PostId="44" Score="2" Text="Do you mean resources for developing on Linux, or resources for developing games that run on Linux?" CreationDate="2010-07-16T14:31:39.930" UserId="283" />
  <row Id="353" PostId="615" Text="While this is very helpful, it only covers the rendering of the tile map. What about loading and unloading relevant tiles? I cannot load 100 800x600 tiles in memory. I will take a look at the video tutorials; thanks." CreationDate="2010-07-16T14:35:30.153" UserId="118" />
  <row Id="354" PostId="615" Text="ahhh.. I misunderstood your question. So are you using a traditional tilemap, or do you have a big image for your level that you broke up into pieces?" CreationDate="2010-07-16T14:56:00.713" UserId="159" />
  <row Id="355" PostId="615" Text="Just a thought....you could store the *names* of your tiles in an array, and use the same technique to know what to load and draw. Keep in mind to try to re-use any objects or you could create a lot of garbage" CreationDate="2010-07-16T15:12:22.953" UserId="159" />
  <row Id="356" PostId="468" Text="I read through a good chunk of this. There was a lot of information that was useful, even if it wasn't exactly what I asked for. Thanks for the link." CreationDate="2010-07-16T15:21:14.457" UserId="8" />
  <row Id="357" PostId="568" Text="I've read this already. Very good content, if not complete. However, this is and example of information about pieces without how to put them together." CreationDate="2010-07-16T15:22:49.887" UserId="8" />
  <row Id="358" PostId="566" Text="I agree. I don't think #2 works out well in practice, but I have seen that used as an ostensible reason for integrating a scripting language." CreationDate="2010-07-16T15:24:40.780" UserId="160" />
  <row Id="359" PostId="568" Score="2" Text="That's an intentional choice, but that probably doesn't help you much. The problem is that every game is different, especially across genres, so there's no &quot;here's the entire architecture you should build&quot; unless you're really just trying to clone some existing game. I think the best you can do is say &quot;here's a bunch of big pieces, pick the ones you need and hook them up&quot;. Game programming books on graphics, AI, etc. should give you the big pieces. The goal of my book is to tell you how to hook them up." CreationDate="2010-07-16T15:28:16.663" UserId="160" />
  <row Id="362" PostId="126" Text="^^ *Game Engine Toolset Development* is a nice book :).  It's a bit outdated now, but the concepts are still solid.&#xA;&#xA;The problem with .NET scripting language bindings is that, in order to run on the Xbox 360, that they pretty much have to be interpreted.  Without System.Reflection.Emit, you can't do much in the way of code generation.  I was under the impression that these capabilities would be coming to the Xbox 360 in the near future, but based on the comment discussion in my reply below, this is probably not the case.  Thus, script performance on the Xbox 360 probably won't be so great :(." CreationDate="2010-07-16T15:35:08.927" UserId="136" />
  <row Id="363" PostId="568" Text="Yeah, I definitely understand that. Most software is like that. I guess the thing I'm looking for is examples of how it has been done so I can make more informed decisions for the games I work on.&#xA;&#xA;Great work on the book/site, btw." CreationDate="2010-07-16T15:42:04.203" UserId="8" />
  <row Id="364" PostId="466" Text="Looks good. Added to my list of books to buy." CreationDate="2010-07-16T15:42:54.733" UserId="8" />
  <row Id="365" PostId="434" Score="1" Text="Sean is pretty much on the money.  If, by chance, you are developing a game in C#/.NET (you know you want to!), I have found the Lidgren Network Library (http://code.google.com/p/lidgren-library-network/) to be a pretty good choice.  It even provides ordered, reliable messaging over UDP, should you need it." CreationDate="2010-07-16T15:46:20.083" UserId="136" />
  <row Id="366" PostId="597" Text="Hey, thanks for the XPF link--that's *really* cool!  I've been hoping someone would do something like this." CreationDate="2010-07-16T16:03:07.457" UserId="136" />
  <row Id="367" PostId="628" Score="1" Text="This occurred to me as well, but the temporary members appear to be value types, so they wouldn't be allocated on the managed heap anyway." CreationDate="2010-07-16T16:15:32.530" UserId="136" />
  <row Id="368" PostId="631" Score="7" Text="One dimension harder :)" CreationDate="2010-07-16T16:49:11.857" UserId="10" />
  <row Id="369" PostId="490" Score="1" Text="I'm in the middle of my second episode. So far it's a great example of what I was looking for. Episodes seem to have a fair amount of depth." CreationDate="2010-07-16T17:13:42.287" UserId="8" />
  <row Id="370" PostId="631" Score="3" Text="Waay subjective..." CreationDate="2010-07-16T17:31:53.100" UserId="165" />
  <row Id="371" PostId="587" Score="3" Text="Here are some good tips for speeding up calulations in Actionscript (mainly integer calc): http://lab.polygonal.de/2007/05/10/bitwise-gems-fast-integer-math/&#xA;I'm posting this, because it also contains a faster replacement for Math.abs(), which tends to slow down things in Actionscript indeed (speaking of performance critical stuff of course)." CreationDate="2010-07-16T17:32:16.157" UserId="20" />
  <row Id="372" PostId="626" Text="This is another great one. I find it much easier to find time to listen than to read. So far the content seems insightful and interesting." CreationDate="2010-07-16T17:39:30.140" UserId="8" />
  <row Id="373" PostId="581" Score="1" Text="Ogre3D has an iPhone/iPad SDK. Since you're familiar with Ogre, you should probably give it a try ;)" CreationDate="2010-07-16T18:18:48.423" UserId="20" />
  <row Id="374" PostId="62" Score="1" Text="I'm not sure it's correct that &quot;raster is better for artists&quot;.  My graphic artist uses Illustrator for these very reasons.  When it was time to update to the iPhone 4's 2X resolution, it was a simple matter for her to just export everything again.  Raster may be better for Photoshop artists who don't want to retrain themselves as vector artists, but in the long run they're probably better off becoming experts in vector based graphics.  Physical platforms are changing too rapidly to think in pixels." CreationDate="2010-07-16T18:37:25.093" UserId="283" />
  <row Id="375" PostId="19" Text="Agreed.  I use Soundsnap a lot.  The question should have read &quot;free or cheap&quot;." CreationDate="2010-07-16T18:39:53.187" UserId="283" />
  <row Id="376" PostId="628" Text="@Mike Stroble; Not necessarily true. Because the Body is a class, then Vector2 and Matrix will be stored in the classes instance memory, which is allocated on the managed heap. (http://blogs.msdn.com/b/ericlippert/archive/2009/04/27/the-stack-is-an-implementation-detail.aspx)" CreationDate="2010-07-16T18:45:05.250" UserId="214" />
  <row Id="377" PostId="631" Text="Hmm... having said that, I actually *really* like @munificent's answer. Now I'm not sure how I want to categorize this question. :) It's not quite right for *meta*, either... Dang these **edge cases**. :)" CreationDate="2010-07-16T19:07:20.380" UserId="165" />
  <row Id="378" PostId="637" Score="1" Text="Excellent answer. I was thinking this would be more subjective, but you've laid it out very clearly. While there might not be an actual *number* (3.5x harder), you've made a good case for *order of magnitude* harder." CreationDate="2010-07-16T19:14:17.433" UserId="165" />
  <row Id="379" PostId="631" Text="Code complexity, math level, and time seem like relatively objective measures of difficulty to me." CreationDate="2010-07-16T19:16:52.653" UserId="328" />
  <row Id="380" PostId="628" Score="2" Text="Right, but only if they are class members.  If they are locals (method-scoped), they would be allocated on the stack.  The question is why they they didn't simply go that route." CreationDate="2010-07-16T19:22:00.737" UserId="136" />
  <row Id="381" PostId="631" Text="@Brian, yeah, I wish we could undo *close* votes. :) Re-evaluating it, I think part of the problem is the **title** - &quot;How hard is X versus Y&quot;, sounds subjective. A better title might be, &quot;What are the differences in 3D development versus 2D?&quot; (maybe change it?). Which is actually the Question that @munificent *answered*, although with a one-liner that addressed the title. :)" CreationDate="2010-07-16T19:25:14.347" UserId="165" />
  <row Id="382" PostId="72" Text="Whatever Nintendo wants, does not change ethics or laws." CreationDate="2010-07-16T19:29:00.393" UserId="48" />
  <row Id="383" PostId="627" Score="2" Text="Doesn't really answer the question." CreationDate="2010-07-16T19:29:02.780" UserId="328" />
  <row Id="384" PostId="628" Text="Yes yes, I see what you're getting at now (sorry it took me so long)." CreationDate="2010-07-16T19:29:05.087" UserId="214" />
  <row Id="385" PostId="86" Text="I don't know about DS, but there were a small number of commercial games released for GBA that used devkitARM. It may be that they are more strict with DS licensing though." CreationDate="2010-07-16T19:30:25.647" UserId="48" />
  <row Id="386" PostId="483" Score="1" Text="Another advantage of Perforce is that it's free for the first two users, which is great for small hobby projects, or two evaluate its suitability for a larger project." CreationDate="2010-07-16T20:01:48.723" />
  <row Id="388" PostId="373" Text="@optician I believe Id Tech4 began life as Quake III? I would have to dig that code out again to confirm." CreationDate="2010-07-16T20:27:59.767" UserId="188" />
  <row Id="389" PostId="72" Text="@davr, Good point. Fixed." CreationDate="2010-07-16T20:36:18.700" UserId="14" />
  <row Id="390" PostId="597" Text="Will look forward to this project. Thanks for the tip!" CreationDate="2010-07-16T21:02:03.460" UserId="82" />
  <row Id="391" PostId="629" Text="I think this is all going nowhere for the moment. Thanks in advance for the tip on the codeplex project." CreationDate="2010-07-16T21:03:48.543" UserId="82" />
  <row Id="392" PostId="134" Text="Do you have any tutorials on Blender that you recommend? Found this one that I've gone through http://www.stromcode.com/2008/03/10/modelling-for-xna-with-blender-part-i/ but curious if there's any others! Thanks!" CreationDate="2010-07-16T21:28:21.937" UserId="81" />
  <row Id="393" PostId="350" Score="1" Text="I like the question too, but I have a request to all answerers: Please only post game development specific bugs - no such things like if (underAttack = true) launchNukes();" CreationDate="2010-07-16T21:32:54.060" UserId="202" />
  <row Id="395" PostId="434" Text="It's unwise to mix both TCP and UDP; as a result of the way TCP performs flow control, it can induce packet loss. (source:http://www.isoc.org/INET97/proceedings/F3/F3_1.HTM)" CreationDate="2010-07-16T23:39:08.877" UserId="187" />
  <row Id="396" PostId="549" Text="Thank you I will look into that" CreationDate="2010-07-17T00:13:40.463" UserId="193" />
  <row Id="397" PostId="479" Text="I am happy to parse a simple text file format of my own, but I really don't wan't to write a plugin for something like Maya or Blender :)" CreationDate="2010-07-17T00:21:02.413" UserId="193" />
  <row Id="398" PostId="637" Score="3" Text="+1 Nailed it. This question is hardly subjective. We're talking about two completely different worlds. There is an inherent increase in difficulty. Don't start your thinking at the genius level..." CreationDate="2010-07-17T00:25:35.133" UserId="55" />
  <row Id="399" PostId="577" Text="Really slick! Yeah, the keylog is pure win." CreationDate="2010-07-17T00:30:29.133" UserId="55" />
  <row Id="400" PostId="623" Text="+1, both on modeling side of things and on the interface side of things. Yes, mostly I'm agreeing because this is how *I'd* do it, but I like this answer." CreationDate="2010-07-17T00:38:44.763" UserId="148" />
  <row Id="401" PostId="623" Text="If we agree, then clearly we must both be right. ;)" CreationDate="2010-07-17T00:46:45.170" UserId="160" />
  <row Id="402" PostId="580" Text="+1 to that. Pygame is an excellent library for games in Python. There's also Pyglet which feels more Pythonic to me, and uses straight OpenGL instead of going through the SDL." CreationDate="2010-07-17T00:53:21.990" UserId="148" />
  <row Id="403" PostId="493" Score="1" Text="I've heard that Git and Mercurial both suffer when shoving very large files into them. Any truth to that rumor from people with more experience than me?" CreationDate="2010-07-17T00:57:44.257" UserId="148" />
  <row Id="404" PostId="493" Text="@D. Hayes: I believe there are initial costs (checkouts and what not), but after that it is faster than other solutions." CreationDate="2010-07-17T01:12:07.187" UserId="55" />
  <row Id="405" PostId="627" Text="Yeah, the best I could do is confirm that he's not crazy, and there doesn't seem to be any real benefit it being coded that way.  The only find out the true intent is to ask the guy who wrote the code :)." CreationDate="2010-07-17T01:27:59.677" UserId="136" />
  <row Id="406" PostId="405" Text="I disagree. With the recent announcements from Microsoft about IE9 embracing the HTML5 technologies, the only thing really missing is a decent IDE. And I guarantee you that the people behind both Dreamweaver and Visual Studio are trying to figure out just that. This may be early days, but the time to start thinking about using these technologies--and establishing best practices--is now." CreationDate="2010-07-17T01:38:18.357" UserId="293" />
  <row Id="407" PostId="628" Text="@SnOrfus - I'd like to read more about the Xbox's GC? It surprises me that it collects Gen 2 only." CreationDate="2010-07-17T01:57:19.060" UserId="211" />
  <row Id="408" PostId="663" Text="+1 for Canabalt. The key is addictiveness." CreationDate="2010-07-17T02:00:39.833" UserId="270" />
  <row Id="409" PostId="628" Text="Just confirming that these are all value types." CreationDate="2010-07-17T02:23:08.670" UserId="288" />
  <row Id="410" PostId="627" Text="Thanks, Mike. I'm beginning to suspect that the original developer is the crazy one, not me. But it always helps to check ;)" CreationDate="2010-07-17T02:34:30.967" UserId="288" />
  <row Id="411" PostId="466" Text="This is one of my favorite books. The only problem I had with it (which the author recognized) was the very sparse details on audio." CreationDate="2010-07-17T02:40:04.870" UserId="250" />
  <row Id="412" PostId="365" Score="2" Text="Another important point is that even if you do not intend to keep a system in script, if you expect to iterate a lot early on, it may still be completely reasonable to start in Lua, then move to C++ down the road when you need the extra performance and the rate of iteration has slowed down. The obvious drawback here is that you end up porting the code, but a lot of times getting the logic right is the hard part -- the code almost writes itself once you figure that part out." CreationDate="2010-07-17T02:56:37.203" UserId="281" />
  <row Id="413" PostId="628" Score="1" Text="@Blair - According to MSDN (http://msdn.microsoft.com/en-us/library/bb203912.aspx) the Xbox360 uses the .NET Compact Framework. It seems that the difference in GC is related to that, so I'd pursue that for further research on the matter." CreationDate="2010-07-17T03:04:31.957" UserId="281" />
  <row Id="414" PostId="486" Text="I've also used RakNet, and it's pretty nice. It's not perfect, but the samples are good, you have full access to the source, and the Indie license is very forgiving." CreationDate="2010-07-17T03:07:34.507" UserId="281" />
  <row Id="416" PostId="671" Score="1" Text="Self reference in comment so you can safely ignore it, I wrote (http://doublebuffered.com/2010/05/12/login-2010-rewards-that-retain/) up some notes on a conference presentation given by the author of that gamasutra article, and they get into some additional depth." CreationDate="2010-07-17T04:28:17.147" UserId="162" />
  <row Id="417" PostId="628" Score="1" Text="@Blair: @Logan Kincaid is correct. The CF's Garbage Collector behaves differently than the regular framework's. There's a good talk on the subject in XNA Game Studio 3.0 Unleashed - however that book will soon be outdated with the release of 4.0." CreationDate="2010-07-17T05:17:52.367" UserId="214" />
  <row Id="418" PostId="622" Text="Generally I'd agree, but WCF doesn't support straight `telnet` connections.  For regular text-based MUDs, allowing users to `telnet` to the server is a given." CreationDate="2010-07-17T05:39:26.730" UserId="67" />
  <row Id="419" PostId="466" Text="That is a good point, the book doesn't cover everything. The two big things that I noticed that were missing were audio and networking, which are both mentioned only in passing. But the author was honest about the fact that he had to give those the shaft for various reasons. Perhaps in the second edition? :)" CreationDate="2010-07-17T05:46:16.173" UserId="263" />
  <row Id="420" PostId="646" Text="The .ms3d format is an easy one to implement too, for those of you that want to write your own model importer/exporter. You can find the C header file definition of the format online." CreationDate="2010-07-17T05:52:46.097" UserId="189" />
  <row Id="421" PostId="243" Text="Wow, I didn't know that existed! Cool." CreationDate="2010-07-17T06:19:13.500" UserId="144" />
  <row Id="422" PostId="548" Text="I would guess (and I'm most interested in) Blender for modeling. The game engine went stagnant for a significant period of time and is just being renovated, last I checked; I never had much faith in it." CreationDate="2010-07-17T06:24:36.143" UserId="189" />
  <row Id="423" PostId="615" Text="The second: the map is 8000x6000 broken into 10x10 tiles of 800x600 px. As for reuse, I already have a content manager that is responsible for that." CreationDate="2010-07-17T06:55:03.040" UserId="118" />
  <row Id="424" PostId="610" Score="1" Text="Quick suggestion: You've got two questions here, &quot;how do I dynamically load tiles in a game&quot; and &quot;how do I do threading on XNA for XBox 360&quot;. Remove the OS-specific segments from this post - the tileloading code will be identical on XB360, Linux, and the Nintendo Wii - and make a new post for threading on XBox360." CreationDate="2010-07-17T07:46:51.533" UserId="323" />
  <row Id="425" PostId="610" Text="As for a question about your actual problem, is this a smooth-scrolling map, or a series of individual non-scrolling screens?" CreationDate="2010-07-17T07:47:36.587" UserId="323" />
  <row Id="426" PostId="636" Text="Thanks ... I'll check that out." CreationDate="2010-07-17T11:11:23.437" UserId="262" />
  <row Id="427" PostId="101" Text="Right on! I would also recommend looking at ConceptArt.org as there is a lot of great artists there and you can learn a lot of basic, practical things from people's sketchbooks. Even better you can make your own and get critiques. &#xA;" CreationDate="2010-07-17T12:18:37.747" UserId="83" />
  <row Id="428" PostId="610" Text="If I understood &quot;smooth-scrolling map&quot;, yes, it is. As for separating the question, I thought about it but kinda hesitated to ask to questions consequentially. But, I'll do it now." CreationDate="2010-07-17T12:21:43.340" UserId="118" />
  <row Id="430" PostId="392" Text="It strikes me though that you could get specular &amp; diffuse reflections as well as the &quot;bending round corners&quot; and occluders all for, pretty much, free using spherical harmonics in some fashion ..." CreationDate="2010-07-17T12:55:02.900" UserId="68" />
  <row Id="431" PostId="279" Score="2" Text="I disagree on the striving more towards C.  The vast majority of games developers as well as SDK writers use C++.  In fact the last major C user was id and even Carmack has gone over to C++ now ..." CreationDate="2010-07-17T13:01:26.973" UserId="68" />
  <row Id="432" PostId="328" Text="+1. haXe is developed for the purpose of making games AFAIK." CreationDate="2010-07-17T13:02:59.310" UserId="91" />
  <row Id="433" PostId="656" Text="Yep, as suspected, I can definitely make improvements.  Good reads. Also, thanks for posting the code.  It's great to see actual game code with this stuff." CreationDate="2010-07-17T13:03:06.720" UserId="29" />
  <row Id="434" PostId="652" Text="Those are definitely some really good articles.  Thanks for posting!" CreationDate="2010-07-17T13:04:20.027" UserId="29" />
  <row Id="435" PostId="644" Text="Thanks for your answer - I'm actually doing exactly this now.  I am measuring the clicks at each stage.  But my question is more about what the meaningful metric is.  So, 1000 people play my game, 100 of those post to FB, and 1 of those sees the post and downloads my game.  What is the virality of my game? Is that number different if it takes 1 day or 100 days to get that one conversion?  MacGuffin is on the right track as to my question.  But I do appreciate your thoughtful answer." CreationDate="2010-07-17T13:41:05.900" UserId="283" />
  <row Id="436" PostId="633" Text="This looks like a good starting point for me, thanks.  I'm going to keep the question open for a bit more since there seems to be some interest in it, and it is generating thoughtful answers." CreationDate="2010-07-17T13:43:02.823" UserId="283" />
  <row Id="437" PostId="625" Text="Great thoughts, thanks!" CreationDate="2010-07-17T13:45:18.527" UserId="283" />
  <row Id="438" PostId="679" Score="4" Text="I've been playing Dawn of Discovery - Venice lately, localized to English from German. It's about 99% correct . . . and every once in a while one of the characters inexplicably talks German for a line, or one of the building status reports has umlauts, or (once in a while) I'm informed that I can purchase a Debug Item from the local store. Whatever method you use, make sure it's easy to detect untranslated lines - if you have to read them over visually, or play the game and hope they show up, you're doing it wrong." CreationDate="2010-07-17T13:58:58.010" UserId="323" />
  <row Id="439" PostId="682" Score="2" Text="In addition to this otherwise-good reply, *include a note of the game ports in the game documentation*. It's amazing how many games don't do this - people root out the ports manually with &quot;netstat&quot; and get half of them wrong." CreationDate="2010-07-17T14:14:23.107" UserId="323" />
  <row Id="440" PostId="628" Score="1" Text="@Blair: Due to the limited memory environment of the 360 (and most devices targeted via the CF), a Mark &amp; Sweep GC is used. As a result, lots of small allocations will trigger a collection, and collection time is relative to the # of references. Lots of details here: http://download.microsoft.com/.../Mobility/Abhinaba_NET_Compact_Framework.pdf " CreationDate="2010-07-17T15:06:44.027" UserId="187" />
  <row Id="441" PostId="72" Text="@Davr While I still agree that there is nothing wrong with building a homebrew game, atleast in the USA the DMCA makes changing your system to run one illegal doesn't it?" CreationDate="2010-07-17T15:11:33.687" UserId="14" />
  <row Id="442" PostId="627" Text="Thread safety can sometimes be a costly guarantee to provide, especially when writing a FP computation heavy library for a platform that doesn't make use of SIMD instructions." CreationDate="2010-07-17T15:13:15.717" UserId="187" />
  <row Id="444" PostId="361" Text="Right.  The thing I'm saying is: your question isn't clear.  Are you looking for a source of public-domain fonts?  Open-source fonts?  An explanation of the various licenses?  Do you not understand the GPL license?  BSD?  Public-domain/open-source Fonts abound, so it would help us help you if we better understood where you're getting stuck.&#xA;&#xA;Btw, you might forgo open-source fonts and look into public-domain.  No confusing licenses!  :)" CreationDate="2010-07-17T16:50:25.263" UserId="240" />
  <row Id="446" PostId="586" Score="2" Text="Please rephrase Your question to bounding rects. From my point of view box implies a 3d object." CreationDate="2010-07-17T18:16:06.720" UserId="202" />
  <row Id="448" PostId="373" Text="@Casey id Tech 3 was Quake 3, with id Tech 4 being used in Doom 3 and Quake 4. Id Tech 5 will be Rage, Doom 4, etc." CreationDate="2010-07-17T20:09:08.843" UserId="250" />
  <row Id="449" PostId="61" Text="NVidia provides a tool for assisting in the creation of texture atlases (http://developer.nvidia.com/object/texture_atlas_tools.html), or for those who wish to DIY, this thread on gamedev.net provides some example source: http://www.gamedev.net/community/forums/topic.asp?topic_id=392413" CreationDate="2010-07-17T20:16:01.853" UserId="187" />
  <row Id="450" PostId="493" Score="4" Text="Git is good and all but when it comes to handling big graphic or music assets, such as larger than 100's of MB, it becomes noticably slow at commits and check-outs. At the moment Mercurial, the contender to Git, has a &quot;big files&quot; extension that addresses this specific issue. If you have a game project that doesn't have a lot of assets you could give Git a try." CreationDate="2010-07-17T20:49:23.863" UserId="7" />
  <row Id="451" PostId="696" Text="I don't think anyone should have to justify why they shouldn't use STL. Also don't agree with the whole 'use it because they're smarter than you' argument. STL has been designed around a specific view of a problem domain, not just containers i.e algorithms, allocators, iterators, traits etc. That's fair enough but it's not the only way of looking at that problem domain" CreationDate="2010-07-17T21:37:34.803" UserId="347" />
  <row Id="452" PostId="696" Text="So you'd rather home-rolled code than generally tested, strongly robust code? The problem domain is not all that different from project to project (aside from maybe embedded projects-- even *consoles* have decent STL implementations these days!). Regardless of game, your problem just isn't that different, and if you're making something you intend to ship, you have an implicit responsibility to write robust code. Is reimplementing the wheel going to lead to *better* robustness and flexibility? I lean toward &quot;no&quot;. That it's not the &quot;only way&quot; doesn't imply it's not generally superior." CreationDate="2010-07-17T21:51:05.893" UserId="348" />
  <row Id="453" PostId="696" Text="Game dev is about 2 things&#xA;1) Fanatical obsession with resource allocation&#xA;2) Fanatical obession with data pipelines  &#xA;&#xA;STL is not always the best answer for both of those requirements.&#xA;Don't get me wrong, there's nothing inherently wrong with STL but software design comes from base requirements not generality of application, no matter how well-designed that library may be" CreationDate="2010-07-17T22:00:33.207" UserId="347" />
  <row Id="454" PostId="343" Score="15" Text="This is pretty solid advice. The &quot;STL is slow&quot; meme hasn't been true for at least five years and probably well longer. It will continue to live on, much like the &quot;Java is slow&quot; and &quot;.NET is slow&quot; nonsense, until it becomes apparent to *everyone* that it's no longer the case.&#xA;&#xA;The STL helps you write better programs; I'd go so far as to say that not using it, in most cases (aside from that 0.1% somewhere), is irresponsible.&#xA;&#xA;(The claims that it doesn't fit a given problem domain are often more of an indictment of the way the problem was tackled, not the STL itself. Fix *your* code, folks.)" CreationDate="2010-07-17T22:01:39.617" UserId="348" />
  <row Id="455" PostId="69" Text="@Lance May: No, it's a platformer still in development. Though it should be completed now- not sure if they're going to publish it online." CreationDate="2010-07-17T22:02:19.693" UserId="89" />
  <row Id="456" PostId="342" Score="1" Text="I agree 100% with the last part of your comment, but I'd go even further: if you can *demonstrate conclusively* why the STL is not a good option, don't use the STL. Otherwise, do. The cargo cult (everything from &quot;oh, game developers use C++!&quot; to &quot;oh, game developers don't use the STL!&quot;) is unhealthy. I would, however, take a bit of an issue with your second paragraph: it's pretty unlikely that people who are still naive enough to think reimplementing the STL is a good idea will build a better `vector` than the STL folks. By the time you can do it, you no longer think you need to! :-)" CreationDate="2010-07-17T22:03:49.333" UserId="348" />
  <row Id="457" PostId="279" Score="32" Text="Mr. Acton's comment seems sketchy. Generally speaking, the STL is a good fit *for* those problems. If you're trying to do something in such a way that the STL approach seems &quot;wrong,&quot; it is probably a really good idea to re-evaluate your approach and see if you're actually doing it a smart way. In my experience, more often than not, you probably aren't. (It is vastly smarter, IMO, to solve a problem by strongly understanding it in the context of your tools than to throw away your tools just to redo it from scratch.)" CreationDate="2010-07-17T22:06:41.283" UserId="348" />
  <row Id="458" PostId="277" Score="2" Text="But if you don't want dynamic memory allocation, then you shouldn't be using the STL. *That is sort of the point.* Your own code is going to be no better, and could certainly be quite worse. The *design decision* to misuse the STL is the issue here, not the STL, its capabilities, or its perf characteristics. You're attacking the wrong part of the problem." CreationDate="2010-07-17T22:08:51.733" UserId="348" />
  <row Id="459" PostId="696" Score="4" Text="I would say that gamedev is about *making games*, but OK. If your assumptions are so poor that you are getting drilled on that kind of resource allocation, then, yes, you need to step back and reevaluate them. But you can make blindingly fast applications that use the STL just as well--and, certainly, any other implementation--when you *actually know what you're doing*. Learning what you're doing &gt; cargo-culting a refusal of the STL.&#xA;&#xA;Nobody said the STL is always the best answer. What I'm saying is that if you can't elaborate *why it's not the best course*, you should be using the STL." CreationDate="2010-07-17T22:12:15.177" UserId="348" />
  <row Id="460" PostId="587" Text="+1 concise but clear" CreationDate="2010-07-17T23:16:53.990" UserId="202" />
  <row Id="461" PostId="704" Score="1" Text="+1 for &quot;Realtime Rendering&quot; - very recommendable graphics book. Additionally &quot;Game Engine Architecture&quot; should give You the overview You desired (in opposite to technical details)" CreationDate="2010-07-17T23:20:24.420" UserId="202" />
  <row Id="462" PostId="703" Text="Please note that &quot;round-trip...of everything&quot; is limited to everything that deals with graphics. No game logic, physics, etc." CreationDate="2010-07-17T23:24:36.707" UserId="202" />
  <row Id="463" PostId="577" Text="@ZorbaTHut I'm confused: &quot;rigging up some basic dumb AIs&quot; and &quot;recording keypresses&quot; - who's keypresses? I thought You let Your AI play by itself without any humans? Did You actually let Your AI play the game by simulating keypresses rather than calling api functions? Now that would be slick!" CreationDate="2010-07-17T23:29:29.663" UserId="202" />
  <row Id="464" PostId="638" Text="Thanks very much for the link ... I actually found a collection on TurboSquid that very closely fits my requirements.  Cheers! :)" CreationDate="2010-07-17T23:38:18.713" UserId="262" />
  <row Id="465" PostId="632" Text="I agree about not being a one man show. Makes things pretty difficult.  Thanks for the link, seems like there is a good community there." CreationDate="2010-07-17T23:39:35.840" UserId="262" />
  <row Id="466" PostId="703" Score="1" Text="@Dave - That's probably why he said &quot;everything *rendering*.&quot; :)" CreationDate="2010-07-18T00:18:24.720" UserId="101" />
  <row Id="467" PostId="652" Text="I second the recommendation for having a robust framerate independent implementation. Everything in your game should be implemented as a delta value that you periodically update.  And that shouldn't be done necessarily at the same time you advance to the next frame.  In fact, if you've skipped a frame, you probably really don't want to simply call your update methods with a 2x delta.  It would be more consistent to call your update twice with the same delta.&#xA;&#xA;Definitely take the time to learn the issues with your framerate and your update cycle.  It will save you time later." CreationDate="2010-07-18T00:32:58.917" UserId="34" />
  <row Id="468" PostId="222" Text="I disagree, but changed anyway." CreationDate="2010-07-18T03:14:11.730" UserId="170" />
  <row Id="469" PostId="267" Text="Do you think learning how to write games in C++ before being hired is important or do you think language doesn't really matter so long as you're creating?" CreationDate="2010-07-18T03:28:39.747" UserId="170" />
  <row Id="470" PostId="702" Score="1" Text="But players *never* do what you would expect a sane person to do. That's why you don't see stuff like the elevator glitches in Call of Duty until after release. Because there's a thousand guys all doing stuff that the developers and the testers never thought to try.&#xA;As soon as someone creates the perfect simulation of an obsessive-compulsive 16 year old gamer we'll have reached the game development singularity :)" CreationDate="2010-07-18T04:39:08.770" UserId="140" />
  <row Id="471" PostId="677" Text="Thanks, Zwoptex looks great!  I'm not into cocos2d, but it should still integrate pretty easily. " CreationDate="2010-07-18T05:04:00.600" UserId="58" />
  <row Id="472" PostId="588" Text="Hm, I wouldn't have thought of this as automated testing -- but I guess you're right. I've been doing the same thing for a couple of years, just never thought of it that way." CreationDate="2010-07-18T05:20:14.827" UserId="233" />
  <row Id="473" PostId="694" Score="1" Text="Ah, concatenated strings. What a pain in the ass. Works great in the native language for building variety quickly and easily. But then you get into a language with a different grammar and it's a complete failure. All the other points are good ones too. 'Settings' in German was 'Einstellungen', which devours quite a bit of extra screen space when you need it." CreationDate="2010-07-18T05:41:17.843" UserId="140" />
  <row Id="474" PostId="689" Text="Are you sure about that? One thought I had was that it might be to avoid calling constructors. But for value types you don't need to call a constructor - including the default parameterless constructor - if you're going to set all the members (or pass it as an `out` parameter). I'm fairly sure the entire point of this rule is so the compiler can skip zeroing that memory - right? (Is it *really* that slow to move the stack pointer?)" CreationDate="2010-07-18T06:29:23.983" UserId="288" />
  <row Id="475" PostId="618" Text="I'd be interested to hear how xna handles the 2d api behind the scenes" CreationDate="2010-07-18T07:47:30.190" UserId="119" />
  <row Id="476" PostId="663" Text="An automatic save point just before the hard challenge is perfect in this kind of situation and I really love games like God of War where there always seems to be one before places you are likely to die in the first try. This keeps the pace and motivation up!" CreationDate="2010-07-18T08:30:49.947" UserId="13" />
  <row Id="477" PostId="696" Text="Your statements are a little bit provocating: Saying the people who wrote STL are smarter than you is a poor generalisation (and not true in some cases, as those guys certainls aren't the most smartest people on the planet). It would be better to argue that lot's of people put a lot of thought and effort into STL to make it into what it is today. In most cases, but not all, this means STL will be better than a home-rolled solution. Basically I'm agreeing with your answer, but I think it's phrased too narrowly and close-minded." CreationDate="2010-07-18T10:00:22.980" UserId="13" />
  <row Id="478" PostId="267" Text="If you know C++ well, and can make simple gamelike things in (for example) SDL and perhaps more complex things in python. Then you should be good. But if you are going to be working in the C++ section, then a strong C++ showing is always good." CreationDate="2010-07-18T10:12:07.173" UserId="10" />
  <row Id="479" PostId="577" Text="@Dave Yeah I'll admit that's potentially confusing. The AIs were designed to provide all their output via simulated controllers. They took the game state as input, but didn't modify the game state in any fashion. This would probably have been a horrible idea with a mouse UI but the entire interface was done with gamepads, so it was a bit ugly but functional. I recorded the virtual keypresses of the AIs, and in addition, the same code recorded real keypresses when testing it with friends." CreationDate="2010-07-18T11:20:21.100" UserId="323" />
  <row Id="480" PostId="628" Text="Thanks guys - plenty of reading to go on with!" CreationDate="2010-07-18T12:35:34.987" UserId="211" />
  <row Id="481" PostId="212" Text="lack of `#ifdef PLATFORM_WIN` ftw" CreationDate="2010-07-18T14:16:36.943" UserId="259" />
  <row Id="484" PostId="279" Text="I remember reading that for small problems (&lt;~10 items?) a flat vector and linear/binary search is normally faster than the more complex data structures.  Anyone got a reference for that?" CreationDate="2010-07-18T14:24:41.027" UserId="259" />
  <row Id="485" PostId="690" Score="1" Text="You can use msbuild to run the content pipeline outside of Visual Studio. The second WinForms sample has you covered: http://creators.xna.com/en-US/sample/winforms_series2" CreationDate="2010-07-18T14:42:46.867" UserId="288" />
  <row Id="486" PostId="689" Text="Surprising, no? Unfortunately, if you inspect the generated IL, the temporary matrices are initialized. A few quick tests show the member-temp version is ~10-15% faster." CreationDate="2010-07-18T14:43:19.140" UserId="187" />
  <row Id="487" PostId="386" Text="What part of BOOST are you referring to? AFAIK no big studio uses BOOST in their game runtime.&#xA;&#xA;The question here refers to the game engine, not the tools nor the editor." CreationDate="2010-07-18T14:43:51.060" UserId="274" />
  <row Id="488" PostId="463" Score="1" Text="Scene Graphs - just say no &#xA;http://home.comcast.net/~tom_forsyth/blog.wiki.html#%5B%5BScene%20Graphs%20-%20just%20say%20no%5D%5D" CreationDate="2010-07-18T15:01:55.993" UserId="274" />
  <row Id="489" PostId="689" Score="1" Text="I am *stunned*. In &quot;Understanding XNA Framework Performance&quot; (GDC2008) Shawn Hargreaves says of structs: **&quot;[the JIT] will usually figure out: 'in the next line he immediately sets all three fields [of the Vector3], so I don't even need to initialize it to zero'&quot;**. Which is where my info is coming from. But on listening again now, he *only* says &quot;usually&quot;. The immediate next point in the presentation is that the JIT behaves differently with the debugger attached, affecting performance (how did you test?). Also: he is talking about the JIT here, so perhaps the IL stays &quot;nice&quot; (verifiability?)." CreationDate="2010-07-18T15:14:39.327" UserId="288" />
  <row Id="490" PostId="386" Text="Personally, I'm using Boost.FunctionTypes for c++/lua interaction (see http://www.gamedev.net/reference/programming/features/CPPLuaExport/default.asp&#xA;) and the Boost random number library for uniform random number generation (for particle systems).&#xA;&#xA;Also, Boost.Foreach is neat.&#xA;&#xA;BTW, who cares if big studios are not using BOOST? They have the manpower to write their own STL libraries from scratch, I don't.&#xA;" CreationDate="2010-07-18T15:21:07.503" UserId="258" />
  <row Id="491" PostId="671" Text="This is a humorous article about why some games are so addictive (and why people keep grinding or even spend money for the newest shiny armor): http://www.cracked.com/article_18461_5-creepy-ways-video-games-are-trying-to-get-you-addicted.html" CreationDate="2010-07-18T15:23:21.843" UserId="20" />
  <row Id="492" PostId="689" Text="The IL was inspected via Reflector, and the tests were run outside the IDE built in Release (on Windows, I no longer have a CC membership to test against)" CreationDate="2010-07-18T15:29:15.480" UserId="187" />
  <row Id="493" PostId="729" Score="2" Text="In addition, this is one reason it's very common to have an intermediate &quot;choose your profile&quot; (or sometimes &quot;choose your character&quot;) screen - so the game can figure out which controllers are &quot;live&quot; and which are merely connected but unused." CreationDate="2010-07-18T15:30:14.733" UserId="323" />
  <row Id="494" PostId="690" Text="@Andrew !!!!! Thank you SO much!!! I was about to completely abandon the content pipeline for exactly that reason!" CreationDate="2010-07-18T16:42:05.717" UserId="118" />
  <row Id="495" PostId="720" Text="Thank you. Very nicely said. I would like to make a suggestion, if you know: could you describe how would the loading of tiles be done in a thread. I imagine that loading 3 800x600 tiles at once would pause slightly the game." CreationDate="2010-07-18T17:15:10.987" UserId="118" />
  <row Id="497" PostId="212" Text="You'll never escape that. You can just hope to minimize it." CreationDate="2010-07-18T18:06:07.743" UserId="160" />
  <row Id="498" PostId="720" Text="The graphics card needs to be involved when creating a Texture2D object, so as far as I know it would still cause a skip even if loading were done on a second thread." CreationDate="2010-07-18T18:41:25.973" UserId="353" />
  <row Id="499" PostId="606" Score="1" Text="I don't think interpreting the players input is a problem. Certainly, there's nothing as sophisticated as parsing input to a text adventure needed here. Really, the question boils down to how would you design your object hierarchy and interactions to allow maximum flexibility over what object defines the actual action to be carried out." CreationDate="2010-07-18T18:49:54.427" UserId="174" />
  <row Id="500" PostId="631" Text="Changed the title. I also tried to reword the question so that the answers still fit." CreationDate="2010-07-18T18:58:34.050" UserId="328" />
  <row Id="501" PostId="634" Text="Loading a sprite is easier than loading a model? Models involve skeletons, skinning, shaders, UV coordinates, textures, normal maps, etc. A sprite is an image.&#xA;&#xA;Following along that vain, 3D art is much much harder, because of the things listed above." CreationDate="2010-07-18T19:37:48.377" UserId="353" />
  <row Id="502" PostId="555" Score="2" Text="I assume the height from the ground was also being checked? Otherwise it would also be possible to land the plane in the air... :)" CreationDate="2010-07-18T20:26:57.357" UserId="353" />
  <row Id="503" PostId="738" Score="4" Text="This doesn't really answer the question, not to mention that it is very much possible to wrap both OpenGL and DirectX (see Ogre3D, Irrlicht, etc.)." CreationDate="2010-07-18T20:46:33.517" UserId="187" />
  <row Id="504" PostId="738" Text="Consider the games you've played. How many of them have options to use DirectX or OpenGL? That's how many create wrappers for the two libraries to be able to support either one. You have a limited imagination. :-P" CreationDate="2010-07-18T21:59:57.420" UserId="189" />
  <row Id="505" PostId="637" Text="Superb answer !" CreationDate="2010-07-18T22:05:35.780" UserId="347" />
  <row Id="506" PostId="740" Text="This is actually a good Idea. And it is part of the design I'm trying to create, but what I had in mind was to implement this features on top of a common low level API. But it might be the case that for some features you'd still need to deep into the native API for some more particular cases." CreationDate="2010-07-18T22:55:22.483" UserId="274" />
  <row Id="507" PostId="746" Text="+1 Gamasutra also has a very nice and easy to understand explanation of ROAM: http://www.gamasutra.com/view/feature/3188/realtime_dynamic_level_of_detail_.php" CreationDate="2010-07-18T23:42:49.140" UserId="202" />
  <row Id="508" PostId="751" Text="I never thought about treating platform-specific things as resources. It sounds like a very good idea! Thanks." CreationDate="2010-07-19T06:17:09.023" UserId="274" />
  <row Id="510" PostId="731" Text="The requirement for the API to be _stateless_ is interesting. OpenGL, for example, is stateful, and I think a stateless API that wraps it would only make sense if it were much higher level, so that it isn't, for example, having to push and pop the same matricies for each and every surface it renders." CreationDate="2010-07-19T07:14:53.393" UserId="174" />
  <row Id="511" PostId="463" Text="TomF is talking there about graphs for graphics, and his criticisms are all based around graphics applications.  This question was about general game architecture and that's the context in which I talk about scene grpahs.  &#xA;&#xA;&#xA;The dependencies between pathfinding, streaming, UI message handlers and audio are all static across the life of your game.  However they're generally not understood, or if they are they're not expressed in code so you can't use those dependencies to thread nicely.  That's where scene graphs come in." CreationDate="2010-07-19T08:01:40.660" UserId="259" />
  <row Id="512" PostId="757" Text="&quot;Procedural&quot; can also refer to some more deterministic tasks like building a terrain from a height map, building sky box geometry for a cube map, etc." CreationDate="2010-07-19T08:10:36.553" UserId="353" />
  <row Id="514" PostId="555" Text="@Sean: I wasn't told explicitly, but I assume this was &quot;if the plane intersected the landing strip&quot;. Otherwise you'd be able to land the plane literally anywhere. :)" CreationDate="2010-07-19T08:23:28.127" UserId="323" />
  <row Id="515" PostId="731" Text="Avoiding useless state changes could still be implemented at a higher level, like by sorting the render calls based on their state before submitting them to the device. And by setting the state only if it's different from the current one." CreationDate="2010-07-19T08:25:02.743" UserId="274" />
  <row Id="516" PostId="595" Text="I got a reply saying, Come back when you got some demos. Something like that... :)" CreationDate="2010-07-19T08:27:53.500" UserId="261" />
  <row Id="517" PostId="611" Text="This may also be of use: http://code.google.com/p/o3d/wiki/ColladaConverter" CreationDate="2010-07-19T09:36:20.570" UserId="353" />
  <row Id="520" PostId="689" Score="1" Text="Based on this - I wonder if it would be better (and how much better it would be) to make those member-temporaries `static` (and/or more aggressively reuse them). As it is, just for example, the `Body` class in Farseer has some 73 floats worth of &quot;unnecessary&quot; members." CreationDate="2010-07-19T10:02:01.990" UserId="288" />
  <row Id="521" PostId="761" Score="1" Text="Actually, the things I listed in my answer are from the Valve commentaries, at least for Episode 1 and Lost Coast :)" CreationDate="2010-07-19T10:09:35.653" UserId="353" />
  <row Id="522" PostId="210" Text="Agree completely. The garbage collector implementations on the &quot;lesser&quot; platforms seems to be complete garbage.&#xA;&#xA;" CreationDate="2010-07-19T10:31:52.217" UserId="358" />
  <row Id="523" PostId="761" Text="+1 very good advise. I also found &quot;The Cabal&quot; a very nice read, although focusing on the design process of HL2, it also gives some hints on how Valve approached level design" CreationDate="2010-07-19T10:47:33.727" UserId="202" />
  <row Id="525" PostId="761" Text="@Sean: they did sound familiar ;)" CreationDate="2010-07-19T13:02:51.363" UserId="288" />
  <row Id="526" PostId="760" Score="6" Text="Cool points, be careful though to have some branching. To avoid being like the latest final fantasy. http://community.eu.playstation.com/t5/image/serverpage/image-id/43338i8BE8FE457F2B3AFD/image-size/original?v=mpbl-1&amp;px=-1" CreationDate="2010-07-19T13:14:33.597" UserId="10" />
  <row Id="527" PostId="738" Text="I recognize that there are some games that allow you to choose whether you want to render graphics with OpenGL or DirectX, but the question is about a cross-platform API, so I think the answer is adequate, I'll edit the first paragraph, though." CreationDate="2010-07-19T13:51:15.897" UserId="33" />
  <row Id="528" PostId="738" Score="1" Text="the question is about a cross-platform stateless low level API. SDL  and Allegro have nothing to do with it." CreationDate="2010-07-19T14:00:56.887" UserId="274" />
  <row Id="529" PostId="622" Text="@Agent_9191  Depending on your goals, it could make sense to have the `telnet` interface be a layer on top of a more robust API, e.g. one built on WCF." CreationDate="2010-07-19T14:20:43.267" UserId="326" />
  <row Id="530" PostId="638" Score="1" Text="Cool, glad it helped you out.  " CreationDate="2010-07-19T14:35:06.947" UserId="117" />
  <row Id="531" PostId="757" Score="2" Text="Also, take a look at http://pcg.wikidot.com/ for more information on procedural generation algorithms." CreationDate="2010-07-19T15:26:53.247" UserId="360" />
  <row Id="532" PostId="765" Score="21" Text="I don't have any solid advice to give, so I'll just post this comment with a comical link: http://www.rockpapershotgun.com/2010/07/02/rules-for-games-do-dont-1/&#xA;" CreationDate="2010-07-19T15:31:03.407" UserId="360" />
  <row Id="533" PostId="765" Score="2" Text="@DrDeth, that link is worth promoting to an Answer. :) Really." CreationDate="2010-07-19T15:50:49.313" UserId="165" />
  <row Id="534" PostId="765" Text="Yeah, it really is. Truth, delivered with humor." CreationDate="2010-07-19T16:43:45.837" UserId="140" />
  <row Id="535" PostId="565" Text="Right now it's just a GET request on the client, but yes, the Django app handles most of the logic (when necessary).  I suspect there will be more presentation code on the client side than I'd like (since server-side code is easier to change post-ship), but integrating a web browser would be overkill ;)" CreationDate="2010-07-19T17:06:00.483" UserId="94" />
  <row Id="536" PostId="776" Text="And I should specify that by &quot;API reference&quot; I mean more the &quot;Programming Guide&quot; section." CreationDate="2010-07-19T17:16:00.170" UserId="353" />
  <row Id="537" PostId="770" Text="+1 for never looking up--I've heard this echoed many times by many developers" CreationDate="2010-07-19T17:28:45.563" UserId="353" />
  <row Id="538" PostId="764" Text="Good idea, thanks. Gotta try this." CreationDate="2010-07-19T18:03:14.683" UserId="20" />
  <row Id="539" PostId="634" Text="I'm sorry, that was an error. quite a big one too, thanks for pointing it out. It must have been so bland that it didn't register when I proofread." CreationDate="2010-07-19T18:40:45.887" UserId="275" />
  <row Id="540" PostId="637" Score="1" Text="I see my answer is beaten by several (to use the authors words) magnitudes. It is so superb that I leaned a lot of things myself that I'd never thought of previously. Nice work!" CreationDate="2010-07-19T18:45:55.300" UserId="275" />
  <row Id="541" PostId="778" Text="This answers the &quot;where&quot; that the asker specifically did not want rather than the &quot;how&quot; that was requested. " CreationDate="2010-07-19T18:48:15.170" UserId="275" />
  <row Id="542" PostId="695" Score="1" Text="Is there a way to favorite posts? This is a real treasure on the internet." CreationDate="2010-07-19T19:14:09.323" UserId="275" />
  <row Id="544" PostId="695" Text="@user275 Yes and No :-). No, there is no possibility to favorite posts, just questions - what about adding a bookmark in Your main browser? Yes, it is a real treasure, further it's an excerpt from the famous Realtime Rendering Book: http://www.amazon.com/Real-Time-Rendering-Tomas-MOller/dp/1568814240?tag=realtimerenderin - highly praised by many developers (on this site)." CreationDate="2010-07-19T19:42:54.950" UserId="202" />
  <row Id="545" PostId="779" Score="6" Text="For a hobby project, this is a good advise. But if Your project matures, I would consider to have an artist from the beginning on: A good artist can express the great ideas You have for Your game with (hopefully great) graphics (not just assets, I'm talking about story lines, main characters...). He's able to set the right mindset for the whole development team so it has a clear goal/vision." CreationDate="2010-07-19T19:47:21.803" UserId="202" />
  <row Id="547" PostId="766" Score="8" Text="Man, if I could vote this up 100 times... Case in point -&gt; Stay away from re-inventing the wheel. " CreationDate="2010-07-19T19:49:59.363" UserId="55" />
  <row Id="548" PostId="766" Score="2" Text="+1 But it's really hard to find a balance. Most people won't go for a game that only has to offer nice graphics, but even the best and most innovative game idea needs an appropriate representation or it will fail." CreationDate="2010-07-19T19:57:01.263" UserId="202" />
  <row Id="549" PostId="436" Score="3" Text="Many console apps actually use LUA. Yes, it's branchy - but that doesn't matter if you control high-level logic. Just don't call it from your render loop ;)&#xA;&#xA;As far as I know, LUA for games is fine with the recent changes to the developer agreement - there are plenty of games that are driven by LUA. But as with any development on a closed platform, ask the platform owner (i.e. Apple) for definitive answers.&#xA;&#xA;Also, no need for Obj-C - the iPhone allows C/C++ just fine. (I recommend you do anything UIKit in Obj-C, though. Reduced pain factor)&#xA;" CreationDate="2010-07-19T20:24:35.300" UserId="181" />
  <row Id="550" PostId="434" Score="1" Text="It's also important to keep in mind that in some cases your end users will be sitting behind ISPs that block UDP traffic, have router setups that prevent UDP traffic, or otherwise are in a situation where using UDP is less than ideal. In those cases, if your game can support it, being able to fall back to TCP communication is quite handy." CreationDate="2010-07-19T21:54:39.537" UserId="62" />
  <row Id="551" PostId="778" Text="I was simply emphasizing the &quot;how&quot;." CreationDate="2010-07-19T22:13:06.600" UserId="328" />
  <row Id="552" PostId="746" Text="It should be noted that many developers are now shying away from complicated LOD systems because of their tendency to hog CPU.  GPU's are at the point where often just throwing a bit more geometry is preferable to stealing valuable CPU." CreationDate="2010-07-19T22:21:49.537" UserId="345" />
  <row Id="553" PostId="768" Score="12" Text="That's exactly the kind of advice I need drilled into my head. My PC holds the ashes of many a started-but-not-finished games." CreationDate="2010-07-19T22:31:05.997" UserId="222" />
  <row Id="554" PostId="765" Score="9" Text="Should this possibly be Community Wiki?" CreationDate="2010-07-19T22:45:22.260" UserId="97" />
  <row Id="555" PostId="794" Text="What language is most of your code written in? Java? C/C++?" CreationDate="2010-07-20T00:34:46.713" UserId="187" />
  <row Id="556" PostId="746" Text="Move along to other algorithms, ROAM was relevant when the fill cost of triangles on screen was high, and it was worth the CPU time to cut them down as much as possible.  " CreationDate="2010-07-20T04:21:32.410" UserId="111" />
  <row Id="557" PostId="765" Text="@Justin: It's closer to the borderline than most questions, but I don't think so." CreationDate="2010-07-20T04:59:13.250" UserId="288" />
  <row Id="558" PostId="766" Text="I realised, after I posted it and went to bed, that I did have an answer to my own question. And this is it (you beat me to it). Don't try to develop an engine! Been there, done that - what a trap! I think that one needs to focus on being either a middleware developer or an indie game developer - never both." CreationDate="2010-07-20T05:14:07.407" UserId="288" />
  <row Id="559" PostId="766" Score="3" Text="And I think this could be generalised to: avoid any work that doesn't directly contribute to (a) making a great game, and (b) getting it into the hands of as many people as possible. (This covers a lot of business stuff, fancy-website stuff, etc.)" CreationDate="2010-07-20T05:23:06.910" UserId="288" />
  <row Id="560" PostId="623" Text="So, effectively, you think the behaviour to perform should always be defined by the first noun?" CreationDate="2010-07-20T07:00:44.293" UserId="174" />
  <row Id="561" PostId="801" Text="Good question. I'm pretty interested in hearing how others approach this." CreationDate="2010-07-20T07:11:14.487" UserId="55" />
  <row Id="562" PostId="760" Text="Regarding point 3. Isn't it tempting, though, to try and frustrate completionis?" CreationDate="2010-07-20T07:13:56.103" UserId="174" />
  <row Id="563" PostId="760" Text="Not if you are one ;)" CreationDate="2010-07-20T07:19:00.257" UserId="353" />
  <row Id="564" PostId="801" Text="For info on version control: http://gamedev.stackexchange.com/questions/480/version-control-for-game-development-issues-and-solutions and http://gamedev.stackexchange.com/questions/245/what-version-control-systems-work-best-with-games-closed I don't think this is a duplicate as it's specifically about assets" CreationDate="2010-07-20T07:22:45.067" UserId="353" />
  <row Id="565" PostId="779" Score="3" Text="@Dave is spot on. Having that artistic direction from the get-go is extremely valuable." CreationDate="2010-07-20T07:32:12.953" UserId="55" />
  <row Id="566" PostId="802" Score="1" Text="+1 for the &quot;what went right?&quot; It's too easy to break what you did well when trying to fix what you did badly." CreationDate="2010-07-20T07:44:11.490" UserId="259" />
  <row Id="567" PostId="781" Text="I'm not sure this is practical. So much game logic uses vector math, you'd have to either do everything in 3D before converting down to 2D or whatever for rendering, or you'd have to completely abstract away your vector library - which would surely be impractical?" CreationDate="2010-07-20T07:47:26.053" UserId="259" />
  <row Id="568" PostId="802" Text="Very good answer! :)" CreationDate="2010-07-20T08:12:57.943" UserId="274" />
  <row Id="569" PostId="794" Text="Android (and my app) is written in Java.  iPhone is Objective C" CreationDate="2010-07-20T12:33:16.833" UserId="47" />
  <row Id="570" PostId="765" Text="@Andrew, although I've given up on complaining about questions not being wiki :) but... Yes, this one *is* across the Border. There isn't a *single* right Answer, better than the rest, that you would checkmark. Instead there could be a dozen equally good answers, *all* of which an indie should consider." CreationDate="2010-07-20T13:02:17.883" UserId="165" />
  <row Id="571" PostId="777" Text="This doesn't answer the question." CreationDate="2010-07-20T13:13:12.417" UserId="276" />
  <row Id="572" PostId="805" Score="1" Text="Agreed on keeping the art assets and code assets in separate repos. You may also find that the artists are more reluctant to check something in than the coders, and not necessarily because they find the system intimidating. They may have 30 rough outlines of a concept and not want to submit until they've narrowed it down to something they like. Factor this into the production pipeline. If there's a technical director breathing down their neck to check in *everything* they'll spend more time in the repo than roughing things out." CreationDate="2010-07-20T14:06:26.733" UserId="140" />
  <row Id="573" PostId="808" Text="&quot;schools are cheap&quot; - that's why they purchase Windows licenses (chuckle)" CreationDate="2010-07-20T14:09:09.880" UserId="202" />
  <row Id="574" PostId="765" Text="@Cyclops: Correct, there is no single &quot;right&quot; answer. That is still not not a good reason to make it wiki. See also: http://meta.stackoverflow.com/questions/55888/when-to-mark-the-community-wiki-checkbox-on-a-new-question/55997#55997" CreationDate="2010-07-20T14:23:32.340" UserId="288" />
  <row Id="575" PostId="808" Text="They're assuming somewhat bigger-budget game, it seems: *At normal videogame pricing, sales of 500,000 units is required to breakeven.* -- That sentence just made me laugh. And drool." CreationDate="2010-07-20T15:09:50.590" UserId="233" />
  <row Id="576" PostId="765" Text="@Andrew - hm, on the one hand, that particular Answer, does state that multiple answers aren't necessarily a reason to wiki. On the other hand, the person *isn't* one of the owner/admin types, so it's not definitive. In fact, one of the comments is &quot;the Management has skirted this issue repeatedly, which is frustrating, because the community clearly hasn't resolved this by itself&quot;. So I guess we're on our own..." CreationDate="2010-07-20T15:56:47.183" UserId="165" />
  <row Id="577" PostId="805" Text="On marking XML files as binary: If your VCS allows separate diff tools, ask it to use something that specializes in XML diffing for XML files.  This may help avoid weird broken markup." CreationDate="2010-07-20T15:58:09.273" UserId="292" />
  <row Id="578" PostId="637" Text="Great answer. One additional thought I did have - in 3D's favour -  is that, when I was getting started, it was much, *much* easier to find resources relating to 3D development than 2D. But that well over 5 years ago, and the landscape has changed quite a bit since then." CreationDate="2010-07-20T16:02:13.827" UserId="288" />
  <row Id="579" PostId="760" Text="@Ólafur To be fair I think FF 13 pulled off point 3 nicely. There was branching but it was never bewildering and the game flowed smoothly because of that. In fact, there's a lot to be learned from that game in terms of good RPG design. There's little back tracking, and instant retries on any failed battle among more points." CreationDate="2010-07-20T17:34:49.137" UserId="222" />
  <row Id="580" PostId="812" Text="Same for DAoC. It works great, since if you do not do this, people can disconnect to avoid fights.&#xA;&#xA;There used to be a &quot;Quit To Desktop&quot; /qtd command in DAoC that made people quit instantly, and it was removed due to this." CreationDate="2010-07-20T17:41:13.870" UserId="10" />
  <row Id="581" PostId="819" Text="1: Pitching may be a bit easier if you let them know that they have the opportunity to be the first to get it| School's also like having stuff that no one else has, and administration like to brag." CreationDate="2010-07-20T17:52:15.330" UserId="14" />
  <row Id="582" PostId="819" Text="2: This one is VERY important. Because school's are judged by state government on both attendance and overall grades (especially standardized testing) In a school with failing grades, it is usually very tense and some schools help their students cheat to make the grade." CreationDate="2010-07-20T17:53:35.670" UserId="14" />
  <row Id="583" PostId="820" Score="1" Text="I'd go with &quot;Interactive Education&quot; for Faculty. " CreationDate="2010-07-20T18:10:54.153" UserId="14" />
  <row Id="584" PostId="623" Score="1" Text="Yes, I think multiple nouns will *share* behavior (so that &quot;pick up&quot; would use the same code for picking up different objects), but it makes sense for it to be up to the noun to determine the set of verbs that can be applied to it. Given that the set of nouns is very large (every thing in the game) and the set of verbs small (probably a handful of operations), I think it makes sense for the user to choose a noun first since that winnows the combinations down more quickly.&#xA;&#xA;And, pragmatically, it lets the user click a *thing* to initiate an interaction, and not some word." CreationDate="2010-07-20T18:19:10.173" UserId="160" />
  <row Id="585" PostId="820" Text="@noctrine: Good one!" CreationDate="2010-07-20T18:37:47.143" UserId="55" />
  <row Id="586" PostId="822" Score="2" Text="[Queues](http://www.google.com/search?q=define%3Aqueue) are not the same as [cues](http://www.google.com/search?hl=en&amp;q=define%3Acue)." CreationDate="2010-07-20T20:28:28.663" UserId="233" />
  <row Id="587" PostId="823" Text="You're an EU3 player? Are you on the Paradox boards by any chance?" CreationDate="2010-07-20T20:29:24.993" UserId="233" />
  <row Id="588" PostId="823" Text="Nah, I'm super casual with it. There's definitely a BUNCH of interesting design lessons to be learned from EU3 though." CreationDate="2010-07-20T20:33:31.473" UserId="162" />
  <row Id="589" PostId="826" Score="1" Text="http://www.eveonline.com/devblog.asp?a=blog&amp;bid=184" CreationDate="2010-07-20T20:48:39.520" UserId="353" />
  <row Id="590" PostId="822" Text="@mmyers fixd :) My English is very broken yes." CreationDate="2010-07-20T20:55:32.123" UserId="10" />
  <row Id="591" PostId="825" Score="1" Text="Aye I get your point, and it's a good one :)" CreationDate="2010-07-20T20:59:52.377" UserId="10" />
  <row Id="592" PostId="823" Text="Ok, just wondering. (I'm working with the EU2 engine.)" CreationDate="2010-07-20T21:08:58.207" UserId="233" />
  <row Id="593" PostId="483" Text="From my experience point 5 from your answer is very true.  It is extremely scalable.  Errors are rare, support is speedy. &#xA;&#xA;Not certain on the cost, Yacine notes that it is free for the first two users.  For smaller studios with smaller games it would be worth evaluating other options.&#xA;&#xA;Visual Studio integration is a little off out the box; but we are lucky enough to have a complete Perforce enthusiast at our studio write an excellent source provider for VS from scratch." CreationDate="2010-07-20T21:16:26.050" UserId="363" />
  <row Id="594" PostId="481" Text="* FSFS can be very brittle for recovery - so extra care should be taken with backups.&#xA;&#xA;* Easy to understand, TortoiseSvn is a great client.&#xA;&#xA;* Open source bug trackers, continuous integration systems, etc often have support for Subversion &quot;out the box&quot;.&#xA;&#xA;* There's some good books available about using Subversion." CreationDate="2010-07-20T21:21:34.027" UserId="363" />
  <row Id="595" PostId="7" Text="The question is quite unclear.  Java and C# differ enough for only very general advice being applicable to both.  All the answers so far have been C#.&#xA;&#xA;Also target platform not mentioned - good advice may differ depending on the device (e.g. programming for a mobile phone, zune, xbox, different from programming for a pc).&#xA;&#xA;It has even been a wide enough question that someone has answered that managed languages themselves are the &quot;pitfall&quot;." CreationDate="2010-07-20T21:30:54.093" UserId="363" />
  <row Id="596" PostId="824" Text="lol @ Civ example.  What an archer beating a Tank isn't fun? Haha!  I suppose it depends if you are the one with the archer. :-)" CreationDate="2010-07-20T21:35:02.440" UserId="363" />
  <row Id="597" PostId="824" Text="I can't find the link right now, but the gist was that players were very upset when a &quot;70% chance to win&quot; as shown in the UI lead to occasionally losing. He blamed the fact that humans are bad at doing probability but I blame the fact that a &quot;70% chance to win&quot; doesn't even make sense in a world of analogue outcomes to battles." CreationDate="2010-07-20T21:58:04.763" UserId="162" />
  <row Id="598" PostId="829" Score="1" Text="The concept in your second paragraph is also known as a &quot;Shuffle Bag&quot;." CreationDate="2010-07-20T22:01:00.940" UserId="51" />
  <row Id="599" PostId="481" Score="1" Text="@paulecoyote, this is a wiki post, feel free to edit it with new information, not just comments." CreationDate="2010-07-20T23:17:13.923" UserId="165" />
  <row Id="600" PostId="834" Score="3" Text="I kind of understand where you're coming from, but it still feels like a duplicate question to me.  The question you linked to talks about version control for game development, which obviously would include source art assets.  Edit: Actually, it seems like an exact duplicate of this question: http://gamedev.stackexchange.com/questions/801/assets-management-database-or-versioning-system" CreationDate="2010-07-21T00:14:57.577" UserId="51" />
  <row Id="602" PostId="331" Text="While the above answer is correct that design documents are not the place for narrative text, there is definitely a place for this when developing your design! User stories, often told from a first person perspective, can be helpful when forming the initial definition of gameplay. If you have a wiki or other set of documents that encompass pre-production design work it makes sense to include these narratives, likely in a different section from the design specifications." CreationDate="2010-07-21T01:07:54.673" UserId="62" />
  <row Id="603" PostId="825" Score="2" Text="I think well polished animation paths are an important component. Like in your checkers example - you might want to have a bit of a &quot;tilt&quot; as the piece gets picked up. Little details like that make all the difference." CreationDate="2010-07-21T02:43:41.607" UserId="288" />
  <row Id="604" PostId="807" Text="One user of an older version (though not as a teacher) was in a recent Forbes magazine piece: http://www.forbes.com/2010/07/19/career-leadership-strategy-technology-videogames_slide_11.html" CreationDate="2010-07-21T04:09:29.623" UserId="233" />
  <row Id="605" PostId="7" Text="@paulecoyote: I changed to question to ask only about C#. Also, as there is no specific platform mentioned, it's about the PC." CreationDate="2010-07-21T05:17:32.800" UserId="13" />
  <row Id="606" PostId="840" Text="+1 very widely used in Gothic: The quests themselves are rather simple but they're all part of a greater goal. Unfortunately this is not applicable to every game like MMOs (because your actions can't just change your surrounding since there are other players too - phasing tries to counter this issue)" CreationDate="2010-07-21T10:46:58.587" UserId="202" />
  <row Id="607" PostId="829" Text="It's also common for shooters to randomly choose a point on a circle (ie an angle and radius) for bullet hits. This eliminates the square as well and ensures that more bullets hit near the center than not." CreationDate="2010-07-21T11:42:44.117" UserId="353" />
  <row Id="608" PostId="838" Text="Worst water level ever: Zelda Ocarina of Time's water temple." CreationDate="2010-07-21T13:09:56.603" UserId="47" />
  <row Id="609" PostId="858" Text="I would say that enemy AI and collision detection with an arbitrary layout of tiles IS overwhelming if you have little or no experience, especially considering the physics you also have to do--friction between the player and ground, etc. This may be a good challenge after a few games, however" CreationDate="2010-07-21T14:04:44.583" UserId="353" />
  <row Id="611" PostId="848" Score="5" Text="This is just the same mission with some different text, which any sensible player will just skip anyway ;)" CreationDate="2010-07-21T14:09:10.517" UserId="119" />
  <row Id="612" PostId="851" Text="Does it have to be C# - what about java?" CreationDate="2010-07-21T14:09:45.570" UserId="202" />
  <row Id="615" PostId="851" Score="1" Text="I certainly would be interested in what you'd recommend." CreationDate="2010-07-21T14:27:53.717" UserId="267" />
  <row Id="616" PostId="864" Text="I see what you're saying, but there comes a point when you've reached O(logN) and you're not going to get any more out of structural changes, where the low-level optimisations can come into play and gain you that extra half a millisecond." CreationDate="2010-07-21T14:34:10.910" UserId="259" />
  <row Id="617" PostId="851" Text="I edited the question accordingly" CreationDate="2010-07-21T14:38:13.147" UserId="267" />
  <row Id="618" PostId="867" Text="I was afraid of that. I've used JMonkeyEngine 1 and 2 but I'm not satisfied with their development practices and this gets worse with JME3. I think those guys know their 3D stuff but have no idea about sane Java development practices, no offense. I know LWJGL and JOGL of course, but I don't want to implement my own scenegraph API etc. (for now at least)." CreationDate="2010-07-21T15:22:23.887" UserId="267" />
  <row Id="619" PostId="856" Score="1" Text="Or &quot;Columns&quot; if you're a Sega guy ;)" CreationDate="2010-07-21T15:34:41.410" UserId="288" />
  <row Id="620" PostId="848" Score="6" Text="And those &quot;sensible&quot; players are perfectly content with cookie cutter quests because that's what they are purposely boiling it down to by skipping the text." CreationDate="2010-07-21T15:51:35.547" UserId="189" />
  <row Id="621" PostId="852" Score="1" Text="+1, this is the sort of thing I'm thinking about. Giving players options, alternative ways to finish quests, allows the quest to be replayed. If a player's actions actually has an effect on how the rest of his game progresses, the player should be more interested in how he handles the quest. There are ways to enhance the gameplay of a quest, that doesn't boil down wrapping simple tasks in fancy words. It's supposed to be a video game after all, not a movie." CreationDate="2010-07-21T15:55:03.140" UserId="362" />
  <row Id="622" PostId="842" Text="I won't argue about obstacles or skills, as different genres define these differently. However, puzzle solving is a good point. I think certains games could benefit from quests that are in some form a puzzle. Single player RPGs use puzzles all the time, but it probably doesn't fit in with MMORPGs in general. And repetitive grind is exactly what brought up this question; what sorts of quests have people seen that weren't just a grind?" CreationDate="2010-07-21T16:05:42.200" UserId="362" />
  <row Id="623" PostId="862" Score="9" Text="+1 on Breakout.  I've had many PRO game developers tell me that whenever they get a new piece of technology, they learn it by first making Breakout." CreationDate="2010-07-21T16:12:48.027" UserId="292" />
  <row Id="624" PostId="861" Score="2" Text="+1 but ONLY if you're just learning programming.  If you already know programming, I wouldn't start with this." CreationDate="2010-07-21T16:13:40.727" UserId="292" />
  <row Id="625" PostId="820" Text="I think I could round up several testimonials if I needed to (see my comment on the question for one of them). I suppose my own doesn't count, but I could ask them to quiz me on (say) Polish history." CreationDate="2010-07-21T16:26:50.683" UserId="233" />
  <row Id="626" PostId="872" Score="2" Text="This question assumes you've already done all the structural stuff you can." CreationDate="2010-07-21T16:27:59.870" UserId="259" />
  <row Id="627" PostId="858" Text="Agreed, a bit overwhelming for people just starting out. Too many concepts all at once. Start with something that's just scoring and input. Then make a game that does 1 or 2 new things, like collision detection and enemies. Keep picking games that build on concepts you know but introduce something you don't; if you don't know any, you shouldn't try it. Keep it simple." CreationDate="2010-07-21T16:44:08.217" UserId="362" />
  <row Id="628" PostId="862" Text="+1 Breakout was the first game I made =). Also, I agree on trying to recreate early video games (with your own twists!). Focus on concepts, not assets." CreationDate="2010-07-21T16:52:04.010" UserId="362" />
  <row Id="629" PostId="871" Text="I'd vote-up twice if I could." CreationDate="2010-07-21T16:53:54.553" UserId="259" />
  <row Id="630" PostId="858" Text="I honestly think that there is too much going on in a Gauntlet-clone to count as an &quot;entry level&quot; game." CreationDate="2010-07-21T17:12:30.013" UserId="276" />
  <row Id="631" PostId="862" Text="Great post but is it worth splitting it up into three separate posts so that each one can get voted on separately?" CreationDate="2010-07-21T17:13:39.263" UserId="276" />
  <row Id="632" PostId="528" Text="+1 on Red5, although the documentation isn't great." CreationDate="2010-07-21T17:21:22.137" UserId="276" />
  <row Id="633" PostId="882" Score="1" Text="While VS is an outstanding development tool, normal debugging takes time -- hunting down breakpoints, stepping through code, changing variables, restarting the flow. This question is looking for an immediate way to do things like move an interface component, or tweak a boss's attack ratio, etc. " CreationDate="2010-07-21T17:41:13.383" UserId="55" />
  <row Id="634" PostId="861" Score="1" Text="@Jeff: Yes, if you're a complete beginner then this is a good project to start with. If you've programmed for a while then go for the other projects mentioned so you can play around with graphics and whatnot." CreationDate="2010-07-21T18:03:46.990" UserId="7" />
  <row Id="635" PostId="867" Text="@Raoul that's what I would recommend: The Light Weight Java Graphics Library, short LWJGL. The documentation is a little bit poor but it's generally only a wrapper around OpenGL. So if you know a bit OpenGL you feel familiar with LWJGL soon plus there are good tutorials available. http://tribaltrouble.com/ for example was made with LWJGL :-)" CreationDate="2010-07-21T18:12:18.080" UserId="202" />
  <row Id="636" PostId="851" Text="@Raoul I commented on the according answer" CreationDate="2010-07-21T18:13:17.440" UserId="202" />
  <row Id="637" PostId="858" Text="I honestly think it's easier to code Gauntlet than Tetris, as working out how the blocks stack on each other, whether a line is complete, and how to remove lines, are quite tricky abstract problems. Gauntlet can be coded in less than 1000 lines in any modern 2D platform, and if it can't in the platform you're using, I'd suggest finding another. Anyway, I suggested it precisely because it requires learning all the parts that make up a modern game. " CreationDate="2010-07-21T18:13:27.283" UserId="119" />
  <row Id="638" PostId="845" Text="Usually auctions like that are even public record, so you can see who the buyer actually was.  But, the buyers often resell quickly, so it can be quite difficult to track it down." CreationDate="2010-07-21T18:48:59.163" UserId="367" />
  <row Id="639" PostId="885" Text="Angel Engine looks interesting, thanks." CreationDate="2010-07-21T18:51:54.710" UserId="259" />
  <row Id="640" PostId="830" Text="Off topic - not specific to game development - belongs on stackoverflow.com (e.g. http://stackoverflow.com/search?q=continuous+integration+technology )" CreationDate="2010-07-21T18:52:20.560" UserId="318" />
  <row Id="641" PostId="853" Text="What makes this a game development question and not a general programming question like these:&#xA;http://stackoverflow.com/search?q=c%2B%2B+optimization" CreationDate="2010-07-21T19:01:38.607" UserId="318" />
  <row Id="642" PostId="848" Score="2" Text="My point was that well thought out games don't require lengthy text sections because they tell the story through gameplay." CreationDate="2010-07-21T19:15:01.980" UserId="119" />
  <row Id="643" PostId="852" Text="Yeah Fable had some good quests where you could escort a trader through the woods for a reward, or just kill him on the way and take his money." CreationDate="2010-07-21T19:16:04.037" UserId="119" />
  <row Id="644" PostId="808" Text="Schools are cheap also means that they don't have a large IT personnel budget, meaning the IT people that have don't want to be constantly supporting something, meaning a $1000 solution that doesn't require any support has a way better chance of being installed than a free solution that requires support." CreationDate="2010-07-21T19:21:36.410" UserId="23" />
  <row Id="645" PostId="884" Text="+1: poor answer, but funny." CreationDate="2010-07-21T19:23:17.343" UserId="370" />
  <row Id="646" PostId="767" Score="8" Text="I would probably phrase that &quot;Never steal code, period!&quot;" CreationDate="2010-07-21T19:33:23.513" UserId="92" />
  <row Id="647" PostId="808" Text="Also (this is coming from when I worked IT for a school district), a LARGE portion of software is bought with grant money.  Meaning if they find software they want, they apply for grants until they can get it.  Or they've found a grant for some particular purpose and they have money left over and the software could be purchased with that (and the software supports the overall goal of the grant)." CreationDate="2010-07-21T19:35:04.913" UserId="23" />
  <row Id="648" PostId="909" Text="possible duplicate of [Open Source game projects](http://gamedev.stackexchange.com/questions/496/open-source-game-projects)" CreationDate="2010-07-21T19:57:46.713" UserId="51" />
  <row Id="649" PostId="693" Text="You're right about the audio, but it seems to be worth listening to anyway." CreationDate="2010-07-21T19:59:35.820" UserId="8" />
  <row Id="650" PostId="891" Text="+1 Working with a company with a portfolio of successful products in the category you are looking for will definitely make initial pitches easier." CreationDate="2010-07-21T20:02:16.673" UserId="14" />
  <row Id="651" PostId="779" Text="Another benefit to having an artist from the get go is that you're less likely to be waiting on them to finish for you to release).  " CreationDate="2010-07-21T20:02:24.223" UserId="23" />
  <row Id="653" PostId="909" Text="I read this as wanting to make *his* games Open Source rather than joining an existing project." CreationDate="2010-07-21T20:04:24.560" UserId="382" />
  <row Id="654" PostId="915" Text="Very nice resource, exactly what I was looking for." CreationDate="2010-07-21T20:07:14.727" UserId="389" />
  <row Id="655" PostId="666" Text="The SFML bindings are rather poor for some languages, though - for example, the Ruby library is at version 1.2 when the newest one is 1.6. It's also not available through RubyGems, which is a problem." CreationDate="2010-07-21T20:13:32.010" UserId="438" />
  <row Id="656" PostId="920" Score="2" Text="+1 Great article, and essentially what I was going to suggest. Although I would make the Modal get its text from the achievement itself... just to avoid text hunting if you want to change something." CreationDate="2010-07-21T20:16:28.323" UserId="14" />
  <row Id="657" PostId="922" Score="5" Text="Any specific requirements?" CreationDate="2010-07-21T20:17:16.933" UserId="14" />
  <row Id="658" PostId="858" Text="You get extra points for doing the voice correctly: &quot;Elf shot the food!&quot; &quot;Wizard is about to die!&quot; or my favorite: &quot;You have found my TRAY-sure rooom!&quot;" CreationDate="2010-07-21T20:19:09.050" UserId="441" />
  <row Id="659" PostId="816" Score="1" Text="This is one of the most frustrating elements of any game I've played." CreationDate="2010-07-21T20:20:10.077" UserId="428" />
  <row Id="660" PostId="904" Text="Closest I could get is specifying MB_SETFOREGROUND, which works 50% of the time for some reason." CreationDate="2010-07-21T20:21:21.417" UserId="292" />
  <row Id="661" PostId="920" Text="@Noctrine - don't forget any code posted here should be treated as pseudo code - it's often necessary to use simplified code to get the point across." CreationDate="2010-07-21T20:21:22.647" UserId="382" />
  <row Id="662" PostId="930" Text="Sorry, I should have been clearer: I'm looking for a place that accepts uploads like Flickr or DeviantArt but is focused on pixel art. Thanks!" CreationDate="2010-07-21T20:29:11.613" UserId="422" />
  <row Id="663" PostId="931" Text="Cool, I'll definitely check out that stuff, thanks! I'm looking for more of a service like DeviantArt (but for pixel art) though that supports uploads; I'd like to host my stuff on the cloud instead of hosting it myself." CreationDate="2010-07-21T20:30:31.517" UserId="422" />
  <row Id="664" PostId="902" Text="+1: though I disagree with your second bullet.  A falling block only takes 1 second to cross the screen whether it is drawn 6 times or 60." CreationDate="2010-07-21T20:30:36.277" UserId="370" />
  <row Id="665" PostId="830" Score="3" Text="I'd respectfully disagree - the requirements of CI system used in games have to deal with a great deal of different types of build processes, bespoke and otherwise.  Different types of source control (AlienBrain, Perforce) than you might find in other places.  Development kits might be installed that are not available to the general public, perhaps even installed simultaneously to target different platforms and variations within that platform.&#xA;I take the point this overlaps with general software engineering, but there is specific domain knowledge that could be shared here." CreationDate="2010-07-21T20:36:24.157" UserId="363" />
  <row Id="666" PostId="7" Text="@Michael assuming platform is a dangerous assumption as they differ so much in implementation, would be good to mention Windows specifically and drop &quot;like&quot; and &quot;Java&quot; altogether." CreationDate="2010-07-21T20:47:49.463" UserId="363" />
  <row Id="667" PostId="803" Score="1" Text="Pokemon did a very nice job with ice, thank you very much. :P" CreationDate="2010-07-21T20:47:53.287" />
  <row Id="668" PostId="891" Text="I actually already have a publisher (Paradox Interactive). They're mainly in the gaming market, but they do keep a database of people who they know use their games for educational purposes. I posted this question because I haven't gotten a lot of answers from their marketing people." CreationDate="2010-07-21T20:47:57.873" UserId="233" />
  <row Id="669" PostId="822" Text="Numbers. People love numbers flying off the heads of game pieces like they were filled with them." CreationDate="2010-07-21T20:48:23.723" UserId="452" />
  <row Id="670" PostId="902" Score="1" Text="Correct, I meant that as in the box doesn't appear to jump from one position to another because of the varying time between draws. A smooth motion is preferred to sporadic motions caused by a variable time step." CreationDate="2010-07-21T20:49:06.030" UserId="353" />
  <row Id="671" PostId="862" Score="7" Text="@PhillC, no, it's not worth splitting" CreationDate="2010-07-21T20:49:13.313" UserId="303" />
  <row Id="672" PostId="7" Text="@Michael also pitfalls - are you talking about performance, portability, productivity, interopability?  Most have seemed to have assumed you were thinking about Garbage Collection?" CreationDate="2010-07-21T20:49:50.007" UserId="363" />
  <row Id="673" PostId="646" Text="Yes, you can find a ms3d reader for playstation, even." CreationDate="2010-07-21T20:56:53.077" />
  <row Id="674" PostId="862" Text="My first retail game is a breakout :P&#xA;But breakout was not my first game ever (I started with text games, then I did a... well, it looks like peggle, although I made it before peggle existed...)" CreationDate="2010-07-21T21:02:29.133" UserId="469" />
  <row Id="675" PostId="917" Text="Should I worry about version control before or after I learn the basics of opensource game development?" CreationDate="2010-07-21T21:07:21.710" UserId="374" />
  <row Id="676" PostId="961" Text="Craiglist: Good... pizza... bad :P Where I live people don't visit craigslist..." CreationDate="2010-07-21T21:10:06.073" UserId="469" />
  <row Id="677" PostId="962" Text="That is a good idea, but how I would prevent billions of people getting into the credits? (other than not having billions of bugs, obviously...)" CreationDate="2010-07-21T21:10:46.867" UserId="469" />
  <row Id="678" PostId="963" Text="Humm... I tried already twitter, facebook etc... But I never heard of Reddit... Will try it, thanks!" CreationDate="2010-07-21T21:11:25.150" UserId="469" />
  <row Id="679" PostId="961" Text="Probably should have mentioned, this is in the SFBA." CreationDate="2010-07-21T21:12:11.637" UserId="395" />
  <row Id="680" PostId="962" Text="@speeder, have a minimum number of unique bugs perhaps? So if two people find the same problem only the first gets credit." CreationDate="2010-07-21T21:14:06.350" UserId="382" />
  <row Id="681" PostId="967" Text="I endorse this!" CreationDate="2010-07-21T21:15:07.617" UserId="469" />
  <row Id="683" PostId="961" Text="If offering cash to total strangers worries you, one low-cost alternative would be to offer gift cards." CreationDate="2010-07-21T21:15:47.490" UserId="305" />
  <row Id="685" PostId="872" Score="2" Text="It does. But often you assume you have, and you haven't. So really, every time an expensive function needs to be optimized, ask yourself if you need to call that function.&#xA;" CreationDate="2010-07-21T21:22:55.763" UserId="181" />
  <row Id="686" PostId="488" Text="And regarding the markshare of gamers?&#xA;Remember that Unix was invented by a bored guy that wanted a multi-tasking OS so he could play :P&#xA;&#xA;Most people using windows don't even game, they use it to check their e-mail, use MS Word (I cringe at that :/) and etc..." CreationDate="2010-07-21T21:23:07.480" UserId="469" />
  <row Id="687" PostId="917" Text="@Emmanuel - use source control from the beginning. I didn't on a couple of personal projects and regretted it as I didn't have a record of the changed I'd made." CreationDate="2010-07-21T21:23:38.073" UserId="382" />
  <row Id="688" PostId="864" Text="See my answer re: O(log n). Also, if you look for half a millisecond, you might need to look at the higher level. That's 3% of your frame time!" CreationDate="2010-07-21T21:25:04.330" UserId="181" />
  <row Id="689" PostId="968" Text="This would be hard to implement here unfortunately :( Here (the physical location) the computer penetration is not high, most people don't have computers... Computers that run OpenGL then, are a rarity (yes, I only noticed how stupid I was in using OpenGL when the game refused to run on my sister computer)" CreationDate="2010-07-21T21:27:01.150" UserId="469" />
  <row Id="690" PostId="961" Text="What is SFBA???" CreationDate="2010-07-21T21:28:04.003" UserId="469" />
  <row Id="691" PostId="969" Text="Great ideas too! Specially the ones about reaching total strangers in public places (the low hanging fruits, I am sparing for each build... Every time I make a major build, I take one of the low-hanging fruits, so I can see them test in person in my computer :P To have a certainly &quot;fresh&quot; tester)" CreationDate="2010-07-21T21:30:07.937" UserId="469" />
  <row Id="692" PostId="974" Text="Why the down vote?" CreationDate="2010-07-21T21:37:13.270" />
  <row Id="693" PostId="961" Text="San Francisco Bay Area, a region with a lot of game companies." CreationDate="2010-07-21T21:39:48.700" UserId="395" />
  <row Id="695" PostId="974" Text="+1 as I have spent a lot of time trying different things here." CreationDate="2010-07-21T21:45:42.130" UserId="188" />
  <row Id="696" PostId="961" Text="Oh, United States...&#xA;I am in Brazil, in a rural city." CreationDate="2010-07-21T21:47:13.380" UserId="469" />
  <row Id="697" PostId="666" Text="@Veeti, I haven't ever used the other language bindings, and even then I've never used ruby, so I was unaware of this fact." CreationDate="2010-07-21T21:49:47.887" UserId="250" />
  <row Id="698" PostId="978" Text="Nice! I had no idea there was an actual equation!" CreationDate="2010-07-21T21:58:19.567" />
  <row Id="699" PostId="978" Text="There isn't a single formula everyone uses, but those should be a place to start from." CreationDate="2010-07-21T22:09:13.647" UserId="395" />
  <row Id="700" PostId="994" Text="I agree with all that!&#xA;I myself had to re-invent some stuff to avoid patented code, also I had to avoid paying for a game engine, and finally, I often have problems that are not my fault (like my current game that has 3 defects, one is that the physics engine has counter-intuitive behavior... this mean I will need to read its source deeply... the other is that the mixer seemly has some arbitrary way to choose priorities, and finally, the game engine itself with map editor, randomly segfaults when I unload a map... Again this mean code sweeping...)" CreationDate="2010-07-21T22:13:09.807" UserId="469" />
  <row Id="701" PostId="529" Text="+1 for Challenges for Game Designers, but you really need to do the exercises to get the most out of the book." CreationDate="2010-07-21T22:23:42.120" UserId="305" />
  <row Id="702" PostId="991" Text="Great thoughts. I plan to abuse playtesting much more with my current project." CreationDate="2010-07-21T22:24:37.457" UserId="55" />
  <row Id="703" PostId="957" Text="Given this place is now up, might I suggest here? :P Or is that an off topic question" CreationDate="2010-07-21T22:50:15.230" UserId="210" />
  <row Id="704" PostId="853" Text="@Danny - This probably could be a general programming question. It is also certainly a question related to games programming. I think it's a viable question on both sites." CreationDate="2010-07-21T23:03:19.670" UserId="321" />
  <row Id="705" PostId="852" Score="3" Text="In my experience, there's a few problems with this. First, you're talking about a horrifying amount of content that most players will never see. Second, it's hard to make sensible consequences that aren't trivially minmaxable. Third, most players don't *want* for every quest to be a moral dilemma, they just want to kill some bad guys and save the girl. I think you can make great games with this philosophy, but I can count the number of times it's worked for me on the fingers of one hand." CreationDate="2010-07-21T23:03:38.423" UserId="323" />
  <row Id="706" PostId="1012" Score="1" Text="Re: tags, read the FAQ.  At a certain rep level (right now it's 150) you can create tags." CreationDate="2010-07-21T23:05:05.423" UserId="51" />
  <row Id="707" PostId="1012" Text="oh, thanks, :) You created the ones I wanted for me!" CreationDate="2010-07-21T23:07:29.460" UserId="469" />
  <row Id="711" PostId="993" Score="2" Text="I personally hate this technique and would recommend against it. Sometimes I'm in the mood for an easy game, sometimes I'm in the mood for a hard game. Autoadjusting difficulty not only deprives me of that choice, but sometimes ends up screwing me over based on the game designer's preconceptions of what's &quot;hard&quot; and what's &quot;easy&quot; - I have non-fond memories of getting obliterated in Privateer 2 because I was much better at making money than dogfighting. (Guess which part governed the global difficulty level.)" CreationDate="2010-07-21T23:15:28.170" UserId="323" />
  <row Id="712" PostId="637" Text="Another thing I found that 3D is better:&#xA;some animations are EASIER in 3D, mostly compound ones...&#xA;&#xA;I for example in a game had a spaceship, the ship itself was to rotate and have lightning correct for each angle, then the ship would have visible weapon turrets, then on the top of the ship there are a overheating indicator (that opens like a flower and glows as heat increases) and also the ship had a visible flywheel...&#xA;&#xA;End result: In 2D, I had to compound several sprites, with several animations, and the &quot;flower&quot; on the top does not rotate so I made in a shape that this is not much apparent" CreationDate="2010-07-21T23:21:03.683" UserId="469" />
  <row Id="713" PostId="1017" Text="I sorta understood... Maybe.... :P" CreationDate="2010-07-21T23:39:44.447" UserId="469" />
  <row Id="714" PostId="1023" Text="I wish I could downlaod alien-sward :( my internet suck." CreationDate="2010-07-21T23:41:31.747" UserId="469" />
  <row Id="715" PostId="1027" Text="Currently the multiplier constantly decreases, to make it look cool, but seemly this only confuse players :/ The only ones that actually understood the multiplier number is the ones that saw it on Kenta Cho games (that also has the habit of putting constantly changing multipliers)" CreationDate="2010-07-22T00:27:53.073" UserId="469" />
  <row Id="716" PostId="545" Score="1" Text="You might want to mention that although it's in a high-level language, as a game framework it's still fairly low-level." CreationDate="2010-07-22T00:46:09.837" UserId="92" />
  <row Id="717" PostId="1027" Text="Constantly decreasing can feel a bit mean to a player. It might be better to slow down the rate of increase AND the rate of decrease so players can relax slightly." CreationDate="2010-07-22T00:46:45.187" UserId="162" />
  <row Id="718" PostId="978" Text="It's important to consider the XP that you get per encounter, as well, since that's going to play an equally important role in how long it takes to level." CreationDate="2010-07-22T00:53:43.770" UserId="92" />
  <row Id="719" PostId="981" Text="even warcraft 3 uses dice-based damage, most of the damages in the scenario editor use the formula &quot;X+YdZ&quot;" CreationDate="2010-07-22T00:59:16.643" UserId="92" />
  <row Id="720" PostId="957" Text="@TomatoSandwich: Soliciting users on this site for testing (or anything else along those lines) would be very much off-topic." CreationDate="2010-07-22T01:16:09.590" UserId="2" />
  <row Id="721" PostId="1036" Score="4" Text="That's not really a question - at the very least, you might declare this a community wiki page..." CreationDate="2010-07-22T01:21:36.223" UserId="181" />
  <row Id="722" PostId="1036" Text="Done, community-ized." CreationDate="2010-07-22T01:23:35.453" UserId="561" />
  <row Id="723" PostId="857" Score="2" Text="How do you implement Monopoly in one day?  It seems like a much larger project than that." CreationDate="2010-07-22T01:30:46.373" UserId="157" />
  <row Id="725" PostId="957" Text="Although I would not mind if someone from here decided to test it :P&#xA;&#xA;But yes, this site is about game dev questions, not to ask help, or advertise, or that stuff..." CreationDate="2010-07-22T01:45:32.470" UserId="469" />
  <row Id="726" PostId="1014" Score="4" Text="This answer makes a key point: Without data, arguing about performance is entirely useless. So if you think something is too slow, measure it." CreationDate="2010-07-22T01:45:54.417" UserId="181" />
  <row Id="727" PostId="1010" Text="Thank you for the well thought out answer.  Personally,  &#xA;I'm not in it for the money or the resume experience. At my age, I'm not planning on jumping careers any time soon. This is just a hobby project. I'm making the game because I want to play a game like this. I'm just wondering if there is any upside beyond that." CreationDate="2010-07-22T01:53:56.473" UserId="400" />
  <row Id="728" PostId="1008" Text="If I'm not that familiar with A*, how would I address dynamically changing environments?  Re-calculate at every frame?  At collisions?" CreationDate="2010-07-22T01:57:59.613" UserId="97" />
  <row Id="729" PostId="1048" Text="Thanks.  For reference, several of the tracks were $1000 - $2000 for an unlimited License duration on Internet, Web Site, or Flash.  I was actually looking for Flash games, which appear to be cheaper." CreationDate="2010-07-22T02:17:45.387" UserId="573" />
  <row Id="730" PostId="972" Text="Thanks, speeder.  ImageMagick is actually what I have been using, but it only seems to be able to export a clean grid of images, which isn't as dense as it could be.  I agree, though, that the scriptability aspect is excellent." CreationDate="2010-07-22T02:22:19.370" UserId="58" />
  <row Id="731" PostId="1054" Text="Thanks.  Looks like under $50 for a couple I tried." CreationDate="2010-07-22T02:24:59.097" UserId="573" />
  <row Id="732" PostId="1054" Text="I should have looked at the price list first: http://pro.jamendo.com/en/product/licensing/prices" CreationDate="2010-07-22T02:25:52.357" UserId="573" />
  <row Id="733" PostId="1056" Text="Thanks, that is indeed a good point... initially it is a 2D game with multiple maps(players can move around and kill monsters, do quests) i guess i might need to limit users per world and need multiple worlds if the game ever gets to the level of holding enough users... I've done lots of things with api's before but most for authentication issues, etc... which made me wonder if it would be usable at all... but i guess in the end if i had too many users on the game it would be more of an issue to have it like that right ?" CreationDate="2010-07-22T02:32:13.590" UserId="567" />
  <row Id="734" PostId="1008" Text="Generally you would re-path each frame in a simple game like this. The map grid will likely be very small and the number of agents in the hundreds at most. If it ended up being a huge performance problem somehow you could optimize it later by not rebuilding the tree except when needed." CreationDate="2010-07-22T02:32:36.583" UserId="395" />
  <row Id="735" PostId="1054" Score="2" Text="Price is free, but you won't get any legal backing if it turns out the music you got licensed under CC-BY or CC-BY-SA (not -NC) was actually not legally licensed to you. Jamendo Pro lets you get some sort of certificate from Jamendo, as I understand it, that would protect you against performance rights organizations etc." CreationDate="2010-07-22T02:38:31.780" UserId="590" />
  <row Id="736" PostId="1056" Text="As for the latency issue i would like to keep it as low as possible but i guess this is a very trick question ... to be able to maintain everyone at the same pace ehhe" CreationDate="2010-07-22T02:38:47.240" UserId="567" />
  <row Id="737" PostId="1056" Text="So the problem with using a web server for this is 1) webapps are generally stateless because 2) webapps aren't oriented towards long-running connections. You generally open a new connection for every request. This leads to a lot of overhead for maintaining state on the server and client side. You might want to look at things like Twisted or node.js as tools to build a custom server of your own." CreationDate="2010-07-22T02:47:11.073" UserId="395" />
  <row Id="738" PostId="1064" Text="I do like Pixen, but I don't have a Mac (I've used it on other peoples macs though)." CreationDate="2010-07-22T02:52:42.183" UserId="591" />
  <row Id="739" PostId="994" Text="The question is more a social one, how can we encourage that? Are there, for example, tools for patching that are game-agnostic? There are some underlying algorithms and libraries for data manipulation (rsync algorithm, zlib) but I don't know of anything that goes as far as a UI." CreationDate="2010-07-22T02:52:48.377" UserId="395" />
  <row Id="740" PostId="559" Text="You really don't want to use UDP. The overhead of a correctly configured TCP connection is minimal and the hell that is out-of-order delivery is something no one should have to live through." CreationDate="2010-07-22T02:54:27.437" UserId="395" />
  <row Id="741" PostId="344" Score="3" Text="The TIOBE index is far from reliable. The only reason that Delphi is at number 11 is that the Delphi community en masse decided to bombard the index and game their way up the chart. " CreationDate="2010-07-22T02:58:47.020" UserId="441" />
  <row Id="742" PostId="446" Score="6" Text="Are you kidding me? FP is generic programming on steroids. Being able to generalize both data types *and* functions gives FP serious power to manage complexity." CreationDate="2010-07-22T03:02:16.607" UserId="441" />
  <row Id="743" PostId="876" Score="1" Text="That's a pretty egregious trade-off for the sake of performance, mainly because it's not immediately obvious that it was intended." CreationDate="2010-07-22T03:27:28.433" UserId="263" />
  <row Id="744" PostId="1008" Text="Pathfinding isn't that fast. Games like BTTD can be sluggish on avarage pc, and if I implement it any worse it will get stuck. Is there something I'm missing?" CreationDate="2010-07-22T03:57:36.853" UserId="516" />
  <row Id="745" PostId="326" Text="Don't suppose you know any good articles explaining how to import/use assets using FlashDevelop?" CreationDate="2010-07-22T04:01:29.377" UserId="195" />
  <row Id="746" PostId="1059" Text="Related: http://gamedev.stackexchange.com/questions/335/what-is-a-good-tool-for-producing-animated-sprites" CreationDate="2010-07-22T04:03:10.127" UserId="195" />
  <row Id="747" PostId="1056" Text="Thanks i will take a look at that ... i guess i will start playing with some server and sockets for now and see how it works more in-depth too ..." CreationDate="2010-07-22T04:11:35.843" UserId="567" />
  <row Id="749" PostId="1077" Text="`beta into at least sections` hi, could you possible list a set of sections you would submit a beta to or how it should be break-out for testing ? im quiet new to the scene and i belive it would be a nice addition to people going into it." CreationDate="2010-07-22T04:15:21.020" UserId="567" />
  <row Id="750" PostId="1079" Score="1" Text="What about changing the location of the resource every X days and adding some sort of level or age scheme to it which would make players go out exploring more to find those and they would then need to extract what they found were there would right away usable resources while others would be unusable due to it is level or age or it would be usable for some but not all stuff. Having the age / level on the resources would cause players to have a harder time finding the good quality stuff." CreationDate="2010-07-22T04:25:11.557" UserId="567" />
  <row Id="751" PostId="559" Text="It's not a matter of overhead, though TCP adds some - the way TCP deals with dropped packets is fundamentally not good in games where a large latency between action and reaction can make a *huge* difference in playability. For a game like WoW, where actions are relatively infrequent, TCP works, but it would fall over flat in a game like CounterStrike, as a single dropped packet will throttle your connection and potentially make you &quot;lag out&quot; for a second or more." CreationDate="2010-07-22T04:27:01.120" UserId="211" />
  <row Id="752" PostId="1079" Text="i am sorry for not being a help on the inflation issue but it is a very delicate issue to deal with ... for instance if you reduce the currency being droped for example it might affect all the items price to grow... i am yet to hear of any MMO that was able to have a good economy that favors players from level 1 to max level ... Yet you have to consider if there are bots in your game, for how long your players farm, base amount they usually sell, what is the most sellable product ... and a sort of things ... to come up with something to reduce the flood" CreationDate="2010-07-22T04:27:32.303" UserId="567" />
  <row Id="753" PostId="559" Text="If you're going to use UDP, it really is best not to write it yourself; use a wrapper like ENet that does the hard work for you. But my original answer still stands -- UDP is the best way to go if you're making a game with any sort of fast-paced action." CreationDate="2010-07-22T04:27:51.603" UserId="211" />
  <row Id="754" PostId="1008" Text="Most TD games are grid based with a grid of maybe 32x32, path finding on that should be pretty blazingly fast." CreationDate="2010-07-22T04:52:14.273" UserId="395" />
  <row Id="755" PostId="871" Score="2" Text="+1, The Linux kernel uses this *extensively* for microoptimizations in scheduler code, and it makes a significant difference in certain code paths." CreationDate="2010-07-22T04:53:13.947" UserId="613" />
  <row Id="757" PostId="1090" Score="1" Text="Presumably he is talking about something like Desktop TD where the user is creating the map on the fly. Still for the &quot;dumb&quot; enemies that might be a nice solution so you can make enemies with better AI a bit of a difficulty boost. " CreationDate="2010-07-22T04:57:38.977" UserId="395" />
  <row Id="759" PostId="856" Text="Cue Tetris theme music..." CreationDate="2010-07-22T05:57:36.973" UserId="627" />
  <row Id="760" PostId="1102" Text="Urban Dead is also a far far niche game with a sizeable RP population." CreationDate="2010-07-22T05:58:54.613" UserId="395" />
  <row Id="761" PostId="861" Score="7" Text="In fact, this is a really good way to learn about scripting and data-driven development. Create the &quot;engine&quot; for this and write the rest in scripts." CreationDate="2010-07-22T05:59:57.467" UserId="627" />
  <row Id="762" PostId="884" Text="4. Fantasy MMORPG :P" CreationDate="2010-07-22T06:02:34.747" UserId="627" />
  <row Id="763" PostId="1107" Score="1" Text="possible duplicate of [What C++ GUI library can you suggest?](http://gamedev.stackexchange.com/questions/1086/what-c-gui-library-can-you-suggest)" CreationDate="2010-07-22T06:03:41.000" UserId="51" />
  <row Id="764" PostId="1109" Text="I really wish there was a CEGUI lite.  The library is so heavy, and uses some real heavy 3rd party stuff as well, xerces etc.  Not to mention it's obsessed with dynamic loading everything." CreationDate="2010-07-22T06:04:39.000" UserId="370" />
  <row Id="765" PostId="1105" Text="Well to be honest, Pythagorean math is used ALL over game code, especially engines, such as physics code, rendering code, AI. " CreationDate="2010-07-22T06:05:15.130" UserId="627" />
  <row Id="766" PostId="1077" Text="Doh, that was a typo. I meant to divide into at least *2* sections, the friend and family beta and the open beta." CreationDate="2010-07-22T06:19:48.503" UserId="162" />
  <row Id="767" PostId="908" Text="To reiterate, I'm looking for something more robust than a statistics based system and something more organized and maintainable than &quot;hardcode  them all as conditions.&quot;  Some examples that are impossible or unwieldy in a statistics based system: &quot;Slice a watermelon after a strawberry&quot;, &quot;Go down a pipe while invincible&quot;, etc. " CreationDate="2010-07-22T06:26:03.123" UserId="402" />
  <row Id="768" PostId="1104" Score="3" Text="WebKit and its kin are more geared toward a refresh rate of once or twice a second, might be tricky to do a HUD for an action-oriented game that way. Would be great for menus or slower bits though." CreationDate="2010-07-22T06:50:39.750" UserId="395" />
  <row Id="769" PostId="1111" Score="5" Text="Ultima Online tried this model when it started, you forget the tendency of MMO players to horde stuff. Pretty soon the pool of resources hits 0 and new players get shafted. It can be adapted to deal with that, but the general model is just too far from how gamers think unfortunately." CreationDate="2010-07-22T06:58:13.153" UserId="395" />
  <row Id="770" PostId="1093" Score="4" Text="More than that, glBegin and glEnd were deprecated in later revisions and were completely removed (and therefore will not work) in versions 3.x and above. If you request an OpenGL 3.x context you will be unable to use them completely." CreationDate="2010-07-22T06:59:34.787" UserId="250" />
  <row Id="771" PostId="1099" Score="13" Text="+1, especially like the note on aesthetic upgrades." CreationDate="2010-07-22T07:00:32.600" UserId="653" />
  <row Id="772" PostId="876" Text="I almost completely agree with you. I did say it was desperate!" CreationDate="2010-07-22T07:10:26.747" UserId="259" />
  <row Id="773" PostId="1120" Score="2" Text="+1 Because good tools are important! Take levels for example: you need to be able to iterate on them at least as quickly as you can iterate on your code." CreationDate="2010-07-22T07:14:14.290" UserId="288" />
  <row Id="774" PostId="446" Text="I agree, one of FP's greatest strengths is its ability to do generalized code. " CreationDate="2010-07-22T07:14:31.403" UserId="254" />
  <row Id="775" PostId="1115" Score="2" Text="IM GUI is an interesting concept, but I've found that there are some problems that pop up when you try to do gamey things.  If you want the menu elements to animate in/out you either have to do something like modify the individual position of all the widgets, or do something like modify the GUI transform matrix for that call.  It would be easier if you had, for example, a Window container whose actions are translated down to its children and such.  Also, for some reason, most IMGUI implementations lack &quot;disabled&quot; widget states." CreationDate="2010-07-22T07:15:25.817" UserId="51" />
  <row Id="776" PostId="374" Text="Didn't know Rogue was written in LISP, but find that interesting. Classic game. :) " CreationDate="2010-07-22T07:17:03.940" UserId="254" />
  <row Id="777" PostId="1093" Text="DirectX actually forces this upon you, it doesn't have an equivalent of `glStart()/glEnd()`." CreationDate="2010-07-22T07:18:51.517" UserId="662" />
  <row Id="778" PostId="1105" Score="1" Text="True. That's why it's a gem. ;)" CreationDate="2010-07-22T07:36:59.323" UserId="614" />
  <row Id="779" PostId="1093" Text="@SAHChandler I didn't know that. I didn't realized it was deprecated." CreationDate="2010-07-22T07:43:35.327" UserId="614" />
  <row Id="780" PostId="1121" Text="This is what I'm currently using. I find that it has too much dependency though. And I had trouble linking it to my project (IIRC, the license said that I can only link to the library)" CreationDate="2010-07-22T07:48:12.243" UserId="614" />
  <row Id="781" PostId="1139" Text="Could you point me to any documentation on the basic architecture or components that a &quot;first engine&quot; should have? &#xA;This might actually seem like a good way to get my hands dirty with open gl..." CreationDate="2010-07-22T07:50:15.733" UserId="666" />
  <row Id="782" PostId="1138" Text="This seem like a fun set of small chunks from zero to a great place, thanks!" CreationDate="2010-07-22T07:50:34.220" UserId="666" />
  <row Id="783" PostId="1141" Score="1" Text="Also would be easy to dynamically spread this over frames as the CPU load changes." CreationDate="2010-07-22T07:57:56.527" UserId="259" />
  <row Id="784" PostId="1121" Score="2" Text="It has a *ridiculous* amount of dependencies. It bloated my tiny demo game to 50 MB!" CreationDate="2010-07-22T08:04:19.507" UserId="662" />
  <row Id="785" PostId="1133" Score="3" Text="A down vote? Seriously, that's how it's normally done! Entity systems are great but they don't help hit the early milestones." CreationDate="2010-07-22T08:18:29.987" UserId="259" />
  <row Id="786" PostId="1140" Text="I had never heard of the blackboard model before now." CreationDate="2010-07-22T08:24:40.767" UserId="370" />
  <row Id="787" PostId="1008" Score="4" Text="If it is sluggish, my recommendations: don't calculate the path for every mob. Likely, theyre all taking the same path. I only recalc on new tower placement, _and the tower is in current path_. Even then, Only do a re-calc for monsters at points in the path before the block square, not for mobs that are past it and therefore don't care. And then, to make the pathfinding shorter, you could limit it to find the way to square after the blocked square, since you already know the path from there." CreationDate="2010-07-22T08:33:42.913" UserId="688" />
  <row Id="788" PostId="1013" Score="1" Text="It's worth noting that Tower Defense is popular on mobile phones, where pathfinding is __not__ fast. Especially on slightly older devices, like the Sidekick, or Android 1.6 devices." CreationDate="2010-07-22T08:37:11.097" UserId="688" />
  <row Id="789" PostId="847" Text="I think &quot;unopen sourcing&quot; a project is difficult since anyone might already have obtained the OS version and convince everyone else to develop that one into something better... which is what I'd probably prefer, too, to be honest" CreationDate="2010-07-22T08:43:28.710" UserId="252" />
  <row Id="790" PostId="960" Text="+1 in general but especially for the link to darwinia :)" CreationDate="2010-07-22T08:44:39.317" UserId="252" />
  <row Id="791" PostId="847" Text="In my experience, that rarely happens. Most game developers want to make their own games, not improve someone else's game, and closing an open game will probably result in the open fork just stagnating." CreationDate="2010-07-22T08:53:15.037" UserId="323" />
  <row Id="792" PostId="662" Text="Even with tight test/iterate loop, no value whatsoever should just be pick arbitrarily. That is just bad design IMO " CreationDate="2010-07-22T08:54:05.267" UserId="253" />
  <row Id="793" PostId="381" Text="I like *all* the answers given, but since I can't test them all right now it'd be unfair to accept one as *the* correct answer (which is impossible anyway...)" CreationDate="2010-07-22T09:00:17.093" UserId="252" />
  <row Id="794" PostId="1039" Text="Omg. The goggles! They do nothing!" CreationDate="2010-07-22T09:02:59.363" UserId="267" />
  <row Id="795" PostId="1139" Text="http://www.gamedev.net/reference/list.asp?categoryid=45#200&#xA;&#xA;Article &quot;Enginuity&quot;." CreationDate="2010-07-22T09:10:19.270" UserId="504" />
  <row Id="796" PostId="1136" Text="I still don't get why everyone has it in for plugins. Generally they are small to download, provide a consistent platform, and are years ahead of any open solution since they evolve more rapidly. Flash, Unity3D, Silverlight to name a few. But I digress, FarmVille could be implemented in HTML5, the biggest hurdle will be inconsistencies across browsers." CreationDate="2010-07-22T09:36:15.817" UserId="560" />
  <row Id="797" PostId="1134" Score="1" Text="To clarify, mobile phone == iPhone. Android 2.2 phones support Flash." CreationDate="2010-07-22T09:38:37.033" UserId="560" />
  <row Id="798" PostId="405" Text="@Simuri care to explain why? Adobe is far from perfect but there seems to be unwarranted animosity towards Flash (by the way some people carry on you would think Flash stole their lunch money in school). The biggest gripe I have with HTML5 is the lack of consistency across broswers, the lack of performance, and I am not a fan of JavaScript (I like strict languages)" CreationDate="2010-07-22T09:56:28.700" UserId="560" />
  <row Id="799" PostId="405" Text="@Iain exactly right. Personally, the hyperbole around HTML5 is wearing thin. " CreationDate="2010-07-22T10:11:50.873" UserId="560" />
  <row Id="800" PostId="328" Text="another +1. The abilty to develop with generics is great for developing libraries. An example of such http://code.google.com/p/polygonal/wiki/DataStructures" CreationDate="2010-07-22T10:14:14.880" UserId="560" />
  <row Id="801" PostId="1154" Text="Right now for the choices for game assets are .obj (if you don't mind not having animation and no compression), .x (if you're using DirectX) or some proprietary format.&#xA;&#xA;P.s. I would like to add a friend of mine is working on something called &quot;OpenMDL&quot; that is looking very promising indeed." CreationDate="2010-07-22T10:25:48.740" UserId="662" />
  <row Id="802" PostId="212" Text="A good way to do that is to move all the platform specific code into a set shared libraries with the same interface then you can limit the #ifdef's to bootstrapping the correct library for the platform." CreationDate="2010-07-22T10:44:02.480" UserId="713" />
  <row Id="803" PostId="1140" Text="They are also good for reducing dependencies, the same way an event queue or publish/subscribe model does." CreationDate="2010-07-22T10:55:29.440" UserId="259" />
  <row Id="804" PostId="1159" Text="I've read the article before, but it's a little light on details. It's a little hard getting actual details on that technique. I wish ID made a paper of it..." CreationDate="2010-07-22T11:18:37.513" UserId="715" />
  <row Id="805" PostId="635" Text="last time I checked it was also free as in beer, meaning you don't have to pay for it." CreationDate="2010-07-22T11:18:38.187" UserId="267" />
  <row Id="806" PostId="870" Text="It's worth trying out the C example in the linked Cache coherence page. When I first found out about this I was shocked as to how much of a difference it makes." CreationDate="2010-07-22T11:48:47.730" UserId="713" />
  <row Id="807" PostId="855" Text="float result = (foo &gt; bar) ? 2.f : 1.f" CreationDate="2010-07-22T11:52:02.620" UserId="662" />
  <row Id="808" PostId="857" Text="If you have the art assets ready to go for the developers, and you follow the guide I linked to above, it's quite easy.  It doesn't include multiple AI strategies, or some of the more complicated aspects of animation and music, but it's a fully playable game and it is easily done in a day.  It really is doable, and it really is a lot of fun." CreationDate="2010-07-22T12:18:26.233" UserId="29" />
  <row Id="809" PostId="1136" Text="@Allan - Because if markets of the size social game developers are looking for could be trusted to install plugins (correctly, safely, with cross-platform and cross-browser support) we wouldn't need plugins at all and could just go back to shipping native binaries. Unity's plugin is impressive in how easy it is to install, but that's the exceptional case." CreationDate="2010-07-22T12:26:24.127" UserId="744" />
  <row Id="810" PostId="876" Score="2" Text="Wouldn't this also break short-circuiting and make branch prediction more unreliable?" CreationDate="2010-07-22T12:28:39.070" UserId="504" />
  <row Id="811" PostId="1133" Text="I make Flash games professionally, and this is how I do it. You call enemy.damage(10) and then you look up any info you need from public getters." CreationDate="2010-07-22T12:29:58.113" UserId="119" />
  <row Id="812" PostId="963" Text="@speeder reddit is sort of like digg" CreationDate="2010-07-22T12:39:20.933" UserId="47" />
  <row Id="813" PostId="1162" Text="Thanks for the link, interesting stuff." CreationDate="2010-07-22T12:45:52.527" UserId="715" />
  <row Id="814" PostId="1015" Score="2" Text="Metrics - try heatmaps on where they die http://gamedev.stackexchange.com/questions/157/how-can-i-produce-heatmaps-based-off-of-player-reported-data" CreationDate="2010-07-22T12:46:38.160" UserId="47" />
  <row Id="815" PostId="326" Score="3" Text="@Alconja of course. http://catfacegames.com/2009/01/18/using-embedded-images-in-as3-in-flashdevelop/" CreationDate="2010-07-22T13:23:41.747" UserId="10" />
  <row Id="816" PostId="855" Score="2" Text="@knight666: That will still produce a branch anywhere that a longhand &quot;if&quot; would've done. I say it like that because on ARM, at least, small sequences like that can be implemented with conditional instructions which don;t require branching." CreationDate="2010-07-22T13:40:23.903" UserId="754" />
  <row Id="817" PostId="855" Score="1" Text="@knight666 if you're lucky the compiler can turn that into an fsel, but it's not certain. FWIW, I would normally write that snippet with a tertiary operator, and then later on optimise to fsel if the profiler agreed." CreationDate="2010-07-22T13:49:33.650" UserId="259" />
  <row Id="818" PostId="1144" Text="Great answer - it's all about the feeling that you're not cheating, while giving you the benefit of the doubt on your aiming." CreationDate="2010-07-22T13:59:23.283" UserId="119" />
  <row Id="819" PostId="1008" Text="I need to pick up a bit of industry lingo - what is a &quot;mob&quot;? is it just an enemy AI?" CreationDate="2010-07-22T14:01:06.600" UserId="119" />
  <row Id="820" PostId="1021" Text="This only works for those TD games where you can only place turrets at the side of the path - not games that allow placement of towers anywhere on the board." CreationDate="2010-07-22T14:02:39.593" UserId="119" />
  <row Id="821" PostId="1066" Text="dead reckoning is the solution, not the problem, the problem is latency" CreationDate="2010-07-22T14:04:34.127" UserId="225" />
  <row Id="822" PostId="1068" Text="Are you looking for tips regarding 2D, 3D or both?" CreationDate="2010-07-22T14:08:35.990" UserId="34" />
  <row Id="823" PostId="1105" Score="4" Text="An interesting variation is when you only care about the *relative* distances. Then you can skip the potentially expensive `sqrt` call and simply compute `distance2 = x^2 + y^2`." CreationDate="2010-07-22T14:34:16.973" UserId="233" />
  <row Id="824" PostId="1138" Score="2" Text="I have to strongly disagree. Yes, NeHe tutorials have been there for a long time, but they have never had a very good style and they are quite outdated by now." CreationDate="2010-07-22T14:35:00.793" UserId="335" />
  <row Id="825" PostId="1186" Text="Be careful. Less and bigger batches are useful, but depending on the target platform &quot;too big&quot; batches will decrease performance." CreationDate="2010-07-22T14:37:22.347" UserId="335" />
  <row Id="826" PostId="1185" Text="Just OOC, how often does this happen?  Is it really often, or just once every few weeks?" CreationDate="2010-07-22T14:38:49.583" UserId="292" />
  <row Id="827" PostId="1058" Text="+ 1 for skyrunner. He's a god. (Don't tell him I said that...)" CreationDate="2010-07-22T14:39:48.847" UserId="335" />
  <row Id="828" PostId="871" Text="Unfortunately, there seems to be no good equivalent in Visual Studio. http://stackoverflow.com/questions/1440570/likely-unlikely-equivalent-for-msvc" CreationDate="2010-07-22T14:41:17.143" UserId="233" />
  <row Id="829" PostId="1185" Text="It's probably once every few events so pretty often but not every time. Thanks for your time!" CreationDate="2010-07-22T14:44:46.997" UserId="778" />
  <row Id="830" PostId="766" Score="1" Text="bluescrn posted a response to this answer that I rather like: http://gamedev.stackexchange.com/questions/765/what-things-should-an-indie-game-developer-never-do/1120#1120" CreationDate="2010-07-22T14:45:33.420" UserId="288" />
  <row Id="831" PostId="1195" Text="ha ha I just wrote the same answer" CreationDate="2010-07-22T14:46:04.263" UserId="119" />
  <row Id="832" PostId="1195" Text="@Iain great minds... :)" CreationDate="2010-07-22T14:57:35.297" UserId="47" />
  <row Id="833" PostId="613" Score="2" Text="If you downvote, please leave a comment why.&#xA;We use TCP and never had a single issue with it." CreationDate="2010-07-22T14:58:39.893" UserId="335" />
  <row Id="834" PostId="1039" Text="The nested &quot;do-while&quot; inside the &quot;switch-case&quot; always makes me blink.&#xA;Even 20 years later..." CreationDate="2010-07-22T15:14:01.613" UserId="335" />
  <row Id="835" PostId="1133" Score="1" Text="This is seriously how commercial game engines do it. He's not joking.&#xA;&#xA;Target.NotifyTakeDamage( DamageType, DamageAmount, DamageDealer, etc. ) is usually how it goes." CreationDate="2010-07-22T15:16:24.187" UserId="138" />
  <row Id="836" PostId="1083" Text="I want to answer this so badly; but, I'm under NDA!!!!! Load up MW2 on 360, split screen, move only your right stick over a target, observe what happens. Then, move only your left stick and strafe from side-to-side, observe what happens." CreationDate="2010-07-22T15:23:06.673" UserId="138" />
  <row Id="837" PostId="1036" Score="1" Text="Screw that! just go with any and all code crafted by the great JC!" CreationDate="2010-07-22T15:39:11.433" UserId="778" />
  <row Id="838" PostId="1176" Text="Complex vector shapes can also have a significant impact on performance. If you got animated MovieClips with lots of gradients, and if you don't pay attention to the level of detail of your vector-shapes, then it will draw much slower than a bitmap." CreationDate="2010-07-22T15:42:55.757" UserId="20" />
  <row Id="839" PostId="966" Score="3" Text="+1 for mentioning the details take way more time than you'd expect." CreationDate="2010-07-22T15:43:48.203" UserId="800" />
  <row Id="840" PostId="1105" Text="@mmyers - Another wonderful thing: if you're working in x^2 space, the distance isn't just relative." CreationDate="2010-07-22T15:44:12.947" UserId="214" />
  <row Id="841" PostId="1200" Text="Well, calling them &quot;very different&quot; doesn't really help. If I didn't know better, I'd say the same thing about red and green." CreationDate="2010-07-22T15:45:33.960" UserId="233" />
  <row Id="842" PostId="121" Score="2" Text="Neither C# nor Java are compiled to native machine code. C# compiles to MSIL and Java to bytecode. Garbage collection won't give any &quot;long&quot; pauses, but it may give &quot;hiccups&quot;." CreationDate="2010-07-22T15:47:10.293" UserId="789" />
  <row Id="843" PostId="1138" Score="4" Text="-1 Nehe is much too out-of-date." CreationDate="2010-07-22T15:51:37.187" UserId="501" />
  <row Id="844" PostId="392" Text="Okay, after actually beginning to understand what spherical harmonics are and how they apply, the graphics card section (paragraph 2) is fairly irrelevant.&#xA;&#xA;The bit about a BSP tree may still be useful, assuming you have a fairly 3rd person/1st person game, as it is generally a simplified geometry for a level. (similar to the &quot;cell adjacency graph&quot; in the paper AShelly linked). Not recalculating every frame could also save some processing." CreationDate="2010-07-22T15:58:26.933" UserId="251" />
  <row Id="845" PostId="1200" Score="1" Text="Well the idea is that you use your common sense. Technically you can make red and green work as long as you use shades that are as far apart as possible. The tiny, tiny percent that can't see the differences between bright green and deep red is negligible." CreationDate="2010-07-22T16:02:25.933" UserId="127" />
  <row Id="846" PostId="1190" Text="If this were not a stack exchange site, I would give you my subjective opinion: I subjectively hate noticeable acceleration.  When I move the stick to center, the cursor stops suddenly, and I have to accelerate all over again.  Feels jerky to me.  I feel better and perform better playing games with little-to-no acceleration over those with more acceleration, personally.  The whole reason for the invention of the control stick is to remove the need for acceleration.  But this is a stack exchange site, so I won't tell you that." CreationDate="2010-07-22T16:09:37.643" UserId="336" />
  <row Id="847" PostId="1190" Text="Good answer, btw." CreationDate="2010-07-22T16:11:00.280" UserId="336" />
  <row Id="848" PostId="1222" Score="2" Text="And this answer would be much better suited as a comment XD&#xA;Though, I agree ;)" CreationDate="2010-07-22T16:11:37.050" UserId="13" />
  <row Id="849" PostId="1201" Text="I would have never thought of that! I could dump it into lisp code directly and skip the middleman. Also, great example of answering my need, instead of just the question." CreationDate="2010-07-22T16:11:51.543" UserId="777" />
  <row Id="850" PostId="1187" Score="1" Text="What are some differences?  I never noticed any differences... well, using pretty vanilla settings (no mouse smooth, no axis inversion, etc.)  My assumption was that they are all the same, except some have features others do not (e.g. invert x-axis).  Of course, game performance will matter tremendously." CreationDate="2010-07-22T16:13:58.903" UserId="336" />
  <row Id="851" PostId="1208" Text="I think a custom blender exporter will get items into my code faster. I appreciate offer for your code however." CreationDate="2010-07-22T16:15:00.917" UserId="777" />
  <row Id="852" PostId="1222" Text="For the time being, my options are limited :)" CreationDate="2010-07-22T16:58:10.760" UserId="522" />
  <row Id="853" PostId="1197" Text="+1 for Vischeck, I've found it useful. At my last job we also had a debugging command that enabled shaders that caused the same effect." CreationDate="2010-07-22T16:59:33.160" UserId="744" />
  <row Id="854" PostId="1136" Text="I don't like installing plugins unless I have to. I'm lazy and I don't want to have to keep installing the plugin on every computer I use. Sometimes, I'm not even allowed to install the plugin. As for a developer perspective, there are risks in depending on third party plugins. You give up some of the control." CreationDate="2010-07-22T17:00:27.090" UserId="362" />
  <row Id="855" PostId="1232" Text="The urls are case-sensitive. Check your links.&#xA;And the ending slash in the url is required." CreationDate="2010-07-22T17:26:57.560" UserId="820" />
  <row Id="856" PostId="1107" Text="When I started this question the other question about gui has only OS-level gui libraries answers." CreationDate="2010-07-22T17:27:46.640" UserId="43" />
  <row Id="857" PostId="1122" Text="This is along the lines of what I was thinking, but it still relies on a bunch of stuff being hardcoded in one function.  Maintainability aside, at the very least *every* achievement has to  be checked for eligibility every time through the function." CreationDate="2010-07-22T17:29:57.620" UserId="402" />
  <row Id="858" PostId="1216" Score="1" Text="One of the things I like about games programming is getting away from the standard GoF way of &quot;correctness&quot; and just focussing on pure lovely speed! That said, I've seen a lot of bad implementations of MVC in games which do more harm than good." CreationDate="2010-07-22T17:34:24.430" UserId="119" />
  <row Id="859" PostId="1232" Text="That was odd. *Should* work now." CreationDate="2010-07-22T17:38:28.680" UserId="55" />
  <row Id="860" PostId="1237" Text="Haha, nice reference :)" CreationDate="2010-07-22T17:47:00.960" UserId="47" />
  <row Id="861" PostId="1187" Text="It actually is a dupe - the ideas behind both are the same. It's a matter of perceptual psychology, not hardware. See the other question, transfer the ideas. " CreationDate="2010-07-22T18:09:41.023" UserId="181" />
  <row Id="864" PostId="1210" Text="Since there is not really the &quot;one true answer&quot; for this, you might want to consider marking this a community wiki post." CreationDate="2010-07-22T18:16:03.693" UserId="181" />
  <row Id="865" PostId="974" Text="I downvoted because I thought it was way too vague a Question. Look at most of the Answers - &quot;there isn't a single formula&quot;, &quot;you can make it however you want&quot;, &quot;it depends on the type of experience you want to create for the player&quot;. Gee, can you possibly be more *ambiguous*? But, apparently no-one else agrees with me, so there it is..." CreationDate="2010-07-22T18:18:30.960" UserId="165" />
  <row Id="866" PostId="1213" Text="As delta said, another SX is a better place for this. I'm hearing ning is a decent place for communities, but deliberately not posting this as an answer" CreationDate="2010-07-22T18:18:36.670" UserId="181" />
  <row Id="868" PostId="1128" Score="4" Text="I hate saying it, but the OpenGL Superbible or the OpenGL redbook *are* the best way to learn OpenGL. It's a complex subject, so the book needs to be large." CreationDate="2010-07-22T18:23:01.933" UserId="181" />
  <row Id="869" PostId="1247" Text="http://forums.xna.com/forums/t/27849.aspx and http://www.xnadevelopment.com/ respectively." CreationDate="2010-07-22T18:32:53.597" UserId="214" />
  <row Id="870" PostId="1068" Text="Any tip will do!" CreationDate="2010-07-22T18:37:20.860" />
  <row Id="871" PostId="1047" Text="I want to tripple vote this answer!" CreationDate="2010-07-22T18:45:36.457" UserId="119" />
  <row Id="872" PostId="1202" Text="What are you talking about? Binding another texture or another shader is also a state change." CreationDate="2010-07-22T18:46:43.133" UserId="501" />
  <row Id="873" PostId="858" Text="I can't believe my answer is on -1 and choose your own adventure is on 4 :)&#xA;&#xA;Choose your own adventure won't actually give you any skills to use on your next game." CreationDate="2010-07-22T18:47:09.043" UserId="119" />
  <row Id="874" PostId="736" Text="He could inherit the same objects for both states, I guess." CreationDate="2010-07-22T18:47:59.573" UserId="452" />
  <row Id="875" PostId="781" Text="Search for the term &quot;Abstraction layer&quot; and get acquainted with it, because you two are going to work together for a while." CreationDate="2010-07-22T18:49:21.163" UserId="452" />
  <row Id="876" PostId="1219" Text="I have both these books at home, and they are both excellent. " CreationDate="2010-07-22T18:52:42.730" UserId="441" />
  <row Id="877" PostId="1176" Text="You can use MovieClips without using vectors. Most games will use bitmap assets whichever system they use. But it is sometimes useful to layout and animate bitmap assets on the timeline, especially if you are working with a Flash-specialist designer rather than a pixel artist." CreationDate="2010-07-22T18:58:47.803" UserId="119" />
  <row Id="878" PostId="1253" Text="Wow, APB load screens look really cool :)" CreationDate="2010-07-22T18:58:48.647" UserId="47" />
  <row Id="879" PostId="1122" Score="2" Text="Does it? You can put the conditionals in an external script, as long as you have some way of tracking what happened in the game." CreationDate="2010-07-22T19:06:07.743" UserId="662" />
  <row Id="880" PostId="1240" Text="The reason I'm looking for ways to precompute it is because it's the biggest bottleneck when working with point sprite particles." CreationDate="2010-07-22T19:09:35.880" UserId="662" />
  <row Id="881" PostId="1128" Score="1" Text="Is it accesible even for a newby?" CreationDate="2010-07-22T19:49:43.197" UserId="666" />
  <row Id="882" PostId="1249" Text="That explains quite a bit. I was wondering, if there was only streaming going on, how they managed to stream chunks of that massive texture, in either a HDD or a disk fast enough to be of any use, the intermediate atlas answers that quite nicely.&#xA;Also I can now see why it's more memory efficient that traditional methods. &#xA;I'll look around for more details on SVT (Flawe's link looks like a good starting point for that)" CreationDate="2010-07-22T19:52:24.470" UserId="715" />
  <row Id="883" PostId="1263" Text="Does it really make sense to have a virtual interface if you are never going to have more than one implementation active at the same time?" CreationDate="2010-07-22T20:07:12.123" UserId="274" />
  <row Id="884" PostId="1265" Score="1" Text="Fairly similar to http://gamedev.stackexchange.com/questions/497/good-game-design-books" CreationDate="2010-07-22T20:31:04.033" UserId="165" />
  <row Id="885" PostId="1232" Text="Now &quot;Part 2&quot; and &quot;Part 3&quot; both links to part two.. :D" CreationDate="2010-07-22T20:36:03.380" UserId="820" />
  <row Id="886" PostId="1271" Score="2" Text="I wish some of those were available online or a bit cheaper, because there's loads of them and they're about £30 each so buying them all would be really expensive!" CreationDate="2010-07-22T20:41:26.737" UserId="119" />
  <row Id="887" PostId="1265" Score="5" Text="I disagree. Design and development are different topics, intertwined as they sometimes may be for indies." CreationDate="2010-07-22T20:44:09.243" UserId="402" />
  <row Id="888" PostId="1232" Text="Darn capital L's and slashes. I shall prevail!" CreationDate="2010-07-22T20:46:28.147" UserId="55" />
  <row Id="889" PostId="1274" Text="You answered on the motion, but didn't yet told about alternatives on connecting the player dynamics to the animation." CreationDate="2010-07-22T20:50:44.670" UserId="857" />
  <row Id="890" PostId="1273" Text="So you hard code the state machine into your character, then assign animations from a matrix on it. So you've got something like 'jumping', 'falling', 'moving', 'direction', etc. and you just flip the switch when appropriate. That's pretty much what I saw while back ago." CreationDate="2010-07-22T20:57:53.080" UserId="857" />
  <row Id="891" PostId="1273" Text="Maybe there's not alternatives. I'll accept this as an answer." CreationDate="2010-07-22T20:58:39.567" UserId="857" />
  <row Id="892" PostId="1238" Text="Second the book recommendation: the character animation section is one of the best parts of this book." CreationDate="2010-07-22T21:02:31.290" UserId="483" />
  <row Id="893" PostId="1242" Text="Great advice thanks, but if you want to use the time of a windows message (by comparing it to GetTickCount) how can you ensure high enough resolution? btw quake3 stores the time of the events so they most be useful?" CreationDate="2010-07-22T21:04:49.957" UserId="778" />
  <row Id="894" PostId="1271" Text="I agree, but used through Amazon they're okay. Could also check eBay? I do truly value my copies. Also, volume 8 is available online at http://my.safaribooksonline.com" CreationDate="2010-07-22T21:22:14.270" UserId="865" />
  <row Id="895" PostId="1277" Text="I've read the first two books and couldn't agree more. I wish I'd read GEA before I started working in the games industry. :)" CreationDate="2010-07-22T21:39:23.090" UserId="824" />
  <row Id="896" PostId="1269" Text="I like this book as well. It's a book that's pleasant to read but doesn't lack depth. Covers a lot of interesting topics.&#xA;Most of it is also available on Google-Books: http://books.google.com/books?id=gDLpyWtFacYC&amp;printsec=frontcover#v=onepage&amp;q&amp;f=false" CreationDate="2010-07-22T21:43:33.000" UserId="20" />
  <row Id="897" PostId="1242" Text="You can't ensure the resolution, it's up to whatever Windows uses. You'll notice that *none* of the official documentation says &quot;Yes, that's the counter we're using, and that's how it will be&quot;.&#xA;&#xA;You could always use QPC or similar to get your own time when you receive the message. That's only a (potentially) serious difference for messages sent via PostMessage - SendMessage is synchronous. &#xA;&#xA;What do you need it for?&#xA;&#xA;No idea why Q3 stores it. I'm sure they have a reason, but I haven't read the code base." CreationDate="2010-07-22T21:44:48.070" UserId="181" />
  <row Id="898" PostId="1240" Score="2" Text="Bottleneck how? How did you measure that? Rotating around a center point in a vertex shader is pretty cheap. If you precompute sin/cos and provide it as shader constants, dirt cheap even. &#xA;&#xA;Or are you referring to ARB_point_sprite sprites? Just don't use those - build your own billboards. That way, your quads can actually rotate, as opposed to axis-aligned quads with a rotated texture&#xA;&#xA;" CreationDate="2010-07-22T21:51:09.097" UserId="181" />
  <row Id="900" PostId="1214" Text="I used these books when I was first learning but I feel more recently they did me a disservice by not focusing on good structure or concepts." CreationDate="2010-07-22T22:13:13.717" UserId="292" />
  <row Id="902" PostId="1265" Score="1" Text="Either way, I'm less concerned since he changed it to a wiki. :)" CreationDate="2010-07-22T22:18:28.033" UserId="165" />
  <row Id="903" PostId="1295" Score="1" Text="+1 Was just about to write the same thing..." CreationDate="2010-07-22T22:20:11.197" UserId="20" />
  <row Id="904" PostId="967" Text="Pixel Joint looks like what I wanted, thanks a lot!" CreationDate="2010-07-22T22:21:00.073" UserId="422" />
  <row Id="905" PostId="1283" Text="+1 Great book, highly recommended. " CreationDate="2010-07-22T22:24:03.037" UserId="127" />
  <row Id="906" PostId="152" Score="1" Text="Your Python example is in C++." CreationDate="2010-07-22T22:38:41.573" UserId="886" />
  <row Id="908" PostId="1242" Text="Well I need to know exactly when - say - a key is pressed. If i take a reading upon receipt of an event, that will be too late?" CreationDate="2010-07-22T22:41:18.090" UserId="778" />
  <row Id="909" PostId="1065" Text="There are no chips out there that don't support 3D today. Most likely you just need to update drivers, because the ones provided by Windows don't come with OpenGL support.&#xA;&#xA;The most common crap GPU out there is Intel GMA stuff and even that has some basic OpenGl support." CreationDate="2010-07-22T22:44:24.623" UserId="501" />
  <row Id="910" PostId="1269" Text="This is a fantastic book... beware though, there's lots of 'behind the scenes' code that isn't mentioned, but required for all of the examples (and it becomes much more than a small task if you're porting to a different language)." CreationDate="2010-07-22T22:44:50.910" UserId="214" />
  <row Id="911" PostId="152" Text="@finish - Good to see someone catch that! Day-to-day activities revolve around Python these days. Thanks!" CreationDate="2010-07-22T22:46:47.350" UserId="55" />
  <row Id="912" PostId="974" Text="@Cyclops: Its like this so we can determine the things involved in experience points. Would you rather have a ton of experience point based questions each time an individual asks about their game or would you rather have one reference that talks about all various aspects you need to take into account. I accepted coderanger's answer because it is a great starting place." CreationDate="2010-07-22T22:47:42.013" />
  <row Id="913" PostId="1163" Text="This article had me re-evaluating the current project I'm working on. Very handy." CreationDate="2010-07-22T22:54:42.893" UserId="55" />
  <row Id="914" PostId="1065" Text="Repeating again:&#xA;&#xA;chips here are WORSE than Intel GMA stuff.&#xA;&#xA;And yes, some modified drivers do solve the problem, but you can not expect users to know about that." CreationDate="2010-07-22T23:00:38.437" UserId="469" />
  <row Id="915" PostId="1136" Text="@bloots - Plugins are easier to install than whole new browsers though. Problem is there are just far too many browsers at the moment. Can you elaborate on some of the control given up by depending on third party plugins? :)" CreationDate="2010-07-22T23:06:24.200" UserId="560" />
  <row Id="916" PostId="1283" Score="1" Text="I'm about half-way through Game Coding Complete, and there are some suggestions Mike makes that are... questionable, at best. It's not something I'd recommend, particularly for someone who hasn't worked on a large C++ project before." CreationDate="2010-07-22T23:08:28.987" UserId="613" />
  <row Id="917" PostId="1065" Text="A pratical example: Eletronic Arts made a new client for Ultima Online that uses 3D acceleration for its 2D graphics...&#xA;&#xA;Result: Lots of players complaining of ridicously low framerates, and EA backing down in their decision to enforce the use of the new client (now it is allowed to remain using the old one)" CreationDate="2010-07-22T23:15:22.173" UserId="469" />
  <row Id="918" PostId="1242" Text="If a 10ms difference really matters, I'd recommend not relying on windows messages. Instead, poll via GetAsyncKeyStatus()" CreationDate="2010-07-22T23:29:33.443" UserId="181" />
  <row Id="919" PostId="1313" Score="1" Text="This guy was right on the spot...&#xA;Actually, it is not evne a &quot;stiff&quot; spring, you only rotate some straight line around..." CreationDate="2010-07-22T23:48:01.853" UserId="469" />
  <row Id="920" PostId="740" Text="Part of the idea is to avoid building a common low-level API, and having to deal with wrapping with a lowest-common denominator approach. By moving the level of abstraction up a notch, you do restrict the feature set somewhat, but you also gain the ability to exploit each platform.&#xA;&#xA;To handle the occasional need for deeper access, I prefer to provide a header that exposes the platform headers and some internal helpers; it might break version to version, but it's there if you need it." CreationDate="2010-07-22T23:50:19.993" UserId="187" />
  <row Id="921" PostId="1317" Score="3" Text="I don't understood :/" CreationDate="2010-07-22T23:52:18.070" UserId="469" />
  <row Id="922" PostId="1065" Text="Come on. Ultima Online is from '97. I don't think you can buy chips without OpenGL support nowadays - even in Brazil. There is just nothing that crappy in production anymore. Especially since the only remaining significant chipset vendors are Intel, AMD and NVIDIA." CreationDate="2010-07-22T23:53:01.547" UserId="501" />
  <row Id="923" PostId="1262" Score="1" Text="I think you said what I was trying to say, only better." CreationDate="2010-07-23T00:04:58.030" UserId="400" />
  <row Id="924" PostId="1319" Text="There are already trackmania on Steam like that (Nations is free, but has only one tileset and one car model, then you can register and get all cars and the rest of the tiles...)" CreationDate="2010-07-23T00:06:42.813" UserId="469" />
  <row Id="925" PostId="1065" Text="The new client is from  2008, what my story says is: People in 2008, disliked a OpenGL client, and reverted to using the 1997 one." CreationDate="2010-07-23T00:27:19.480" UserId="469" />
  <row Id="926" PostId="1321" Text="I don't think the point was the copy protection... Most don't even had copy protection at all..." CreationDate="2010-07-23T00:29:34.343" UserId="469" />
  <row Id="927" PostId="1138" Score="3" Text="-1. Learned all sorts of bad stuff from nehe!" CreationDate="2010-07-23T00:35:46.390" UserId="632" />
  <row Id="928" PostId="1321" Text="I mean as far as circumventing whatever restrictions were in place to encourage you to buy the game." CreationDate="2010-07-23T00:42:16.720" UserId="395" />
  <row Id="929" PostId="1310" Text="Tell me more about it, please. I wonder how this is better/different from the super bible and if it is worth the time worth reading such big books(no offense but if it takes 20+ hours to read a book i want to be sure it is worth it =) )" CreationDate="2010-07-23T00:48:41.263" UserId="666" />
  <row Id="930" PostId="1200" Score="1" Text="I am also mildly color blind, enough so that my Wife gets a laugh now and then when I can't tell the difference (cooking meat is difficult).  I have the most trouble in dim artificial lighting, which makes colors appear less saturated (HSL).  So just keep red/green mostly saturated and you'll be fine.  Or imagine RGB as a 3D cube, keep red points and green points away from each other when it is vital that they be noticed to be different." CreationDate="2010-07-23T01:15:24.593" UserId="370" />
  <row Id="931" PostId="1210" Text="When you ask users to create a list of answers, the question should be marked community wiki. I converted this question." CreationDate="2010-07-23T01:20:48.437" UserId="2" />
  <row Id="932" PostId="1093" Text="@SAHChandler: That sucks! I learned all my drawing with glBegin() and glEnd(). Noooo!!!" CreationDate="2010-07-23T01:21:14.800" />
  <row Id="933" PostId="1222" Text="+1 so you can put it as a comment!" CreationDate="2010-07-23T01:42:27.650" />
  <row Id="934" PostId="1324" Text="Thanks Noel. I think you have confirmed the direction I was leaning ;)" CreationDate="2010-07-23T02:12:31.463" UserId="262" />
  <row Id="935" PostId="1317" Text="@speeder, clearly it's because you're a left-brain programmer, and not a right-brain *artist*. :&gt;" CreationDate="2010-07-23T02:25:00.857" UserId="165" />
  <row Id="936" PostId="1289" Text="Uh - this is specifically what I don't want (see the question)." CreationDate="2010-07-23T02:39:43.037" UserId="288" />
  <row Id="937" PostId="1328" Score="1" Text="Might be helpful to check the first 4 bytes of the file in case its some normal format with a custom extension." CreationDate="2010-07-23T02:53:56.090" UserId="395" />
  <row Id="938" PostId="1330" Text="Isn't this a waypoint graph except done on a simplifed mesh? I thought navmeshes allow you to do pathing on polygon." CreationDate="2010-07-23T03:12:12.833" UserId="43" />
  <row Id="939" PostId="1136" Text="You assume the plugin works for everyone, and on all devices that you want.If something breaks, and it ends up being the plugin (or any other third party thing really), you can't fix the problem. You have to wait for them to. If your business model depends on how the third party does business, who's to say they won't change something that inadvertendly screws you over? Suddenly the plugin does so and so to a user's browser, and people hate it and block it. You take the risk that some other company will play nice with everyone. This probably doesn't apply to social games as much, but still." CreationDate="2010-07-23T03:18:20.967" UserId="362" />
  <row Id="940" PostId="1190" Text="The main problem with your mentioned experiment would be &quot;slow down input when moving away&quot;. This would feel terrible when trying to switch between targets. You're probably going to end up lingering the crosshair on empty areas right NEAR but not ON a target that the player is actually pushing the stick away from.&#xA;&#xA;As mentioned in HilariousCow's answer you need to be careful to assist and not hinder. (&quot;only giving this extra turn speed when the player is turning roughly toward a target&quot;)." CreationDate="2010-07-23T03:25:47.507" UserId="581" />
  <row Id="941" PostId="856" Score="2" Text="http://qntm.org/hatetris (okay it lacks the theme music, but I just wanted to link it...)" CreationDate="2010-07-23T03:56:08.970" UserId="362" />
  <row Id="942" PostId="1330" Text="The simplified graph lets you do long-distance pathing, short range is usually handled another way. It looks like Valve's system uses the mesh data for both, just in different ways (supernode routing vs. local constraints)." CreationDate="2010-07-23T03:58:04.257" UserId="395" />
  <row Id="943" PostId="1143" Text="FYI Photoshop supports as many different windows for one document all at different zoom levels as you want. And most every decent art program (including GraphicsGale, which I use) supports at least 1 active and one preview each at independent zoom levels.&#xA;&#xA;As to mouse accuracy, maybe you just need to turn off acceleration and/or set sensitivity lower. It's a personal thing I guess." CreationDate="2010-07-23T04:08:51.677" UserId="581" />
  <row Id="944" PostId="1313" Text="Your answer is technically correct. But I kind of assumed that having line segments and splitting and joining them was obvious. I'm interested in the actual algorithm/maths to do that. I've made my question more specific." CreationDate="2010-07-23T04:16:05.727" UserId="288" />
  <row Id="945" PostId="1330" Text="A simple set of connections isn't a navmesh is it? I thought it was called navmesh because you do pathing on polygons." CreationDate="2010-07-23T04:17:41.903" UserId="43" />
  <row Id="946" PostId="1084" Text="I like and use GG. And even though it's shareware it's very cheap.&#xA;&#xA;Little quirks that I've noticed are no support for multiple animations per file and some esoteric UI eg palette manipulation. &#xA;&#xA;Other great features are seeing your pixel 'cursor' realtime on the preview, very customizable key bindings and simply and easy exporting animations to sprite sheets." CreationDate="2010-07-23T04:17:42.340" UserId="581" />
  <row Id="947" PostId="1274" Text="True. As for synching animation to dynamics (ie, without moonwalks) I don't really think there's a proper solution with sprite based animations as you can't blend and are stuck with a fixed framerate. If 'no moonwalk' would be a requirement then I would implement the game with blobs and when it's all tweaked to perfection add subblobs for hand and feet and animate those till right and use that as input for a spritesheet. In real life I wouldn't worry about it as Mario got by moonwalking for the past 2 decades without complaints. As for states..I'm oldskool, I'd set the animation per state. " CreationDate="2010-07-23T04:21:22.477" UserId="865" />
  <row Id="948" PostId="1330" Text="I don't think local versus global navigation is relevant here." CreationDate="2010-07-23T04:32:28.177" UserId="43" />
  <row Id="949" PostId="1317" Text="Probably :P&#xA;&#xA;Or maybe because english is not my native language and the english of this game is too correct or too wrong to me get it :P" CreationDate="2010-07-23T04:50:22.463" UserId="469" />
  <row Id="950" PostId="1330" Text="A set of neighboring polygons is still a graph just like a set waypoints and you can do A* on it in the same way. The only difference is once you know which polygons you are going to move through you draw the lines differently." CreationDate="2010-07-23T04:52:18.310" UserId="395" />
  <row Id="951" PostId="1328" Score="1" Text="When showing an unknown file format it might be more useful to show a [hex dump](http://en.wikipedia.org/wiki/Hex_dump)" CreationDate="2010-07-23T04:53:50.290" UserId="395" />
  <row Id="952" PostId="1328" Text="thanks for the tips i will check on how to hex dump..." CreationDate="2010-07-23T04:54:19.727" UserId="567" />
  <row Id="953" PostId="1334" Text="hi thanks for the reply i've updated my main question with the file content and a hex dump i am kinda of clueless on how to verify it i do know that some files in it is content some times shows for example &quot;Adobe Photoshop&quot; etc ... but this files doesnt give me much ..." CreationDate="2010-07-23T04:56:48.803" UserId="567" />
  <row Id="954" PostId="1328" Score="1" Text="The AN file converted from bin to hex http://paste.pocoo.org/show/240671/" CreationDate="2010-07-23T05:05:43.983" UserId="395" />
  <row Id="955" PostId="1204" Text="Some good thoughts there, even if fairly Haskell specific, I think those are thoughts that apply to most fringe languages. As you mentioned briefly, I think this is where languages like F# have the potential to shine. Handling state/UI with C#, for example, and then have logic modules in F# for algorithms like potentially path finding, AI, etc." CreationDate="2010-07-23T05:12:40.493" UserId="254" />
  <row Id="956" PostId="1328" Text="thanks i figured how to hex dump already eheh but still havent figure what the files are :P" CreationDate="2010-07-23T05:13:01.740" UserId="567" />
  <row Id="957" PostId="1328" Text="Yeah, I did some digging but I can't find anything on either one. What game is this? Maybe that will provide a clue (or at least a vintage)." CreationDate="2010-07-23T05:17:05.570" UserId="395" />
  <row Id="958" PostId="1328" Text="i found it while looking for character sprites at http://untamed.wild-refuge.net/rmxpresources.php?characters following links within the images there... but i will have to look on my history to find out the exctly website but it was either japanese or chinese ... but the images looked good so i ownloaded it to take a look at..." CreationDate="2010-07-23T05:23:17.213" UserId="567" />
  <row Id="959" PostId="1335" Text="To what level do you intend for your art to be at? Like retro pixel art? Or those HD sprites, if you have any existing art that would really help me tailor my response." CreationDate="2010-07-23T05:25:55.713" UserId="14" />
  <row Id="960" PostId="1328" Text="found it, http://www.mixmaster.co.kr/" CreationDate="2010-07-23T05:42:44.373" UserId="567" />
  <row Id="961" PostId="1328" Score="1" Text="I think I have to throw in the towel, too much of the site is in Flash or images for Google Translate to help &gt;_&lt; Chances are it's something custom from the look of things though." CreationDate="2010-07-23T05:47:23.837" UserId="395" />
  <row Id="962" PostId="1344" Text="Thanks :) i will take a look at it... could you perhaps recommend me any GPU viewer" CreationDate="2010-07-23T05:52:34.183" UserId="567" />
  <row Id="963" PostId="764" Score="2" Text="While it might be a good idea to do this(or add some sites to your host file so you just can't access them) i don't think this is an answer to how to manage a hobby game project." CreationDate="2010-07-23T05:53:47.113" UserId="666" />
  <row Id="966" PostId="764" Score="1" Text="@DFectuoso: Read the question again. You will find that my post directly answers it. It's not a complete strategy - but the OP didn't ask for one. I'm sorry if I've blown your mind by giving easy, practical, actionable advice instead of spouting something warm-and-fuzzy like &quot;Do a little bit each day&quot; or &quot;Focus&quot; and leaving readers to muddle out *how* to actually do that." CreationDate="2010-07-23T06:32:26.490" UserId="288" />
  <row Id="967" PostId="764" Text="Also: I've tried doing the hosts-file thing, as well as disabling the network adapter in software - these do not have sufficient impact and are too easy to reverse (the network cable might be too easy too, if its not under a desk or something, or you have wireless - unplugging a router or taking the actual cable away might be necessary)." CreationDate="2010-07-23T06:37:01.583" UserId="288" />
  <row Id="968" PostId="1035" Score="1" Text="Agreed, Thrust/Lunar Lander style games are great early projects. Dealing with rotation, and velocity/acceleration will reveal the mysteries of sine/cosine (for anyone that's not dealt with them for a while). You can use a static or scrolling tile map, and can use collision detection without needing much complex collision reponse (touch something -&gt; explode). It's also a good one for thinking about control system tuning - getting a nice balance of thrust, gravity, and rotation speed to make it feel right" CreationDate="2010-07-23T06:48:45.350" UserId="659" />
  <row Id="969" PostId="1007" Text="This &quot;architecture&quot; is pretty horrible, just by the way. The *only* place I could see this making sense is an editor where you undo and redo commands (modifiers). Which you won't be doing &quot;on the fly&quot; or &quot;multiple times per second&quot;. Is there another way to do this? Yes - just modify the values directly! In game development you should never get more fancy than you need to." CreationDate="2010-07-23T06:59:20.773" UserId="288" />
  <row Id="970" PostId="1350" Text="Not really, sorry." CreationDate="2010-07-23T07:03:12.497" UserId="288" />
  <row Id="971" PostId="1347" Text="So - just to clarify: I would have the free mass on a fixed-length joint which attaches to the world at the next &quot;bend&quot; in the wire. I find out what impulse that joint applies to the box each frame, and from there I can get the tension in the wire?" CreationDate="2010-07-23T07:09:47.520" UserId="288" />
  <row Id="972" PostId="1347" Text="Also - I am concerned about `F = T * cos(angle between wire and spring axis)`. Which angle, exactly? Also: I don't think that (in the simulation) there is a sensible way to have the wire &quot;know&quot; that there is a spring attached to that object." CreationDate="2010-07-23T07:17:44.317" UserId="288" />
  <row Id="973" PostId="1035" Text="@bluscrn actually thats a great comment. After getting people to play test my flash version I noticed people had different opinions on how it should feel. Some of this was attributed to previous games experienced by the user. It was not something I had particularly thought about before developing it." CreationDate="2010-07-23T07:29:45.457" UserId="560" />
  <row Id="974" PostId="1347" Text="@Andrew - For your first point, yes, the force applied to the box by the joint is by definition equal to the tension in the wire. For your second point, you're right, this wasn't very clear, it's actually the angle between the wire and the contact point normal. I've edited the answer to make this clearer." CreationDate="2010-07-23T07:38:30.540" UserId="322" />
  <row Id="975" PostId="1347" Text="Thanks @Niall :)" CreationDate="2010-07-23T08:03:22.227" UserId="288" />
  <row Id="976" PostId="1025" Text="This worked perfectly, thanks for the pointers." CreationDate="2010-07-23T08:31:44.497" UserId="541" />
  <row Id="977" PostId="1034" Text="Delta, thank you for your help. I am using VS 2010, and it all worked after renaming. Unfortunately, I can't accept two answers! :)" CreationDate="2010-07-23T08:32:24.777" UserId="541" />
  <row Id="978" PostId="1242" Text="Really good advice thank you Rachel, i leave the question open and if i don't get any other responses i'll accept this answer." CreationDate="2010-07-23T08:43:55.310" UserId="778" />
  <row Id="979" PostId="1351" Text="+1 for recast/detour. Don't reinvent the wheel unless you have to." CreationDate="2010-07-23T08:59:17.957" UserId="259" />
  <row Id="980" PostId="81" Text="Qt doesn't take over main though, even with an event loop in QCoreApplication. You can call qApp-&gt;processEvents in any loop you want and Qt will be happy." CreationDate="2010-07-23T08:59:21.420" UserId="911" />
  <row Id="981" PostId="938" Text="I knew about ardor3d because of JME but I had no idea that it's used by NASA. Very cool. I guess I'll have to take a closer look at it." CreationDate="2010-07-23T09:26:35.270" UserId="267" />
  <row Id="982" PostId="853" Text="@Smashery The only difference between the two is that game programming can require specific graphics engine level optimizations or shader coder optimizations, the C++ part is the same." CreationDate="2010-07-23T09:47:06.883" UserId="318" />
  <row Id="983" PostId="1358" Text="I see. very interesting. I have read about world and screen coordinates in the past, but forgotten completely about that. &#xA;I will try you suggestions. Thank you very much.&#xA;BR" CreationDate="2010-07-23T09:49:45.930" UserId="910" />
  <row Id="984" PostId="1336" Text="+1 It's much easier to do this if you just make the character 3D." CreationDate="2010-07-23T10:10:54.293" UserId="662" />
  <row Id="985" PostId="267" Text="I think this is the biggest fallacy about getting a programming job in the games industry. It does no more than make your CV look good. I'm never going to hire someone based only on their demos. In fact I'd rarely look at the actual source from demos. If their CV is good they can have an interview, but that's where I'll make my decision." CreationDate="2010-07-23T10:13:02.890" UserId="259" />
  <row Id="986" PostId="544" Text="Coding tests and strong interviews ftw." CreationDate="2010-07-23T10:14:20.593" UserId="259" />
  <row Id="987" PostId="267" Text="@tenpn if you have two people with similar CV's but one has made a few little games on the side and the other has not. What do you do?" CreationDate="2010-07-23T10:40:08.667" UserId="10" />
  <row Id="988" PostId="1100" Score="4" Text="Dont really agree. Even indie developer needs to earn money. And earning money allow you to move on to a bigger project. This you are only great if you are starving attitude is the same one we see in indie music scene. Dont really want to see it in the game dev scene" CreationDate="2010-07-23T10:59:09.610" UserId="253" />
  <row Id="989" PostId="267" Text="If both their CVs are equally good with decent experience, bar the difference in published demos, I interview them both. Rather be safe than miss out on a good candidate." CreationDate="2010-07-23T11:11:37.310" UserId="259" />
  <row Id="990" PostId="1321" Score="1" Text="Considering that some modern games have copy protection of similar complexity, and yet do just fine, I don't think this was a real factor." CreationDate="2010-07-23T11:19:08.640" UserId="323" />
  <row Id="991" PostId="1239" Text="No AMD chip, but good tip thanks." CreationDate="2010-07-23T12:01:21.263" UserId="778" />
  <row Id="993" PostId="1363" Score="2" Text="Is this relevant to Development, as its a more consumer / modding question. Possible should be placed in Gaming stack." CreationDate="2010-07-23T12:25:06.380" UserId="465" />
  <row Id="994" PostId="1363" Score="1" Text="While this is pushing it, I'd we decided on meta that questions about modding are game development questions. I say this is pushing it because it's not asking about how to use a tool but where to get it, and is specific to a certain game. However we've allowed other questions on where to find tools so I say let it slide." CreationDate="2010-07-23T12:30:20.630" UserId="353" />
  <row Id="995" PostId="1333" Text="Great answer, I would add that Maya &amp; Blender both have great support for Python. It's very easy to add data, and validation checks into these packages using scripting. We do this even with our own content packing system now." CreationDate="2010-07-23T12:30:54.670" UserId="465" />
  <row Id="996" PostId="856" Score="1" Text="@bloots wow, that is evil" CreationDate="2010-07-23T12:42:37.343" UserId="47" />
  <row Id="997" PostId="1335" Text="Hi Noctrine. Actually I'm considering it as a &quot;art independent&quot; question. I'll try to draw some explanations later this weekend to make it easier to understand. Thank you" CreationDate="2010-07-23T12:45:36.400" UserId="439" />
  <row Id="998" PostId="267" Text="@tenpn of course you interview both if they are good candidates. It's not about the interview. It's about getting hired. Let's say then they both do good on the interview, but one has made a few games (that seem to function well). In all hypothetical case the game maker gets hired." CreationDate="2010-07-23T12:47:57.380" UserId="10" />
  <row Id="999" PostId="1336" Text="but for &quot;3D-gfx-but-2D-game&quot; I would have to consider one of the solutions I mention anyway otherwise I'll need to have a sprite for any items combinations, for example, the same chest piece with 10 different braces pieces will generate 10 animations :(" CreationDate="2010-07-23T12:49:53.383" UserId="439" />
  <row Id="1000" PostId="1361" Text="The same I mention on the other answer is considerable here: I would have to consider one of the solutions I mention anyway otherwise I'll need to have a sprite for any items combinations, for example, the same chest piece with 10 different braces pieces will generate 10 animations :(" CreationDate="2010-07-23T12:50:44.473" UserId="439" />
  <row Id="1001" PostId="267" Text="If they both do good in the interview, they're hypothetically both good engineers, and you can decide on any arbital quality you like. How often does that happen, though?" CreationDate="2010-07-23T13:09:20.580" UserId="259" />
  <row Id="1002" PostId="1317" Text="tried to clarify. maybe the right question would sound like: &quot;How do graphic artists really work?&quot; " CreationDate="2010-07-23T13:16:04.030" UserId="890" />
  <row Id="1003" PostId="1322" Text="partly, what are those tools? Do they have built in drawing tools?&#xA;Question is both for 2D and 3D." CreationDate="2010-07-23T13:17:27.507" UserId="890" />
  <row Id="1004" PostId="1356" Text="Hmmm. I have to look up what the inverse matrix does. Besides that, the renderer isn't so komplex at the moment, so this could be done/changed/added easily. &#xA;Thanks for the hint. I will try it.&#xA;BR" CreationDate="2010-07-23T13:33:08.780" UserId="910" />
  <row Id="1006" PostId="267" Text="@tenpn So by your account, showing a future employer that you work on your skill by doing small games has no say or does not help in any way?" CreationDate="2010-07-23T13:38:15.740" UserId="10" />
  <row Id="1007" PostId="741" Text="Two other GameMaker answers after mine - and yet, *my* answer gets downvoted. Maybe I needed more bullet points? :) So it goes..." CreationDate="2010-07-23T13:39:33.663" UserId="165" />
  <row Id="1009" PostId="1065" Text="I my story is: They most likely use the standard Windows driver, which doesn't have OpenGL acceleration *at all*" CreationDate="2010-07-23T13:49:13.950" UserId="501" />
  <row Id="1010" PostId="1356" Text="i think i made a mistake with inverse matrix, i think it should be called negative matrix. damn math vocabulary.." CreationDate="2010-07-23T13:52:44.740" UserId="178" />
  <row Id="1011" PostId="267" Text="No, I admitted it made your CV look good. That doesn't mean it &quot;doesn't help in any way.&quot; But I look at a lot of CVs and I'm not going to throw one away because it doesn't have any demos on it." CreationDate="2010-07-23T14:12:00.607" UserId="259" />
  <row Id="1012" PostId="1380" Text="And your code buddy will love you!" CreationDate="2010-07-23T14:13:02.723" UserId="259" />
  <row Id="1013" PostId="267" Text="@tenpn That was never the case stated here. The question was what he could do to be taken seriously when applying for a job. And my answer was that making games is something you can do to help. Not that making games will be a guaranteed hire." CreationDate="2010-07-23T14:27:56.963" UserId="10" />
  <row Id="1014" PostId="1306" Score="2" Text="+1 for The Pragmatic Programmer" CreationDate="2010-07-23T14:38:42.803" UserId="292" />
  <row Id="1015" PostId="1320" Text="Using Z for height goes against instinct, but it is the right thing to do on top-down 2D games. then you can reuse code between side-on and top-down games." CreationDate="2010-07-23T14:40:46.870" UserId="119" />
  <row Id="1016" PostId="1303" Text="that's really cool! In Flash you can use the timeline to make bones animations also. You could spit the timeline info out as xml and use it on any other platform." CreationDate="2010-07-23T14:47:31.160" UserId="119" />
  <row Id="1017" PostId="1381" Text="How do you record an explosion?" CreationDate="2010-07-23T14:57:57.763" UserId="818" />
  <row Id="1018" PostId="1380" Score="4" Text="`const` does not improve compiler optimizations.  True the compiler can generate better code if it knows a variable won't change, but `const` does not provide a strong enough guarantee." CreationDate="2010-07-23T15:04:23.083" UserId="370" />
  <row Id="1019" PostId="1385" Score="1" Text="interesting concept, +1" CreationDate="2010-07-23T15:06:31.567" UserId="653" />
  <row Id="1020" PostId="1392" Text="Sorry, you're going to have to do better than that to get me to click on your link.  Some text?  Explanation?  Description?" CreationDate="2010-07-23T15:11:44.627" UserId="283" />
  <row Id="1021" PostId="1392" Text="@Chris it's a legit UML diagram" CreationDate="2010-07-23T15:12:35.220" UserId="47" />
  <row Id="1022" PostId="1392" Text="Now that i know the name, next time i'll use something more convenient than paint.net :s" CreationDate="2010-07-23T15:18:38.440" UserId="455" />
  <row Id="1023" PostId="1008" Text="He means a crowd of enemies, like one sees in a tower defense game.  It's not industry lingo; he's just being conversational.&#xA;&#xA;Look, A* is retarded fast.  It's fast enough that we were using it to pathfind for groups on 500x500 maps on the Gameboy Advance, which is an ARM7 running at 16 mHz.  Even from inside flash, if your A* isn't making time individually, the implementation is the problem.&#xA;&#xA;I'll put my AS3 A* pathfinder in http://scutil.com/ this weekend.  That should remove any need for you to bother with mobs (for which the appropriate answer is something like D* or R*).&#xA;&#xA;You're welcome." CreationDate="2010-07-23T15:20:33.290" UserId="528" />
  <row Id="1024" PostId="1392" Score="3" Text="Could you put most of the text into the body of this post? Images work best as additional information, not the entire content." CreationDate="2010-07-23T15:25:52.500" UserId="8" />
  <row Id="1025" PostId="1374" Text="+ positioning objects at the pixel rather than tile level" CreationDate="2010-07-23T15:27:11.907" UserId="119" />
  <row Id="1026" PostId="1393" Score="1" Text="That's an interesting way of thinking about it.  Would that also entail doing things like taking money that is removed from the player base (through &quot;money sinks&quot;) and using that to populate, say, drops from monsters?" CreationDate="2010-07-23T15:32:38.540" UserId="51" />
  <row Id="1027" PostId="1399" Text="_evil_ hero? What, just cause he slaid a panda? :)" CreationDate="2010-07-23T15:56:14.540" UserId="214" />
  <row Id="1028" PostId="1079" Score="5" Text="Remember that money sinks negatively affect players who don't put significant effort into farming or gathering money; so forced money sinks can be frustrating." CreationDate="2010-07-23T16:03:12.680" UserId="214" />
  <row Id="1029" PostId="905" Text="+1, Love that link. &quot;RPG – if you hate your life (and some apparently do), this obviously final year attempt at video game programming glory is likely to end badly. The game engine itself is often fairly spread out (world travel, town travel, shops, fights, etc) and requires an ungodly amount of effort&quot;" CreationDate="2010-07-23T16:03:17.063" UserId="165" />
  <row Id="1030" PostId="1363" Text="See the discussion of the relevance of this question here: http://meta.gamedev.stackexchange.com/questions/58/do-mod-and-map-making-questions-belong-here" CreationDate="2010-07-23T16:04:52.600" UserId="8" />
  <row Id="1031" PostId="1381" Score="9" Text="From a distance..." CreationDate="2010-07-23T16:05:31.663" UserId="165" />
  <row Id="1032" PostId="1372" Text="im not planning on making a client as a server i am planning on making my own server and client... but from what i saw from using XNA people would need to buy my game or how is the licensing of it working" CreationDate="2010-07-23T16:05:52.067" UserId="567" />
  <row Id="1033" PostId="1336" Text="Not really, you just have attachment points on the skeleton and can drop in whatever you need." CreationDate="2010-07-23T16:50:04.770" UserId="395" />
  <row Id="1034" PostId="1398" Text="I was going to answer this, but the article is pretty clear on what needs doing. Some of the examples look incorrect though, I could have sworn the Star Trek sliding door sound was just from the set brushing as the pieces moved. A sort of happy-mistake." CreationDate="2010-07-23T16:54:10.617" UserId="14" />
  <row Id="1035" PostId="1372" Text="If you are building for windows, no license, account, or anything else are necessary unless you use XNA's built in networking which supports windows live.&#xA;&#xA;If you add your own networking code you are free to do as you like. Even if you used the XNA networking code, a &quot;silver&quot; free windows live account is sufficient." CreationDate="2010-07-23T16:56:12.047" UserId="353" />
  <row Id="1037" PostId="1007" Text="I have seen multiple particle engines use this type of method for modifying particles at runtime. How would you suggest I change values directly, lets say if there was an event that happened, like a ball hit the wall, and i wanted to change the color of that ball. How would I gain access to that property dynamicly lets say i want to set that up in the editor." CreationDate="2010-07-23T17:03:28.620" UserId="502" />
  <row Id="1038" PostId="975" Text="+1 for the state standards, would have never thought of that." CreationDate="2010-07-23T17:05:45.963" UserId="14" />
  <row Id="1039" PostId="1393" Text="You could do that, sure. " CreationDate="2010-07-23T17:16:04.993" UserId="528" />
  <row Id="1040" PostId="1393" Score="18" Text="&quot;Currency can't inflate if there's a limited amount...&quot; - is a good example of a **true but useless** statement. There is *no* reasonable way that a major MMO like Warcraft, could stop handing out gold for doing quests. &quot;Stop minting money&quot; just isn't an option, without a total game re-design." CreationDate="2010-07-23T17:33:08.523" UserId="165" />
  <row Id="1041" PostId="1327" Text="This turned up in the course of my morning internet wanderings: http://aigamedev.com/open/reviews/alienswarm-node-graph/&#xA;&#xA;Might be worth reading :-)" CreationDate="2010-07-23T17:35:49.127" UserId="395" />
  <row Id="1042" PostId="1370" Text="Any map editor tops that." CreationDate="2010-07-23T17:45:17.083" UserId="666" />
  <row Id="1043" PostId="1410" Text="About all the question : I don't know !  &#xA;I can only know what i learned and game programming books mostly don't teach this or i'm not reading the good books/websites. Please just direct me." CreationDate="2010-07-23T17:46:25.163" UserId="455" />
  <row Id="1044" PostId="1375" Score="1" Text="+1 for autotiles, especially if the system is designed flexibly to allow many different scenarios / logic for selecting tiles." CreationDate="2010-07-23T17:58:33.657" UserId="48" />
  <row Id="1045" PostId="1394" Text="SFXR by Dr Petter is a great free tool. &#xA;" CreationDate="2010-07-23T18:04:20.277" UserId="465" />
  <row Id="1046" PostId="1410" Text="Also, a lot is managed by the library, lwjgl.slick and as far as i can tell it's fairly similar to XNA, pygame and others. So i don't worry too much about the foundation of a game." CreationDate="2010-07-23T18:06:24.280" UserId="455" />
  <row Id="1047" PostId="1372" Text="thanks for the replies, just to make sure... i am not tied to anything at all if i want to use XNA to make a p2p or item mall mmo and using my own networking communication i dont need to pay nor do my users and i am free to work it out with my own server ?" CreationDate="2010-07-23T18:07:36.930" UserId="567" />
  <row Id="1048" PostId="1372" Text="Yes, that's absolutely fine. Just don't hope to get it working for xbox." CreationDate="2010-07-23T18:11:48.327" UserId="353" />
  <row Id="1049" PostId="1416" Score="2" Text="No, the reason CC games are limited to C# is to push their platform. Most AAA Xbox titles are plain ol' C/C++." CreationDate="2010-07-23T18:13:54.470" UserId="395" />
  <row Id="1050" PostId="1271" Text="Any especial place where to start with this huge collection or any random one is a good?" CreationDate="2010-07-23T18:14:05.293" UserId="666" />
  <row Id="1051" PostId="1411" Text="Actually, this &quot;question&quot; was explicitly meant to be vague in order to assess and build up a searchable resource on this site for the curious minds who want to experiment in this development environment." CreationDate="2010-07-23T18:24:46.567" UserId="869" />
  <row Id="1052" PostId="1416" Score="3" Text="Allowing anyone to execute C/C++ code on the Xbox 360 could allow for huge console instability.&#xA;&#xA;If you have an official Development Kit you can execute native C/C++ code on the 360." CreationDate="2010-07-23T18:37:22.737" UserId="891" />
  <row Id="1053" PostId="1008" Score="3" Text="Actually, &quot;mob&quot; is industry (and MMO/MUD player) lingo for &quot;mobile object&quot;." CreationDate="2010-07-23T18:41:01.747" UserId="744" />
  <row Id="1054" PostId="1271" Text="I honestly love em all. The earlier ones are a bit more low-level, but I do believe low-level knowledge is a valuable basis." CreationDate="2010-07-23T18:41:53.197" UserId="865" />
  <row Id="1055" PostId="1381" Score="2" Text="By starting with something that's not an explosion, and editing. For example, make an explosion-like sound with your own voice. For wind sounds, blow into the microphone. Stuff like that." CreationDate="2010-07-23T18:56:33.977" UserId="458" />
  <row Id="1056" PostId="239" Text="That said, an mmo don't HAVE to be so massive. Wow is the more successful and big example, with EVE i guess." CreationDate="2010-07-23T18:58:27.263" UserId="364" />
  <row Id="1057" PostId="1361" Text="You'd composite the &quot;end sprite&quot; at runtime. You don't have a sprite for &quot;the player&quot;, you'd have a list of sprites that are rendered for each animation frame. So if the player is facing to the right, you'd render &quot;left glove&quot;, &quot;left bracer&quot;, &quot;player character&quot;, &quot;boots&quot;, &quot;pants&quot;, &quot;body armor&quot;, &quot;helm&quot;, &quot;right bracer&quot;, &quot;right glove&quot; in order. Then you animate each piece of gear independently, floating in midair." CreationDate="2010-07-23T19:03:52.947" UserId="323" />
  <row Id="1058" PostId="975" Text="Sounds about right. When I've talked to people (not necessarily people interested in using the game), I've always told them that it's first and foremost a game." CreationDate="2010-07-23T19:16:08.103" UserId="233" />
  <row Id="1059" PostId="1372" Text="Thanks, i am not aiming for xbox at all :) just PC" CreationDate="2010-07-23T19:18:44.663" UserId="567" />
  <row Id="1060" PostId="1419" Text="thanks for the confirmation :)" CreationDate="2010-07-23T19:19:19.360" UserId="567" />
  <row Id="1061" PostId="1422" Text="no idea at all i've went thru it but can't figure it out at all." CreationDate="2010-07-23T19:21:03.100" UserId="567" />
  <row Id="1062" PostId="1106" Score="11" Text="This. Specially if it's exactly like World of Warcraft but adds a couple of really awesome classes." CreationDate="2010-07-23T19:50:05.010" UserId="452" />
  <row Id="1063" PostId="1370" Text="+1 for interesting use of excel." CreationDate="2010-07-23T19:54:05.093" UserId="857" />
  <row Id="1064" PostId="1322" Text="There is no single set of tools, there are hundreds. Common 3D suites are 3DStudioMax and Maya. Photoshop is generally used to prepare concept art, and for editing 2D assets. The glue in between is too numerous to count and usually comes with your engine or is built in house." CreationDate="2010-07-23T19:58:17.720" UserId="395" />
  <row Id="1065" PostId="1336" Text="I've made an (open source) simple 2d skeletal animation library for XNA, including a decent editor. Check out http://www.youtube.com/user/srekel#p/a/u/0/46LIoFNdG_4 and http://www.youtube.com/user/srekel#p/a/u/1/8sYkeu5k7XE" CreationDate="2010-07-23T20:02:55.917" UserId="824" />
  <row Id="1066" PostId="1416" Score="3" Text="@coderanger Sorry dude, but if I could down vote a comment, I would. The use of .NET in the CC is for security reasons and to allow for a clean sandbox while still allowing them to use the COM based DirectX without issue (something Java can't really do).&#xA;&#xA;Sure, they have a vested interest in .NET, but that's not the reason they limited CC games to use it." CreationDate="2010-07-23T20:23:55.850" UserId="292" />
  <row Id="1067" PostId="1065" Text="I'm from Brazil and I'm actually with Axel on this. By the way, I couldn't find any information on the UO case. Not that I searched that hard for it, anyway.." CreationDate="2010-07-23T20:33:52.847" UserId="968" />
  <row Id="1068" PostId="1416" Text="Then why does my devkit not also only run C#?" CreationDate="2010-07-23T20:58:23.100" UserId="395" />
  <row Id="1069" PostId="1416" Score="2" Text="Because Development Kits are not given to everyone, and even still all 360 games have mandatory testing(for a fee) by Microsoft before they are allowed to be published.&#xA;&#xA;Even patches have a mandatory testing fee from Microsoft before they can be released." CreationDate="2010-07-23T21:19:02.837" UserId="891" />
  <row Id="1070" PostId="1302" Text="I requested information on music for sale." CreationDate="2010-07-23T22:25:20.577" UserId="573" />
  <row Id="1071" PostId="1302" Score="2" Text="Actually you requested information on music for 'reasonable fees' and we're 'willing' to pay. I find free to be a very reasonable price. And if you look under 'Scoring Services' on the website you can see that he also creates music for a fee.." CreationDate="2010-07-24T00:13:27.813" UserId="820" />
  <row Id="1072" PostId="1289" Text="Ah. That wasn't clear from the original question. Thanks for taking the time to clarify it so much. (Great diagram!)&#xA;&#xA;I'd still go with a series of very small fixed joints, as opposed to doing the dynamic splits - unless it's a huge performance issue in your environment, it's much easier to code.&#xA;" CreationDate="2010-07-24T00:31:30.103" UserId="181" />
  <row Id="1073" PostId="1433" Score="1" Text="Most of the &quot;draw call overhead&quot; is actually resolving the batched up state changes, not strictly emitting the draw commands to the hardware. Games with fewer-than average state changes between draw calls can get many more draw calls per frame." CreationDate="2010-07-24T01:04:16.023" UserId="483" />
  <row Id="1074" PostId="1442" Text="My copy of 3DSMax is 'almost legit', you know? =(  is that an issue to use unity ?" CreationDate="2010-07-24T02:25:19.887" UserId="930" />
  <row Id="1075" PostId="1442" Text="Not that I know of, saved files are all the same as long as it isn't one of the crippled student versions (a la Maya PLE)." CreationDate="2010-07-24T02:28:06.073" UserId="395" />
  <row Id="1076" PostId="1425" Text="Gunshots never sound the same when recorded. Microphones just don't have the dynamic range needed to record properly. Most games with gunshot sounds have been digitally edited to sound more like what people think a gun should sound like. Explosions are the same way, recording them will give you part of the sound but it will still take some work to make it sound right in your game." CreationDate="2010-07-24T02:44:52.977" UserId="204" />
  <row Id="1077" PostId="1413" Text="If you're looking to write a 2D game in XNA (a good choice), and you're concerned about being cross-platform, I recommend looking at SilverSprite: http://silversprite.codeplex.com/ (and various other, similar libraries). XNA is not as platform-locked as you might think." CreationDate="2010-07-24T02:53:41.050" UserId="288" />
  <row Id="1078" PostId="1065" Text="Axel yeah, several machines use chips that need drivers, and they ship with crappy windows drivers, you can't EXPECT people to know that, I mentioned that is not only crappy chips, but also crappy drivers...&#xA;&#xA;My father for example, knows a LOT about computers, much more than many people we know, and he hate that he bought a ATI-based laptop, because he use GNU/Linux, and ATI drivers for it are hell hard to make work... So, imagine how a &quot;common&quot; person, would know about how to install decent S3 or Intel proper drivers..." CreationDate="2010-07-24T03:07:06.043" UserId="469" />
  <row Id="1079" PostId="1065" Text="Btw: I had one machine that I installed some kickass drivers, and it made the integrated S3 Savage GPU suddenly support lots of cool games running OpenGL... But I am a tech enthusiast..." CreationDate="2010-07-24T03:07:52.357" UserId="469" />
  <row Id="1080" PostId="1008" Text="Speaking as someone who helped create PennMUSH, and who's been in the industry 15 years, I can say firmly that I've never heard anyone use that extremely unnecessary shorthand.&#xA;&#xA;Never once." CreationDate="2010-07-24T05:26:13.080" UserId="528" />
  <row Id="1081" PostId="1452" Score="1" Text="wouldnt that be a collision detection within your walkable path ?" CreationDate="2010-07-24T06:05:11.137" UserId="567" />
  <row Id="1082" PostId="1368" Text="Suggest making this a wiki as there's no one correct answer." CreationDate="2010-07-24T07:16:07.027" UserId="984" />
  <row Id="1083" PostId="1278" Text="Eric's book is great! The basic math parts are excellent by itself, the more specialized bits make for very good starter material, as long as you don't expect to apply the code fragments and be done." CreationDate="2010-07-24T07:19:28.810" UserId="986" />
  <row Id="1084" PostId="1454" Text="would love to see a code example of this implementation, sound simple and robust" CreationDate="2010-07-24T09:03:19.110" UserId="666" />
  <row Id="1085" PostId="1438" Text="/Don't/ initialise your members in constructors? How does that help?" CreationDate="2010-07-24T09:39:48.713" UserId="259" />
  <row Id="1086" PostId="1118" Text="Looks interesting. I'm gonna check it out as soon as I can." CreationDate="2010-07-24T10:14:02.910" UserId="614" />
  <row Id="1087" PostId="1454" Score="3" Text="The A* algorithm (http://en.wikipedia.org/wiki/A*_search_algorithm) works with path costs. Just increase the cost for segments that run through a tower. Your agents will then try to avoid the towers, or if it's &quot;cheaper&quot; to attack a tower, they will attack it. The idea of the A* algorithm is to minimize the cost, so you should be able to achieve what you want by simply tweaking the path costs..." CreationDate="2010-07-24T10:38:57.223" UserId="20" />
  <row Id="1088" PostId="1452" Text="Since the blocking towers are destructible, there is actually a path. Just the cost of moving through them is way higher than moving along an unobstructed path. (See answer from coderanger below)" CreationDate="2010-07-24T10:43:11.727" UserId="20" />
  <row Id="1089" PostId="1368" Text="alright. at least you understand the purpose of community wiki" CreationDate="2010-07-24T11:36:24.967" UserId="857" />
  <row Id="1090" PostId="1453" Text="Level integrity check.. That's an excellent feature that may determine success of the game." CreationDate="2010-07-24T11:49:31.137" UserId="857" />
  <row Id="1091" PostId="1453" Text="In other hand, I don't think plugin architecture is important. I prefer opening the source and integrating new features into whenever they are required at. Though internally it might be good to have high walls between separate concerns and an automated mechanism to install them." CreationDate="2010-07-24T11:52:40.210" UserId="857" />
  <row Id="1092" PostId="1365" Text="I never was a friend of fileplanet... but that really seems to be the only source left, so thanks" CreationDate="2010-07-24T12:02:53.623" UserId="252" />
  <row Id="1093" PostId="1363" Score="1" Text="Ok, I admit this question was hard at the limit..." CreationDate="2010-07-24T12:03:37.227" UserId="252" />
  <row Id="1094" PostId="1450" Text="Edited the question to make it clearer, I'd love to know which one would be your final recommendation now! thank you!" CreationDate="2010-07-24T16:20:16.493" UserId="930" />
  <row Id="1095" PostId="1445" Text="Edited the question to make it clearer, I'd love to know which one would be your final recommendation now! thank you!" CreationDate="2010-07-24T16:20:41.513" UserId="930" />
  <row Id="1096" PostId="1438" Text="See edited post. Didn't fit in the comment box." CreationDate="2010-07-24T16:25:21.103" UserId="865" />
  <row Id="1097" PostId="1445" Score="1" Text="Still a slightly tough call, whereas Unity offers more functionality out of the box (you can tell the camera to look at something and you're good to go), you can still set the matri manually as well. It's just got a lot more functionality built in, but you can still code to your hearts desire - it's not click and play. XNA on the other hand pretty much forces you to write your own render engine - that part is fairly shielded in Unity. &#xA;They're both very easy to get up and running though, and both free....maybe give both a chance?" CreationDate="2010-07-24T16:50:47.077" UserId="865" />
  <row Id="1098" PostId="1336" Text="This is almost the correct answer. Actually you made me figure out that what I'm looking for is 3D Skeletal system for 2D animation.&#xA;I need to find algorithms for that (if exists any)" CreationDate="2010-07-24T17:21:11.023" UserId="439" />
  <row Id="1099" PostId="1421" Text="Can you add the link?" CreationDate="2010-07-24T17:22:18.417" UserId="439" />
  <row Id="1100" PostId="1397" Text="Yeah, that's almost that. Just got the other answer as correct but this one is valid too. As i commented on the other, I need a 3D skeletal system for 2D animation :)" CreationDate="2010-07-24T17:23:56.870" UserId="439" />
  <row Id="1101" PostId="1464" Text="About the particle system, I didnt mean to say it was just like I had explained before. It used structs in a pretty tight loop but in that it would also pass those structs through a modifier class which would make the particles do things like change color or position or w/e&#xA;&#xA;Other than that I do think you have a good point about the AAA game titles, im still not sure if thats the way i want to go about it though" CreationDate="2010-07-24T17:36:25.663" UserId="502" />
  <row Id="1102" PostId="1421" Text="Ah, it's James Silva. Whoops!&#xA;http://www.amazon.com/Building-XNA-2-0-Games-Professionals/dp/1430209798/ref=sr_1_1?ie=UTF8&amp;s=books&amp;qid=1279993060&amp;sr=8-1" CreationDate="2010-07-24T17:38:30.260" UserId="865" />
  <row Id="1103" PostId="1458" Text="Thank you Ricket for adding the profiling tag." CreationDate="2010-07-24T17:47:31.680" UserId="450" />
  <row Id="1104" PostId="1445" Text="You know what ? you're right I'll give both a shot, starting with unity! Thank you and +1! =)" CreationDate="2010-07-24T18:44:19.430" UserId="930" />
  <row Id="1105" PostId="906" Text="Why is this voted down!? I have done this before and it DOES work." CreationDate="2010-07-24T19:25:58.710" UserId="318" />
  <row Id="1106" PostId="1120" Text="I agree that tools are important, they are vital, but my sentence was: &quot;not focus _too much_ on ... and _too little_ on&quot; you need the tool to be good enough for what you need to accomplish. If you are adding features that you need (easy level building, fast iteration, etc), you are not focusing too much on it, you are focusing just right." CreationDate="2010-07-24T20:14:42.480" UserId="274" />
  <row Id="1107" PostId="1145" Text="What do you think about cloud streaming technologies like OnLive and Gaikai?" CreationDate="2010-07-24T21:10:34.577" UserId="667" />
  <row Id="1108" PostId="1336" Text="Check out http://en.wikipedia.org/wiki/Inverse_kinematics" CreationDate="2010-07-24T21:34:31.777" UserId="395" />
  <row Id="1109" PostId="1411" Score="4" Text="I'd agree that the question is vague and the answers all over the place, but disagree that &quot;HTML and[JS] are... bad platforms for game development.&quot; Remember Google's Pac-Man doodle? Straight HTML and JS.&#xA;&#xA;I think a certain kind of casual game works pretty well on that platform, and web-using humans already have the runtime. ( =" CreationDate="2010-07-24T21:57:33.590" UserId="148" />
  <row Id="1110" PostId="1426" Text="looks very nice. but how do you tell the programmer where to put the simlie face on the main menu for example. What happens if the artist makes it 2x wider and the main result should be put 1px to the left afterwards? " CreationDate="2010-07-24T22:42:03.227" UserId="890" />
  <row Id="1111" PostId="1322" Text="Can you name some of these glues? Should this question be turned to be a community wiki and so many aspect can be discussed how to create such glues. " CreationDate="2010-07-24T22:50:54.277" UserId="890" />
  <row Id="1112" PostId="1427" Text="looks very interesting for 3D. " CreationDate="2010-07-24T22:51:24.743" UserId="890" />
  <row Id="1113" PostId="1485" Text="Why the -1 ? You make games with that delphi icon? Or you just leave that default window-shaped icon?&#xA;&#xA;You know, I like to make everything on my game perfect, even icons." CreationDate="2010-07-24T22:54:05.363" UserId="469" />
  <row Id="1114" PostId="1444" Text="This is exactly what I am interested in. Especially how different pipelines are used in different setups. Should this question be turned to a community wiki?" CreationDate="2010-07-24T22:55:07.640" UserId="890" />
  <row Id="1115" PostId="1322" Text="For example, XNA game studio has importers for common file formats in it. Panda3D ships plugins for a wide variety of 3D tools so they can export to Panda EGG files. For the Source engine you need to convert your model to SMD format (via a variety of community supported tools) and then Valve provides a tool to convert SMD to their native binary format. The list just goes on and on but is mostly driven by your choice of engine. If you are using raw OpenGL or DirectX there are loader libraries that speak every format under the sun, so you just need to pick one and run with it." CreationDate="2010-07-24T23:12:08.627" UserId="395" />
  <row Id="1116" PostId="102" Score="4" Text="A kind of small nitpick, but it's Lua (a name), not LUA (an acronym, that or you're shouting)" CreationDate="2010-07-24T23:43:29.590" UserId="1004" />
  <row Id="1117" PostId="1485" Text="Wow... Some good replies... I returned to click the &quot;V&quot; in one, but another one showed up that shows potential!" CreationDate="2010-07-24T23:44:26.547" UserId="469" />
  <row Id="1118" PostId="126" Text="@Cubed2D: Lua is a sort of industry standard for scripting games, and it's also easier for the non-professional programmer to understand." CreationDate="2010-07-24T23:46:15.153" UserId="1004" />
  <row Id="1119" PostId="1492" Text="This is okay for slow moving objects, but anything that can move a sizable amount in a single frame will look weird. " CreationDate="2010-07-24T23:58:03.943" UserId="395" />
  <row Id="1120" PostId="126" Text="@Mike your right, can compile or generate code on the 360. If i was going to implement this i just wouldn't support c# scripts on 360, and just have it as a pc toolset feature. Just tweak the vs project to include the scripts folder on a 360 build and ignore on a pc one.&#xA;&#xA;@RCIX just because everyone else does it, dont mean you should. If you want to use Xna, its going to be more trouble than its worth. There are better ways to expose tweakable parameters to non programmers in the .net world trying to implement lua(what i assume your getting at with your non pro-programmer comment)" CreationDate="2010-07-25T00:16:40.490" UserId="120" />
  <row Id="1121" PostId="1464" Text="@Chris: Rather than making a messy system with &quot;modifiers&quot;, just code each &quot;modifier&quot; directly as a C# function and pass them to your particle system as delegates. This gives you a nice lightweight architecture and surprisingly good performance. (Of course you should do the benchmark if it matters, like this gent has done: http://www.gamedev.net/community/forums/topic.asp?topic_id=494239)" CreationDate="2010-07-25T00:36:44.163" UserId="288" />
  <row Id="1122" PostId="1411" Text="@D. Hayes they used Flash for the sound as well." CreationDate="2010-07-25T00:56:54.950" UserId="560" />
  <row Id="1123" PostId="1492" Text="This isn't suitable for all types of game, but it is for many 2D games where characters move at constant speeds. It's certainly the easiest thing to do." CreationDate="2010-07-25T01:39:54.463" UserId="174" />
  <row Id="1124" PostId="945" Text="You could better explain what you're supposed to be learning here. Your terse notes aren't very descriptive/helpful." CreationDate="2010-07-25T01:44:45.217" UserId="174" />
  <row Id="1125" PostId="1143" Score="1" Text="Cosmigo pro-motion is a pretty good DPaint clone, with some added features (love their tile editing).&#xA;http://www.cosmigo.com/promotion/index.php&#xA;Can't vouch for the mouse pointer smoothness though. Maybe if you turn down your screen resolution to the one the Amiga worked at you'll get better results. Also, maybe switch to a ball mouse as you did back then, the tactile feedback is simply not there." CreationDate="2010-07-25T02:38:26.117" UserId="865" />
  <row Id="1126" PostId="1422" Text="It might help if you mention the game" CreationDate="2010-07-25T02:41:07.297" UserId="865" />
  <row Id="1127" PostId="1328" Text="The hex dump for the AN file is actually a binary dump. Will be harder to see a pattern in a binary dump than in a he dump" CreationDate="2010-07-25T02:46:22.523" UserId="865" />
  <row Id="1128" PostId="1499" Text="Is there a way to make it not assume? What I'm trying to do is make a program where you can just draw shapes, sort of like PHUN. And that's where I came to these errors so I decided to try it out with the rectangle." CreationDate="2010-07-25T05:15:17.217" UserId="932" />
  <row Id="1129" PostId="1422" Text="the game is mixmaster.co.kr as i said in the comments of the question... thanks ;)" CreationDate="2010-07-25T05:38:05.573" UserId="567" />
  <row Id="1130" PostId="1449" Text="Thanks for the answer.  Great insights.  The reason I'm over designing the message passing is because of Lua.  I'd like to be able to create new weapons without new C++ code.  So your thoughts answered some of my unasked questions." CreationDate="2010-07-25T05:54:30.770" UserId="370" />
  <row Id="1131" PostId="1449" Text="As for the coroutines I too am a great believer in coroutines, but I never get to play with them in C++.  I had a vague hope of using coroutines in the lua code to handle blocking calls (eg, wait-for-death).  Was it worth the effort?  I'm afraid that I may be blinded by my intense desire for coroutines in c++." CreationDate="2010-07-25T05:57:36.113" UserId="370" />
  <row Id="1132" PostId="1449" Text="Lastly, What was the iphone game?  Can I get more information on the entity system you used?" CreationDate="2010-07-25T05:58:47.123" UserId="370" />
  <row Id="1133" PostId="1426" Text="It will depend on what your game engine tools provide. For example, some middleware allows you to build interfaces and UIs in Adobe Flash. Others are custom programs and are usually bundled as part of the game engine tools. A cheap way is to layout your UIs in photoshop/GIMP and have your programmer write a plugin which would extract the positions." CreationDate="2010-07-25T06:36:47.143" UserId="656" />
  <row Id="1134" PostId="731" Text="That's not stateless though. Maybe I'm wrong, but what I think of when I think of stateless, is an API where each call does not depend on previous calls at all. That means that any information that would normally be stored in state somewhere has to be passed in every call that that needs that information. For OpenGL, for example, these would be matricies on the stack, lighting, z-buffering and normalization options." CreationDate="2010-07-25T12:31:26.387" UserId="174" />
  <row Id="1135" PostId="1482" Text="Would these 'wrappers' be API's to expose functionalities of these graphic engines (renderers) already present in the system? If so, the development would take place in Visual Studio, right? One more thing, for a .NET developer like me, DirectX would more recommendable as compared to OpenGL, isn't it?  " CreationDate="2010-07-25T13:04:26.320" UserId="930" />
  <row Id="1136" PostId="1100" Text="I think you miss the point. indie = independent. If you sell out, you're not independent are you..." CreationDate="2010-07-25T13:26:59.887" UserId="603" />
  <row Id="1137" PostId="731" Text="Yes, for every draw call you would need, the mesh data, the blending state, the textures to bind, the sampling states etc..&#xA;Optimizations could be done later, without changing the API tho. Or maybe I'm reading your comment wrong.." CreationDate="2010-07-25T13:37:39.610" UserId="274" />
  <row Id="1138" PostId="1499" Score="1" Text="Not really. Polygons need to be convex and so it need to assume the winding order to verify that.&#xA;&#xA;If you're going to be drawing and creating polygons on the fly, you need to pre-process them to make sure they're under the vertex count limit (I think it's 6 or 8 verts) and at that point you might as well wind them correctly before you hand them off to Box2D." CreationDate="2010-07-25T14:25:54.003" UserId="783" />
  <row Id="1139" PostId="1459" Text="+1, although it gets rather difficult if you have 100,000 with a logic() method that is called in the loop and only a small number of object are actually doing something." CreationDate="2010-07-25T14:34:05.043" UserId="450" />
  <row Id="1140" PostId="1228" Text="I know this is a general sort of question but, I would like more detailed answers or links to good learning resources." CreationDate="2010-07-25T14:43:22.027" UserId="389" />
  <row Id="1142" PostId="1514" Text="I guess the factor that gets the most points as for the why would be having the users to redownload the entire game size everytime they commit a new patch ... image a game that is 10GB download size and every time they patch something you would need to download those 10GB even if the patch was as small as 10mb or even 1 mb... But i have to admit it would be ok if they had a up to date version for new users to download beside the patch system." CreationDate="2010-07-25T15:40:17.247" UserId="567" />
  <row Id="1144" PostId="1513" Score="1" Text="Thanks, the Wikipedia list was useful. &#xA;&#xA;Spring is really well organized - all the methods are grouped by general function (load/save, drawing, etc)&#xA;http://github.com/spring/spring/blob/master/rts/Game/Game.h&#xA;&#xA;Aquaria made me feel better about my own code organization:&#xA;http://hg.icculus.org/icculus/aquaria/file/f08b7288f92c/Aquaria/Avatar.h&#xA;I shouldn't criticize though, real artists ship." CreationDate="2010-07-25T15:55:02.470" UserId="1009" />
  <row Id="1145" PostId="1510" Text="Thanks, I found a similar system to mine in the &quot;Penumbra&quot; source code - Actions, properties, callbacks, triggers etc. It's not a complete list but it's a start. &#xA;http://github.com/FrictionalGames/PenumbraOverture/blob/master/GameEnemy.h" CreationDate="2010-07-25T16:17:23.593" UserId="1009" />
  <row Id="1146" PostId="1520" Score="1" Text="Tag made. If you expect for this to have a large amount of answers please make it community wiki. It will allow multiple people to edit individual answers instead of people constantly restating them." CreationDate="2010-07-25T16:23:16.693" UserId="14" />
  <row Id="1148" PostId="1520" Score="1" Text="For an example of how this could be beneficial. Check out this: http://gamedev.stackexchange.com/questions/480/version-control-for-game-development-issues-and-solutions" CreationDate="2010-07-25T16:23:56.613" UserId="14" />
  <row Id="1149" PostId="1525" Score="2" Text="The &quot;thumb mode&quot; tweak only applies if you're compiling for armv6.  On the newer processors (i.e. ones that can run armv7 code, so the 3GS and up), using thumb is faster for floating point calculations.  If you end up actually compiling for both (most people don't since it increases download size because you bundle two executables), you can set up a build order rule on that project setting where armv6 doesn't use thumb, and armv7 does." CreationDate="2010-07-25T16:46:50.770" UserId="51" />
  <row Id="1150" PostId="1520" Text="Thanks for the comment and links i will check it out now and see, in my point of view this kind of question for game development is a very good point for discuss but most for the MMO games i belive so i am not sure, also the community is pretty small at the momment and i was afraid of being negativated for such a question to begin with so i am not sure, thanks for creating the tag :)" CreationDate="2010-07-25T16:49:32.593" UserId="567" />
  <row Id="1151" PostId="1526" Text="Well, I mostly do Flash and Javascript games, but currently, I do a sort of brute force method which starts to bog down after a bit. I figure if I can figure out how to optimize it, I can get this game running fairly smooth." CreationDate="2010-07-25T17:10:27.397" UserId="312" />
  <row Id="1152" PostId="1529" Text="Thanks for your contribution i hope to see more people doing their input; Indeed this is a very hard issue to counter... There is also those who crack down the game to disable the anti-cheat engine and it is call from it ...which makes things even harder ... unless you have a online GM to verify that given person or others verifications like you stated. what would you think as this question for community wiki ? should i keep as is or change something to make it fit for it;" CreationDate="2010-07-25T17:29:45.807" UserId="567" />
  <row Id="1153" PostId="1528" Score="1" Text="Duplicate with http://gamedev.stackexchange.com/questions/1520/anti-cheat-for-mmos-issues-and-solutions?" CreationDate="2010-07-25T17:39:22.140" UserId="395" />
  <row Id="1154" PostId="1528" Text="That question is asking for known issues and their solutions, not specific software to help with it. I don't think it's a duplicate. Plus, it's community wiki so I think it's OK." CreationDate="2010-07-25T17:41:25.910" UserId="353" />
  <row Id="1155" PostId="1528" Text="@Prix you should move your two answers into two actual answers to the question so people can vote on them." CreationDate="2010-07-25T17:42:17.440" UserId="353" />
  <row Id="1156" PostId="1529" Text="Probably community wiki unless you are looking for a specific answer." CreationDate="2010-07-25T17:42:53.867" UserId="353" />
  <row Id="1157" PostId="1528" Text="@Sean will do thanks. @coderanger it is not a duplicate, and both are community wiki this one is specific related to what softwares we have on the market, how to contact them and which features they have, the other one is about what you do as counter messures, if you just rely on a tool like these or make your own code and so forth..." CreationDate="2010-07-25T17:47:34.997" UserId="567" />
  <row Id="1158" PostId="1008" Score="3" Text="Regardless, it is long-standing, dating back to MUD1, and standard enough to have appeared in many publications. http://en.wikipedia.org/wiki/Mob_%28computer_gaming%29" CreationDate="2010-07-25T18:57:51.673" UserId="744" />
  <row Id="1159" PostId="1528" Text="Having read both, I'll admit they're *marginally* not duplicates - but I'd *really* like to see a **title change** for one of them. Maybe change this question to &quot;List of Anti-Cheat *Packages* for MMOs&quot;. The word *solution* in both is misleading (and annoying, in that software companies have decided to over-use the word *solution* for what is just *software*)." CreationDate="2010-07-25T20:55:29.413" UserId="165" />
  <row Id="1160" PostId="1535" Text="Thanks for the contribution, have you used any anti-cheat software or had this sort issue that you had to take care of ? if so it would be nice to hear about it." CreationDate="2010-07-25T21:00:07.733" UserId="567" />
  <row Id="1161" PostId="1528" Text="@Cyclops thanks i will do that now, my english is not very good i may lack of some words in my sentences so i ended up like this eheh ..." CreationDate="2010-07-25T21:01:25.750" UserId="567" />
  <row Id="1162" PostId="1535" Score="2" Text="I haven't used any third-party anti-cheat software, no.&#xA;When I first started coding an online RPG, however, my server just called 'attack' when the client sent 'attack', instead of putting the request into a queue, things like that. Those are the most important for preventing cheating.&#xA;&#xA;Speed hacks, do all the timing on the server so they get little advantage, _but_ also send timestamps, and if you get too much drift, you'll know they are using one. Mark their account, but don't kick them immediately -- immediate feedback is a great way for someone to know what your software detects.&#xA;" CreationDate="2010-07-25T21:52:09.303" UserId="1032" />
  <row Id="1163" PostId="1473" Text="I vote on Pro-Motion. I'm not an artist but those I worked with 10 years ago swear by it. It has a steep learning curve but it's the closest you get (and actually surpasses) the good old DPaint." CreationDate="2010-07-25T21:59:17.227" UserId="490" />
  <row Id="1164" PostId="1368" Text="Just a tip: check out the existing Tilemap editors. Tiled, Mappy and a few others. Something they all have is something you're very likely going to need in your own editor." CreationDate="2010-07-25T22:02:08.550" UserId="490" />
  <row Id="1165" PostId="1404" Score="1" Text="Plug-In Editors rule. Besides what you said, if a plugin is broken, you can just disable it instead of having the Editor crash or do other unwanted stuff." CreationDate="2010-07-25T22:03:21.047" UserId="490" />
  <row Id="1166" PostId="1412" Text="@John&#xA;You're definitely correct but I'm not sure you've answered the question. If I evaluate a position with alpha=x and beta=x+1 in what situations can I use the evaluation for differing alpha and beta?" CreationDate="2010-07-25T22:26:50.950" UserId="568" />
  <row Id="1167" PostId="1526" Text="It should be easily doable in flash, maybe your brute force could be optimized. Also, in general, you don't have to update it every frame, so you could precalculate the next situation over a couple of frames" CreationDate="2010-07-26T00:11:17.273" UserId="865" />
  <row Id="1168" PostId="1542" Text="Bother, right after posting I saw this:  http://gamedev.stackexchange.com/questions/249/how-to-write-a-network-game" CreationDate="2010-07-26T00:17:29.477" UserId="1036" />
  <row Id="1169" PostId="1533" Score="1" Text="Push matrix, translate, rotate, etc. are all still there. It's the immediate mode drawing that's gone. So no more glVertex() glNormal() etc. You need to use vertex arrays or vertex buffer objects to get your geometry to the card instead." CreationDate="2010-07-26T00:21:16.020" UserId="263" />
  <row Id="1170" PostId="249" Text="Given that is a community wiki, how does it still have a bounty on it? Probably a bug." CreationDate="2010-07-26T00:33:46.087" UserId="395" />
  <row Id="1171" PostId="853" Text="@Danny - True, some questions will be &quot;more&quot; relevant on one site or the other; but I wouldn't want to turn away any relevant questions just because they could also be asked on another site." CreationDate="2010-07-26T00:43:10.640" UserId="321" />
  <row Id="1172" PostId="1540" Text="I assume you have artwork that is actually of a higher resolution? Or would you just be scaling up the lower-resolution ones?" CreationDate="2010-07-26T00:56:18.977" UserId="321" />
  <row Id="1173" PostId="249" Score="1" Text="Not a bug: http://meta.gamedev.stackexchange.com/questions/120/bounty-on-community-wiki-questions/121#121" CreationDate="2010-07-26T01:01:32.333" UserId="165" />
  <row Id="1174" PostId="1542" Text="Another vaguely-related question: http://gamedev.stackexchange.com/questions/552/synchronizing-clients-with-a-server-and-with-each-other" CreationDate="2010-07-26T01:09:04.020" UserId="321" />
  <row Id="1175" PostId="1540" Text="Yes I have artwork of a higher resolution.  Currently when I save a 100x100 pixel png-24 it appears as 100x100 pixels on the 3G device... and 200x200 pixels on the iPhone 4.  I'd like to actually save a 200x200 image and use that on the iPhone 4 (and the 100x100 on the 3G). " CreationDate="2010-07-26T02:42:00.290" UserId="1021" />
  <row Id="1177" PostId="1533" Score="1" Text="@Bob Somers I'm pretty sure the matrix stack was removed in OpenGL 2.0 ES on the iPhone, so there isn't push matrix, translate, etc.." CreationDate="2010-07-26T03:28:12.773" UserId="656" />
  <row Id="1178" PostId="1556" Text="Note that when he says &quot;will cost money&quot; he means $10k (~€7k I think). You also need to pay a yearly fee with Nintendo, not sure if Sony does something similar." CreationDate="2010-07-26T04:29:41.210" UserId="395" />
  <row Id="1179" PostId="1555" Text="The biggest problems (beyond general performance) will probably always be with things that touch the filesystem. Between PC, 360, and PS3 you have 3 nearly mutually exclusive file system APIs &gt;_&lt;" CreationDate="2010-07-26T04:37:15.340" UserId="395" />
  <row Id="1180" PostId="1556" Text="I was afraid of that. I guess PSN is out for poor me." CreationDate="2010-07-26T04:46:15.170" UserId="614" />
  <row Id="1181" PostId="1533" Text="Hmm, I must admit I'm not 100% sure, since I really don't do OpenGL for mobile that much, and definitely not for iPhone. I would think the matrix stack has to be there, though. How would you instance geometry without it?" CreationDate="2010-07-26T06:38:38.417" UserId="263" />
  <row Id="1182" PostId="1555" Text="Yeah, graphics, performance, and any other system-specific APIs like filesystem or things like achievements and networking stuff." CreationDate="2010-07-26T07:08:32.837" UserId="162" />
  <row Id="1183" PostId="1406" Text="Thanks Pixelator. We've been doing some R&amp;D with Unity lately and been impressed by what it has to offer. I’ll be sure to check out SpriteManager as we're likely to do 2D as well as 3D games.&#xA;&#xA;I'm beginning to think that those who aren't using Unity may simply be creating and managing individually animated bitmap sprites (or sprite sheets)." CreationDate="2010-07-26T08:42:28.837" UserId="936" />
  <row Id="1184" PostId="126" Text="@Cubed2D: That's a good point, but it really depends on your target platform. if you're writing just for the PC, then you can use LuaInterface and the native lua dll, and not have to write an implementation. Besides, the point is that since it has such a following in the game development world, it's naturally developed features that make it good for that environment. Moreover, i got my main start into programming through Lua, and i bet many people did, so it's understandable why people want to use it." CreationDate="2010-07-26T08:54:20.587" UserId="1004" />
  <row Id="1185" PostId="126" Text="@Cubed2D: would you use a (really beefed up) swiss army knife to build a birdhouse, when the standard tool for it is a saw (and glue)?" CreationDate="2010-07-26T08:57:51.047" UserId="1004" />
  <row Id="1186" PostId="766" Text="@Andrew: That's a very good point, but i would like to point out that you really need a good architecture for games you want to make, or it will fall flat on it's face. There's also common components to many games, which can be pulled out into a library. So i'd say that having a game engine is good, even if you build it totally from scratch each time for each game you make." CreationDate="2010-07-26T09:02:33.237" UserId="1004" />
  <row Id="1187" PostId="945" Score="3" Text="+1. +100 if i could." CreationDate="2010-07-26T09:26:53.473" UserId="1047" />
  <row Id="1188" PostId="1222" Text="I was asking specifically regarding what was a good solution in the context of independent game development - from that perspective I though this forum would be more appropriate. Either way, I will try the other site you mention." CreationDate="2010-07-26T09:37:20.933" UserId="764" />
  <row Id="1189" PostId="1213" Text="I thought this was the most appropriate site given that it is about setting up forums for a game, and I though other game developers would have better ideas/experience on this that a general application forum." CreationDate="2010-07-26T09:38:28.173" UserId="764" />
  <row Id="1190" PostId="1054" Text="@As i understand the CC license, if it's an appropriate one, all you have to do is credit the author and you can use it where you want (you mentioned CC-BY, i think that's it)" CreationDate="2010-07-26T09:49:44.180" UserId="1004" />
  <row Id="1191" PostId="1058" Text="I wouldn't expect Jeremy Soule to be cheap, given his portfolio (TA as you said, Supreme Commander, Kings &amp; Castles, maybe diablo? etc.)" CreationDate="2010-07-26T09:51:03.540" UserId="1004" />
  <row Id="1192" PostId="480" Text="Someone add Bazaar please. :)" CreationDate="2010-07-26T10:09:28.520" UserId="1049" />
  <row Id="1193" PostId="1148" Score="2" Text="lol at dynamically typed - downside..." CreationDate="2010-07-26T10:18:26.967" UserId="1004" />
  <row Id="1194" PostId="1482" Score="1" Text="They are wrappers in the sense that they let you use the OpenGL/DirectX API from managed languages (which you'd otherwise need to use from C or C++ etc.). &#xA;&#xA;As for whether you should pick DirectX - if you plan to stick to just Windows, then DirectX might be a better choice. I chose OpenGL, and I've had no problems (and there's the benefit that your apps can be easily ported to other platforms then). &#xA;&#xA;If you wish to use Visual Studio, you can (with either API). " CreationDate="2010-07-26T10:48:17.873" UserId="734" />
  <row Id="1195" PostId="766" Text="@RCIX - A library of common components is a good thing to build up. The problem comes when you're working on those components just for their own sake (and if you want to turn them into middleware, you've got a huge problem)." CreationDate="2010-07-26T11:06:47.080" UserId="288" />
  <row Id="1196" PostId="766" Text="As for architecture: as little as possible, please. Let your platform (framework and your language) be the bulk of your architecture. If you find yourself making a lot of &quot;architecture stuff&quot; - then perhaps you need to reconsider your choice of platform." CreationDate="2010-07-26T11:10:25.670" UserId="288" />
  <row Id="1197" PostId="1585" Text="The Floating Point Determinism article blew my head. Its too bad Synchronizing State isnt done because thats the one i wanted to read. Although Floating Point Determinism does answer lots of questions." CreationDate="2010-07-26T11:15:50.453" UserId="1047" />
  <row Id="1198" PostId="1535" Score="1" Text="I like this part `but also send timestamps, and if you get too much drift, you'll know they are using one. Mark their account, but don't kick them immediately -- immediate feedback is a great way for someone to know what your software detects.` i was recently looking into implementing a timestamp and warn system from users marked, currently what i have put the player on a list what i am working on now is that if some has a high abuse usage it will send an alert to an online GM for verification ... " CreationDate="2010-07-26T12:11:17.997" UserId="567" />
  <row Id="1199" PostId="1533" Text="@Bob Your comment would be accurate if you were comparing OpenGL ES 1.1 to OpenGL 1.5. ES 2.0 is a completely different beast and the matrix operations are indeed gone. Of course there are plenty of places you can pick up library of C++ matrix classes." CreationDate="2010-07-26T12:32:07.347" UserId="93" />
  <row Id="1200" PostId="1567" Score="7" Text="For the love of god don't put a rendering abstraction layer in your first project! Premature abstraction layer building is leading cause of heart disease amongst programmers worldwide. Seriously though, it threatens to derail your project and you'll more than likely want to rewrite your engine heavily for the next thing you make anyway." CreationDate="2010-07-26T12:55:30.667" UserId="93" />
  <row Id="1202" PostId="1441" Score="1" Text="Guys, I'm going to give some of the questions in here a try this week, then the one I think is more adequate will be accepted and upvoted, because this question, as subjective as it is, still has an answer. If you have another technology, comment, or tip to add, please write an answer, and if it's useful, i'd be thankful, and will certainly upvote it! Thank you." CreationDate="2010-07-26T13:57:06.650" UserId="930" />
  <row Id="1204" PostId="1595" Score="3" Text="You should definitely read the Gaffer on games link in the original post. I don't think this is a bad answer per se, so I won't down vote it, but I don't agree *with any of your arguments*." CreationDate="2010-07-26T14:15:16.530" UserId="653" />
  <row Id="1205" PostId="1442" Text=" 	&#xA;I don't think that is going to be a problem.. I've been working with 3DS MAX for 3 versions now, shared models with friends and even imported/exported from other versions and programs.. It's a pity there is no nearly full version for students, not proud it though, but I don't (or intend to) use it for personal or professional profit, just for learning =) " CreationDate="2010-07-26T14:34:07.467" UserId="930" />
  <row Id="1206" PostId="1597" Text="thx for the contribution ... it was getting hard to find others" CreationDate="2010-07-26T14:40:36.077" UserId="567" />
  <row Id="1207" PostId="1598" Text="This is the most common way of doing a game loop. However, it's not great for battery life when working with mobile devices." CreationDate="2010-07-26T15:07:44.577" UserId="662" />
  <row Id="1208" PostId="1598" Text="@knight666; are you suggesting that using a longer timestep, the reduced amount of iterations will save batterylife?" CreationDate="2010-07-26T15:09:34.543" UserId="653" />
  <row Id="1209" PostId="1598" Text="That's still a variable update -- the update delta changes based on how long the frame took to render rather than some fixed value (i.e, 1/30th of a second)." CreationDate="2010-07-26T15:11:58.313" UserId="34" />
  <row Id="1211" PostId="360" Text="Thanks for the clarification.  I did a quick Google search for &quot;public domain fonts&quot; and got about half a million hits.  Several are people asking the same question (the answers they get might be helpful! :), but there were also several good font sources.  (one example: http://tulrich.com/fonts/ ).  If the person posting the font claims authorship, and states that it's in the public domain (or CC), I'd think you'd be in the clear.  Good luck!" CreationDate="2010-07-26T16:05:36.400" UserId="240" />
  <row Id="1212" PostId="1576" Text="Given that Darwinia was released on Linux some time ago, I think it's reasonable to assume that Multiwinia's changes to the code base resulted in non-portable changes. (Which I would assume to be primarily networking-related.) -- I'm not posting an answer because I don't know for sure. :)" CreationDate="2010-07-26T16:30:50.277" UserId="613" />
  <row Id="1214" PostId="1411" Text="Yup! But they had to turn it off during the course of the day because of problems with the Flash runtime in Firefox. No such problems in HTML/JS. I'm just sayin'." CreationDate="2010-07-26T17:16:43.007" UserId="148" />
  <row Id="1215" PostId="1567" Text="Couldn't agree more. Make the game. The amount of programmers that never finish a game because they keep coming up with 'da best architecture evar' is staggering." CreationDate="2010-07-26T17:18:18.043" UserId="865" />
  <row Id="1216" PostId="1576" Text="Networking related makes me think of something I read, introversion had problems with the simulation playing out differently depending on the computer and I think one of the factors was the OS. As above, I don't have an answer, but it is an issue you may bump in to." CreationDate="2010-07-26T17:30:03.033" UserId="251" />
  <row Id="1218" PostId="1058" Text="Me neither, but his group maybe may not ask too much, but I really don't know, the people that make music for me from that list is Skyrunner and Emmet, mostly for technical reasons... Virt can do it too, but he is a bit more pricey than what I can pay (that is near to 0 actually... Emmet and Skyrunner do stuff for me more for the friendship and word-of-mouth)&#xA;&#xA;Also I have no idea of Siren's (Mr. Brandon) price, but whatever it is, it is worth it :D" CreationDate="2010-07-26T17:42:09.237" UserId="469" />
  <row Id="1219" PostId="1054" Text="The price for Online games was 30 euro a year, for Console and PC was 900 euro at time of looking." CreationDate="2010-07-26T17:49:26.650" UserId="696" />
  <row Id="1221" PostId="1603" Text="fraps is too slow for you? make sure you've set it to record at 60fps not the default 30fps." CreationDate="2010-07-26T18:00:33.693" UserId="891" />
  <row Id="1222" PostId="1606" Score="2" Text="I don't know much about OpenGL/DirectX, but I do enjoy playing games on a machine that's more than a year old. I'd imagine your knowing pre 3.x OpenGL would be beneficial to my gaming habits. Just a thought." CreationDate="2010-07-26T18:49:21.927" UserId="303" />
  <row Id="1223" PostId="1610" Text="Snow Leopard does support most extensions of OpenGL 3 - even geometry shaders." CreationDate="2010-07-26T18:58:36.650" UserId="501" />
  <row Id="1224" PostId="1610" Text="@Alex Supporting &quot;most&quot;extensions doesn't mean core GL3 is supported. And we're just talking about 3.x" CreationDate="2010-07-26T19:09:54.767" UserId="35" />
  <row Id="1226" PostId="1603" Text="Could you make your question a bit wider ? i think it would be interesting to know not online about recording the game itself for a simple trailer but aswell for producing videos that will be diplayed in the game, the so named Cut Scenes or even trailers with addition for more visual effects to it like switching parts of the video etc... Suggesting it to your question since there inst any question alike around i belive..." CreationDate="2010-07-26T19:37:44.433" UserId="567" />
  <row Id="1227" PostId="1610" Text="@Axel Gneiting: It's just not the same. Most of the interesting features of OpenGL 3.0+ *aren't* available as extensions. There are a large number of core changes." CreationDate="2010-07-26T19:45:41.170" UserId="613" />
  <row Id="1228" PostId="1482" Text="Hm.. got it, thanks! But wouldn't using managed languages (such as C#, the one that I'm more used to) imply that it would end up not allowing me to port to other plataforms just as easily ? if so, which languages would you recommend me to work with in order to achieve some level of portability, then ?" CreationDate="2010-07-26T20:04:58.863" UserId="930" />
  <row Id="1229" PostId="1614" Text="I'm not sure about your advice concerning Java. Google and Amazon, to name two big players, both use Java extensively. Likewise if you apply to Microsoft or a Microsoft shop knowing Java will prepare you using C#. Obviously for game development Java is a non-starter but for the rest of the industry it's a good choice." CreationDate="2010-07-26T20:20:15.300" UserId="539" />
  <row Id="1230" PostId="1612" Score="49" Text="Saying that a degree is no a substitute for hardwork does not mean that you would not benefit intellectually and financially if you have one. In addition to the general value a well rounded education brings, a CS degree is a necessary requirement to get through many HR filters in the larger industry. My advice would be get a more general education and spend your free time working on games." CreationDate="2010-07-26T20:30:49.283" UserId="539" />
  <row Id="1231" PostId="1614" Score="1" Text="I was talking about Java in terms of trying to get a Game Programming position.  I'm a Sun Certified Java Programmer and program Java professionally.  It's a good applications/web language but a poor Game programming language.  C++ is the defacto game programming language, and maybe some python, but like the article I linked to said, Java lacks a lot of the difficult programming that makes a programmer great, IE: pointers and recursion(I have yet to see a curriculum that spends much time at all on recursion that is Java based)." CreationDate="2010-07-26T20:43:24.120" UserId="891" />
  <row Id="1232" PostId="493" Score="1" Text="Why not use Git's submodules to manage the binary files? That way you could create separate repositories as needed and then tie them together using submodules. Any future changes in the main repository should not affect the submodules." CreationDate="2010-07-26T20:43:51.063" UserId="539" />
  <row Id="1233" PostId="1618" Score="1" Text="+1 Great answer, everything I was going to say plus more " CreationDate="2010-07-26T21:18:36.693" UserId="127" />
  <row Id="1234" PostId="736" Text="@zarawesome if he did inherit both from a base class he might well find himself adding functionality in one subclass that he later needs in the other, leading to lots of refactoring." CreationDate="2010-07-26T21:28:36.607" UserId="119" />
  <row Id="1235" PostId="1600" Text="RIGHT! I forgot about KDE games!" CreationDate="2010-07-26T22:00:36.667" UserId="911" />
  <row Id="1236" PostId="1623" Text="`because recording a video is only half the process` Good point i am aswell wondering that as stated on the comment of the initial question..." CreationDate="2010-07-26T22:24:32.110" UserId="567" />
  <row Id="1238" PostId="642" Text="Totally agree with ‘keep it small’. I would even recommend first timers to go for ‘laughably small’ or ‘the smallest thing you would still consider a game, just’. " CreationDate="2010-07-26T23:01:24.810" UserId="804" />
  <row Id="1239" PostId="766" Text="@Andrew: more very good points. As far as architecture, in my latest game endeavor, i had to write a good structure for my code, otherwise it would have probably been less performant, as well as harder to expand when i need to." CreationDate="2010-07-26T23:57:51.780" UserId="1004" />
  <row Id="1240" PostId="1628" Text="Well.. wikipedia would be the first obvious place to look things from. Also everybody this far probably know that they tend to simulate body motions through forces. There's much more in box2d than that. Here's few things I'm interested about: Constraint solving and some other stuff that prevents simulation from exploding. Collision detection algorithms. Optimizations on constraint solving and collision detection. Joint/Collision response algorithms. Simulation of the friction." CreationDate="2010-07-27T00:02:47.340" UserId="857" />
  <row Id="1241" PostId="1626" Text="I'll eventually answer the question myself because I am studying the sources. If you manage to shorten the effort I'll appreciate it." CreationDate="2010-07-27T00:05:21.093" UserId="857" />
  <row Id="1242" PostId="1628" Text="Thats verging into &quot;too long for a real answer&quot; territory. For example, damping to prevent simulation artifacts is a [complex bit of math](http://opende.sourceforge.net/wiki/index.php/Manual_%28Concepts%29#Constraint_Force_Mixing_.28CFM.29). As for things like joint force transfer, the simple version is that each joint has specific axes it will transfer force on with a percentage of the body's energy counting towards the join depending on the angle between the two. The simplest joint is a fixed link, where all force from either side is translated across." CreationDate="2010-07-27T00:27:29.223" UserId="395" />
  <row Id="1243" PostId="1639" Text="i need someone to add appropriate tags to this question, since i don't have 150 rep..." CreationDate="2010-07-27T01:30:54.770" UserId="1004" />
  <row Id="1244" PostId="1638" Score="1" Text="Thanks for the answer Olafur. I am ready to mark this as *the* answer yet, though. It's a good example of a single metric but I'm curious what the larger industry is doing and how they are keeping tabs on the numbers. " CreationDate="2010-07-27T01:46:04.203" UserId="539" />
  <row Id="1245" PostId="1638" Text="Man I hope you get a much better answer than mine :D Since this solution was the first one I made and there are probably great tools or solutions out there. :)" CreationDate="2010-07-27T02:19:04.123" UserId="10" />
  <row Id="1246" PostId="1598" Score="1" Text="@Dennis: as i understand it, the Update function is called with a fixed delta..." CreationDate="2010-07-27T02:45:51.000" UserId="1004" />
  <row Id="1247" PostId="1635" Text="Also related to font-searching (although definitely a different question): http://gamedev.stackexchange.com/questions/360/where-can-i-find-fonts-which-i-can-distribute-with-an-open-source-game" CreationDate="2010-07-27T02:47:27.503" UserId="321" />
  <row Id="1248" PostId="1603" Score="1" Text="Prix that would be too different... Making Cut Scenes is whole another field of work!" CreationDate="2010-07-27T03:17:55.420" UserId="469" />
  <row Id="1249" PostId="1634" Text="We must've gone to different schools, because my undergrad CS program was a joke w.r.t. engineering systems.  I agree, good *engineers* are critical, but from my understanding that's more the area of Software Engineering rather than Computer Science.  It also heavily depends on good critical thinking skills, which as far as I'm concerned is more of a question of aptitude than schooling." CreationDate="2010-07-27T03:23:12.960" UserId="51" />
  <row Id="1250" PostId="1411" Text="Wow, pac-man.  Groundbreaking.&#xA;&#xA;There's a reason nobody uses HTML/JS in gaming for anything other than tech demos." CreationDate="2010-07-27T03:33:30.000" UserId="528" />
  <row Id="1252" PostId="1634" Score="1" Text="I certainly agree about needing critical thinking skills, I'd even go beyond that to say innate talent in general. (I saw may fair share of smart people just not able to hit the 'pointer epiphany' in school..) &#xA;&#xA;And some schools certainly can have terrible programs. Anything that involves that much of your time/money is certainly worth plenty of research and planning. As Tetrad said, schooling isn't going to get you a job - school should be less of a credential to show employers that you finished and more an opportunity to prepare for that job as much as possible. :)" CreationDate="2010-07-27T04:27:16.007" UserId="427" />
  <row Id="1253" PostId="1480" Text="Excellent answer. Really disappointing end there. It'd be amazing if you could revisit this and tie it together somehow to give it a coherent ending." CreationDate="2010-07-27T04:42:20.967" UserId="189" />
  <row Id="1254" PostId="1629" Text="I had to read this twice to figure out what you were asking.  &#xA;Consider reworking the question to make this more obvious." CreationDate="2010-07-27T05:00:37.043" UserId="370" />
  <row Id="1255" PostId="1598" Score="1" Text="@knight666 Uh - how do you figure that? If you have vsync on and are not stuttering - these methods should be identical! And if you have vsync *off* you're updating *more* often than you need to and probably wasting CPU (and therefore battery) by not letting it idle!" CreationDate="2010-07-27T05:21:26.493" UserId="288" />
  <row Id="1256" PostId="1651" Score="1" Text="Of course the opposite is true, too. If you attend a traditional school you will have a chance to network with people in other industries. I'd even argue that it's harder to meet lawyers as a computer scientist than it is at as college freshman, whereas it's quite easy to attend GDC and get to know game developers." CreationDate="2010-07-27T05:36:25.580" UserId="539" />
  <row Id="1257" PostId="1562" Score="1" Text="and LBP 2 is set to be what amounts to a full fledged game creator for the PS3 :)" CreationDate="2010-07-27T05:39:44.437" UserId="1004" />
  <row Id="1258" PostId="1653" Text="possible duplicate of [Legal issues for a &quot;fangame&quot; of a commercial franchise?](http://gamedev.stackexchange.com/questions/712/legal-issues-for-a-fangame-of-a-commercial-franchise)" CreationDate="2010-07-27T06:11:58.023" UserId="51" />
  <row Id="1259" PostId="270" Text="unordered_map&lt;&gt; is now widely available and has extremely strict performance requirements in the current TR1 draft. (To the point of overspecification I think - it even forbids open hashing, and while that's usually slower, I don't think it should be outright forbidden by the standard.)" CreationDate="2010-07-27T06:30:58.267" UserId="744" />
  <row Id="1260" PostId="1629" Text="@caspin, what parts are you having trouble with?" CreationDate="2010-07-27T06:33:03.067" UserId="647" />
  <row Id="1261" PostId="1612" Score="5" Text="Not only that, companies do often ask for a degree or similar experience. Getting experience takes a while. Also, companies do like to see good coding practices, problem decomposition skills and algorthm knowledge. A lot of that is taught in schools (I know, I dropped out of a few of em). Also, your co-workers might be university grads and they expect you to understand them on a certain level. Lastly, if you want to work abroad, the degree becomes suddenly VERY important, even if you have 15 years industry experience." CreationDate="2010-07-27T06:49:54.233" UserId="865" />
  <row Id="1262" PostId="1645" Score="4" Text="Framerate independence and deterministic playback are also useful for testing too. Noel Llopis has a good article here: http://gamesfromwithin.com/back-to-the-future-part-1 (there's a second part linked too)." CreationDate="2010-07-27T07:08:05.600" UserId="634" />
  <row Id="1263" PostId="1670" Score="9" Text="Of course there's also the issue of lack of C# compilers for consoles and the memory protection model preventing JIT. Having said that, I'd indeed really not want to give up the control C/C++ gives me over threading, memory management/access and optimization. Lastly, 5fps on a 60 fps game is a lot, not to mention 50 meg on a 256 mb machines." CreationDate="2010-07-27T07:19:17.543" UserId="865" />
  <row Id="1264" PostId="1607" Text="+1 for ENet, I've been using it for a while now for clients and they like it. " CreationDate="2010-07-27T07:26:05.263" UserId="1088" />
  <row Id="1265" PostId="1660" Score="8" Text="Good answer. http://www.copyright.gov/fls/fl108.html is the US Copyright Office's statement on the matter, in case that helps you sleep better ;)" CreationDate="2010-07-27T07:35:55.240" UserId="94" />
  <row Id="1266" PostId="1660" Score="1" Text="Aside from not copying the art, you also shouldn't copy other trademarkable assets like the name of the game (or the characters in the game, if there were any)." CreationDate="2010-07-27T07:44:12.803" UserId="458" />
  <row Id="1267" PostId="1661" Text="I'll take a look a that if no one has a better answer. The reason I hesitate is because their pre-loader might be heavily integrated into the rest of the framework making it hard to transfer to another project." CreationDate="2010-07-27T07:49:32.540" UserId="539" />
  <row Id="1268" PostId="1171" Score="1" Text="I know that this is not specifically what you're asking for, but my advice for what should be happening during the loading screen is: Something Interesting! :) Entertain the player with a bit of story (like a cutscene), a minigame, or maybe already show a menu insofar possible." CreationDate="2010-07-27T09:03:38.573" UserId="769" />
  <row Id="1269" PostId="936" Text="All the features are there, but the way to access them, Javascript, is lacking when compared to ActionScript 3" CreationDate="2010-07-27T10:15:27.640" UserId="769" />
  <row Id="1270" PostId="1628" Text="Like I said in the question: It's all right to just tell there's complex math here and there and provide a link for further reading." CreationDate="2010-07-27T11:03:27.287" UserId="857" />
  <row Id="1271" PostId="1470" Text="Great point about choosing an area to focus on." CreationDate="2010-07-27T12:40:42.163" UserId="825" />
  <row Id="1272" PostId="1449" Text="Yes, C++ coroutines are... difficult.  I've done them in C++ (different project) by backing them with threads and using posix thread barriers.  But it turns out to be way too heavyweight for something like a coroutine.  But it was nice to get the simplicity of serial code without worrying about synchronization (mutex)." CreationDate="2010-07-27T12:52:59.860" UserId="430" />
  <row Id="1273" PostId="1669" Score="1" Text="Took the words right out of my mouth. Save a tree, use the internet!" CreationDate="2010-07-27T13:02:04.023" UserId="14" />
  <row Id="1274" PostId="1449" Score="1" Text="The entity system was mostly in C++.  So there was, for example, an Imp class that handled the Imp's behavior.  Lua could change Imp's parameters at spawn or via message.  The goal with Lua was to fit in a tight schedule, and debugging Lua code is very time-consuming.  We used Lua to script levels (which entities go where, events that happen when you hit triggers).  So in Lua, we'd say things like, SpawnEnt( &quot;Imp&quot; ) where Imp is a manually registered factory association.  It would always spawn into one global pool of entities.  Nice and simple.  We used a *lot* of smart_ptr and weak_ptr." CreationDate="2010-07-27T13:03:57.577" UserId="430" />
  <row Id="1276" PostId="1679" Text="+1 just for the Vectrex reference. I spent some fun hours on Scramble and Tempest as a kid in the early 80s. Without that I probably wouldn't have ended up as a game developer today." CreationDate="2010-07-27T13:09:41.010" UserId="1101" />
  <row Id="1277" PostId="1685" Text="Hum... points are not FASTER than textures?" CreationDate="2010-07-27T13:25:17.387" UserId="469" />
  <row Id="1278" PostId="1679" Text="Yep, Tempest is awesome :D" CreationDate="2010-07-27T13:25:45.653" UserId="469" />
  <row Id="1279" PostId="1689" Text="link on reduced cost devkit:&#xA;http://www.xbitlabs.com/news/multimedia/display/20090324095547_Sony_Slashes_Pricing_of_PlayStation_3_Development_Kit.html" CreationDate="2010-07-27T13:28:54.553" UserId="1095" />
  <row Id="1280" PostId="1685" Score="2" Text="Graphics hardware is specifically optimised for rasterising textures to the framebuffer. If points are faster, it's likely to be by a negligible amount, and you lose out on all the possibilities that you get with texturing." CreationDate="2010-07-27T13:36:43.210" UserId="1101" />
  <row Id="1281" PostId="1560" Text="More than likely, like with the Wii, you will need the pro version in addition to a special secondary license. as well as the devkit." CreationDate="2010-07-27T13:38:06.030" UserId="14" />
  <row Id="1282" PostId="1687" Score="2" Text="+1 the article you linked to was fantastic. I was so focused on pure OO design, I completely overlooked the component/decorator type model. " CreationDate="2010-07-27T13:51:56.480" UserId="1058" />
  <row Id="1284" PostId="1692" Score="1" Text="Just to be clear, you want the points to be evenly spaced wrt the circumference?" CreationDate="2010-07-27T14:35:24.143" UserId="259" />
  <row Id="1285" PostId="1202" Text="One shaded, one texture.&#xA;I assumed only per frame changes count.&#xA;He explicitly asked about examples." CreationDate="2010-07-27T14:46:23.290" UserId="335" />
  <row Id="1288" PostId="1660" Score="3" Text="Good answer, but:&#xA;If the art is _too_ similiar, it's illegal.&#xA;The balancing is part of the art!&#xA;&#xA;And: Different countries have different rules!" CreationDate="2010-07-27T15:03:24.250" UserId="335" />
  <row Id="1289" PostId="134" Text="http://www.blendercookie.com has many good tutorials." CreationDate="2010-07-27T15:04:35.120" UserId="178" />
  <row Id="1290" PostId="1628" Text="Well, there you go then :-)" CreationDate="2010-07-27T15:32:26.753" UserId="395" />
  <row Id="1291" PostId="1687" Score="1" Text="The component pattern isn't really &quot;less pure&quot; OO :)" CreationDate="2010-07-27T15:40:17.660" UserId="824" />
  <row Id="1292" PostId="374" Score="1" Text="Not sure what you're talking about.  Rogue was written in C.  http://roguebasin.roguelikedevelopment.org/index.php?title=Rogue" CreationDate="2010-07-27T15:47:10.267" UserId="818" />
  <row Id="1293" PostId="374" Score="1" Text="I'm sure you're right about the original Rogue being in C, since it was written on Unix, but there are certainly several Rogue *clones* in Lisp: http://www.cl-user.net/asp/root-dir (not the direct Game link, it had so many special characters it seems to have broken linkage)." CreationDate="2010-07-27T15:52:03.120" UserId="165" />
  <row Id="1294" PostId="1612" Score="2" Text="@Kaj - in my experience, I've found that interviewers were more impressed by an actual demo of my work (which I happened to have online) than by my degree, which (imho) comes from a fairly large, respectable tier 1 research university.  Then, after two or three years of actual work, my degree is fairly irrelevant compared to the work experience I have.  If I had to look for a job tomorrow, I would sell myself on the contributions I've made to my previous employers, and the degree would be a one-liner on my resume." CreationDate="2010-07-27T16:12:25.290" UserId="256" />
  <row Id="1295" PostId="1612" Score="1" Text="Oh, don't get me wrong, I don't have a degree and I managed to get a job in the games industry. But when I decided to work abroad I was hired no problem (15 years in the industry helps), however convincing immigrations was a long and almost failed process simply because I didn't have a degree. Companies know a degree don't mean a lot, but they do show discipline and guarantee some sort of research skills. I have done a fair amount of job interviews (as employer, not candidate) and demos are a tricky thing as you never know how much is theirs. But you're right, experience is tough to beat." CreationDate="2010-07-27T16:25:44.733" UserId="865" />
  <row Id="1296" PostId="1685" Text="like... what?&#xA;Mind you I am not making a full featured particle system, it is only a specific effect (small explosions, mostly for gameplay feedback that you hit something)" CreationDate="2010-07-27T16:46:54.227" UserId="469" />
  <row Id="1297" PostId="1669" Score="3" Text="You can learn a lot online, but in my experience the really good information is in the books. There's often little quality control on internet articles and a few too many instances of the blind leading the blind." CreationDate="2010-07-27T17:30:55.220" UserId="1101" />
  <row Id="1298" PostId="1618" Text="that's exactly what I was trying to figure out! Thanks!" CreationDate="2010-07-27T17:52:09.860" UserId="1067" />
  <row Id="1299" PostId="1612" Text="I see - you're saying the degree would have helped tremendously with getting through immigrations when moving to a new country.  When I part-timed at a dev shop here in the US, we hired a bunch of people from Canada and the HR person helped them with a lot of paperwork for that - they had to move out here and everything.  Was it similar for you?" CreationDate="2010-07-27T18:20:23.657" UserId="256" />
  <row Id="1300" PostId="1614" Score="1" Text="A &quot;real&quot; game developer (20+ years in the industry, did a lot of arcade classics and moved to console stuff) told me the only real technical reason against Java was the managed memory - with the puny hardware they were working on, they couldn't count on a JVM to control memory for them efficiently.  I wouldn't knock Java like that... have you heard of Jake2 (port of Quake2) or Runescape (applet-based MMO)?  Games are possible to do in Java, and there are some people doing it." CreationDate="2010-07-27T18:34:47.780" UserId="256" />
  <row Id="1301" PostId="936" Text="How so? Please emphasize." CreationDate="2010-07-27T18:44:25.717" UserId="422" />
  <row Id="1302" PostId="1704" Score="1" Text="Okay, sure. But in cases like Android (or other games) you need to load in a lot of graphics/sounds in to memory before you start the game, not during.  How can I use what you're saying (factories) to do this during a load screen?  Just hit every object in the factory on the load screen so it caches them?" CreationDate="2010-07-27T18:44:25.997" UserId="47" />
  <row Id="1303" PostId="1614" Score="1" Text="BTW, what's up with &quot;Java lacks difficult programming&quot;?  That seems misdirected.  Decades of collective C and C++ experience in the software industry hasn't stopped buffer overflows in everyday programs - does that mean it's appropriately difficult?  Guy Steele said &quot;We managed to drag a lot of them about halfway to Lisp&quot; - I see it as enabling higher abstraction, and with that comes different problem spaces and their accompanying issues.  I think if you're not doing difficult programming in Java, you're not really working on difficult problems." CreationDate="2010-07-27T18:46:39.940" UserId="256" />
  <row Id="1305" PostId="1710" Text="Is the server side going to be written in Java or Python? Will a simple database on the server suffice or do you need to perform much game logic?" CreationDate="2010-07-27T19:29:48.910" UserId="539" />
  <row Id="1306" PostId="1687" Score="2" Text="Indeed. OO is often equated with inheritance. But inheritance is only one tool OO offers, composition is another." CreationDate="2010-07-27T19:37:48.843" UserId="685" />
  <row Id="1307" PostId="1639" Text="What type of game? Web, downloadable, Flash, Java, etc. makes a big difference in terms of who you should talk to." CreationDate="2010-07-27T19:52:36.330" UserId="187" />
  <row Id="1308" PostId="1660" Text="If you get accused of stealing, use the Quentin Tarantino defense: &quot;I don't steal, I do homages&quot; =)" CreationDate="2010-07-27T20:06:10.960" UserId="256" />
  <row Id="1309" PostId="1621" Text="It's a lot easier to learn to knock out working code on your own time than it is to learn the subject matter of computer science. Given the choice between a self-taught programmer with a CS degee and a self-taught computer scientist with a game degree - all other appearances being basically equal, like a demo or test results or whatever - I would put far more stock in the former." CreationDate="2010-07-27T20:08:58.723" UserId="744" />
  <row Id="1310" PostId="1614" Score="3" Text="Most of Joel's points about JavaSchools apply just as well to GameSchools. His point is that real education requires breadth, and his lament isn't about Java per se, it's that CS degrees are becoming more and more like trade schools - e.g. game schools - and those just aren't as good at producing *thinking* people, even if in the short-term it produces *working* people." CreationDate="2010-07-27T20:13:34.967" UserId="744" />
  <row Id="1311" PostId="1711" Text="Interesting, thanks.  (And thanks for the tags improvement :)" CreationDate="2010-07-27T20:17:23.273" UserId="430" />
  <row Id="1312" PostId="1704" Text="I'm unfamiliar with Android details but I have no idea what you mean by &quot;before you start the game&quot;. Is it really impossible to load a resource when you need (or when you'll need it 'soon') it rather than when you start the program? I find that extremely unlikely, otherwise e.g. you could never have more textures than fit in Android's meager RAM." CreationDate="2010-07-27T20:17:27.393" UserId="744" />
  <row Id="1313" PostId="1709" Text="Just because you need to manage assets does not necessitate AssetManagers, a capitalized important noun that probably has too many methods, poor performance, and muddy memory semantics. For a comparison, think about what happens if you have a lot of project _management_ (usually good), and then when you have a lot of project _managers_ (usually bad)." CreationDate="2010-07-27T20:20:09.867" UserId="744" />
  <row Id="1314" PostId="1699" Text="I'm voting you down because I'm sick of seeing more-or-less bare &quot;Use MVC&quot; as an acceptable answer. If you are developing on any modern platform, you're already using MVC at multiple levels. It's not a specific answer, and it's not a good answer, because it doesn't actually tell people how to structure classes, which is task/domain-specific. You just end up with a lot of people writing &quot;class Modal...; class View...; class Controller...&quot;&#xA;&#xA;MVC is a pattern with a lot of good high-level explanatory power when talking about existing code. It is not a pattern with a lot of good planning power." CreationDate="2010-07-27T20:31:50.120" UserId="744" />
  <row Id="1315" PostId="1612" Text="Yes, I had HR and a specialized lawyer working for me, and the company has significant experience with foreign employees. It still took them 11 months and it was really a toss-up whether they'd let me through or not." CreationDate="2010-07-27T20:42:25.927" UserId="865" />
  <row Id="1316" PostId="909" Text="This question is a bit too nebulous to be useful." CreationDate="2010-07-27T20:48:47.863" UserId="160" />
  <row Id="1317" PostId="1718" Score="1" Text="True, but he's aiming for the Vectrex style, it would work less well there." CreationDate="2010-07-27T21:20:29.903" UserId="865" />
  <row Id="1318" PostId="1704" Text="@Joe take a look at my other question about &quot;loading screens&quot;: http://gamedev.stackexchange.com/questions/1171/what-all-should-be-happening-during-the-loading-screen Hitting an empty cache means long times to go to to disk and could result in some FPS performance hits on those first calls.  If you already know what you're going to hit ahead of time, might as well hit it during loading to pre-cache it, right?" CreationDate="2010-07-27T21:46:09.283" UserId="47" />
  <row Id="1319" PostId="1704" Text="Again I can't speak to Android, but usually going to disk is exactly what you can do without taking FPS hits, because the thread going to disk won't use up any CPU at all. You just need to budget doing it far enough in advance that you don't get pop-in.&#xA;&#xA;If you're going to pre-cache everything because you know ahead of time what you need, you really don't need an AssetManager, because you don't need to manage assets at all - they're already all at hand." CreationDate="2010-07-27T21:58:44.410" UserId="744" />
  <row Id="1320" PostId="1726" Text="I am avoiding extensions, the silly ones that the engine (that I don't made) already use, are alraedy sufficient to several people complain that the game don't run..." CreationDate="2010-07-27T22:18:52.977" UserId="469" />
  <row Id="1321" PostId="1718" Text="Exactly what Kaj said... it would be pointless, AND would increase download size (I am switching the most graphics I can from sprite to true vectors, so I can reduce filesize)" CreationDate="2010-07-27T22:19:30.167" UserId="469" />
  <row Id="1322" PostId="1730" Text="I think what we're going to end up going with is a take-home, timed programming test.  So something like this, but can be fired off via email without even having to necessarily take up one of our programmer's time (other than scoring if after the fact of course).  We already do a phone interview, and that's a good screening process, but I was hoping for more hands-off ideas.  +1 anyway." CreationDate="2010-07-27T22:30:54.603" UserId="51" />
  <row Id="1323" PostId="1704" Score="1" Text="@Joe, isn't a factory also a &quot;Dedicated Manager&quot;?" CreationDate="2010-07-27T23:09:05.253" UserId="1124" />
  <row Id="1325" PostId="1729" Score="2" Text="Wouldn't an iFrame circumvent sitelocking? I know it's an age old debate, but I believe, since people will steal your content anyhow, it might be better to embed advertising and at least get revenue from it. And if they steal it, at least they don't steal your bandwidth.&#xA;Of course, the downside is that you can't post updates once it leaves your site." CreationDate="2010-07-27T23:46:32.883" UserId="865" />
  <row Id="1326" PostId="1669" Text="@Kylotan I feel the same, not to mention I find it really hard to read e-books from my computer screen, and my Kindle is only really good for front-to-back books whereas I like to flip around and sometimes make notes in my &quot;serious&quot; books." CreationDate="2010-07-27T23:47:30.183" UserId="189" />
  <row Id="1327" PostId="1639" Text="In my case, an Xbox Live Indie game, but i wanted to word the question generically to make it of most use to everyone." CreationDate="2010-07-27T23:57:23.127" UserId="1004" />
  <row Id="1328" PostId="1672" Text="I'm hoping to get Chris Park over here. I left him a comment on Stack Overflow but he hasn't visited in a couple of weeks." CreationDate="2010-07-28T00:58:17.997" UserId="233" />
  <row Id="1329" PostId="1614" Text="I've programed games in Java and worked with JMonkeyEngine and Slick game engine.  It's definitely possible to program a game in Java.  That being said though, you are still very limited when trying to program a game in Java.  You are only able to target OpenGL, and you're pretty much limited to the PC and Mobile markets.  " CreationDate="2010-07-28T01:07:55.667" UserId="891" />
  <row Id="1330" PostId="1741" Text="Maybe I'm a little out of my element here.. but does this work with IPhone GameKit?.. I mistakenly left that out. Sorry!" CreationDate="2010-07-28T01:11:58.327" />
  <row Id="1331" PostId="1741" Text="http://code.google.com/p/metasyntactic/wiki/ProtocolBuffers looks like it will do exactly that, but I can't say I've used it or had heard of it 5 minutes ago." CreationDate="2010-07-28T01:17:19.207" UserId="395" />
  <row Id="1332" PostId="1672" Text="@mmyers: I'm gonna go PM him on his forums, thanks for the idea!" CreationDate="2010-07-28T02:05:40.837" UserId="1004" />
  <row Id="1333" PostId="1741" Text="cool.. ill check this out. thanks!" CreationDate="2010-07-28T02:53:54.467" />
  <row Id="1334" PostId="1730" Score="3" Text="In my experience, the longer the programming test, the more of a waste of time it is for all involved -- the goal should be a filter.  You would be very surprised at how many people couldn't answer Chris' simple question about pointers above but could easily fool you over the phone in a screening.  &#xA;&#xA;You could probably train your admin or HR person (if you have one) to filter the responses to those questions -- no need to waste any programmer time and you quickly know if they have any knowledge whatsoever about programming." CreationDate="2010-07-28T03:44:28.587" UserId="34" />
  <row Id="1335" PostId="1751" Text="You're going to need to be much more specific here. We have no idea what your code looks like, how it's structured, etc, and so we can't draw any conclusions about what's making it slow." CreationDate="2010-07-28T04:34:12.580" UserId="353" />
  <row Id="1336" PostId="1751" Score="1" Text="When I implemented A* for the last time I remember it running through a 64x64 grid in *at most* 1ms. So yeah, it appears to be a problem with your implementation. I suggest posting your code or the gist of it so we can help you further." CreationDate="2010-07-28T04:42:40.650" UserId="1135" />
  <row Id="1337" PostId="1752" Text="How can i profile flash project in flex?" CreationDate="2010-07-28T04:46:42.220" UserId="516" />
  <row Id="1338" PostId="1751" Text="See the edit I've added" CreationDate="2010-07-28T04:54:02.697" UserId="516" />
  <row Id="1339" PostId="1752" Text="Yes and no. I don't think you load the flash project directly. I think you might be able to profile the swf without source and still get function level info though. I would do a google search for &quot;profiling a flash project in flex&quot; or the like. I did and got this: http://flexblog.edchipman.ca/profiling-flash-cs3-projects-with-flex-builder which looks promising." CreationDate="2010-07-28T04:55:20.417" UserId="1024" />
  <row Id="1340" PostId="1751" Score="1" Text="If 40x40 is too slow, chances are good you're doing something very wrong. Either post your code or profile it. Alternatively, scale it up and see what happens - if an 80x80 grid takes more than four times as long, you've got something extremely broken in there." CreationDate="2010-07-28T07:12:43.240" UserId="323" />
  <row Id="1341" PostId="1704" Text="When I say factory, I mean a function that returns an instance of a class that is not a constructor, nothing more." CreationDate="2010-07-28T07:44:35.677" UserId="744" />
  <row Id="1342" PostId="1757" Score="3" Text="Please edit your post. In the current state is barely readable.&#xA;" CreationDate="2010-07-28T09:05:19.010" UserId="335" />
  <row Id="1343" PostId="1699" Score="2" Text="@Joe I get your point, but find your choice of words unnecessary rude.&#xA;I just explained how we do it. Since the higher level architecture choice makes the lower level design choice obsolete, I consider it a valid answer." CreationDate="2010-07-28T09:09:52.010" UserId="335" />
  <row Id="1344" PostId="1704" Text="I agree that singleton pattern is a stupid idea,&#xA;but Dedicated Manager classes are (currently) the best way to survive a large project with thousands of resources.&#xA;We even use it for prototyping and it saves a lot of time.&#xA;" CreationDate="2010-07-28T09:15:57.653" UserId="335" />
  <row Id="1345" PostId="1758" Score="3" Text="Personally, I feel it is bad form to put a link to your own blog in a question you ask. It tends to look as though you are trying to publicize the blog, even when you just wish for other people's opinions." CreationDate="2010-07-28T09:49:23.003" UserId="957" />
  <row Id="1346" PostId="1760" Text="It's really not a traffic thing. It's a genuine question that popped into my head this morning. I'm still thinking about it, hence posting here. I just pointed to my blog post for more details and clarification.&#xA;&#xA;I think most of the mechanics of MW2 are self explanatory and the controller is possible the biggest barrier to play discovery there." CreationDate="2010-07-28T09:51:26.637" UserId="465" />
  <row Id="1347" PostId="1760" Text="As a game player who has played games for a long time, possibly since you were a child, MW2 is easy to pick up and play. For someone who has never played a video game or held a controller learning the controls to move around and fire, the mechanics around say how death matches work, how to find a game, what the bonuses do, etc, would be completely overwhelming." CreationDate="2010-07-28T09:59:12.920" UserId="539" />
  <row Id="1348" PostId="1760" Text="It's a challenge and I do agree the controller is a large barrier but I don't think the problem is insurmountable. Also under examination of exploratory play often certain &quot;accepted conventions&quot; which gamers don't question seem silly.&#xA;&#xA;By introducing these conventions in a tutorial however we train players to it, and most adult gamers will accept the convention if told it is that way, but question it if found through play." CreationDate="2010-07-28T10:16:11.813" UserId="465" />
  <row Id="1350" PostId="1758" Text="Yes, I agree. It was poorly informed choice. Mostly because I did not want to retype the length post I fired off before starting work." CreationDate="2010-07-28T10:17:49.160" UserId="465" />
  <row Id="1351" PostId="1757" Text="Since i don't have edit abilities yet, (see next comment)" CreationDate="2010-07-28T10:35:10.627" UserId="1004" />
  <row Id="1352" PostId="1757" Text="I like to play games, and I'm a programmer too. I know its difficult to create a game, but can someone give a broad-level overview of what it takes to make one? For instance, what are &quot;Game AI&quot; or &quot;Game Engines&quot;? And what are the different types of game engine?" CreationDate="2010-07-28T10:36:54.870" UserId="1004" />
  <row Id="1353" PostId="86" Text="The R4 card (one such adapter that loads DS games from an SD card) was unfortunately recently declared officially illegal (to sell) here in the Netherlands." CreationDate="2010-07-28T12:14:01.290" UserId="769" />
  <row Id="1354" PostId="1679" Text="How I say that none is correct?" CreationDate="2010-07-28T12:26:08.053" UserId="469" />
  <row Id="1356" PostId="332" Text="As mentioned elsewhere, you can provide custom allocators to the container classes - these could use freelists if you want (preallocated arrays). The array-of-structs vs struct-of-arrays is very dependant on what you're trying to do - there is no hard and fast rule about which one is better." CreationDate="2010-07-28T14:19:25.820" UserId="1143" />
  <row Id="1357" PostId="1776" Score="2" Text="Between problems with JVMs and the immaturity of the compiler implementation, I've found Scala's performance unacceptable when using a functional style, even though the language itself supports it well. It ends up being about as fast as, say, Python or Ruby, not F# or OCaml. (Scala's speed is competitive for more OO / procedural styles.)" CreationDate="2010-07-28T14:35:14.330" UserId="744" />
  <row Id="1358" PostId="249" Score="1" Text="I added bounty to push the question without modifying it and give users a reason to answer as this question deserves answers, thus the best answerer gets reputation for their work but there is not a single answer which answers the question." CreationDate="2010-07-28T15:06:20.137" UserId="158" />
  <row Id="1359" PostId="262" Score="1" Text="Well, you know, you sometimes just want to tinker with things ;-)" CreationDate="2010-07-28T15:08:32.970" UserId="33" />
  <row Id="1360" PostId="1774" Score="1" Text="&quot;What do you mean, 2D games, or 3D games?&quot; &quot;Huh? I don't know - *aieeee* &quot;" CreationDate="2010-07-28T15:41:11.350" UserId="165" />
  <row Id="1361" PostId="1297" Text="Just played Onslaught. Nicely done man :D" CreationDate="2010-07-28T16:04:39.687" UserId="10" />
  <row Id="1362" PostId="1776" Text="I actually got an F# project running XNA (that is an empty XNA window with cornflower blue, only the code was F# and not C#." CreationDate="2010-07-28T16:06:06.737" UserId="1004" />
  <row Id="1363" PostId="86" Text="Just the R4? Luckily there are a dozen different ones that all work about the same. It's a shame that the Netherlands court system was able to be influenced in such a way by a corporation." CreationDate="2010-07-28T16:33:43.827" UserId="48" />
  <row Id="1364" PostId="1781" Text="*Deep Breath* Long.." CreationDate="2010-07-28T16:39:56.943" UserId="14" />
  <row Id="1365" PostId="1297" Text="Hey, thanks a lot! :)" CreationDate="2010-07-28T16:40:40.810" UserId="422" />
  <row Id="1368" PostId="1777" Score="1" Text="I worked on a project that tried to detect cheating like this. There ended up being so many edge cases that the system got it wrong as much as it got it right, both with false positives and false negatives." CreationDate="2010-07-28T16:53:38.313" UserId="259" />
  <row Id="1369" PostId="1728" Text="the only problem with steamworks is that you need a game. I am looking for a cheap alternative for me to test and develop with." CreationDate="2010-07-28T16:55:55.157" UserId="1119" />
  <row Id="1370" PostId="1735" Text="I thank you for this option. This is definately something I will look into but for now in the beginning stages googles free app engine seems to offer what i need." CreationDate="2010-07-28T16:58:25.857" UserId="1119" />
  <row Id="1371" PostId="1728" Text="I guess big studios get more latitude on those rules :-/ (we definitely didn't have anything for some of our games when I first got SDK access)" CreationDate="2010-07-28T17:02:41.480" UserId="395" />
  <row Id="1372" PostId="1725" Score="1" Text="This looks like my best option now. I need free for the development phase. Thank You." CreationDate="2010-07-28T17:07:03.487" UserId="1119" />
  <row Id="1373" PostId="1188" Text="Mersenne Twister is nice in the sense it is a good random number generator, but it's not particularly elegant or cool (or fast or easy to implement). For that, you might want to look at http://en.wikipedia.org/wiki/Rule_30." CreationDate="2010-07-28T17:09:14.887" UserId="744" />
  <row Id="1374" PostId="1774" Text="@Cyclops uh, what? I don't understand..." CreationDate="2010-07-28T17:15:25.330" UserId="189" />
  <row Id="1375" PostId="1775" Score="2" Text="Remember that the really good cheaters will have proxies so that their multiple accounts are actually on different IPs. Don't make &quot;same IP&quot; a required criterion when looking for people cheating in this manner." CreationDate="2010-07-28T17:19:25.917" UserId="189" />
  <row Id="1376" PostId="1036" Score="2" Text="By the way, do note that there's a more accurate &quot;magic number&quot; to use in the fast inverse square root function: 0x5f375a86 ( http://en.wikipedia.org/wiki/Fast_inverse_square_root#History_and_investigation )" CreationDate="2010-07-28T17:24:12.397" UserId="189" />
  <row Id="1377" PostId="1773" Score="5" Text="Re-doing the flood fill is more expensive than doing A* for a small number of units - roughly, the length of the board - at least in algorithmic terms (and since this is Flash, non-algorithmic constants like memory layout probably can't be used very effectively). However, this is a very good model for many communicating units, and is called collaborative diffusion - http://scalablegamedesign.cs.colorado.edu/wiki/Collaborative_Diffusion." CreationDate="2010-07-28T17:27:20.990" UserId="744" />
  <row Id="1378" PostId="1105" Text="Thank you for mentioning the relative distance bit. I have seen way too many unnecessary square root operations, just as people using A* when they should be using something less exact." CreationDate="2010-07-28T17:31:21.153" UserId="189" />
  <row Id="1379" PostId="1660" Score="1" Text="Game mechanics cannot be copyrighted but they can be patented, the Monopoly board game being one of the canonical examples. It is rare for games, especially video games, to have patented mechanics though." CreationDate="2010-07-28T17:43:16.843" UserId="744" />
  <row Id="1380" PostId="1773" Text="@Joe Wreschnig: wow nice link. I've used that technique before but never knew what it was called. Thanks." CreationDate="2010-07-28T18:17:17.837" UserId="259" />
  <row Id="1381" PostId="1393" Score="8" Text="@Cyclops NPCs could, theoretically, only offer quests when players have lost money &quot;to the environment.&quot; It would have drastic effects on various parts of the game, but I don't think your claim needs to be so black and white." CreationDate="2010-07-28T18:30:25.407" UserId="182" />
  <row Id="1382" PostId="1753" Text="pardon my ignorance, but what is a &quot;game matchmaking service&quot;? Is it like eHarmony for avatars?" CreationDate="2010-07-28T18:40:52.033" UserId="1067" />
  <row Id="1383" PostId="1751" Text="Can the title be a bit more informative, please?" CreationDate="2010-07-28T18:45:26.127" UserId="259" />
  <row Id="1384" PostId="1774" Text="@Ricket, partly it was a request to clarify what *type* of game you're talking about, 2D or 3D (and maybe real-time or turn-based). Partly it was a Monty-Python joke which obscured the first part. Wups. :) And I do think specifying the type of game, is useful - unless there is a single functional-language that is perfect for *everything*, then different languages may be better at different things." CreationDate="2010-07-28T19:06:03.247" UserId="165" />
  <row Id="1385" PostId="1753" Text="@warren: it's like where you go fire up your favorite RTS game and click &quot;Join Game&quot; in the multiplayer section, and it presents you with a list of people hosting games. Generally that's done by the host computers sending a message to a central server that says &quot;i'm hosting a game at this ip address&quot;, and joining games asking the server for what the avilable games are." CreationDate="2010-07-28T19:12:15.387" UserId="1004" />
  <row Id="1386" PostId="1778" Text="This is a good idea in general, but bad for this specific question. A* on such a small grid should be nearly instant, not taking a significant amount of time." CreationDate="2010-07-28T19:14:01.327" UserId="48" />
  <row Id="1387" PostId="1791" Score="2" Text="http://www.esrb.org/ratings/ratings_process.jsp" CreationDate="2010-07-28T19:59:18.193" UserId="55" />
  <row Id="1389" PostId="728" Text="Is the single player the same game but against the computer or does the actual game differ?" CreationDate="2010-07-28T20:07:23.087" UserId="769" />
  <row Id="1390" PostId="575" Text="Actually there are three (or maybe more) conflicting aims. The third is performance, keeping and updating the state of a realtime game fully on the server uses a lot of resources." CreationDate="2010-07-28T20:09:48.993" UserId="769" />
  <row Id="1391" PostId="771" Score="2" Text="I think your second paragraph was true 2 years ago, but not today." CreationDate="2010-07-28T20:12:10.673" UserId="769" />
  <row Id="1392" PostId="1653" Text="The company I work for has a Flash game portal as client. They often ask us to make a clone of a game they liked (but better :P)" CreationDate="2010-07-28T20:17:46.430" UserId="769" />
  <row Id="1393" PostId="712" Text="Ocarina of Time 2D, good times :p" CreationDate="2010-07-28T20:18:39.237" UserId="769" />
  <row Id="1394" PostId="713" Score="2" Text="Yes, the art and name and such are protected, but the mechanics are not and may be cloned." CreationDate="2010-07-28T20:19:39.187" UserId="769" />
  <row Id="1395" PostId="1778" Text="Fair enough. It's the only answer I could give that would solve the problem without knowing implementation details that would cause the slowdown." CreationDate="2010-07-28T20:20:52.040" UserId="865" />
  <row Id="1396" PostId="268" Text="Actually using Java without its standard lib is pretty conceivable, it's called J2ME :p" CreationDate="2010-07-28T20:27:07.657" UserId="769" />
  <row Id="1397" PostId="936" Text="ActionScript 3 has classes, which I personally find more intuitive to use than prototyping. It has static typing (but can be as dynamic as JS if needed) which enables better performance and allows for great IDE's with autocompletion, as well as detecting many errors at compile time rather than runtime. Packages ease the mixing of code from multiple projects." CreationDate="2010-07-28T20:30:37.477" UserId="769" />
  <row Id="1398" PostId="86" Text="I think the court's decision was described in more general terms, but the R4 was the source and that's the one example the media used." CreationDate="2010-07-28T20:32:54.257" UserId="769" />
  <row Id="1399" PostId="1769" Score="4" Text="Requirement #3: It should be skippable for those who know the game." CreationDate="2010-07-28T20:36:39.350" UserId="769" />
  <row Id="1400" PostId="1517" Text="Why does everybody mention bandwidth? Obviously (?) the patches themselves would still be available as well, an it would in fact spar them some bandwidth (assuming patched game &lt; game + patch)" CreationDate="2010-07-28T20:54:26.373" UserId="769" />
  <row Id="1401" PostId="1751" Text="Try Manhattan distance (L1 norm) e.g. Delta X + Delta Y instead of Euclidian distance as the estimate. Make sure you are using an interval heap or some sort of priority queue; if you don't it will not be fast." CreationDate="2010-07-28T21:33:50.980" UserId="495" />
  <row Id="1402" PostId="1768" Score="2" Text="+1 for good answer but please note Flash can be developed free using FlashDevelop + flex SDK" CreationDate="2010-07-28T22:28:52.577" UserId="119" />
  <row Id="1403" PostId="1492" Text="Great points, I was just trying to make it simpler for his case." CreationDate="2010-07-28T22:43:58.520" UserId="562" />
  <row Id="1404" PostId="1710" Text="@Alex: I'm writing in Java.  There will be both simple database and some game logic, although I'm not sure why that matters for my question.  The part where I'm getting stuck is in the setting-up of user-authentication.  The Marco/Polo example was just a trivial game-data exchange, but the key part I'm having trouble with is the user authentication stuff." CreationDate="2010-07-28T23:11:59.663" UserId="240" />
  <row Id="1405" PostId="1774" Text="I don't believe 2D or 3D impacts a language choice, except by the variety of engines/libraries available for a language. I am personally interested in both 2D and 3D so I wasn't thinking of one or the other when writing this question. But overall, 2D and 3D games share a lot of common systems and data structures (e.g. audio, input, AI, program structure, game loop) and there are many 3D games which could be ported to 2D or vice versa. And yeah I haven't seen Monty Python so that's why I didn't understand it at all. :)" CreationDate="2010-07-28T23:13:50.457" UserId="189" />
  <row Id="1406" PostId="894" Score="5" Text="One other quick note: program object-speeds in &quot;...per second&quot;, not &quot;...per frame.&quot;  Even if you get nearly-uniform FPS, there will be some variance, and moving an object &quot;10' per second&quot; will work better than &quot;0.1' per frame&quot; (assuming 100FPS), because the 10'/sec will be correct even if the frame-time is a bit off." CreationDate="2010-07-28T23:15:45.227" UserId="240" />
  <row Id="1407" PostId="1560" Text="Yes, this will be the case for both 360 and PS3, according to Tom Higgins." CreationDate="2010-07-28T23:29:51.927" UserId="94" />
  <row Id="1408" PostId="1751" Text="Ok I got it, looks like updating 1600 labels each time cost change is taking way too much time(I labeled each tile with its cost), disabling this and my code runs smoothly" CreationDate="2010-07-28T23:30:16.263" UserId="516" />
  <row Id="1409" PostId="1752" Text="Thanks, really helped me find the problematic part(wasn't in the algorithm, see comment on question)" CreationDate="2010-07-28T23:31:04.077" UserId="516" />
  <row Id="1410" PostId="1800" Text="You could also generate the seed from a real word (perhaps buy adding up the characters to get your seed) and that way return something more meaningful. You would have to store the words in your game or retrieve them though. " CreationDate="2010-07-29T00:13:35.183" UserId="1024" />
  <row Id="1411" PostId="1787" Text="I don't think controllers are stable. Are you married to the idea of using a PID controller? If not could you explain a specific case in more detail, I might be able to give a more stable solution. " CreationDate="2010-07-29T00:15:45.867" UserId="1024" />
  <row Id="1412" PostId="1800" Text="Thats fine, but it would also have to store dynamic data if the game is being played. The string would need to save character positions/score etc. So whats the best way to generate this string?" CreationDate="2010-07-29T00:19:12.287" UserId="1163" />
  <row Id="1413" PostId="1800" Text="I would probably use JSON (or XML if you prefer) to serialize the world state and then base64-encode that string. Not sure thats all that useful though, why not just make a more GUI-oriented save/load system? I assume that this is web based and you want to not handle this server side. Maybe look at http://shygypsy.com/farm/p.cgi for an example?" CreationDate="2010-07-29T00:39:50.357" UserId="395" />
  <row Id="1414" PostId="1786" Text="TBH i'd recommend against this. Scripting languages are not just for the developer to use; modders will want to mod the game, and there's nothing that will scare them off faster than (()())))()((()). Plus, even as far as functional languages go, Lisp is esoteric." CreationDate="2010-07-29T00:45:43.980" UserId="1004" />
  <row Id="1415" PostId="1789" Score="1" Text="One thing to consider here is, why do you want an ESRB rating in the first place? If you're selling your game online, just let people know on your website about the intended audience and objectionable content; if you're honest, that should be good enough for most customers.&#xA;&#xA;ESRB ratings are only useful for retail stores, which generally won't take your game anyway unless you have a publisher (and if you do, the publisher will probably handle ESRB for you)." CreationDate="2010-07-29T00:56:35.860" UserId="458" />
  <row Id="1416" PostId="1738" Text="Huh... I lied? (Or said something wrong?)" CreationDate="2010-07-29T00:59:03.967" UserId="469" />
  <row Id="1417" PostId="1771" Text="Naaah, Game Maker has some serious DRM issues... It is a good software on itself, but its DRM, iiirk..." CreationDate="2010-07-29T01:04:19.357" UserId="469" />
  <row Id="1418" PostId="1804" Score="2" Text="A better question would not be: should I make the tutorial obvious?" CreationDate="2010-07-29T01:07:56.710" UserId="469" />
  <row Id="1419" PostId="1789" Text="It was more of a general wondering than anything else." CreationDate="2010-07-29T01:11:16.283" UserId="1004" />
  <row Id="1420" PostId="1732" Text="Learning a new language (python) isn't in the client-spec; I know Java, and am on time constraint.  The object hierarchy should all be similar, no?&#xA;&#xA;I understand that what I'm asking is very-very-simple.  But I've done the tutorials, and it's just not clicking for me.  Also, the tutorials don't show quite what I'm asking, and I can't quite figure out how to convert to &quot;not-Google-account&quot;s." CreationDate="2010-07-29T02:21:19.800" UserId="240" />
  <row Id="1421" PostId="1660" Text="As an example of what Joe's talking about, Namco owns a patent on using minigames during loading screens: http://en.wikipedia.org/wiki/Loading_screen#Minigames" CreationDate="2010-07-29T03:17:20.587" UserId="1167" />
  <row Id="1422" PostId="1813" Text="There's not only the competetive advantage to writing your own 'middleware' but it also means in-house support. That can come in handy at times of major crisis, or when a bug is impossible to reproduce without handing over your entire game. " CreationDate="2010-07-29T05:48:15.880" UserId="865" />
  <row Id="1423" PostId="1813" Text="Not too mention if the game engine company gets bought, or their code is pirated, the list goes on. Depending on someone else code is a liability that can be hard to quantify it there are not many users, which is the case with a lot of specialist middleware" CreationDate="2010-07-29T05:50:35.767" UserId="1024" />
  <row Id="1424" PostId="1813" Text="I don't think custom code will every go away, but the lack of a workable format(s) for sharing data is not helping the development of tools." CreationDate="2010-07-29T05:54:06.040" UserId="1024" />
  <row Id="1425" PostId="1812" Score="3" Text="+1 - I can still remember seeing the &quot;Legendary&quot; difficulty in Halo and thinking how awesome it would be to legendarily kill platoons of aliens. As opposed to &quot;Difficult&quot;, which certainly fits the puzzle game genre better." CreationDate="2010-07-29T05:59:43.267" UserId="321" />
  <row Id="1426" PostId="1813" Text="A lot of time, at my company at least, people would rather re-build stuff in house just because headcount is already budgeted for and buying commercial middleware isn't (and its easier to ask programmers to work 10 hour days than it is to get HQ to authorize big capital expenses). Wouldn't the benefits from freer collaboration be a bigger boon than the competitive advantage from proprietary tools?" CreationDate="2010-07-29T06:16:08.180" UserId="395" />
  <row Id="1427" PostId="1813" Text="I think it can be improved, but it think it is a problem that extends beyond game companies. There is much less code reuse then there should in general, not just with games. On a personal level I would love to help get some projects going.   &#xA;" CreationDate="2010-07-29T06:21:37.967" UserId="1024" />
  <row Id="1428" PostId="1576" Text="I'm not interested that much in compiling Multiwinia as I am in Darwinia, so networking issues won't bother me...  (@greyade &amp; @Toeodoom)" CreationDate="2010-07-29T07:41:33.747" UserId="252" />
  <row Id="1429" PostId="1814" Score="1" Text="+1 for &quot;Where's third gear?&quot; :)" CreationDate="2010-07-29T09:58:23.823" UserId="653" />
  <row Id="1430" PostId="1315" Text="The shareware model was very successful for good games and software. But there was a huge influx of terrible games and software which gave shareware a bad name. The idea is still in use today but we don't call it that way anymore, and it has transformed from &quot;one episode free&quot; to microtransations and PDLC." CreationDate="2010-07-29T10:00:09.017" UserId="490" />
  <row Id="1431" PostId="1816" Score="3" Text="That feels somewhat contradictory though, a general is rarely that close to the combat, and a private is rarely involved in planning.. What type of game is it? I guess at least one of them doesn't fit." CreationDate="2010-07-29T10:09:01.867" UserId="653" />
  <row Id="1432" PostId="1785" Text="Great answer, thanks! &#xA;I think I can take a lot from your post and your past experiences. :D +1/Tick." CreationDate="2010-07-29T10:19:06.723" UserId="1156" />
  <row Id="1433" PostId="1828" Score="1" Text="Try to find some film footage of camera shakes after explosions and watch it in slow motion to see how the camera shakes and base your code on that." CreationDate="2010-07-29T10:19:57.847" UserId="1143" />
  <row Id="1435" PostId="1517" Text="For new users, you have a point. But some people would only download the full version despite patches being available (yeah, people are weird like that). And the mirror sites would have to download as well. New full versions would most likely cost additional bandwidth. " CreationDate="2010-07-29T11:50:44.597" UserId="34" />
  <row Id="1436" PostId="1769" Score="1" Text="Granted, but if it's fun, you won't want to skip it. :)" CreationDate="2010-07-29T11:56:27.580" UserId="259" />
  <row Id="1437" PostId="1787" Text="I'm looking for generic approaches to tuning PID controllers. Do you tune the P, I and D coefficients in a certain order? Do you have to form a closed system to tune or have you done it inside the game environment?" CreationDate="2010-07-29T12:01:19.457" UserId="259" />
  <row Id="1440" PostId="1791" Score="2" Text="So it's both inconvenient and costly?" CreationDate="2010-07-29T12:23:44.857" UserId="857" />
  <row Id="1441" PostId="1804" Text="The question is possible poorly phrased and argumentative. I realise a day late now I'm thinking about this in a much grander scale. Like would adding a tutorial compromise exploration.&#xA;&#xA;From a practical point of view I think the &quot;it depends on the game!&quot; is valid and accurate. &#xA;&#xA;From a philosophy point of view I need to do more research before I can correctly phrase my question." CreationDate="2010-07-29T13:01:23.550" UserId="465" />
  <row Id="1442" PostId="1814" Text="Absolutely agree with this, my latest example would be &quot;Smashed, drunk, tipsy and sober&quot;&#xA;&#xA;The game involves beer." CreationDate="2010-07-29T13:13:16.593" UserId="251" />
  <row Id="1443" PostId="1685" Text="If you just want to use points or lines, then that's fine. I can only comment on what most people do for particles. Maybe an unfilled triangle would make a nice particle." CreationDate="2010-07-29T13:14:18.510" UserId="1101" />
  <row Id="1444" PostId="1441" Text="Just to be clear, you are looking to create a model from code and not import a model into something right?" CreationDate="2010-07-29T13:28:13.967" UserId="14" />
  <row Id="1445" PostId="1814" Text="I would have gone with &quot;What do you mean Manual?&quot; For easy :P" CreationDate="2010-07-29T13:32:12.617" UserId="14" />
  <row Id="1446" PostId="1739" Text="The best you can hope for is that you have ads or some other revenue model built in so that when your game does get stolen (as it will) that you'll still make some money from it.  Trying to prevent the game from being stolen is not going to be productive at all.  It's better to take advantage of it and allow the game to be stolen while still giving you benefits." CreationDate="2010-07-29T13:43:15.400" UserId="34" />
  <row Id="1447" PostId="1441" Text="As I describe in the first and second items, having both would be nice! But if I have to choose, then just importing." CreationDate="2010-07-29T13:44:49.717" UserId="930" />
  <row Id="1448" PostId="1831" Text="Oh, noise, why didn't I think of that... Afterall a bang i pretty much short burst of noise, isn't it... Excellent idea!" CreationDate="2010-07-29T13:45:31.820" UserId="653" />
  <row Id="1449" PostId="1774" Text="&quot;I don't believe 2D or 3D impacts a language choice, except by the variety of engines/libraries available for a language.&quot; True, but that's exactly what you *asked* - &quot;are there any *libraries/engines/frameworks or graphics engines* for functional languages?&quot; So I thought clarification might be useful. (Then again, given that all *game-related* Functional language tools can probably be counted on the fingers of one hand, it might *not* matter whether you're looking for 2D or 3D. :)" CreationDate="2010-07-29T13:49:48.707" UserId="165" />
  <row Id="1450" PostId="1765" Text="I voted you down because you suggested shoehorning everything into a SQL table with primary keys rather than using a real VCS. Also I consider using opaque IDs rather than string names premature optimization. I used strings on two large projects for all assets other than translation keys, of which we had hundreds of thousands of very long string keys (and then only to port to consoles). They were usually normalized so we could use pointer compares rather than string compares, but string compares are often dominated by the cost of the memory fetch and not the actual compare anyway." CreationDate="2010-07-29T14:23:39.170" UserId="744" />
  <row Id="1451" PostId="1811" Text="I'd be careful naming something Impossible unless it's really impossible. I use &quot;Very Hard&quot; myself because a good human will eventually beat it in most cases." CreationDate="2010-07-29T14:25:14.377" UserId="233" />
  <row Id="1452" PostId="1835" Text="Unless there's someone from Id on the site any answer is going to be at best a guess." CreationDate="2010-07-29T14:36:25.693" UserId="382" />
  <row Id="1453" PostId="1033" Text="That's pretty cunning. Obviously it can't apply equally well to all game types but the concept of calculating the potential consequences up-front is a nice one. " CreationDate="2010-07-29T14:37:44.333" UserId="1101" />
  <row Id="1455" PostId="1739" Text="@Dennis: i'm glad PC game indie devs don't take your advice ;) but yea i suppose that's good advice for flash." CreationDate="2010-07-29T14:44:25.983" UserId="1004" />
  <row Id="1457" PostId="1765" Text="@Joe: I only gave SQL as an example and then only in a development environment, you could equally use a VCS. I only suggested SQL database since you can then add extra information to the stored objects and use the SQL functions to query information from the database (more a management gain than anything else). As for opaque IDs as premature optimisation - some might see it that way I guess, but I think it would be easier to start off with that rather than show-horning it in at a later point in the development. I don't think it would affect development much if you used ID or strings." CreationDate="2010-07-29T15:30:25.167" UserId="1143" />
  <row Id="1458" PostId="1843" Text="It is, gosh! I've done lots of 3D and never really needed it." CreationDate="2010-07-29T15:37:11.783" UserId="1143" />
  <row Id="1460" PostId="1039" Text="Wow that's devil's smart!" CreationDate="2010-07-29T15:48:20.927" UserId="364" />
  <row Id="1461" PostId="1842" Score="2" Text="Obj-C is a strict superset of plain C. The OpenGL ES API is a pure C API, so the Obj- part of it is irrelevant." CreationDate="2010-07-29T15:50:28.290" UserId="613" />
  <row Id="1462" PostId="1843" Text="+1, it's the only way to go from x+y vector components to radians direction." CreationDate="2010-07-29T15:53:46.853" UserId="1004" />
  <row Id="1464" PostId="1811" Text="Thanks, some great ideas" CreationDate="2010-07-29T16:11:08.573" UserId="562" />
  <row Id="1465" PostId="1836" Text="Raw structure serialization is non-portable and extremely fragile wrt new code. Unless it is as the final step of baking data for a platform with very limited resources, it's very premature optimization.&#xA;&#xA;Is there a reason you prefer 6 bits to 8? The format isn't going to be human-readable anyway, you might as well take advantage of the speed and debuggability of a real structure layout." CreationDate="2010-07-29T16:17:26.697" UserId="744" />
  <row Id="1466" PostId="1840" Text="+1 even though I hate XML - If the language provides a default serialization format it's best to consider that first, especially if it's a format other tools could theoretically parse (like XML/JSON/YAML)." CreationDate="2010-07-29T16:22:02.697" UserId="744" />
  <row Id="1467" PostId="1836" Text="@Joe: I did mention that it is non-portable and some of the potential concerns.  The question specifically asked for a human-readable &quot;level string&quot; like the old Sega games and mentioned base60 conversion; passing a struct through something like xxencode will do this.  This is not necessarily a premature optimization: a simple struct, not bitpacked, is a nicely &quot;central&quot; way to store save data, and may _simplify_ much of the code that interacts with the data.  See e.g. Noel Llopis's recent articles on non-member non-friend structures and &quot;inside out&quot; programing.  This is just KISS." CreationDate="2010-07-29T16:24:51.337" UserId="1134" />
  <row Id="1468" PostId="1828" Text="I have the exact same problem - the wobble just looks too smooth" CreationDate="2010-07-29T16:53:02.587" UserId="119" />
  <row Id="1470" PostId="1850" Score="5" Text=" +1 doesn't really answer the question but so important." CreationDate="2010-07-29T17:09:59.237" UserId="1024" />
  <row Id="1471" PostId="1834" Text="Yeah like drink sizes are Medium, Large, Extra Large - there is no small. So for games: Normal, Hard, Insane." CreationDate="2010-07-29T17:39:17.770" UserId="119" />
  <row Id="1472" PostId="1843" Text="@RCIX: My point is that that transformation is unnecessary, i.e. (x,y) -&gt; angle, there is a vector solution to any angle problem." CreationDate="2010-07-29T18:56:11.923" UserId="1143" />
  <row Id="1473" PostId="1842" Text="Apologies for that. I took them to be different languages." CreationDate="2010-07-29T19:17:19.150" UserId="1156" />
  <row Id="1474" PostId="1843" Text="@Skizz. uh, ok? i don't see the connection between our posts..." CreationDate="2010-07-29T19:19:35.587" UserId="1004" />
  <row Id="1475" PostId="1786" Score="3" Text="If scaring off modders is something that worries you, going for a functional language is probably not the right move." CreationDate="2010-07-29T20:31:34.743" UserId="945" />
  <row Id="1476" PostId="1857" Text="This is more along the lines of what I'm asking. I mention XML in my question, but still people suggest it!" CreationDate="2010-07-29T20:43:21.877" UserId="1163" />
  <row Id="1477" PostId="1785" Text="The nice thing about a hierarchy is you can build utility states that are just pushed to the top and don't have to worry about what else is running." CreationDate="2010-07-29T21:01:02.567" UserId="395" />
  <row Id="1478" PostId="1857" Text="yay well tell me what more detail you need and you could accept my answer :)" CreationDate="2010-07-29T21:23:00.083" UserId="119" />
  <row Id="1479" PostId="1785" Text="I don't see how that's an argument for a hierarchy rather than sets. Rather, a hierarchy makes all inter-state communication more complicated, because you have no idea where they were pushed." CreationDate="2010-07-29T21:30:32.117" UserId="744" />
  <row Id="1480" PostId="1775" Score="2" Text="The way you described it, means that two ore more people can team up to get lots of points easily (like the arena battles in WoW)." CreationDate="2010-07-29T21:32:06.640" UserId="450" />
  <row Id="1481" PostId="1843" Text="I wouldn't really call a bare standard library function a &quot;gem&quot;." CreationDate="2010-07-29T21:33:00.993" UserId="744" />
  <row Id="1482" PostId="1843" Text="@RCIX: This is not a game-specific gem. Personally I've never needed it. It has trouble with dy=0. Generally, if you need this a lot, you've done something inefficiently." CreationDate="2010-07-29T21:41:31.307" UserId="1143" />
  <row Id="1483" PostId="1860" Text="Isn't XImput only for XBox 360 controller connected to PC?&#xA;I've read the DirectInput is little obsolete, so I've tried to avoid using it. But I've tried the DirectInput too and woked well." CreationDate="2010-07-29T21:55:28.013" UserId="875" />
  <row Id="1484" PostId="1861" Text="A lot of this depends on the ghost AI. If you're using the exact same AI algorithm from the original game, you could just have the pac-man follow one of the many patterns that have already been discovered, no AI needed except a lookup table. If the ghosts are closing in on your pac-man quickly, have you considered that the issue is with the ghost AI being too good, rather than the pac-man AI being too weak?" CreationDate="2010-07-29T22:25:55.807" UserId="458" />
  <row Id="1485" PostId="1862" Text="Yes I can. I will probably end with this solution (maybe will be better to use GetAsyncKeyState). But I am looking for any better solution if any exists. And Right-ATL key generates two WM_KEYDOWN messages too (Because of keyboard layout). So only WM_INPUT or DirectInput remains." CreationDate="2010-07-29T22:42:09.393" UserId="875" />
  <row Id="1486" PostId="1861" Text="@Ian The ghost AI is exactly as it is in the game but the board layout is not the same. It's just a simple grid layout that borders your icon layout (4x4, etc.). The current PacMan is just nearest dot that doesn't have a ghost between itself and the dot. It will head directly toward a ghost as long as there are dots in between. Perhaps I only need to look a few steps further than the nearest dot and determine if that is a good direction to take. Since this entire direction seeking logic has to occur every cell movement it has to be relatively simple and fast as well." CreationDate="2010-07-29T23:09:43.377" UserId="1204" />
  <row Id="1487" PostId="741" Text="(The amount of downvoting on this site is depressing.)  Anyway, anecdote: at the company I work for, which uses mostly C++ and Lua for handheld platforms, we use GameMaker regularly to do prototypes before jumping in.  We also have yearly &quot;game jams&quot; and most of the submissions are based on GameMaker.  I still get it confused with Game-Maker ( http://www.diygamer.com/2010/04/original-gamemaker/ ) regularly, though, which was also awesome for such things &quot;back in the day&quot;." CreationDate="2010-07-29T23:30:05.233" UserId="1134" />
  <row Id="1489" PostId="1508" Text="I can see the need for abstracting file locations in complex scenarios but just fetching files from a zip archive shouldn't require a manifest as filenames and paths are preserved in the archive." CreationDate="2010-07-30T00:13:51.623" UserId="1174" />
  <row Id="1490" PostId="1868" Score="1" Text="+1 for the code, but -1 for speaking like yoda. It's annoying and makes your answers hard to read." CreationDate="2010-07-30T00:37:27.753" UserId="647" />
  <row Id="1491" PostId="1868" Text="Indeed, this is not a place for joke accounts." CreationDate="2010-07-30T01:47:43.850" UserId="395" />
  <row Id="1492" PostId="1791" Text="Of course. How else can you keep the government away than by adding our own bureaucracy?" CreationDate="2010-07-30T02:54:04.720" UserId="162" />
  <row Id="1493" PostId="1836" Text="I totally agree with this way. Yes, it's not portable across versions, nor systems, but then again save-games are not resources that need to be reused during development, or copied across platforms. &#xA;Debuggability is hardly an issue with an in place read/write, implement it once and it'll work forever. &#xA;IF extensibility is really an issue - add a version number as the first ybyte/word and you can switch on that (although that would introduce a data vulnerability).&#xA;It's not like xml is gonna solve versioning problems - the tend to be more involved than just setting a value.&#xA;Yes, I'm pragmatic." CreationDate="2010-07-30T03:20:09.707" UserId="865" />
  <row Id="1494" PostId="1864" Text="Erm, several games were developed away from Win32... Like, several id Software games (made using the NEXT that today is named MacOSX0 or the engine already supports *nix like... id software games! And older unreal iterations (I dunno why U3 has no Linux version... UT2004 had even linux autorun!)" CreationDate="2010-07-30T05:22:49.463" UserId="469" />
  <row Id="1495" PostId="1036" Score="3" Text="Also note that it's not John Carmack's." CreationDate="2010-07-30T06:05:53.193" UserId="865" />
  <row Id="1498" PostId="1877" Text="Please mark list questions, with no specific answer as Community Wiki." CreationDate="2010-07-30T06:40:05.417" UserId="14" />
  <row Id="1499" PostId="1877" Text="I'm quite new hear how do I do such?" CreationDate="2010-07-30T07:08:36.890" UserId="919" />
  <row Id="1500" PostId="1878" Text="I'll look into them.&#xA;&#xA;I'm actually asking to help friends and colleagues as I'm a designer by trade rather than a 3d artist.&#xA;&#xA;I also think it could be useful for the community here as well to know of such tools =)" CreationDate="2010-07-30T07:11:08.537" UserId="919" />
  <row Id="1501" PostId="1877" Text="&quot;edit&quot; your post and click the &quot;community wiki&quot; checkbox." CreationDate="2010-07-30T07:17:56.900" UserId="51" />
  <row Id="1502" PostId="1877" Text="Thanks for the heads up =)" CreationDate="2010-07-30T07:37:43.700" UserId="919" />
  <row Id="1503" PostId="1833" Text="+1 interesting idea, I think I'll try the noise movement, and when I've got that running, I'll try to add a more smoth dolly effect, sort of as if the camera was attached to a spring and pressed backwards by the shock." CreationDate="2010-07-30T07:55:35.763" UserId="653" />
  <row Id="1504" PostId="1831" Text="good idea, is there anything you cant use perlin noise to solve? :P" CreationDate="2010-07-30T08:21:24.737" UserId="120" />
  <row Id="1507" PostId="1883" Text="You mean a *normalized* interpolation (or simply a normalized summation), presumably ;)" CreationDate="2010-07-30T11:05:46.347" UserId="288" />
  <row Id="1508" PostId="1887" Text="Thanks Zolomon. Your answer was right on the nail, and by the way I also went through your site, which I found to be an interesting one. And hats off for the stop-mo in the site. GREAT! and once again thanking you.&#xA;&#xA;arun." CreationDate="2010-07-30T12:19:43.577" UserId="1216" />
  <row Id="1509" PostId="1662" Text="I'm a long time Safari subscriber and while I read a lot of books on there, I'd say it's pretty weak on games development specific material. It has the GPU Gems series (but these are available from nVidia's site anyway) but it doesn't have any of the Shader X books, has only one Game Programming Gems book (book 8 in the series). It does have a number of AI books, but not the AI Wisdom series. And it doesn't have Jason Gregory's Game Engine Architecture." CreationDate="2010-07-30T13:23:58.837" UserId="93" />
  <row Id="1510" PostId="1669" Text="There are a lot of bad game development books out there it has to be said. But there's also a horrificly large amount of junk on the web. Hopefully this StackExchange site will make the internet a more useful resource, but right now, especially for the novice, the good information is hard to sort from the junk out here on the net." CreationDate="2010-07-30T13:26:27.037" UserId="93" />
  <row Id="1511" PostId="1893" Score="1" Text="This is probably the only way I could see this question being answered reasonably. Without degrading into a list atleast. I think that having an objective third party (or collection of them) review your work is one of the most important things you should do." CreationDate="2010-07-30T13:36:32.643" UserId="14" />
  <row Id="1512" PostId="1893" Score="2" Text="Yeah I realise this is the way to go. I was looking for the non-existent easy way out. Thanks for keeping me on track." CreationDate="2010-07-30T13:47:28.157" UserId="1217" />
  <row Id="1513" PostId="1897" Text="I'm not qualified to say if this is right or not, but it sounds like some clever stuff! I have solved these types of problems in the past by forward predicting the effect of acceleration to work out when to accelerate and when to &quot;apply the breaks&quot;. Does that mean I have been doing it wrong?" CreationDate="2010-07-30T14:44:53.790" UserId="119" />
  <row Id="1514" PostId="1897" Text="The atan2 makes this method difficult to adapt to a predictive system since the x and y parameters to atan2 become dependant on t." CreationDate="2010-07-30T15:34:53.973" UserId="1143" />
  <row Id="1515" PostId="1897" Text="This is exactly the solution I was hinting at in my answer below. Excellent detail and presentation!" CreationDate="2010-07-30T15:48:30.900" UserId="678" />
  <row Id="1516" PostId="1900" Text="So the controls would be power (throttle) and angular velocity (steering)? Or am I missing some transformation?" CreationDate="2010-07-30T15:51:30.807" UserId="678" />
  <row Id="1517" PostId="1897" Text="@Iain: No there is no right and wrong here. While I guess your method would have two discrete states: accelerate/decelerate, this method is inspired by a regulator from control theory, scaling the acceleration to make a fast response while reducing overshoot and oscillations." CreationDate="2010-07-30T15:58:04.220" UserId="1147" />
  <row Id="1518" PostId="1887" Text="No problem, happy to help! And thank you for your comment about my site." CreationDate="2010-07-30T16:00:04.453" UserId="1199" />
  <row Id="1519" PostId="1897" Text="@Skizz: I'm not exactly sure what you mean. The system should swing in towards the predicted direction, yes, which is dependent on the chosen prediction time. But this would be the same if I used arctan(y/x) instead, which is the pure mathematical operation. atan2 just hides away some handling of special cases. Could you please explain your question a bit further?" CreationDate="2010-07-30T16:09:11.077" UserId="1147" />
  <row Id="1520" PostId="1904" Text="Why not use shaders?" CreationDate="2010-07-30T16:17:04.797" UserId="1024" />
  <row Id="1521" PostId="1904" Text="@Jonathan Several reasons, but the biggest might be using OpenGL ES 1.1 (Just FF)." CreationDate="2010-07-30T16:24:08.880" UserId="35" />
  <row Id="1522" PostId="1905" Text="Seems like this should be posted on StackOverflow or rephrased in a way that's more specific to tdd in large game development projects." CreationDate="2010-07-30T16:27:51.137" UserId="389" />
  <row Id="1523" PostId="1905" Text="&quot;if you only have a few in the team who want to go old school, won't everyone suffer?&quot; -- Are you saying TDD is old-school? If not I'm not understanding the sentence." CreationDate="2010-07-30T16:28:12.433" UserId="490" />
  <row Id="1524" PostId="1904" Text="ah, gotcha ya. :(" CreationDate="2010-07-30T16:29:58.110" UserId="1024" />
  <row Id="1525" PostId="1905" Text="@gaminghorror No sorry I mean if you have a few who don't want to participate in TDD." CreationDate="2010-07-30T16:36:11.317" UserId="259" />
  <row Id="1526" PostId="1903" Text="Good answer. I also wanted to post exactly that article. Game Object component systems are a great way to seperate logic and be able to unit-test these individually. What no unit test can do, however, are the complex interactions of multiple paths of game logic interacting at realtime in random sequence. That would be like trying to unit test the weather forecast. :)" CreationDate="2010-07-30T16:37:05.997" UserId="490" />
  <row Id="1527" PostId="1900" Text="no that's it - forgot to explain how to steer. Have updated with new turnSpeed variable." CreationDate="2010-07-30T16:42:24.977" UserId="119" />
  <row Id="1528" PostId="696" Score="2" Text="I don't think it's provocative at all--it's phrased in a way to make it stick in someone's memory, but it's an extremely conservative and straightforward stance. In short: the people who develop the STL are more knowledgeable and better-equipped than somebody who finds that they have to ask this question. If you have to ask somebody else whether the STL is appropriate or not, you almost certainly lack the domain-specific knowledge to adequately prepare a home-rolled solution." CreationDate="2010-07-30T16:55:44.757" UserId="348" />
  <row Id="1529" PostId="1905" Text="@jdeseno well that's the question. does the adoption of TDD have game-project-specific problems? maybe it's all fine!" CreationDate="2010-07-30T16:56:42.213" UserId="259" />
  <row Id="1530" PostId="1911" Score="5" Text="I absolutly disagree. TDD isn't driven by specs any more than any other piece of programming is. The tests aren't testing features, but grainular changes in code. I'd imagine you'd have issues testing at the hardware level, but there's no reason regular game logic couldn't be derived through TDD." CreationDate="2010-07-30T17:02:12.703" UserId="259" />
  <row Id="1531" PostId="1785" Text="The point that UIs are actually DAGs is well-taken, but I do disagree in that it certainly can be represented in a stack. Any connected directed acyclic graph (and I can't think of a case where it wouldn't be a connected DAG) can be displayed as a tree, and a stack is essentially a tree." CreationDate="2010-07-30T17:05:18.923" UserId="348" />
  <row Id="1532" PostId="234" Text="+1. This is an excellent tool. You can write your own map exporter plugin, if you so wish, + it's open source so you can tweak it to your own/team's needs." CreationDate="2010-07-30T17:15:13.837" UserId="734" />
  <row Id="1533" PostId="1903" Text="Yeah I also make little testers that isolate particular bits of functionality. I make sure whatever changes I make to APIs etc I always make sure these still work. Much easier to reuse the functionality in your next project." CreationDate="2010-07-30T17:48:17.557" UserId="119" />
  <row Id="1534" PostId="1875" Text="wut... .. . . ." CreationDate="2010-07-30T17:57:30.143" UserId="55" />
  <row Id="1535" PostId="1904" Text="Do you want to achieve blurred *animation* of these objects?" CreationDate="2010-07-30T17:59:03.353" UserId="1174" />
  <row Id="1536" PostId="1785" Score="1" Text="Stacks are a subset of trees, which are a subset of DAGs, which are a subset of all graphs. All stacks are trees, all trees are DAGs, but most DAGs are not trees, and most trees are not stacks. DAGs do have a topological ordering which will allow you to store them in a stack (for traversal e.g. dependency resolution), but once you cram them into the stack you have lost valuable information. In this case, the ability to navigate between a screen and its parent if it has a prior sibling." CreationDate="2010-07-30T18:06:15.290" UserId="744" />
  <row Id="1537" PostId="1785" Text="Ah, true. I feel dumb not remembering the difference between representation and topological ordering--that's actually why (as I mentioned below in my response) we developed the concept of multiple stacks for our state machine for the Sharplike project. I don't think it's *that* valuable (and the workarounds aren't that ugly), but I can see cases where it would be." CreationDate="2010-07-30T18:11:14.233" UserId="348" />
  <row Id="1538" PostId="1911" Score="2" Text="In order to test something you need to know what it is supposed to do. Unless you have an assertIsFun() call somewhere, I'm not sure how that will work out. You can certainly write tests for game logic, but how does that help you other than having to make every change in two places (the real code and the tests)? Once the system is closer to being finalized it can be helpful to avoid accidental breakages, but thats very different than TDD." CreationDate="2010-07-30T18:21:22.997" UserId="395" />
  <row Id="1539" PostId="1919" Text="@David thanks for the first link which does help but the second not as much, i have updated my question with a few other points if u dont mind checking... thanks." CreationDate="2010-07-30T18:30:24.850" UserId="567" />
  <row Id="1540" PostId="1911" Text="No-one practising TDD would ever write an isFun() test, and yes you have to make every change in two places - first in the test and then in the code. That's the entire point of TDD. " CreationDate="2010-07-30T18:40:49.853" UserId="259" />
  <row Id="1541" PostId="1922" Text="What is the average age of your audience and how complex is your game about controls, functionality and is it real time battle or so or can the user pause it at any time he wishs ?" CreationDate="2010-07-30T18:47:08.357" UserId="567" />
  <row Id="1542" PostId="1843" Text="@Skizz: Maybe for 3d, but i know of no other way to take a normalized vector and extract a radians direction value. Which as a good deal of value in 2D games." CreationDate="2010-07-30T18:50:47.743" UserId="1004" />
  <row Id="1543" PostId="1911" Score="4" Text="No, the point of TDD is that you write your tests to the spec and write your code to the tests. When you have nothing to write the tests against, there is no reason to use TDD unless you really enjoy tedium." CreationDate="2010-07-30T18:53:16.350" UserId="395" />
  <row Id="1544" PostId="1922" Text="I would say include a digital manual! Don't forget digital distributions of games account for a large amount of sales." CreationDate="2010-07-30T19:02:33.567" UserId="891" />
  <row Id="1545" PostId="1922" Score="1" Text="Digital manuals are ok but i still belive you should take into account what kinda of game it is ... before getting to weather you need a out-of-game manual or not..." CreationDate="2010-07-30T19:06:46.287" UserId="567" />
  <row Id="1546" PostId="909" Text="I would disagree, I found the answers useful for pointing me in the right direction." CreationDate="2010-07-30T19:06:57.393" UserId="374" />
  <row Id="1547" PostId="1612" Score="4" Text="I can not say anything else than that I agree completely with this answer. &quot;Experience&quot; is the keyword here. Get it in whatever way you see fits you the best." CreationDate="2010-07-30T19:07:44.053" UserId="1199" />
  <row Id="1548" PostId="1925" Score="3" Text="This really depends on your market. The internet is littered with complaints of dungeon crawl and JRPG players frustrated at how long it takes to get past tutorials in the game, and how much of the tutorial is just a repeat of the manual." CreationDate="2010-07-30T19:14:14.227" UserId="744" />
  <row Id="1549" PostId="1928" Score="2" Text="Also remember that manuals, unlike websites, cannot contain clickable buttons... ;)" CreationDate="2010-07-30T19:15:45.110" UserId="744" />
  <row Id="1550" PostId="1875" Score="2" Text="Skype can't magically send video without encoding it, which is what will take the CPU time away from the program." CreationDate="2010-07-30T19:21:48.887" UserId="744" />
  <row Id="1551" PostId="1917" Text="Retagged with C# and 2D, don't see why click-to-move or world-to-screen would be needed as tags. &#xA;&#xA;Also, just so that everything can be focused, it doesn't seem like the second question that you ask is really related to your first one. Please post that in a separate question." CreationDate="2010-07-30T19:30:39.273" UserId="14" />
  <row Id="1552" PostId="1704" Text="We just implemented the above structure for a business-application (client &amp; server-side)! I'm so happy I can relate and understand what the above actually means since I've seen it in practise." CreationDate="2010-07-30T19:31:06.900" UserId="1199" />
  <row Id="1553" PostId="1897" Text="If you have stationary objects, the arctan method is very straightforward. Once your turretToTarget vector becomes dependant on time, because you want the turret to point ahead of the target's initial position, then using arctan becomes complicated, solving arctan (fx(t), fy(t)) where fx and fy are the parametric functions defining the target's future position, is not easy." CreationDate="2010-07-30T19:44:03.123" UserId="1143" />
  <row Id="1554" PostId="1924" Score="1" Text="Nothing beat Deluxe Paint! It was the best pixel pusher ever." CreationDate="2010-07-30T19:46:07.020" UserId="1143" />
  <row Id="1555" PostId="1679" Text="If you have come to a correct working solution, then just post an answer with it (And it also helps to explain how you came to it). Please, do not just leave an answer saying &quot;You are wrong&quot;: If you are just trying to bring your accept rate back up, and don't actually have a working solution consider adding a bounty." CreationDate="2010-07-30T19:48:22.740" UserId="14" />
  <row Id="1556" PostId="1829" Text="Maybe I misunderstood the question?" CreationDate="2010-07-30T19:48:23.630" UserId="1143" />
  <row Id="1557" PostId="1783" Text="Do you want to see the MainMenuState behind the OptionsMenuState? Or just the game screen behind the OptionsMenuState?" CreationDate="2010-07-30T19:49:05.170" UserId="1143" />
  <row Id="1558" PostId="1925" Score="1" Text="There are plenty of badly designed and integrated tutorials, but a complaint about such a tutorial is not necessarily a demand for a manual to replace it." CreationDate="2010-07-30T20:07:21.663" UserId="154" />
  <row Id="1559" PostId="1893" Score="2" Text="You say this isn't a direct answer, but I disagree; it is the MOST direct answer to the question." CreationDate="2010-07-30T20:15:26.340" UserId="458" />
  <row Id="1560" PostId="1603" Score="2" Text="I think you should really reconsider fraps. Of all the solutions I've seen it has the best quality, and there is no logo for a small investment. (You didn't say free, in your question)" CreationDate="2010-07-30T20:36:38.647" UserId="14" />
  <row Id="1561" PostId="1936" Text="+1, especially the &quot;value added&quot; part.  We do kids games a lot; pretty pictures go quite well alongside instructions.  =)" CreationDate="2010-07-30T20:49:32.390" UserId="1134" />
  <row Id="1562" PostId="1916" Text="Regarding your performance point: Yes, the game is simple, but it will need to support half a million players on as few servers as possible (if the client has his wish)" CreationDate="2010-07-30T21:13:46.550" UserId="769" />
  <row Id="1563" PostId="764" Text="awesome, I am going to switch off my WiFi seeing all my documentation is offline" CreationDate="2010-07-30T22:31:07.673" UserId="164" />
  <row Id="1564" PostId="519" Score="1" Text="But will Linux users pay for the games? Will some or many of them have ideological issues with DRM?" CreationDate="2010-07-30T22:34:44.720" UserId="495" />
  <row Id="1565" PostId="519" Score="3" Text="@Jared I absolutely think that MOST of them will have issues with DRM; after all, Linux was formed out of the need for free (as in freedom) software, and I think a lot of its users know and respect the culture that has grown out of GNU/Linux and the free and open source software movement. I can't speak for Hemisphere Games, but I know that all the games in the Humble Indie Bundle were completely DRM-free, and I truly think it helped their cause, especially in the Linux world." CreationDate="2010-07-30T22:45:01.683" UserId="189" />
  <row Id="1566" PostId="1758" Text="Question is argumentative by nature, but I am torn as I can see some benefit for leaving it open. I'd recommend CWing it at the very least, but I think you could create a better question from it." CreationDate="2010-07-30T23:19:13.690" UserId="14" />
  <row Id="1567" PostId="1931" Text="Also, you can use the predictability of pseudo random numbers to generate all the particles' initial vectors, creating hundreds of particles from a few int's worth of data. Using the GPU to create the quads is a really good idea for simple particles." CreationDate="2010-07-30T23:22:28.973" UserId="1143" />
  <row Id="1568" PostId="1897" Text="@Staffan: Regarding my second point - I mean aiming within the radius of the target, not necessarily at the centre." CreationDate="2010-07-31T00:36:00.797" UserId="288" />
  <row Id="1569" PostId="1857" Score="1" Text="Add {} around that and you basically have JSON ;-)" CreationDate="2010-07-31T00:55:29.120" UserId="395" />
  <row Id="1570" PostId="1944" Score="1" Text="I guess part of the problem is that there hardly is such a beast as a 'simple game'. A game generally needs input handling, drawing code, game logic, resource loading, perhaps audio. That alone makes for a couple hundreds of lines of code. Add a menu and a hud and it grows. Even simple DirectX samples rather quickly grow to a few hundred lines, without counting the service functions in the sample framework, and there's just something being drawn to the screen without any game logic." CreationDate="2010-07-31T04:47:19.603" UserId="865" />
  <row Id="1571" PostId="1906" Score="2" Text="Although you were downvoted, you do have a good point. Lots of games are polished till they shine but they forgot to be fun. On the other end of the spectrum there are games that are barely finished but are runaway hits because they're fun (linerider anyone?). Of course, fun AND finished is what you should aim for. But you are right, you can polish a pile of sh!t till you drop - it'll always smell.&#xA;" CreationDate="2010-07-31T04:50:49.413" UserId="865" />
  <row Id="1572" PostId="1944" Text="I presume it is definitely much easier in Java, but still, snake was about 300 lines.  Of course much of the underlying stuff isn't seen in a Java applet" CreationDate="2010-07-31T04:52:33.607" UserId="1243" />
  <row Id="1573" PostId="1918" Text="Actually... I don't even tried in fullscreen, all my tests was in windowed mode." CreationDate="2010-07-31T06:09:24.800" UserId="469" />
  <row Id="1574" PostId="1949" Text="6 pages of EULA... wow... that is getting overboard." CreationDate="2010-07-31T06:10:55.670" UserId="469" />
  <row Id="1575" PostId="1936" Text="A guy that I shared a apartment with, only bought original games when they had manuals and boxes (he has like thousands of pirated games... but also he spent thousand dollars in original games, the only ones being purely digital being Audiosurf and World of Goo, because they were extra-cheap anyway when he bought in those wierd steam promos...)&#xA;&#xA;He read all manuals, and carefully he packs all his games back and put them in a shelf (and he proudly displays his shelf of original games to all visitors)" CreationDate="2010-07-31T06:13:39.440" UserId="469" />
  <row Id="1576" PostId="1857" Text="You'd need to add a load of quote marks too. Would probably double number of characters, but you would get nesting of objects." CreationDate="2010-07-31T06:32:08.387" UserId="119" />
  <row Id="1577" PostId="40" Text="@davr If you want a game engine, then you should mention what type of game you are looking to build (as for rendering, I too recommend Ogre3D. It's not hard at all to get started with it + it has a great, helpful community)." CreationDate="2010-07-31T07:09:16.810" UserId="734" />
  <row Id="1578" PostId="1879" Text="Thanks this is useful, but are there any gotchas with exporting symbols on frame 1?" CreationDate="2010-07-31T09:01:41.847" UserId="539" />
  <row Id="1579" PostId="1911" Text="I'm sorry that's completely wrong. You're writing tests to express the functionality of the lines of code you want to write - you can want to write that line because of a higher-level design doc or not. `In order to test something you need to know what it is supposed to do` -- I'm not sure how you write code, but I know what I want it to do before I write it whether I'm using TDD or not." CreationDate="2010-07-31T09:05:36.827" UserId="259" />
  <row Id="1580" PostId="1879" Text="Not sure what you mean by that. This is the common way preloaders are done in ActionScript-only projects. You have to be careful about what classes you include/use in the Preloader, since that code will be loaded with the first frame. You can use [Embed] metatags to embed preloader assets too. Other than that it's much the same as creating a 2-frame SWF using the Flash IDE where you export some stuff to the first frame and the rest to the second frame." CreationDate="2010-07-31T09:22:41.937" UserId="20" />
  <row Id="1581" PostId="1578" Text="+1, but please don't trust them blindly. According to my experience for example it is not a good idea to use UDP and reinventing the feature of TCP. UPD is useful only if lost packages do not have any impact at all, i. e. every UDP package contains the complete relevant state of the world. WoW uses TCP, SL is in the progress of moving from UDP to TCP (even HTTP for static content) and has improved performance significantly with these changes." CreationDate="2010-07-31T10:19:12.370" UserId="450" />
  <row Id="1582" PostId="1897" Text="@Skizz: You never solve for t, so that will never be a problem. The method computes the momentary acceleration to apply based on the momentary velocity and position. It needs to be recalculated each frame to account for changes in time. I'll edit the answer to clarify this." CreationDate="2010-07-31T10:45:43.203" UserId="1147" />
  <row Id="1583" PostId="1897" Text="@Andrew: Ok, I added a note at the end about this." CreationDate="2010-07-31T11:09:31.687" UserId="1147" />
  <row Id="1584" PostId="1951" Score="1" Text="The issue with credit cards is that you can just buy a gift card and use that to open other accounts." CreationDate="2010-07-31T13:12:43.417" UserId="14" />
  <row Id="1585" PostId="649" Score="1" Text="Avoid Torque 3D if you value your sanity. The scripting engine is a muddled nightmare, very frustrating to work with." CreationDate="2010-07-31T15:25:40.817" UserId="495" />
  <row Id="1586" PostId="1940" Text="If it's on .NET can't you add IronPython to the list of languages? Python is a fabulous scripting language." CreationDate="2010-07-31T15:28:05.187" UserId="495" />
  <row Id="1587" PostId="402" Text="Note that 99% of commercial and in-house game engines steer away from Boost and STL for various reasons (performance guarantee, debugability, thread safeness, control)." CreationDate="2010-07-31T16:54:51.537" UserId="865" />
  <row Id="1588" PostId="1944" Text="Can you clarify what you mean by &quot;the programming techniques&quot;? The programming techniques for a 300 line game aren't the same as the techniques for a 30,000 line game, and those aren't the same as for a 300,000 line game." CreationDate="2010-07-31T19:55:20.617" UserId="744" />
  <row Id="1593" PostId="1657" Text="See also this question: http://gamedev.stackexchange.com/questions/355/free-ebooks-about-game-development" CreationDate="2010-07-31T22:26:07.590" UserId="51" />
  <row Id="1594" PostId="1944" Text="Very simply, I think what I need is an example of drawing graphics and taking input." CreationDate="2010-07-31T23:05:22.283" UserId="1243" />
  <row Id="1595" PostId="1687" Text="Just so. I should have been more precise in my wording; what I meant is that I focused to much on the inheritance side of OO instead of thinking of OO design patterns / other OO aspects that could help me achieve what I wanted." CreationDate="2010-07-31T23:55:12.260" UserId="1058" />
  <row Id="1596" PostId="1717" Text="that's another fantastic article - well worth the read." CreationDate="2010-08-01T00:21:54.797" UserId="1058" />
  <row Id="1597" PostId="1881" Text="Fraps also has a lossless recording mode.  Of course, it requires even more disk throughput and RAM.  If you buy the full version (which I recommend) the logo and time limit go away." CreationDate="2010-08-01T00:56:57.020" UserId="430" />
  <row Id="1598" PostId="1883" Text="Always renormalize after summing! Even if you interpolated from normalized vectors, the result is NOT normalized!" CreationDate="2010-08-01T01:13:54.520" UserId="263" />
  <row Id="1603" PostId="1411" Score="1" Text="@Edmundito : If that is how you feel this 'question' should go, it should be marked as CW." CreationDate="2010-08-01T03:41:55.637" UserId="14" />
  <row Id="1606" PostId="1578" Score="1" Text="You're not reinventing the TCP features though, not all of them at least. TCP flow control and packet loss semantics are terrible for a game that requires a low latency connection. TCP is only useful if you don't care about latency or minimising required bandwidth." CreationDate="2010-08-01T05:19:00.797" UserId="603" />
  <row Id="1608" PostId="1603" Text="I updated my answer with thoughts about your edit-added question." CreationDate="2010-08-01T07:28:03.997" UserId="1147" />
  <row Id="1609" PostId="1912" Text="Hey thank you man..... this is great!! Just great! Gotta check each and everyone if possible...." CreationDate="2010-08-01T09:15:19.477" UserId="1216" />
  <row Id="1610" PostId="1783" Text="The plan was that the states would have an opacity/isTransparent value/flag. I would check and see if the top state had this true, and if so what value it had. Then render it with that much opacity over the other state. In this case, no I would not." CreationDate="2010-08-01T09:30:23.870" UserId="1156" />
  <row Id="1611" PostId="1781" Score="1" Text="With a decent amount of logging, an interesting item to check would be how often two accounts are logged in together. There is a chance for false positives here just as any other system check, which is why human interaction will always be needed for final decisions." CreationDate="2010-08-01T09:47:41.410" UserId="308" />
  <row Id="1612" PostId="1922" Score="2" Text="I like reading manuals while the computer starts!" CreationDate="2010-08-01T11:29:11.807" UserId="1261" />
  <row Id="1613" PostId="1133" Text="+1, last commercial game I worked on was character_ApplyDamage(pCharSource, pCharTarget, eType, fAmount)." CreationDate="2010-08-01T11:43:59.147" UserId="744" />
  <row Id="1614" PostId="1198" Text="If you're serious about avoiding cheating, A doesn't daamge B on the client at all. The client owning A sends an &quot;attack B&quot; command to the server, which does exactly what tenpn said; the server then syncs that state with all relevant clients." CreationDate="2010-08-01T11:46:39.453" UserId="744" />
  <row Id="1615" PostId="1893" Text="I forgot to mention, the list you wrote is exactly the kind of stuff I was looking for when asking. I believe the only &quot;checklist&quot; would be a very generic one but still very useful as every game would benefit from it." CreationDate="2010-08-01T13:09:18.193" UserId="1217" />
  <row Id="1616" PostId="1909" Text="You are absolutely right. We did not do any ahead planning at all. To us, that's the most difficult part. We had a great idea that would be fun and instantly started coding and just made up the rules along the way. I would like to break this habit but don't know how really." CreationDate="2010-08-01T13:11:07.020" UserId="1217" />
  <row Id="1621" PostId="1892" Text="If you intend to make a list, your questions should be marked Community Wiki." CreationDate="2010-08-01T15:00:49.517" UserId="14" />
  <row Id="1623" PostId="239" Score="1" Text="MMO - Massively Multiplayer Online. Everyone tries to make an 'MMORPG' or an 'MMOG', even though it's more of an 'MO'." CreationDate="2010-08-01T15:36:14.540" UserId="1156" />
  <row Id="1624" PostId="1944" Text="&quot;List&quot; questions where no single answer is correct should be made community wikis.  Forced it." CreationDate="2010-08-01T16:05:48.257" UserId="51" />
  <row Id="1626" PostId="1969" Text="I think the Quake 3 engine goes a bit over a few hundred lines ;o)" CreationDate="2010-08-01T17:07:32.253" UserId="865" />
  <row Id="1627" PostId="1133" Score="2" Text="Do commercial games misspell &quot;damage&quot; too? :-P" CreationDate="2010-08-01T17:12:27.330" UserId="189" />
  <row Id="1631" PostId="1974" Text="Just a note about the &quot;if you change 25%&quot; part; that is incorrect. If you change any part of an existing asset set it is a derivative work and still infringing. You would have to remake everything from scratch no matter what." CreationDate="2010-08-01T19:19:10.160" UserId="395" />
  <row Id="1632" PostId="1949" Score="1" Text="I don't think you can (or should) generalize from one game and one company to all games. There are games, like flight sims as already mentioned, that certainly benefit from a manual while others, like Starcraft II, don't need one as they have pretty good tutorials or are self-explanatory." CreationDate="2010-08-01T19:32:34.340" UserId="13" />
  <row Id="1633" PostId="1830" Score="1" Text="Yaml is very cool, and if you avoid some of the superset features it can be converted to json with no difficulty. " CreationDate="2010-08-01T19:37:32.410" UserId="1265" />
  <row Id="1634" PostId="1974" Text="@Coderanger thanks for clearing that up, I'll remove that part." CreationDate="2010-08-01T19:42:50.417" UserId="14" />
  <row Id="1635" PostId="1968" Score="1" Text="Easy to make ineffectual achievements, but good achievements like Geo War's famous Pacifist achievement, that make you look at the game in a completely new way, are really hard to come up with." CreationDate="2010-08-01T20:27:05.537" UserId="259" />
  <row Id="1636" PostId="1978" Score="1" Text="Simple yes, and ideal for quick debug work or prototyping, but the amount of coupling between the UI and your game logic in Immediate GUIs scares me." CreationDate="2010-08-01T20:37:05.543" UserId="259" />
  <row Id="1637" PostId="1974" Text="I think the &quot;they can sue you for whatever&quot; is very good advice. Even if you are in the right, getting sued will cost you in lawyer fees, time and stress. I would just avoid things that might have a chance of inviting a lawsuit :)" CreationDate="2010-08-01T22:06:15.137" UserId="656" />
  <row Id="1638" PostId="1949" Text="@Michael, I agree that you can't generalize one game to all games. However, on the list of things that could use a manual, Starcraft 2 is really only a step or two below flight sims. If SC2 doesn't need a manual, then I don't think anything less &quot;simmy&quot; does either - you certainly wouldn't need a manual for any shooter, puzzle game, roleplaying game, etc." CreationDate="2010-08-01T22:54:25.340" UserId="323" />
  <row Id="1639" PostId="1968" Score="3" Text="Before you go and add achievements to your game, at least read up on Chris Hecker's excellent achievement talk - http://www.destructoid.com/gdc-10-are-achievements-harmful--166646.phtml . He makes a good argument that achievements can easily turn a good game into a terrible game." CreationDate="2010-08-01T22:56:22.730" UserId="323" />
  <row Id="1640" PostId="1881" Text="Why I would extract frames? I want all frames!&#xA;&#xA;@Banana I know that Fraps has lossless mode, it is the mode that I mentioned that make Fraps get slow and cause the gameplay to get wonky (seemly Fraps when slow instead of dropping frames it somehow slow-down the game)" CreationDate="2010-08-02T00:29:25.837" UserId="469" />
  <row Id="1641" PostId="1603" Score="2" Text="I stand with my previous answer. If you can replay input and force (or even replay) the timestep, you can record raw frames and do with them as you please without *any* quality loss." CreationDate="2010-08-02T00:45:19.317" UserId="865" />
  <row Id="1642" PostId="1892" Text="Converted to wiki" CreationDate="2010-08-02T01:41:06.493" UserId="353" />
  <row Id="1643" PostId="1988" Text="I don't think this is a fine approch to be used, specially if it is a browser game since you can create your own browser making it easy to become a unique person to create a new account." CreationDate="2010-08-02T04:34:31.120" UserId="567" />
  <row Id="1644" PostId="1775" Text="@Matias, is your product focused on a country or is it meant to be world-wide ? if it is country limited you could try to use people's information like security number or something that can be used with no harm from them, it would not prevent 100% but it would cut down by a lot if you can verify weather the numbers are valid or not..." CreationDate="2010-08-02T04:37:01.413" UserId="567" />
  <row Id="1645" PostId="1994" Score="3" Text="very good points made here cookies for you and i have to agree 100% with `** Don't help them **`" CreationDate="2010-08-02T04:42:50.393" UserId="567" />
  <row Id="1646" PostId="1994" Score="1" Text="What would you do different for the feedback if it were online beta testers ? just wondering since you said `on-site playtesters`" CreationDate="2010-08-02T04:50:24.813" UserId="567" />
  <row Id="1647" PostId="1207" Score="2" Text="Are you *sure* the tester wasn't hung over?" CreationDate="2010-08-02T05:03:34.543" UserId="297" />
  <row Id="1648" PostId="1881" Text="Ok, sure, but my point is that you get even less speed if you try to dump every frame to individual image files." CreationDate="2010-08-02T05:24:06.973" UserId="1147" />
  <row Id="1649" PostId="1994" Text="I don't have any positive experiences with that so I can't really help you.  I've seen online questionnaires turn into a giant mess with statistics that are meaningless.  " CreationDate="2010-08-02T06:28:46.523" UserId="51" />
  <row Id="1650" PostId="1988" Text="@Prix yes, i didn't meant this to be the solution that solves all issues. But I think it could be a good addition to IP logging. And of course you'll need other measures too." CreationDate="2010-08-02T08:26:06.520" UserId="20" />
  <row Id="1651" PostId="548" Text="I dont have enuogh points to create a blender-game-engine tag. But I think this question is working out coz there is great information coming in." CreationDate="2010-08-02T08:34:26.517" UserId="164" />
  <row Id="1652" PostId="1991" Text="I heard blender was considering doing away with their game engine in favor of sing Ogre, do you have any information about this rumor?" CreationDate="2010-08-02T08:36:19.523" UserId="164" />
  <row Id="1653" PostId="1893" Text="Really do have to have testers. Game, commercial app, book, whatever it is the author will always glaze over details. You are too familiar with the system.  Now, the question really is, when are you ready for the testers? :)" CreationDate="2010-08-02T09:05:49.670" UserId="308" />
  <row Id="1654" PostId="1986" Text="Skippable is already almost always the case, pausable is unfortunately rather rare." CreationDate="2010-08-02T09:24:02.690" UserId="769" />
  <row Id="1655" PostId="1986" Score="2" Text="Yes and you can't press start to find out if it's pausable, because most of the time that will skip it!" CreationDate="2010-08-02T09:52:14.317" UserId="259" />
  <row Id="1656" PostId="1883" Text="Thanks for that, sounds simple enough." CreationDate="2010-08-02T10:18:56.467" UserId="120" />
  <row Id="1657" PostId="1990" Text="+1 Civilization II" CreationDate="2010-08-02T10:20:59.197" UserId="252" />
  <row Id="1658" PostId="1928" Text="+1 That's a good point here. But it depends on the game, online games may change a lot during their existence, while a good offline game should be well-designed enough such that the `readme.txt` will not contain many *changes from the manual*" CreationDate="2010-08-02T10:23:32.720" UserId="252" />
  <row Id="1659" PostId="1949" Text="@ZorbaTHut: Glad to hear you agree. If you would revise your answer to take into consideration that there might be games more complex than SC2 that *may* need a manual, then I can undo my downvote and agree to your overall statement. :)" CreationDate="2010-08-02T11:15:32.697" UserId="13" />
  <row Id="1660" PostId="1100" Score="3" Text="There's a misinterpretation of 'Sell out' in here" CreationDate="2010-08-02T11:41:24.497" UserId="930" />
  <row Id="1661" PostId="1279" Score="2" Text="These tutorials are very good, they don't focus too much on C# details and instead focus on the more important game-development aspects. Good for people who already know C#." CreationDate="2010-08-02T13:43:28.060" UserId="102" />
  <row Id="1662" PostId="1775" Text="@Prix you can run into a Loooooooot of trouble collecting SSNs without adequate protection in the US." CreationDate="2010-08-02T13:44:44.920" UserId="14" />
  <row Id="1663" PostId="1999" Text="The first section of &quot;Programming Role Playing Games with DirectX&quot; also implements a state system (and a process system - very interesting distinction)." CreationDate="2010-08-02T14:10:16.263" UserId="189" />
  <row Id="1666" PostId="1342" Text="The problem with this approach is that floating-point precision errors make it possible for the rope to go &quot;through&quot; a point." CreationDate="2010-08-02T15:18:59.223" UserId="288" />
  <row Id="1667" PostId="1965" Score="1" Text="It sounds like you're trying to rip-off their game... That would favor them in court." CreationDate="2010-08-02T15:20:42.627" UserId="1198" />
  <row Id="1668" PostId="548" Text="I'll add it for you. (You did have enough rep during the beta ;)" CreationDate="2010-08-02T15:22:33.847" UserId="288" />
  <row Id="1669" PostId="1987" Text="This would be my answer as well. In this day and age, there's no excuse for a game holding the player hostage until the next save point. One example of a game that does this is Breath of Fire:Dragon Quarter. (Of course, some games can handle quicksave systems too, and if you can do that without totally breaking the balance, more power to you.)&#xA;&#xA;Other examples would be retro arcade type games, which don't need no stinking save system :)" CreationDate="2010-08-02T15:32:00.493" UserId="458" />
  <row Id="1670" PostId="1829" Text="No, you did not. I think the down-voter did." CreationDate="2010-08-02T15:37:46.640" UserId="1156" />
  <row Id="1671" PostId="1976" Text="Thank you very much, great answer with plenty of detail. :D" CreationDate="2010-08-02T15:41:35.017" UserId="1156" />
  <row Id="1672" PostId="2007" Score="4" Text="+1 on that.&#xA;In fact, I think one should concentrate on writing your game, rather than an engine to write a game.&#xA;An engine will emerge after several succesfully completed games.&#xA;Read this:&#xA;http://scientificninja.com/blog/write-games-not-engines&#xA;&#xA;Too many projects die early because they tried to write a generic mother of all engines.." CreationDate="2010-08-02T15:51:44.937" UserId="1206" />
  <row Id="1673" PostId="2005" Score="3" Text="Neither. You should build the game, not the engine." CreationDate="2010-08-02T15:58:54.450" UserId="656" />
  <row Id="1674" PostId="2005" Text="I agree.&#xA;'Frameworks can make things nice and easy for development, but then you're locked in.'&#xA;I think you're actually locking yourself out. :)&#xA;Build games, not engines.&#xA;Engines will follow, later - much later. It grows out several projects." CreationDate="2010-08-02T16:15:55.543" UserId="1206" />
  <row Id="1675" PostId="1991" Text="No, they're not. :)&#xA;Erwin Coumanns is one of the BGE authors, and he's not going to compete with himself.&#xA;There was some brief talk/experiments years ago, but it faded out.&#xA;&#xA;Of course, it would be cool having Ogre as a renderer for the BGE, but IMO it's way cooler to unencumber the Blender Game Engine and let IrrLicht and Ogre 3D handle the gritty rendering affairs!&#xA;And the license is much clearer too." CreationDate="2010-08-02T16:20:31.313" UserId="1206" />
  <row Id="1676" PostId="1940" Text=".NET? Doesn't that rule out cross-platform?" CreationDate="2010-08-02T16:47:57.113" UserId="48" />
  <row Id="1677" PostId="2014" Text="Thanks. Have you heard of this book? I heard it teaches the 3d theory but focuses on 3d software rasterization too. I guess it may still help understand what's going on. &#xA; &#xA;http://www.amazon.com/Tricks-Programming-Gurus-Advanced-Graphics-Rasterization/dp/0672318350" CreationDate="2010-08-02T17:16:20.080" UserId="801" />
  <row Id="1678" PostId="2016" Text="There must be some kind of easier way to learn that stuff than taking an expensive course." CreationDate="2010-08-02T17:19:38.140" UserId="1156" />
  <row Id="1679" PostId="1994" Text="Good answer, and to elaborate a bit on &quot;Don't Give them what they want&quot;, I wrote up a bit of my personal approach to that on my own personal blog (http://doublebuffered.com/2009/06/16/the-players-are-wrong-but-listen-anyway/). It's a bit more oriented towards digesting beta message board feedback but I've applied it to in-person playtests as well." CreationDate="2010-08-02T17:23:51.800" UserId="162" />
  <row Id="1680" PostId="2014" Score="1" Text="@Phil rasterization is important, but I don't know if I would have started with a book called &quot;tips&quot; and addressing &quot;advanced&quot; 3D developers... sounds like something to read later on." CreationDate="2010-08-02T17:25:22.810" UserId="102" />
  <row Id="1681" PostId="2014" Text="I'm reading volume 1 right now and this is volume 2. I'm guessing it merges you but I never looked at it. I know he says &quot;advanced&quot; but most say it's not. I'll keep it on the list :) " CreationDate="2010-08-02T17:31:14.080" UserId="801" />
  <row Id="1682" PostId="2022" Text="I'm using strings, I should've made it clearer, my apologies." CreationDate="2010-08-02T17:35:22.373" UserId="1156" />
  <row Id="1683" PostId="2014" Score="1" Text="Ray tracing is also another interesting topic, but is much too slow for real-time games" CreationDate="2010-08-02T18:31:43.230" UserId="47" />
  <row Id="1685" PostId="2027" Text="Good resource! Thanks for sharing." CreationDate="2010-08-02T18:52:19.400" UserId="801" />
  <row Id="1686" PostId="1636" Text="+1 for MyFonts because they have a &quot;what languages does this font support&quot; search feature." CreationDate="2010-08-02T19:00:10.583" UserId="51" />
  <row Id="1687" PostId="2030" Score="1" Text="I'm pretty sure I've read this somewhere else on this site before :)" CreationDate="2010-08-02T19:08:54.617" UserId="189" />
  <row Id="1688" PostId="2021" Text="Can't you just set a breakpoint inside `if(entry not found) { }` and handle it like method 2? That way the debugger will stop at the line when an invalid key is pressed and even provide you with information about all the function calls that led up to it." CreationDate="2010-08-02T19:12:17.573" UserId="656" />
  <row Id="1689" PostId="2029" Text="mmm i think there was a topic talking about math books every programmer should read or something like that i dont really recall it ... but it had some nice things on it.... not sure if it was here or stackoverflow aswell lol" CreationDate="2010-08-02T19:14:01.767" UserId="567" />
  <row Id="1690" PostId="2030" Text="Sure, this post was inspired by that thread/comment." CreationDate="2010-08-02T19:16:57.517" UserId="51" />
  <row Id="1691" PostId="1739" Text="I've got no problem with ads as long as they are added in a meaningful way and unobtrusive way." CreationDate="2010-08-02T19:33:14.373" UserId="14" />
  <row Id="1692" PostId="1645" Text="So... your idea is recode the entire engine (that I don't made btw) to make it support some way of recording input and replaying that mentioned input perfectly?&#xA;&#xA;Sorry, but this don't work, specially because although the game is deterministic (the only random are in visual effects) the physics engine can fluctuate, and it would not work properly... I am asking about marketing stuff, not programming stuff." CreationDate="2010-08-02T19:58:23.687" UserId="469" />
  <row Id="1693" PostId="1603" Text="@Kaj but that would need planning and engineering from start, it is not something that I can make in a hours." CreationDate="2010-08-02T19:59:18.850" UserId="469" />
  <row Id="1694" PostId="2016" Text="That suggestion is stupid... Taking a course to learn math?&#xA;&#xA;I stand with Einstein: Some stuff are better learned from books. (not a direct quote... I saw only the portuguese version anyway, the translation would be different)" CreationDate="2010-08-02T20:02:18.063" UserId="469" />
  <row Id="1695" PostId="1645" Text="If the physics engine can fluctuate it's not deterministic. Input recording (in most engines) plugs in in one spot, it's hardly 'recoding the entire engine'.....anyhow, I hear ya.&lt;b&gt; Video encoding is a fairly expensive operation, lossless yet good compression is more expensive. If harddisk access is indeed the issue though, you could consider setting up a ram disk if you have the memory to spare. As for your comment about marketing, sorry, I thought you were looking for a solution - this would set you up for future as well (what if you need hi-res?). If it's out of scope, then..try ram-disk. " CreationDate="2010-08-02T20:26:06.913" UserId="865" />
  <row Id="1696" PostId="1603" Text="If you have one function (I don't know) that translates input to game commands you should be able to slot it in right there. If that's not the case, yes, it's trickier." CreationDate="2010-08-02T20:28:08.470" UserId="865" />
  <row Id="1697" PostId="2031" Text="Great one, this one is a must" CreationDate="2010-08-02T20:34:09.593" UserId="666" />
  <row Id="1698" PostId="1953" Text="While it was quite a hassle to get Netbeans to work (I am an Eclipse user), the profiler is really good. Especially the feature of defining a root method did the trick for me." CreationDate="2010-08-02T20:34:54.600" UserId="450" />
  <row Id="1699" PostId="2022" Text="Any specific reason for that? I don't think you could trip a compile time error on that, except with fairly heavy constructs. An ASSERT would give you run-time information, but it's barely safe - what if you have code that only gets run when the player does something very specific and only on xmas eve? If you forgot to test it, but had typed an invalid key your game would ship with unsafe code. Using a define (or constants) would prevent this. I don't quite see from your edit why you need strings. In the UI, sure, but in code &quot;KeyCode::A&quot; can be mapped to enum keycode_A, just like move_left?" CreationDate="2010-08-02T20:36:03.567" UserId="865" />
  <row Id="1700" PostId="2036" Text="If you intend for this to be a list, please mark it as Community Wiki." CreationDate="2010-08-02T21:02:58.620" UserId="14" />
  <row Id="1701" PostId="2016" Score="1" Text="@speeder How exactly is the suggestion &quot;stupid&quot;.  Since you're so keen to learn from books like your peer Einstein, perhaps you should read about manners." CreationDate="2010-08-02T21:03:18.197" />
  <row Id="1702" PostId="2035" Score="1" Text="I think we can all agree this isn't what the question was asking. (also you forgot %)." CreationDate="2010-08-02T21:07:05.473" UserId="395" />
  <row Id="1703" PostId="2036" Score="2" Text="I did not think that there would be enough answers that the result would be a 'list', thus I did not think CW was a good fit.  And the first answer 'fits' my expectations." CreationDate="2010-08-02T21:12:53.170" UserId="1294" />
  <row Id="1704" PostId="2042" Text="As a counterpoint to the OGL vs DX discussion, the Unity guys explicitly decided to switch to DirectX on Windows since default OpenGL drivers for most video cards are so bad.  I don't have the reference in front of me, but at once of their conferences they said something along the lines of OGL drivers being their #1 crash problem on Windows.  Fortunately their abstraction layer means that you don't really care from a users perspective." CreationDate="2010-08-02T21:45:17.193" UserId="51" />
  <row Id="1705" PostId="2041" Score="1" Text="This isn't a bad list, but I was hoping for a more descriptive answer.  I.e. what the dot product formula is, what it means, and how it's useful." CreationDate="2010-08-02T21:51:06.180" UserId="51" />
  <row Id="1706" PostId="2026" Text="So theoretically you can do &lt;br&gt;&#xA;#define keycode(key) \&lt;br&gt;&#xA;#if (key == &quot;KeyCode::a&quot;) || \ &lt;br&gt;&#xA;    (key == &quot;KeyCode::b&quot;) || \ &lt;br&gt;&#xA;    ..etc..\&lt;br&gt; &#xA;    key&#xA;#else \&lt;br&gt;&#xA;    static_assert (or anything that generates a compile error for that matter) \&lt;br&gt;&#xA;#endif&lt;br&gt;&#xA;&lt;br&gt;&#xA;Although it's not something I'd like :o\ it would allow all keys that are defined in the 'if' and fail on everything else. Unfortunately, the compilation error would show in the define and not in the calling code.&#xA;...edited to add - errr, &lt;br&gt; was supposed to be newline. Guess you can't in a comment :o\" CreationDate="2010-08-02T21:55:16.477" UserId="865" />
  <row Id="1707" PostId="2041" Score="3" Text="@Tetrad Doesn't wikipedia give you that? http://en.wikipedia.org/wiki/Dot_product#Definition. " CreationDate="2010-08-02T22:13:40.210" UserId="1024" />
  <row Id="1708" PostId="2030" Text="I'm getting some déjà vu here... :)" CreationDate="2010-08-02T22:14:11.753" UserId="233" />
  <row Id="1709" PostId="2014" Text="@Byran +1 for mentioning it. It is used it pre-calculating lighting though." CreationDate="2010-08-02T22:39:37.240" UserId="1024" />
  <row Id="1710" PostId="2036" Score="2" Text="There are tons of academic papers related to games; a simple literature search will confirm this. The problem is that so much is written (and so much is academically dense) that it takes awhile to filter out to the game industry.&#xA;&#xA;Try taking a look at papers and poster sessions from GDC, SIGGRAPH, FuturePlay, Game Education Summit, or other academic/developer conferences.&#xA;&#xA;As for &quot;must read&quot;... that's in the eye of the beholder, isn't it? (Also, game development is such a huge field -- a &quot;must read&quot; design article might not be &quot;must read for programmers.)" CreationDate="2010-08-02T22:44:00.370" UserId="458" />
  <row Id="1711" PostId="2041" Text="Not for games specifically, no." CreationDate="2010-08-02T22:44:31.070" UserId="51" />
  <row Id="1712" PostId="545" Text="Thanks, I've added a mention of that." CreationDate="2010-08-02T22:58:22.517" UserId="208" />
  <row Id="1713" PostId="2036" Text="A lot of stuff at places like GDC and SIGGRAPH isn't really &quot;academic&quot; in the traditional sense. It is hard-hitting research, but much of it is done by game (or others, eg. Pixar) companies in the normal course of development. " CreationDate="2010-08-02T23:19:50.970" UserId="395" />
  <row Id="1714" PostId="2048" Text="I am currently an academic! I used to be in industry (but not games related).  I've done the whole gamut from lowly programmer (even a stint a Microsoft, working on OS/2 of all things) to Sr. Architect, to Management drone.  I decided to reboot my brain and academia made that easier for me than industry did." CreationDate="2010-08-02T23:30:42.933" UserId="1294" />
  <row Id="1715" PostId="2046" Text="Cool.  You can look my stuff up at either http://www.informatik.uni-trier.de/~ley/db/indices/a-tree/c/Carette:Jacques.html or http://scholar.google.ca/scholar?q=jacques+carette.  I have mostly done mathematics and DSL related work, but I am branching out into games [I started the game design program at McMaster]. " CreationDate="2010-08-02T23:38:49.287" UserId="1294" />
  <row Id="1716" PostId="2053" Text="Oh wow, I didn't know that existed.&#xA;" CreationDate="2010-08-03T00:10:24.670" UserId="1256" />
  <row Id="1717" PostId="1775" Text="It does't need to be SSNs as it was only an example, as i can't speak for every country out there. The country i live, there are numbers that can be used and does not cause any harm as it can't be used other them to identify a person and nothing else the goverment also has a online verification that tells your if the given number exist or not." CreationDate="2010-08-03T00:21:39.467" UserId="567" />
  <row Id="1718" PostId="1576" Text="Seems more suited to http://gaming.stackexchange.com/ perhaps? Or maybe just SO." CreationDate="2010-08-03T00:31:24.157" UserId="395" />
  <row Id="1719" PostId="2026" Score="1" Text="You can't do that from #if, because #if is a preprocessor-time instead of a compile-time directive. The preprocessor doesn't know anything about the value of key. &#xA;&#xA;The use of == on strings is also problematic. I haven't tried it myself but I suspect it will fail to compile because it involves checking pointer addresses of strings" CreationDate="2010-08-03T00:44:12.183" UserId="162" />
  <row Id="1720" PostId="2031" Text="Not sure why. Libraries can take care of this for you...." CreationDate="2010-08-03T01:18:49.630" UserId="1004" />
  <row Id="1721" PostId="2035" Score="1" Text="Other answers get voted up for this (basic arithmetic)...." CreationDate="2010-08-03T01:21:09.407" UserId="1004" />
  <row Id="1722" PostId="2026" Text="Wow, caught out for sure - it's one of those things that seemed in my mind it would work but sure enough it won't. If I could downvote myself I would. Upvoted you instead." CreationDate="2010-08-03T01:30:48.010" UserId="865" />
  <row Id="1723" PostId="2031" Text="Most of the things mentioned in this thread can be handled my a library or engine, that doesn't mean you shouldn't learn them anyway." CreationDate="2010-08-03T01:35:57.810" UserId="395" />
  <row Id="1724" PostId="2050" Score="1" Text="SFML is also C++, whereas SDL is C. This makes a difference if you actually want to learn C++." CreationDate="2010-08-03T02:28:56.747" UserId="603" />
  <row Id="1727" PostId="2013" Text="Do you mean to say XNA does not lock you in? That's pretty much exactly what it does." CreationDate="2010-08-03T04:19:34.703" UserId="603" />
  <row Id="1728" PostId="2030" Score="2" Text="More generally, the length of a vector is the square root of the dot product with itself. So, `sqrt(V dot V)` is its length. So, the distance between two points is: `sqrt((A-B) dot (A-B))`" CreationDate="2010-08-03T05:08:22.837" UserId="613" />
  <row Id="1729" PostId="2059" Score="3" Text="+1 That's a great idea I had never thought of." CreationDate="2010-08-03T05:17:00.543" UserId="1024" />
  <row Id="1730" PostId="2047" Text="Mind you, good resources on storytelling from an academic point of view, are far from what the average programmer would consider a good resource on storytelling. For one, the background in text theory is assumed, and secondly, computer story generation is really in its infancy - they've come a long way, but there's still a heck of a long way to go before we can retire the 10.000 monkeys with typewriters." CreationDate="2010-08-03T05:23:30.097" UserId="865" />
  <row Id="1732" PostId="1660" Score="1" Text="This was recently posted as well and I thought it would add to this, &quot;NAMCO Demands Takedown Of Pacman Game Created By Kid Using MIT's Scratch Programming Language&quot; http://www.techdirt.com/articles/20100730/17081510430.shtml" CreationDate="2010-08-03T05:46:14.787" UserId="241" />
  <row Id="1733" PostId="2041" Score="3" Text="It does. It tells you the dot product is the cosine of the angle. That's all you need to know (and can know), as the application is still dependent on what you want to use it for. Orienting AI? You need the angle, so the dot is your friend. Rendering light? You need the angle. All that can be said is that it (dot product in this case) defines the cosine of the angle times length of vector a, times length of vector b. That is the knowledge that can be given. What part of it to use, and how, can't be told as the applications are infinite." CreationDate="2010-08-03T06:04:01.897" UserId="865" />
  <row Id="1734" PostId="2063" Text="it looks like I have to flatten the image first, then decompose, then edit, and then recompose.&#xA;&#xA;Thanks for the tip! But I'm looking for a non-destructive way." CreationDate="2010-08-03T07:11:34.047" UserId="144" />
  <row Id="1735" PostId="2023" Score="1" Text="I agree. I find it good to limit the number of states a variable can have to the ones actually used in logic. This really helps in debugging and testing. Enumerations are great for this if supported in your specific language." CreationDate="2010-08-03T07:29:39.090" UserId="1147" />
  <row Id="1736" PostId="1936" Text="Yes, definitely the added value of buying a boxed game. The games I felt best about buying are those with well-written booklets. Especially when they don't only contain instructions, but content like background stories and mood-setting texts." CreationDate="2010-08-03T07:36:17.217" UserId="1147" />
  <row Id="1737" PostId="1576" Score="1" Text="@coderanger: why gaming? This is about the source of a game, not about the game itself. SO maybe, but I thought it was better suited here" CreationDate="2010-08-03T07:41:19.920" UserId="252" />
  <row Id="1738" PostId="2063" Text="Ahh, I assumed you were working with a single layer image so flattening wouldn't be necessary, but nevermind then. Good luck!" CreationDate="2010-08-03T07:42:20.340" UserId="1272" />
  <row Id="1739" PostId="1981" Score="1" Text="that's a nice idea. Although it sounds more like an advanced cheat sheet..." CreationDate="2010-08-03T07:45:52.920" UserId="252" />
  <row Id="1740" PostId="2065" Text="This is closer to what I need. But it only affects the top layer! I have multiple layers in my image, and I would like to be able to do this without flattening it.&#xA;&#xA;Thanks for answering." CreationDate="2010-08-03T07:58:10.660" UserId="144" />
  <row Id="1741" PostId="2019" Score="1" Text="So you're the guy that made aaaaaaaaAAAAAaAAaAaaaaaAAAAaAaaaa!!!" CreationDate="2010-08-03T08:02:25.737" UserId="1004" />
  <row Id="1742" PostId="2068" Score="2" Text="er I mentioned quaternions." CreationDate="2010-08-03T08:16:58.697" UserId="259" />
  <row Id="1743" PostId="2068" Text="Ahh, sorry, I missed it." CreationDate="2010-08-03T08:29:57.213" UserId="267" />
  <row Id="1744" PostId="2016" Text="I upvoted this. It's not stupid to take a course.&#xA;&#xA;What works for one person, doesn't always work for everyone.&#xA;Some people, like me, prefer books and self-study; others need a course.&#xA;&#xA;IMO, you can do worse than taking a course from GI." CreationDate="2010-08-03T09:46:00.760" UserId="1206" />
  <row Id="1745" PostId="2069" Text="For physics, Chris Hecker's articles on rigid body dynamics, including collision response and restitution, are marvellous: http://chrishecker.com/Rigid_Body_Dynamics" CreationDate="2010-08-03T10:14:09.803" UserId="259" />
  <row Id="1746" PostId="2029" Text="@Prix: you mean this one: http://gamedev.stackexchange.com/questions/1210/good-3d-math-theory-books ;)" CreationDate="2010-08-03T10:15:11.580" UserId="13" />
  <row Id="1747" PostId="2045" Score="1" Text="+1 in my simple Flash games I use trig a lot." CreationDate="2010-08-03T10:24:56.640" UserId="560" />
  <row Id="1748" PostId="1121" Text="What?&#xA;I think you're doing it wrong :)&#xA;The weight of the CEGUI DLLs in my game is less than 3 MBs.&#xA;&#xA;And to MrValdez:&#xA;CEGUI is under the BSD license.." CreationDate="2010-08-03T11:48:01.310" UserId="1206" />
  <row Id="1749" PostId="1086" Score="2" Text="It's not clear what you mean:&#xA;&#xA;In-game GUI?&#xA;&#xA;Or GUI for tools?&#xA;&#xA;Each one is a very different requirement.." CreationDate="2010-08-03T11:48:59.730" UserId="1206" />
  <row Id="1751" PostId="1645" Text="Why is &quot;making it framerate independent to play back at a fixed timestep is silly&quot;? In order for the fixed framerate output to contain the sequence you recorded, it must be framerate independent when recording." CreationDate="2010-08-03T12:51:07.710" UserId="653" />
  <row Id="1753" PostId="2081" Text="Though this is a topic which can be applied in game development, I feel this question would be better suited at Stack Overflow." CreationDate="2010-08-03T13:46:48.717" UserId="189" />
  <row Id="1754" PostId="1086" Text="Who needs tools when you have an ENGINE *(epic music)*" CreationDate="2010-08-03T13:48:54.577" UserId="189" />
  <row Id="1755" PostId="1645" Text="Not necessarily. If the frame runs at a guaranteed fixed framerate (relatively unlikely, but if) you can just replay feeding in the keys as they came in and assuming the same timestep. Besides, it just sounded silly :op" CreationDate="2010-08-03T13:50:58.737" UserId="865" />
  <row Id="1756" PostId="2064" Text="You might try http://ask.metafilter.com/ for this type of question. I'm not sure this is exactly the right place for this question, but I also can't think of another Stack Exchange site to refer you to." CreationDate="2010-08-03T13:57:00.563" UserId="189" />
  <row Id="1757" PostId="2073" Score="2" Text="Don't forget those of us on a 5:4 ratio :)" CreationDate="2010-08-03T14:05:32.600" UserId="288" />
  <row Id="1758" PostId="2074" Text="And if you're making a game for console, don't forget the title-safe area!" CreationDate="2010-08-03T14:08:29.317" UserId="288" />
  <row Id="1759" PostId="1949" Text="@Michael, sure, done :)" CreationDate="2010-08-03T14:11:39.903" UserId="323" />
  <row Id="1760" PostId="2023" Text="+1 - exception: ok; assert: better; using a language construct that *actually maps to the problem domain*: best ;)" CreationDate="2010-08-03T14:33:58.367" UserId="288" />
  <row Id="1761" PostId="2019" Text="+1,000,000. I'm going to print this and stick it to my wall." CreationDate="2010-08-03T14:44:35.660" UserId="288" />
  <row Id="1762" PostId="1121" Text="MIT license - sorry. CEGUI is under the MIT license. :)" CreationDate="2010-08-03T14:49:21.187" UserId="1206" />
  <row Id="1764" PostId="2013" Text="I can't see how it really locks you in. Care to explain?" CreationDate="2010-08-03T15:26:43.940" UserId="1156" />
  <row Id="1765" PostId="2023" Text="@Andrew: Exactly, that's the message I was going for! :)" CreationDate="2010-08-03T15:29:31.267" UserId="189" />
  <row Id="1767" PostId="2086" Text="As this post is highly subjective, please consider making it CW." CreationDate="2010-08-03T15:40:15.590" UserId="14" />
  <row Id="1768" PostId="2086" Score="1" Text="I hope to have some good answers with distinct tips (as everyone is different and has their own experiences) and I hope the answerers will be rewarded with reputation. I don't see any reason for collaboration in answers (in wiki fashion). If this doesn't justify, then please feel free to make it CW; you are the mod after all! :)" CreationDate="2010-08-03T16:38:26.633" UserId="189" />
  <row Id="1769" PostId="444" Score="3" Text="Wow, I had no clue RCT was written almost entirely in assembly! No wonder it ran on my old 100mhz 80486... That's epic!!" CreationDate="2010-08-03T16:41:37.680" UserId="189" />
  <row Id="1770" PostId="2092" Score="1" Text="Might want to make this CW since it will be a list." CreationDate="2010-08-03T16:56:31.507" UserId="47" />
  <row Id="1771" PostId="2092" Score="3" Text="imho this looks more suitable for http://gaming.stackexchange.com/ mobs stand for monsters afaik, ks for kill steal, pk, player kill... but you may get a more complete list at the gaming section" CreationDate="2010-08-03T16:58:21.227" UserId="567" />
  <row Id="1772" PostId="2029" Text="@Michael yep you nailed it, i didnt remember if it was related but was something like that :)" CreationDate="2010-08-03T17:01:31.210" UserId="567" />
  <row Id="1774" PostId="2059" Text="I've spent the last two years here working on our in-house system, so I'm probably a bit biased." CreationDate="2010-08-03T17:36:17.153" UserId="395" />
  <row Id="1775" PostId="2098" Text="Good question, while i don't belive there is a way to 100% protect it, i do belive there are neat way of compacting and obfuscating it and i would like to know more about it..." CreationDate="2010-08-03T18:13:09.293" UserId="567" />
  <row Id="1776" PostId="2094" Text="A side note for LD: I saw that you can build your own middleware for the compo as long as you release it to everyone before the competition." CreationDate="2010-08-03T18:15:57.247" UserId="1302" />
  <row Id="1777" PostId="2100" Text="That is what i usually see around from most games ... cookie for you." CreationDate="2010-08-03T18:19:31.363" UserId="567" />
  <row Id="1778" PostId="2100" Text="Really just zip+rename is probably enough." CreationDate="2010-08-03T18:23:25.227" UserId="395" />
  <row Id="1779" PostId="1950" Text="Can you expand on the answer a little bit?" CreationDate="2010-08-03T18:32:58.130" UserId="1302" />
  <row Id="1780" PostId="2102" Text="That may be common on the player's side, using short words to describe something, but i dont think a company would use these terms on the development side specially. They would communicate using the proper words and from that create a new words for their games for example fire blast which is a fair used name becomes `Doom's Blade` which a player would later make into `hey how much dmg your DB does` so these are fairly player terms for gaming imho." CreationDate="2010-08-03T18:36:52.880" UserId="567" />
  <row Id="1782" PostId="2100" Score="1" Text="i dont think so, i like the `That will stop 95% of mischeivieous users.` out of breaking it in, while i do belive there are still people that will actually get it i would appreciate if not all and each are able to. These days most 10 y old kids know how to open files in notepad and rename it ..." CreationDate="2010-08-03T18:41:47.727" UserId="567" />
  <row Id="1783" PostId="2102" Text="Well I think that's a problem that should be handled on a team or project basis.  Just make a wiki page or something that says what terms you're using and make sure everybody's bought in." CreationDate="2010-08-03T18:53:16.177" UserId="51" />
  <row Id="1784" PostId="2097" Text="This was exactly what my problem was. I was outputting to PNG and not seeing any of the &quot;alpha&quot; channel goodness. Thanks, this is perfect.&#xA;&#xA;Does anyone have instructions for using the Gimp similarly?" CreationDate="2010-08-03T19:01:25.137" UserId="144" />
  <row Id="1785" PostId="2098" Text="It's worth questioning whether your art/audio assets should even be considered &quot;sensitive&quot;. Many games purposefully expose their assets to players, in order to support a healthy mod community, which in turn can add more value to the game (at virtually no cost to the developer, even)." CreationDate="2010-08-03T19:05:46.800" UserId="458" />
  <row Id="1786" PostId="2098" Text="I'm mainly concerned with sensitive data that drives a data-driven game (xml files, for example). I've just seen games bundle everything together into one or two files." CreationDate="2010-08-03T19:09:13.970" UserId="55" />
  <row Id="1787" PostId="2100" Text="Know how, yes. Will ever care, no." CreationDate="2010-08-03T19:11:09.023" UserId="395" />
  <row Id="1788" PostId="2097" Score="1" Text="It's frustrating because back around version 5.0 or 5.5 Photoshop would actually save the full channel on PNGs. Adobe changed the way they handled them for subsequent versions of the software. Sigh..." CreationDate="2010-08-03T19:28:13.690" UserId="154" />
  <row Id="1789" PostId="2100" Text="zip+rename isn't enough.  Linux rarely uses file extensions to determine the file type.  Instead it looks at the first few bytes and uses that to determine its type.  A renamed zip still shows up as a zip in Linux.  Windows XP does not do this, it still uses extensions.  I don't know how Windows7 does it, but I expect that in the future Windows will use a similar technique." CreationDate="2010-08-03T19:35:22.557" UserId="370" />
  <row Id="1790" PostId="2061" Text="For some reason it refuses to &quot;hook&quot; on my game :(" CreationDate="2010-08-03T19:45:17.970" UserId="469" />
  <row Id="1791" PostId="2065" Text="Add a mask layer to each layer of your image." CreationDate="2010-08-03T20:02:49.673" UserId="370" />
  <row Id="1792" PostId="2100" Text="Someone using Linux falls in that %5 ;-)" CreationDate="2010-08-03T20:24:00.667" UserId="395" />
  <row Id="1793" PostId="2113" Text="That is the goal. I have absolutely no desire to fight hackers. " CreationDate="2010-08-03T20:57:05.780" UserId="55" />
  <row Id="1794" PostId="1529" Text="Any more details on how Punkbuster works for a more complete answer?" CreationDate="2010-08-03T21:04:02.037" UserId="1333" />
  <row Id="1795" PostId="2102" Text="just makes my point, that a development team will talk things over..." CreationDate="2010-08-03T21:18:36.390" UserId="567" />
  <row Id="1796" PostId="2100" Text="I partially agree with this&#xA;1) Sure you can put off 95% of users ( probably a lot less with xor encryption ) but of course the 5% can then post their findings on the net for the consumption of everyone else - that can and does happen&#xA;2) Depends what you're protecting and why - security is about risk assessment more than anything else&#xA;3) Depends on the platform i.e consoles tend to have proprietary kernel level encryption which *may* make things more secure&#xA;4) DRM is fraught with issues but can be made to work given enough time/effort/resource ( i.e. see point 2 )" CreationDate="2010-08-03T21:28:20.007" UserId="347" />
  <row Id="1797" PostId="2092" Text="It's not at all unusual for communities to develop **their own glossary** in their [meta site](http://meta.gamedev.stackexchange.com). See: http://meta.stackoverflow.com/questions/40353/stack-overflow-glossary-dictionary-of-commonly-used-terms for reference." CreationDate="2010-08-03T21:30:07.273" UserId="2" />
  <row Id="1798" PostId="2100" Text="`of course the 5% can then post their findings on the net for the consumption of everyone else` yes they can but not always the 95% finds it nor have access nor understand to use it... i would say that from those 95% that actually gain access from those 5% posting the data about 30% or even less would find or make good usage out of it." CreationDate="2010-08-03T21:47:05.687" UserId="567" />
  <row Id="1799" PostId="1529" Text="Good answer - there is not 'one solution to rule them all' - most games have multiple 'attack vectors'. Often it's about risk assessment more than anything else i.e. what is the impact on the community if someone can cheat system X etc" CreationDate="2010-08-03T21:52:13.357" UserId="347" />
  <row Id="1800" PostId="2101" Text="Yeah that doesn't make it right! Locking everyone into a proprietary closed file format only helps Autodesk" CreationDate="2010-08-03T21:54:54.823" UserId="347" />
  <row Id="1801" PostId="1154" Score="1" Text="Indeed plus no standard libs and the ones that are available are buggy doesn't help. COLLADA is too bloated IMO and is trying to be all things to all people - that's not to knock the idea which is a laudable one" CreationDate="2010-08-03T21:56:42.403" UserId="347" />
  <row Id="1802" PostId="1089" Text="&lt;pedantic&gt;wxWidgets is also cross-platform&lt;/pedantic&gt; though I take your point about engine integration" CreationDate="2010-08-03T21:58:54.490" UserId="347" />
  <row Id="1803" PostId="2045" Text="I remember when my little brother tried to make a Bang-Bang game as a project for his high school VB class.  He had everything worked out, except he had no idea how to make the cannonballs fly in an arc based on angle and power, because he hadn't taken Trig 1 yet.  After I explained the basics, it worked just fine." CreationDate="2010-08-03T22:17:42.897" UserId="818" />
  <row Id="1804" PostId="2115" Text="Please edit your answer to look like an answer.  Currently your answer looks more like an editorial in the opinions page.  Just drop the salutation and the closing." CreationDate="2010-08-03T22:17:46.437" UserId="370" />
  <row Id="1805" PostId="1089" Score="1" Text="I said &quot;most popular&quot;, not &quot;only&quot; :-P wx has even less support for working with 3D contexts last I looked." CreationDate="2010-08-03T22:27:52.103" UserId="395" />
  <row Id="1806" PostId="2125" Text="Yay for sfxr! I found that gem of a program just a few days ago and definitely archived that for use during the competition. :)" CreationDate="2010-08-04T00:00:03.920" UserId="189" />
  <row Id="1807" PostId="783" Text="nVidia and Microsoft co-authored Cg/HLSL back in the day.&#xA;&#xA;They gave it different names due to branding, but the language is the same.&#xA;&#xA;Now, there's probably a slight difference, but it's truly minimal." CreationDate="2010-08-04T00:20:53.087" UserId="1206" />
  <row Id="1808" PostId="286" Text="Yes!&#xA;I was growing really tired of rolling my own cross-API wrapper, and then I just started using Ogre.&#xA;Haven't looked back. :)" CreationDate="2010-08-04T00:31:39.553" UserId="1206" />
  <row Id="1809" PostId="2122" Score="1" Text="This is another issue with AI and Animation systems.  Some implementations allow the AI to override pre-made animations so the AI functions a lot better but with graphical anomalies.  On the other hand if you make the animation perfect it severely limits what the AI is able to do.  Ah trade offs." CreationDate="2010-08-04T00:59:39.063" UserId="891" />
  <row Id="1810" PostId="2064" Text="Thanks for the reference will take a look." CreationDate="2010-08-04T01:22:48.423" UserId="919" />
  <row Id="1811" PostId="2098" Score="3" Text="What's wrong with players toying around with that data?" CreationDate="2010-08-04T01:54:32.200" UserId="603" />
  <row Id="1812" PostId="1965" Text="I suppose the bigger question is why are you copying another game like this anyway." CreationDate="2010-08-04T02:01:31.313" UserId="603" />
  <row Id="1813" PostId="2122" Text="I once implemented a system that would blend between groups of animations automatically in order to make the character naturally move around. It worked pretty well, seemed to be a decent way out of that problem. Too bad I didn't have more time to work on it." CreationDate="2010-08-04T02:11:01.683" UserId="41" />
  <row Id="1814" PostId="2129" Score="2" Text="And this will be __HARD__ : http://www.codinghorror.com/blog/2010/06/whatever-happened-to-voice-recognition.html" CreationDate="2010-08-04T02:27:52.570" UserId="14" />
  <row Id="1815" PostId="2106" Text="Kynapse is cool :)" CreationDate="2010-08-04T02:35:19.843" UserId="1004" />
  <row Id="1816" PostId="2092" Score="1" Text="@Robert the issue is that gaming jargon is very game-specific and is very disjoint from game developer jargon. The phrase the OP is asking about is more of the former category." CreationDate="2010-08-04T02:45:56.450" UserId="395" />
  <row Id="1817" PostId="2129" Text="Yeah, that is no joke." CreationDate="2010-08-04T03:52:28.170" UserId="55" />
  <row Id="1818" PostId="2135" Text="Wow. Looks like I've been getting excited about ODE for nothing. I think I will dump my idea of using it and take another look at bullet." CreationDate="2010-08-04T03:55:12.927" UserId="647" />
  <row Id="1819" PostId="545" Score="2" Text="Yeah, you can easily spend a a few weeks slowly building up a game engine in PyGame without much actual game to show for it. It's a great library, but in my experience you'll have to build up some framework code over time before it'll work for rapid prototyping of more involved ideas." CreationDate="2010-08-04T05:01:24.973" UserId="1317" />
  <row Id="1820" PostId="1148" Text="Yeah, that and the weak typing. I got some really strange bugs before realizing that the modulus operator was returning answers in floating point." CreationDate="2010-08-04T05:08:09.300" UserId="1317" />
  <row Id="1821" PostId="2134" Text="+1 nice link bullet seems interesting i might take a look at it soon :)" CreationDate="2010-08-04T05:26:31.690" UserId="567" />
  <row Id="1822" PostId="2074" Text="Very good answer. In addition: If it's a multiplayer or other competitive game, choose the aspect-ratio in a way that it doesn't give others an advantage. Eg. if your game movement is mostly horizontally, use solution #1 rather than #2, since with solution #2, 16:9 will have a greater horizontal viewport (and look-ahead bonus) than other players. Solution #1 on the other hand just extends the background which is fine and won't result in a handicap. If the game is moving in both dimensions equally, choose a fixed ratio as in #3 or #4." CreationDate="2010-08-04T07:06:20.657" UserId="20" />
  <row Id="1823" PostId="2133" Score="1" Text="A quick aside: I have seen many many people get absolutely nowhere with their projects because they kept swapping physics engines. Do not let this happen to you.&#xA;&#xA;I recommend picking a reasonable one and sticking with it throughout the project. If you didn't like it, pick another one for the next project." CreationDate="2010-08-04T07:54:56.723" UserId="678" />
  <row Id="1824" PostId="2033" Score="2" Text="Calculus is a huge field. Probably only a small amount of it is needed for game development." CreationDate="2010-08-04T08:05:17.403" UserId="1049" />
  <row Id="1825" PostId="2033" Score="2" Text="@Noldorin yep. In most situations understanding the relationship between the derivative, acceleration, velocity, and position might be enough...but calculus is awesome." CreationDate="2010-08-04T08:16:24.717" UserId="1024" />
  <row Id="1826" PostId="2091" Text="Yet for Nintendo developers, that's not so far in the past." CreationDate="2010-08-04T10:00:59.820" UserId="1101" />
  <row Id="1827" PostId="2008" Text="Paid QA staff is out of the budget for most indie developers though, so it makes sense to 'crowd-source' it as far as possible. And there's no substitute for seeing exactly how well the game fares in the wild." CreationDate="2010-08-04T10:06:29.890" UserId="1101" />
  <row Id="1828" PostId="1893" Text="Also, make sure you get some testers who have never seen the game before and watch them play (the whole time they are playing). Don't offer them any advice (you aren't going to be packaged along with the game) and take notes. There are things they may simply not tell you about if you just get them to send back a bunch of notes and you really get a feel for how much certain things annoy people when you have to sit there and feel their frustration. A lot of the time testers don't want to hurt your feelings so they won't give you the whole truth." CreationDate="2010-08-04T10:16:48.367" UserId="1365" />
  <row Id="1829" PostId="1909" Text="An easy way to break the habit is to write a design doc (http://www.gamasutra.com/view/feature/3384/the_anatomy_of_a_design_document_.php). If you actually put in the effort, it makes sure everyone is on the same page and you actually know what you are going to do (though don't treat it like its set in stone, if something doesn't work out how you expect, go back and revise the doc)" CreationDate="2010-08-04T10:19:47.287" UserId="1365" />
  <row Id="1830" PostId="1906" Text="@Kaj, agreed. I heard of one development team (for a &quot;AAA&quot; game) who had the project lead say something along the lines of &quot;Lets just get this finished, we'll put the fun in later&quot;. Unsurprisingly the game failed to do well even though all the &quot;i's&quot; were dotted and all the &quot;t's&quot; crossed." CreationDate="2010-08-04T10:22:45.503" UserId="1365" />
  <row Id="1831" PostId="1645" Text="Any ideas on how to handle audio with this method of recording?" CreationDate="2010-08-04T10:58:55.453" UserId="302" />
  <row Id="1832" PostId="2083" Text="+1, I really like this idea!" CreationDate="2010-08-04T11:17:48.670" UserId="258" />
  <row Id="1833" PostId="2114" Text="+1 for this. Compression satisfies both the need to obfuscate, and will improve loading times and app footprint. Archive/packing of data will require an abstraction layer anyway, so combining it with something that can load/decompress in place shouldn't be too much engineering. If you do go with compression, I'd make sure to keep the compression/decompression logic separate from the loading/archive stuff. That way you can swap in a better algorithm at a later date, the infrastructure needed doesn't change between algorithms." CreationDate="2010-08-04T12:25:33.133" UserId="741" />
  <row Id="1834" PostId="1148" Text="No user defined data structures are a pain. If you need to return more than one value from a function you need to create an object for it, but all objects are full game actors with a position, events, etc. You can't pass around arrays (if you don't specify an index, it will assume [0])" CreationDate="2010-08-04T12:38:46.273" UserId="769" />
  <row Id="1835" PostId="2114" Text="@MrCranky: If you look at the way EA does it with their .package (DBPF) archive format (used in SPORE and The Sims games), you'll actually see this in action. Their engine has an extra field in the index table for &quot;compression type&quot;, an internal code for what algorithm to use. They use different compression algorithms based on the chunk type (text chunks use a special compression for example)&#xA;&#xA;The versioning system they use also allows for integration of mods and backwards compatibility.&#xA;&#xA;More on the DBPF format here: http://www.simswiki.info/DatabasePackedFile" CreationDate="2010-08-04T12:45:45.353" UserId="44" />
  <row Id="1836" PostId="2094" Text="I really like that rule... But it has to be available to everyone at least two weeks in advance. I need to hurry and get something out by tomorrow!! :-O" CreationDate="2010-08-04T12:46:21.127" UserId="189" />
  <row Id="1837" PostId="2114" Text="Interesting stuff: I've only ever done it at compile time with a #define, but runtime opens up some nice possibilities (such as being able to change your compression type without having to rebuild every file for your game)." CreationDate="2010-08-04T13:00:08.743" UserId="741" />
  <row Id="1838" PostId="1393" Score="1" Text="This is the only correct answer in my opinion. Have a closed system of resources, you can't just magically create new things without taking away something else. Apply this principle to your game design: http://en.wikipedia.org/wiki/Conservation_of_energy" CreationDate="2010-08-04T13:59:28.767" UserId="1392" />
  <row Id="1840" PostId="2115" Text="Especially the Dear Anon part." CreationDate="2010-08-04T14:27:01.053" UserId="14" />
  <row Id="1841" PostId="1966" Text="It could still be argued to be a derivative work. http://en.wikipedia.org/wiki/Derivative_work" CreationDate="2010-08-04T14:28:58.723" UserId="14" />
  <row Id="1842" PostId="2161" Text="I know... should be XNA... But if I make just a simple 3D maybe WPF is ok." CreationDate="2010-08-04T14:47:41.807" UserId="1370" />
  <row Id="1843" PostId="2153" Text="Great read =) What a minefield this subject is..." CreationDate="2010-08-04T14:48:44.333" UserId="1352" />
  <row Id="1844" PostId="2142" Text="Recast/Detour has to be the coolest AI middleware available - and then it's free - under the MIT license.&#xA;That's unbelievable. :)" CreationDate="2010-08-04T14:59:18.040" UserId="1206" />
  <row Id="1845" PostId="1966" Text="That he's developing a game that happens to have enemies that have ranged attacks, with the same ranges as an existing game?&#xA;I can see how it would be derivative if it were the same positions. But if they were changed, then surely there would be no issue?" CreationDate="2010-08-04T15:00:03.903" UserId="1156" />
  <row Id="1846" PostId="79" Text="This reminds me of the indie game Devil's Tuning Fork: http://www.indiegames.com/blog/2009/11/freeware_game_pick_devils_tuni.html (watch the video to get a good feel for it!)" CreationDate="2010-08-04T15:02:45.740" UserId="189" />
  <row Id="1847" PostId="2147" Score="1" Text="almost all companies use HR as a filter to remove non-relevant resume submissions.  They make get a few hundred resumes and HR will weed them down to maybe 5 of them that actually will get interviews.  " CreationDate="2010-08-04T15:10:37.190" UserId="891" />
  <row Id="1848" PostId="1645" Text="You'd replay a second time and record the audio seperately and join the two in a video processing program. No real way around it." CreationDate="2010-08-04T15:26:37.700" UserId="865" />
  <row Id="1849" PostId="2166" Text="are you using the webSockets API? and is this going to be open sourced at all?" CreationDate="2010-08-04T15:43:50.767" UserId="95" />
  <row Id="1850" PostId="2165" Text="Well, using relative positioning and anchors pretty much a given for any kind of UI system. I'm specifically more interested in the measurements between different components.&#xA;&#xA;And for this sort of thing, the 3D / 2D GUI distinction is sort of hazy: especially when you're using textured screen space quads to take images of arbitrary size, and scale/position them in your UI space." CreationDate="2010-08-04T16:05:41.623" UserId="741" />
  <row Id="1852" PostId="2177" Text="the metanet tutorials are truely excellent" CreationDate="2010-08-04T17:44:42.370" UserId="259" />
  <row Id="1853" PostId="2181" Text="I have VSync enabled. Plus I'm seeing the higher CPU when the draw call is in. If I take the draw call out I idle at ~3%. In fact if I do everything apart from the call to glDrawElements, it is steady at 3%. With the one call in, 100% on one CPU." CreationDate="2010-08-04T18:07:30.273" UserId="1095" />
  <row Id="1854" PostId="2185" Text="Duplicate of http://gamedev.stackexchange.com/questions/1506/why-use-asset-manifest-files ?" CreationDate="2010-08-04T19:23:01.560" UserId="395" />
  <row Id="1855" PostId="2185" Text="Not exactly. I think this is a valid question." CreationDate="2010-08-04T19:28:29.427" UserId="189" />
  <row Id="1856" PostId="2185" Text="Not quite, but similar areas, and similar pros/cons. But there are things you'd do with the manager that you wouldn't do with a manifest. Manifests are dumb things that simply gather together disparate resources into a single index. A resource manager can have much more responsibility, and better interfacing with the game engine." CreationDate="2010-08-04T19:28:45.510" UserId="741" />
  <row Id="1857" PostId="2185" Text="I don't think I'm asking the same thing. That seems to be asking whether you should have some kind of file-path shortener, whereas I'm asking about sort of a resource loader/cache type thing.&#xA;However, I think that didn't appear in seach as I used resource rather than asset." CreationDate="2010-08-04T19:36:14.810" UserId="1156" />
  <row Id="1858" PostId="2042" Text="We make business-oriented visualization software for both unix and windows, and I can confirm that the majority of the issues we see on Windows are OpenGL driver related. " CreationDate="2010-08-04T21:05:10.157" UserId="678" />
  <row Id="1859" PostId="2195" Score="1" Text="so each time through the game loop, it decides which of those 'strategies' takes priority and then executes that?" CreationDate="2010-08-04T21:08:10.853" UserId="1429" />
  <row Id="1860" PostId="2195" Text="@jle Pretty much.  So each of your strategies will broken down into their own classes, keeping your code organized." CreationDate="2010-08-04T21:10:43.627" UserId="47" />
  <row Id="1861" PostId="2198" Text="I'd say GPU is just as likely as CPU. Indeed, depending on how tightly coupled things are, it's entirely possible to be heavily CPU bound in half the frame, and heavily GPU bound the other half. Dumb profiling may even show way less than 100% utilisation on either. Make sure your profiling is fine grained enough to show that (but not so fine grained as to be intrusive!)&#xA;" CreationDate="2010-08-04T21:14:13.060" UserId="1091" />
  <row Id="1862" PostId="2185" Text="Duplicate of http://gamedev.stackexchange.com/questions/1702/how-to-design-an-assetmanager ?" CreationDate="2010-08-04T21:15:24.433" UserId="47" />
  <row Id="1863" PostId="2160" Text="I've used it to great effect in a simple game prototype. " CreationDate="2010-08-04T21:16:06.367" UserId="400" />
  <row Id="1864" PostId="2182" Text="I've used this in several games--it works great." CreationDate="2010-08-04T21:28:34.193" UserId="561" />
  <row Id="1865" PostId="2203" Text="I don't see how this offers any advantage over not packing them per component unless you're packing non-vector data that you actually use as floats - although I see your AoS excludes W, which would not seem very memory access friendly, I guess in that case there is a win. Also note that SPUs have no cache lines except for communicating with main memory." CreationDate="2010-08-04T21:48:59.693" UserId="865" />
  <row Id="1866" PostId="2206" Text="Community wiki candidate?" CreationDate="2010-08-04T21:54:13.043" UserId="395" />
  <row Id="1867" PostId="2206" Score="3" Text="-1 offtopic.  Probably a good question for the webapps stackexchange site: http://webapps.stackexchange.com/  Like maybe this question: http://webapps.stackexchange.com/questions/3469/whats-the-best-app-for-collaboration-in-a-startup" CreationDate="2010-08-04T22:01:21.930" UserId="51" />
  <row Id="1868" PostId="2209" Text="If you DO end up unpacking them, as per the AOSAO approach, at least pull in multiple vectors at once indeed. Also you'd want to pull in a batch, and while processing those pull in the next batch. While sending out the first batch, you process the second and pull in the third. That way you hide as much latency as you can." CreationDate="2010-08-04T22:04:49.200" UserId="865" />
  <row Id="1869" PostId="2176" Text="Doesn't really answer the question. It is not really possible to port an existing game to Flixel without rewriting the whole thing." CreationDate="2010-08-04T22:29:02.667" UserId="119" />
  <row Id="1870" PostId="2206" Score="1" Text="I can see how this is tangential to game development but like Tetrad said, it should definitely be asked in the webapps stackexchange site. -1 :(" CreationDate="2010-08-04T22:42:31.587" UserId="189" />
  <row Id="1871" PostId="2176" Text="Of course. But what it does do is solves the problem of performance and lack of physics knowledge. Create games, not wheels." CreationDate="2010-08-04T23:02:35.283" UserId="55" />
  <row Id="1872" PostId="2197" Text="To add to the ingame profiler (which I totally agree with), extending your ingame profiler to display multiple bars (for multiple frames) helps you correlate game behaviour to spikes and might help you find bottlenecks that won't show up in your average capture with a profiler." CreationDate="2010-08-04T23:04:17.497" UserId="865" />
  <row Id="1873" PostId="2192" Text="While the low hanging fruit indeed tends to be in 10% of the code, and gets easily caught by profiling in the end, purely working by profiling for this will make you miss out on the routines that are called a lot but have just a little bit of bad code each - they won't show up in your profile but they bleed a lot of cycles per call. It really adds up." CreationDate="2010-08-04T23:06:21.767" UserId="865" />
  <row Id="1874" PostId="2189" Score="2" Text="You're missing the point of SoA for vector math. You rarely ever have only one object you're working on - in practice you're iterating an array and doing the same thing to many objects.&#xA;&#xA;Consider doing 4 dot products. If you're storing vectors as AoS in xyz0 form, taking the dot of two vectors requires multiply-shuffle-add-shuffle-add - 5 instructions. Doing 4 dot products requires 20 instructions.&#xA;&#xA;On the other hand, if you have 8 vectors stored SoA fashion (xxxx, yyyy, zzzz, xxxx, yyyy, zzzz) you can do 4 dot products with only 3 instructions (mul, madd, madd) - that's over 6 times faster." CreationDate="2010-08-04T23:08:02.030" UserId="190" />
  <row Id="1875" PostId="2189" Text="Fair point. However, two observations. I would always keep the W present so I wouldn't need 20 instructions, secondly, most of the remaining overhead can be hidden in the latency of other instructions - your tight loop would suffer from severe pipeline stalls, no? making the 6 times is a theoretical optimization. So, while yes, you want to batch your operations - hardly ever will you just need to do a rapid batch of dot products without anything else to do on said data. The cost of deswizzling/scatter on the PPU side would be too much of a sacrifice for me." CreationDate="2010-08-04T23:24:35.700" UserId="865" />
  <row Id="1876" PostId="2216" Text="Ah, we agree after all :o) Swizzle on the SPU if you need it, time enough to do it there." CreationDate="2010-08-04T23:36:13.047" UserId="865" />
  <row Id="1877" PostId="2203" Score="1" Text="1. As with all things, your mileage may vary depending on your exact data/algorithm/processor. In register constrained cases, avoiding the need for 4 temp registers before you can shuffle all your X fields into the same register can be useful. But again, YMMV.&#xA;2. My answer was more general because the concepts transfer well within the field of data parallel programming; cache lines considerations are more pertinent to GPU/SSE but I felt I should mention them all the same :)&#xA;" CreationDate="2010-08-05T00:10:34.363" UserId="1232" />
  <row Id="1878" PostId="616" Text="This question is actually wrong...&#xA;I mean: Direct3D and OpenGL really aren't 3D APIs, are they?&#xA;They are offering hardware acceleration, but in both 2D and 3D.&#xA;There's a slight difference there." CreationDate="2010-08-05T00:17:58.153" UserId="1206" />
  <row Id="1879" PostId="2189" Text="Groan, I stand corrected - on SPU I would need 20 if done naively (but I would shuffle in place). It's one of the things where I ended up doing a lot of swizzles to get it optimal. 360 has a nice dot intrinsic (but lacks the awesome bit manipulation). " CreationDate="2010-08-05T00:33:42.227" UserId="865" />
  <row Id="1881" PostId="2189" Text="Yeah, now that I think of it, if you're trying to do &quot;4 dot products&quot; you can do rather better than 20 instructions because you can combine some of the later adds. But having your vectors in registers as xxxx, yyyy, zzzz - whether you swizzled or stored as SoA - gets rid of those shuffles completely.&#xA;&#xA;Anyway, you're right that SoA makes branchy logic code slower - but I would argue that the solution in many cases like that is to bucket your data and refactor the branchy logic into nice flat loops." CreationDate="2010-08-05T00:53:54.933" UserId="190" />
  <row Id="1882" PostId="1645" Text="I wonder how this response has so many upvotes while not actually properly responding to what I asked." CreationDate="2010-08-05T01:06:37.170" UserId="469" />
  <row Id="1883" PostId="1155" Score="1" Text="People seem to miss the bit where it's not supposed to be a format that you load all your game models into your game with. It's a format that you can store and easily share between content creation tools. Your game was always supposed to have its own optimised format that you convert to, from collada." CreationDate="2010-08-05T01:26:58.987" UserId="603" />
  <row Id="1884" PostId="2101" Text="It's not backed by somebody who wants to lock you into their own tools. Surprise!&#xA;&#xA;A major player who does use collada, though, is Epic Games in particular UE3." CreationDate="2010-08-05T01:28:52.320" UserId="603" />
  <row Id="1885" PostId="2186" Text="Here's the hit testing I'm using: http://www.foxarc.com/blog/article/106.htm I can't use the built in hit testing very well since it's just block hit-testing." CreationDate="2010-08-05T02:49:24.800" UserId="354" />
  <row Id="1886" PostId="2133" Text="@Ranieri, I've seen this happen to me and others with more than just physics and in more areas than just game engines. My thought was to add a thin layer of abstraction so that if I do decide to change later I can wrap the new library and plug it in." CreationDate="2010-08-05T03:00:48.490" UserId="647" />
  <row Id="1887" PostId="1645" Text="Maybe you narrowed the search space too much. You want it to compress lossless at high speeds, without intrusion. And cheaper than Fraps (which is more or less the standard), which is $39. That might just be impossible. The only solution that I can think of to qualify is roll your own." CreationDate="2010-08-05T03:46:18.957" UserId="865" />
  <row Id="1888" PostId="2189" Text="Agreed. I am fairly sure if I go over my old SPU code (can't, previous company) there's instances where I did move it into xxxxyyyyzzzz format for optimization without realizing it specifically. I never offered it from the PPU in that format though. Mind you, OP what contemplating dma-ing x,y,z in seperately. That definitely wouldn't work for me. I'd also (as I did) would rather swizzle locally as not everything works nicer in xxxxyyyyzzzz format. Gotta pick your battles I guess. Optimizing for SPU is a blast and you feel awfully clever once you got that tight solution :o)" CreationDate="2010-08-05T03:59:09.587" UserId="865" />
  <row Id="1889" PostId="2203" Text="Fair enough, I stand enlightened and shall learn to critique more subtly! Thanks for sharing your insight :o)" CreationDate="2010-08-05T04:04:04.480" UserId="865" />
  <row Id="1890" PostId="2069" Score="5" Text="You mentioned quaternions but not transformation matrices??" CreationDate="2010-08-05T04:06:37.567" UserId="288" />
  <row Id="1891" PostId="2185" Text="@Bryan, I disagree, &quot;are asset managers a good idea&quot; is a different question than &quot;how do you implement asset managers&quot;.  Granted, some people were trying to answer the first question for the second question, which would cause a lot of answer overlap." CreationDate="2010-08-05T04:07:54.290" UserId="51" />
  <row Id="1893" PostId="2231" Text="Oh wow, a whole wiki! I will take a look" CreationDate="2010-08-05T05:15:04.350" UserId="1163" />
  <row Id="1894" PostId="2229" Text="Relying on the compiler is only smart to a certain point. Yes, it will do some peephole optimizations you wouldn't think of (and couldn't do without assembly), but it is clueless about what your algorithm is supposed to do so it can't do intelligent optimizations. Also, you'd be surprised how much cycles you can win by implementing critical code in assembly or intrinsics....if you know what you're doing. Compilers aren't as smart as they're made out to be, they don't know things that you do unless you tell em explicitly everywhere (like using 'restrict' religiously). " CreationDate="2010-08-05T05:19:56.013" UserId="865" />
  <row Id="1895" PostId="2229" Text="And again I must comment that if you only look for hot spots you'll miss out on a lot of cycles because you won't find any trickled out cycles across the board (for example smartpointers....dereferences anywhere, never showing up as a hotspot because effectively your whole program is a hotspot)." CreationDate="2010-08-05T05:21:00.097" UserId="865" />
  <row Id="1896" PostId="82" Text="-1, too broad a scope" CreationDate="2010-08-05T05:23:17.083" UserId="51" />
  <row Id="1897" PostId="671" Text="I heard it phrased &quot;Farmville catches players in a web of social obligation&quot;, or something like that." CreationDate="2010-08-05T05:24:15.663" UserId="1024" />
  <row Id="1898" PostId="2230" Text="If you use any form or algorithm that uses the same random number generator (except one that somehow sneaks in an invariant like system time), the same seed *will* generate the same level, there's really no way around it." CreationDate="2010-08-05T05:44:14.640" UserId="865" />
  <row Id="1899" PostId="2230" Text="Yes, but I think the trick is actually using a seed in the first place to generate the level from. I have built random level generators before, but they didn't use a single seed. Often I would choose random points, then for each point choose a random asset to place there. Doing it this way there is no ONE true seed that will always generate the same level, as there are a bunch of things generating there own random numbers." CreationDate="2010-08-05T06:46:47.857" UserId="1163" />
  <row Id="1900" PostId="760" Score="3" Text="Being a big metroid and Castlevania player, I'm not sure I agree with your second bullet point. Being able to backtrack and re-explore areas when you have new skills and abilities can be very cool. Although, it really depends on your type of game (but that should go without saying)" CreationDate="2010-08-05T07:10:57.670" UserId="1167" />
  <row Id="1901" PostId="2204" Score="1" Text="I'm aware of boids, but it's good reference. I'm a bit scared of many many behaviours (stay on racing line, avoid cars, block, draft, etc) interacting in ways that are too complex to tune, and ending up with the occasional edge case collision. This is fine for pedestrians, but catastrophic for race cars that need to keep moving." CreationDate="2010-08-05T07:50:16.843" UserId="259" />
  <row Id="1902" PostId="2228" Text="Excellent answer, thank you! That is way more than enough rope to hang myself with. In the end, I will probably take your advice to go the bitmap route. In the meantime, I've got some reading to do! :P" CreationDate="2010-08-05T08:06:09.980" UserId="678" />
  <row Id="1903" PostId="991" Text="It can be good to isolate your design as much as possible from the engine, so you can iterate on it even when things like graphics and cameras are not implemented properly. You could call this a prototype stage but I'd have the designers run it in paralell with the start of the programmer's project." CreationDate="2010-08-05T08:06:43.347" UserId="259" />
  <row Id="1904" PostId="2147" Text="Demos are not resumés. HR don't run demos." CreationDate="2010-08-05T10:18:44.433" UserId="1101" />
  <row Id="1908" PostId="2236" Text="+1 for Perlin-Noise" CreationDate="2010-08-05T10:47:20.373" UserId="1368" />
  <row Id="1909" PostId="2222" Text="Thanks, this seems the most simple method and probably would be the fastest to calculate as well" CreationDate="2010-08-05T10:50:58.010" UserId="1179" />
  <row Id="1910" PostId="2221" Text="Excellent answer as well. I think also to support different restitution, all I would need to do would be to multiply Ve by the bounciness" CreationDate="2010-08-05T10:53:16.103" UserId="1179" />
  <row Id="1912" PostId="1533" Text="@Bob Somers: you instance geometry by passing matrix uniforms that you computed yourself to vertex shaders (the so called Model-view matrix)." CreationDate="2010-08-05T11:30:58.447" UserId="1374" />
  <row Id="1914" PostId="970" Score="2" Text="Whenever I make something I like having a few high-quality assets available from the start that I can use as placeholders for everything else. One character, one vehicle, whatever... Just something that shows just how awesome stuff is going to be when its done." CreationDate="2010-08-05T13:31:48.620" UserId="1352" />
  <row Id="1915" PostId="176" Text="Useful app if you can't afford anything else, but it has some interface quirks that make people who are used to Photoshop squirm! (ie. me )" CreationDate="2010-08-05T13:54:50.820" UserId="1352" />
  <row Id="1916" PostId="1111" Score="2" Text="Actually, that's not true. In the real world money, or real balances, are created by credit (usually through banks or related institutions). " CreationDate="2010-08-05T13:57:19.163" UserId="1444" />
  <row Id="1917" PostId="2185" Text="I believe that this question is valid and not a duplicate of either of the questions linked above. A manager is different from a manifest, and whether a manager is a good idea is different from how to implement one." CreationDate="2010-08-05T14:49:57.967" UserId="182" />
  <row Id="1918" PostId="2188" Text="I must thank you for this answer. I was not convinced of the utility of a dedicated resource manager before I read this, and now I will be implementing one very soon." CreationDate="2010-08-05T14:51:36.217" UserId="182" />
  <row Id="1919" PostId="2244" Text="How much real life is there in tetris?" CreationDate="2010-08-05T14:57:26.440" UserId="259" />
  <row Id="1920" PostId="82" Text="Agreed, it would benefit from being at least broken out into different subquestions (2d art, 3d art, music, sound effects)" CreationDate="2010-08-05T15:06:02.723" UserId="865" />
  <row Id="1922" PostId="2186" Text="Ok that is using loads of bitmap methods so no wonder it is slow. You need to look at how to do basic rectangle and circle collisions - which are fine for most purposes." CreationDate="2010-08-05T15:52:56.310" UserId="119" />
  <row Id="1923" PostId="2252" Score="1" Text="It's a good question, IMO." CreationDate="2010-08-05T16:02:38.767" UserId="1206" />
  <row Id="1924" PostId="1111" Text="@Brandon Is completely right here. The fractional reserve system allows there to be ~10x as much &quot;money&quot; in circulation as there is physical currency." CreationDate="2010-08-05T16:18:31.213" UserId="1393" />
  <row Id="1925" PostId="201" Text="Last time I looked Maya PLE saved its files as encrypted blobs that can't be loaded by anything other than Maya PLE (including real Maya)." CreationDate="2010-08-05T17:48:28.140" UserId="395" />
  <row Id="1926" PostId="2201" Text="Do people use opensteer in games or is it more for simulations?" CreationDate="2010-08-05T18:12:33.110" UserId="1429" />
  <row Id="1927" PostId="2259" Text="Is that all I need to do? Grab the glext.h?" CreationDate="2010-08-05T18:12:54.687" UserId="549" />
  <row Id="1928" PostId="2148" Text="Ok, I am awarding the bounty for this one, that is the one that actually was MOSTLY correct...&#xA;&#xA;Anyway, thanks to Kaj for mentioning ram drives (solved the problem of disk slowness), but I cannot award a... half-bounty to each answer." CreationDate="2010-08-05T18:18:53.303" UserId="469" />
  <row Id="1929" PostId="2244" Text="A lot of :). Tetris is about logical thinking under the presure. Like other logical games. It's about practising. More practising, more presure u can handle and still have fun from it. It seems like real life to me :)..." CreationDate="2010-08-05T18:25:29.827" UserId="1456" />
  <row Id="1930" PostId="2256" Text="The question is about interpolation along a *spline*" CreationDate="2010-08-05T18:25:47.237" UserId="187" />
  <row Id="1931" PostId="2259" Score="1" Text="Yes, and in your code you would need to do something like:&#xA;PFNGLACTIVETEXTUREPROC glActiveTexture;&#xA;Then to use:&#xA;(PFNGLACTIVETEXTUREPROC) wglGetProcAddress(&quot;glActiveTexture&quot;);&#xA;Which is why I find it much easier to use the GLee or GLEW libraries. [They're close to the same, but GLEW needs to be initialized]" CreationDate="2010-08-05T18:29:02.737" UserId="1156" />
  <row Id="1932" PostId="1603" Text="This question is starting to sound a little hostile to me. Please keep things friendly everyone." CreationDate="2010-08-05T18:36:48.243" UserId="395" />
  <row Id="1933" PostId="2193" Text="This seems so wrong to me. Sure, my '+' may take twice as long each time it's called, but this really only matters in a tight loop. Inside a tight loop, changing a single '+' can do orders of magnitude more than changing a '+' outside the loop. Why think about a tenth of a microsecond, when a millisecond can be saved?" CreationDate="2010-08-05T18:53:42.143" UserId="1393" />
  <row Id="1934" PostId="2256" Text="Sorry; message added to top of answer." CreationDate="2010-08-05T19:22:37.857" UserId="189" />
  <row Id="1935" PostId="2252" Score="1" Text="I vote for this question to be changed to apply to interpolation rather than specifically spline interpolation. This is what I thought the question was about, thus my out-of-place answer below." CreationDate="2010-08-05T19:25:58.227" UserId="189" />
  <row Id="1936" PostId="2193" Text="Then you don't understand the idea behind trickle loss. '+' (just as an example) is called hundreds of thousands of times per frame, not just in tight loops. If that loses a few cycles every time you lost a lot of cycles across the board, but it will never show up as a hotspot since the calls are evenly distributed across your codebase/execution path. So you're not talking about a tenth of a microsecond, but indeed thousands times those tenths of microseconds, adding up to multiple milliseconds. After going for the low hanging fruit (tight loops) I gained milliseconds this way more than once." CreationDate="2010-08-05T19:32:24.050" UserId="865" />
  <row Id="1937" PostId="2193" Text="It's like a tap that drips. Why worry about saving that little drop? - &quot;If your faucet is dripping at the rate of one drop per second, you can expect to waste 2700 gallons per year&quot;." CreationDate="2010-08-05T19:36:41.607" UserId="865" />
  <row Id="1938" PostId="2193" Text="Oh, I guess it wasn't clear that I meant when operator+ was overloaded, so it would affect every '+' in the code - you indeed wouldn't want to optimize every '+' in the code. Bad example I guess....I meant it as an exaple for 'core functionality that gets called all over the place where the implementation might be slower than assumed, especially when hidden by operator overloading or other obfuscating C++ constructs'." CreationDate="2010-08-05T20:09:20.420" UserId="865" />
  <row Id="1939" PostId="2263" Score="6" Text="very subjective, should be community wiki" CreationDate="2010-08-05T20:54:52.093" UserId="891" />
  <row Id="1940" PostId="2221" Text="Close - the version with restitution is Ve = Vi - (1+R)*Dot(Vi, Vn)*Vn, where R, the coefficient of restitution, is between 0 and 1.&#xA;&#xA;Also, just so there's no confusion I should point out that my simplified computation is identical to Chris's - I'm just going into a bit more detail on the derivation." CreationDate="2010-08-05T22:17:49.193" UserId="190" />
  <row Id="1941" PostId="2263" Score="4" Text="I don't think this is subjective, as I am looking for information based off psychology or other research. I am sure there will be a &quot;best answer&quot;." CreationDate="2010-08-05T22:39:02.413" UserId="1163" />
  <row Id="1942" PostId="2269" Text="I think serialization in game development programming is an important topic, but I don't like this question.  What are **you** trying to do?  What **specific problems** are you trying to solve? In lieu of that, I converted it to a community wiki so that it's more of a discussion format." CreationDate="2010-08-05T22:39:59.900" UserId="51" />
  <row Id="1943" PostId="81" Score="1" Text="Does SDL have to take over your main loop though? I thought you could avoid that by not including SDLmain.h and being careful to do the things yourself..." CreationDate="2010-08-05T22:48:20.237" UserId="189" />
  <row Id="1944" PostId="2204" Text="I've worked with the OpenSteer API which implements a lot of this stuff.  I've found it pretty easy to tune.   In your case I'd make the &quot;SteerToAvoidCollision&quot; weight very high.   I don't know what vehicles you are racing, but I'd think that if you get it right for the vast majority of cases, then the remaining occasional bump or bash due to an edge case is probably pretty realistic...." CreationDate="2010-08-05T23:07:15.527" UserId="400" />
  <row Id="1945" PostId="2133" Text="You might like to know about the GangstaWrapper then: http://sourceforge.net/projects/gangsta/" CreationDate="2010-08-05T23:12:51.167" UserId="678" />
  <row Id="1946" PostId="2275" Text="http://en.wikipedia.org/wiki/Dynamic_range_compression" CreationDate="2010-08-05T23:32:37.657" UserId="1095" />
  <row Id="1947" PostId="2133" Text="Oh yeah, just like the OPAL (open physics abstraction layer). I might do it on my own though; more fun!" CreationDate="2010-08-06T00:03:51.977" UserId="647" />
  <row Id="1952" PostId="2268" Text="Damn that is indeed a nice name if you want to hit the search book :)" CreationDate="2010-08-06T01:15:11.263" UserId="567" />
  <row Id="1954" PostId="2252" Text="Although your bilinear interpolation is a good answer, I think these kind of calculations could go in a related question, for example, a spline fit or approximations. Or maybe I'm wrong and these could also go here." CreationDate="2010-08-06T02:59:17.147" UserId="33" />
  <row Id="1955" PostId="82" Text="Definitely needs to be multiple questions." CreationDate="2010-08-06T03:00:43.960" UserId="165" />
  <row Id="1956" PostId="2251" Text="How to specify the texture co-ordinates if the .x file does not have one?" CreationDate="2010-08-06T03:32:47.097" UserId="1458" />
  <row Id="1957" PostId="2263" Text="It isn't a real answer, but it is amusing and turned up in my internet wanderings today: http://norefuge.net/vgng/vgng.html" CreationDate="2010-08-06T03:38:34.550" UserId="395" />
  <row Id="1958" PostId="2166" Text="@Rixius Most of the game will not be open source, though the various components I'm building it with are/will be. You can check out the realtime messaging server and application framework on github: http://github.com/mattbasta/shotgun http://github.com/mattbasta/interchange" CreationDate="2010-08-06T03:38:52.927" UserId="1403" />
  <row Id="1959" PostId="2173" Text="Do you have any ideas on how this would behave with regard to hit testing? What if the prediction puts the user in an &quot;unwalkable&quot; area? Any idea what others have done?" CreationDate="2010-08-06T03:40:27.933" UserId="1403" />
  <row Id="1960" PostId="2174" Text="I'm aware of this; I'm trying to make this as realtime as possible, though periodic transmissions are what I may be limited to (due to browser constraints)." CreationDate="2010-08-06T03:43:01.847" UserId="1403" />
  <row Id="1961" PostId="2178" Text="Thanks for the link; I'll definitely be exploring their code and seeing what they have to offer!" CreationDate="2010-08-06T03:47:58.223" UserId="1403" />
  <row Id="1962" PostId="2213" Text="I'm actually using my own implementation for the communication medium (see http://github.com/mattbasta/interchange; it's based on WebSockets, XHR streaming, and JSONp longpolling), so that's covered. I'm trying to find out what the optimum means of interpolating user position between data transmission would be." CreationDate="2010-08-06T03:52:14.757" UserId="1403" />
  <row Id="1963" PostId="2205" Text="Would you imagine that a FPS style is more difficult to program? From a programming perspective, the FPS-style movement is much easier to write. I do like the concept of mouse control, though. It would certainly simplify the task of hit testing (just don't let the player set an unreachable area as their destination haha!)." CreationDate="2010-08-06T03:56:49.950" UserId="1403" />
  <row Id="1964" PostId="2173" Text="At least for us, the client and server both run collision detection, but the server is authoritative. This means the client is trying to avoid moving people into objects (it will just stop them, as if they were running into the wall), and then the next time it gets an update from the server it will correct." CreationDate="2010-08-06T04:38:19.327" UserId="395" />
  <row Id="1965" PostId="487" Score="9" Text="This wouldn't happen to be TES4 would it?" CreationDate="2010-08-06T05:01:57.253" UserId="647" />
  <row Id="1966" PostId="2148" Text="No prob. Hope you managed to get something grabbed properly!" CreationDate="2010-08-06T05:32:21.603" UserId="865" />
  <row Id="1967" PostId="2283" Score="2" Text="+1 NoSQL FTW..." CreationDate="2010-08-06T05:48:59.223" UserId="1024" />
  <row Id="1968" PostId="2263" Text="Could be answered. Varies, Yes, and Yes. The issue is less subjectivity but more that it is very vague. " CreationDate="2010-08-06T06:02:01.200" UserId="14" />
  <row Id="1969" PostId="1198" Text="@Joe: Yes, if there is a server that is a valid point to consider, but sometimes it's ok to trust the client (e.g. on a console) to avoid heavy server load." CreationDate="2010-08-06T06:39:44.097" UserId="335" />
  <row Id="1970" PostId="1687" Text="While a comoposition based approach is pretty obvious and used frequently, I have yet to see a solution to keeping the rendering component portable. Any hints would be great.&#xA;" CreationDate="2010-08-06T06:45:03.103" UserId="335" />
  <row Id="1971" PostId="1639" Text="List 'questions' should be community wiki as a minimum. Forced it." CreationDate="2010-08-06T06:48:54.313" UserId="14" />
  <row Id="1972" PostId="2214" Score="2" Text="Encoding software creates an extra hurdle, but doesn't protect your game from reverse engineering. If the flash player can play it, it can be decompiled.&#xA;" CreationDate="2010-08-06T06:53:52.150" UserId="335" />
  <row Id="1973" PostId="2285" Score="2" Text="I feel it is a duplicate, but you do specify open source so I will leave this open. However, List-type 'questions' should be CW as a minimum. Forced it." CreationDate="2010-08-06T06:55:23.363" UserId="14" />
  <row Id="1974" PostId="2214" Score="2" Text="Funny side note: Eltima's trillix can decompile dcomsoft's swf protector protected files.&#xA;And dcomsoft and eltima &quot;seem&quot; to be the same company." CreationDate="2010-08-06T06:55:23.410" UserId="335" />
  <row Id="1975" PostId="683" Text="And THIS is exactly why we have digital connections to the screens today :)" CreationDate="2010-08-06T06:57:29.723" UserId="911" />
  <row Id="1976" PostId="2135" Text="Bullet documentation is very lousy, but the forum is very active and the developers are very helpfull." CreationDate="2010-08-06T06:57:44.903" UserId="335" />
  <row Id="1977" PostId="2283" Score="1" Text="+1 I'd imagine that most people ended up writing there own database. But it's cool that the NoSQL world is growing now." CreationDate="2010-08-06T06:58:59.347" UserId="14" />
  <row Id="1978" PostId="82" Text="Closing it for now, the community can vote to reopen it if they really want. I would think separate questions would be more useful (assuming they start in community wiki form)." CreationDate="2010-08-06T07:49:42.540" UserId="51" />
  <row Id="1979" PostId="2264" Score="1" Text="I direct your attention to Adam Atomic's quite hilarous http://atomicedgegames.com/" CreationDate="2010-08-06T07:57:44.800" UserId="1368" />
  <row Id="1980" PostId="2268" Text="Hehe, how cool is that ;)" CreationDate="2010-08-06T08:01:11.003" UserId="20" />
  <row Id="1981" PostId="2059" Text="To be fair, this would be exceptional valuable even outside of the gaming domain!" CreationDate="2010-08-06T08:01:27.260" UserId="1455" />
  <row Id="1983" PostId="2275" Text="Thanks Olly! The MasterLimiter effect I use is basically a compressor with a high ratio and fast attack speed. I think that I'm not setting the Release parameter correctly - I've left it on the default 1000 [assume ms] but my sounds are short 1 or 2 second sfx. (http://msdn.microsoft.com/en-us/library/microsoft.directx_sdk.xapofx.fxmasteringlimiter_parameters(v=VS.85).aspx)" CreationDate="2010-08-06T09:19:59.490" UserId="360" />
  <row Id="1984" PostId="2272" Text="Thanks AShelly. There's nothing wrong with them sounding louder (they are a few ms offset), and it actually sounds great when there's only a few, but it just sounds like a noise when there's a lot at once. I think limiting voices and implementing a priority is the way to go." CreationDate="2010-08-06T09:25:48.007" UserId="360" />
  <row Id="1985" PostId="2275" Text="For the individual sounds, a release rate of 1000ms would be too much. However for a Limiter/Compressor the length of the individual assets don't matter - it's affecting the entire mix. On most mastering limiters (that is one at the end of your audio chain) you want a high ratio and fast attack so it comes in quick, but a very slow release so the listener doesn't notice the transition in range. Usually I set mine to even longer than 1000ms - closer to 2500ms. But its probably something you should play with and use your own judgement on." CreationDate="2010-08-06T09:28:15.960" UserId="1095" />
  <row Id="1986" PostId="2251" Text="The artist who creates the mesh needs to texture it, by applying sensible texture coordinates that map the texture over the mesh. While some primitives (cylinders, planes) can have texture coordinates automatically generated for them, if you have a complex mesh without texture coordinates, in general you won't be able to texture it sensibly." CreationDate="2010-08-06T10:26:10.167" UserId="741" />
  <row Id="1987" PostId="571" Score="1" Text="+1 for Mercurial.&#xA;It's fast, easy to use, and surprisingly powerful. :)&#xA;I am using it for everything: web development, game development, private one-person projects and team projects.&#xA;Thanks for introducing the BigFiles extension!" CreationDate="2010-08-06T12:13:37.340" UserId="1206" />
  <row Id="1988" PostId="201" Text="@coderanger there is no Maya PLE anymore. There is only a 30-day trial." CreationDate="2010-08-06T12:14:38.867" UserId="19" />
  <row Id="1989" PostId="816" Score="3" Text="Especially if the game isn't about acrobatics and has really poor control. &#xA;&#xA;I mean, jump puzzles are OK in games like Prince Of Persia if you ask me. Not so much in Half Life or Modern Warfare :P" CreationDate="2010-08-06T12:45:59.693" UserId="1352" />
  <row Id="1990" PostId="2279" Score="3" Text="Forgot to add &quot;zombie&quot; to your list" CreationDate="2010-08-06T12:54:42.797" UserId="164" />
  <row Id="1991" PostId="2064" Score="1" Text="Also quite interested in this. It's definitely game-dev relevant, as it feeds directly into design and product development decisions. Also it's very hard to get good information. IndieVision (http://www.indievision.org) has done a lot of good work on trying to pull together numbers, but it's pretty tricky." CreationDate="2010-08-06T13:00:30.180" UserId="741" />
  <row Id="1992" PostId="2243" Text="Moving over to glDrawRangeElements didn't seem to make a difference. However moving to VBO's did actually speed it up considerably even though the data is being changed every frame. I'm seeing a throughput of about 15 million triangles / second now and a much lower CPU cost. Cheers!" CreationDate="2010-08-06T13:12:34.803" UserId="1095" />
  <row Id="1993" PostId="2285" Text="Also note that 'open-source' and 'commercial' are not mutually exclusive (although, many would like you to believe that). I think there are a lot of people out there who'd be willing to pay a small fee for not having to worry about building the binary for their platform. I suppose there are also free games, which are not open-source." CreationDate="2010-08-06T13:26:43.950" UserId="653" />
  <row Id="1994" PostId="2301" Text="What are you asking specifically? for algorithms to do some kind of transitions?" CreationDate="2010-08-06T13:30:38.093" UserId="33" />
  <row Id="1995" PostId="2213" Text="Oh, I'm sorry, I must have misinterpreted your question." CreationDate="2010-08-06T13:43:02.217" UserId="189" />
  <row Id="1996" PostId="2305" Score="1" Text="It's a good question - for http://StackOverflow.com . As currently worded, this has nothing to do with *game development* - localization is a fairly general concept." CreationDate="2010-08-06T13:44:07.177" UserId="165" />
  <row Id="1997" PostId="2305" Text="It's also slightly subjective." CreationDate="2010-08-06T13:47:58.200" UserId="189" />
  <row Id="1998" PostId="487" Score="1" Text="haha it's not bug, it's a feature! :D" CreationDate="2010-08-06T13:49:57.493" UserId="1501" />
  <row Id="1999" PostId="2305" Text="Fair enough. Can someone close the question please?" CreationDate="2010-08-06T13:49:58.477" UserId="1095" />
  <row Id="2000" PostId="2308" Text="Uhh... Why didn't italics work?" CreationDate="2010-08-06T13:51:08.490" UserId="189" />
  <row Id="2001" PostId="487" Score="2" Text="@Duracell: Yeah, I was reading this and I thought, &quot;Was this guy n the Oblivion team?&quot;" CreationDate="2010-08-06T13:56:18.120" UserId="818" />
  <row Id="2003" PostId="2310" Text="The point of the &quot;Sounds&quot; folder would be more of a file organizational part, rather than on the coding side. I mean, if I wanted to edit a sound, then I wouldn't have to trapse through our entire assets dir. And it's struck me now that having separate managers for different assets does make more sense to have each have their own path to their respective folders {sound to Media/Sound, etc. }" CreationDate="2010-08-06T13:58:33.467" UserId="1156" />
  <row Id="2004" PostId="352" Text="Someone on the Betrayal At Krondor team must have run into your game... ;)" CreationDate="2010-08-06T13:59:08.833" UserId="818" />
  <row Id="2005" PostId="2311" Text="I can see what you mean, but the resource manager is not for just the relative path sorting. It's also for caching assets and the like." CreationDate="2010-08-06T14:00:57.127" UserId="1156" />
  <row Id="2006" PostId="2310" Text="@Cyclops No, MrCranky and I wrote our answers at about the same time. I'm quite familiar with SO, thanks though :)" CreationDate="2010-08-06T14:13:43.797" UserId="189" />
  <row Id="2007" PostId="2310" Text="@The Communist Duck Yes, and you can still organize your files, but my stance is that the resource manager can handle that organization rather than hardcoding it all over your program. You can have the resource manager do something like `if(file ends with '.ogg') folder='sounds'` rather than writing &quot;Sounds/&quot; all over your program when all sound files are .ogg. But it's totally up to you, and that might be too restrictive when for example ogg files can be sound OR music files." CreationDate="2010-08-06T14:16:55.787" UserId="189" />
  <row Id="2008" PostId="571" Text="With regards to large projects - TortoiseHg appears to go much slower on a large repository with 8 years of revisions than it does on a small repository with less than 20 revisions. I don't yet know whether this is something specific to Tortoise or to Mercurial more generally." CreationDate="2010-08-06T14:17:36.033" UserId="1101" />
  <row Id="2009" PostId="2310" Text="+1, this is conceptually the same as what I'd have recommended.&#xA;&#xA;&#xA;@The Communist Duck: the way I've done it in the past, is I had the resource manager recursively check for all filenames below the media root. This means, I phyisically could have a file boom.ogg in folder Sound, but could still load it specifying just &quot;boom.ogg&quot;." CreationDate="2010-08-06T14:19:03.490" UserId="734" />
  <row Id="2010" PostId="2307" Text="Herb Sutter would disagree that std::string is great. :)" CreationDate="2010-08-06T14:29:06.480" UserId="259" />
  <row Id="2011" PostId="2310" Text="@Ricket What I actually meant is because SoundManager, ImageManager, et al are basically ResourceManager&lt;T&gt;s, I could give each of them a directory such as 'Media/Sounds/' or 'Media/Images/' without the need to do Sounds/ or Images/ all over my program." CreationDate="2010-08-06T14:30:23.357" UserId="1156" />
  <row Id="2012" PostId="2307" Text="What's so bad about std::string that Sutter says? I find it great." CreationDate="2010-08-06T14:31:00.830" UserId="1156" />
  <row Id="2013" PostId="2311" Text="I'm not questioning the value of a resource manager - that's a whole different question :-) The question seemed to me to be about abstracting the actual physical location of assets from the references to them in code, and that doesn't care about resource managers.&#xA;&#xA;It's a general issue of organising assets into categories, e.g. Load(GetSoundPath(&quot;SomeEvent&quot;)) So the code doesn't even then have to know that all sound events actually live in the /audio folder. This centralises the structure knowledge into one place, e.g. sound events live in a certain folder, and always have .ogg extensions." CreationDate="2010-08-06T14:53:38.290" UserId="741" />
  <row Id="2014" PostId="2307" Text="Can't find the reference, but he thinks that there's too many member functions that should be non-member non-friend and/or templated generic functions." CreationDate="2010-08-06T15:09:04.093" UserId="259" />
  <row Id="2015" PostId="1253" Text="If you indent your code with four spaces instead of using the &lt;pre&gt;&lt;code&gt; tags, you will be able to use &lt; instead of != without breaking the formatting." CreationDate="2010-08-06T15:30:27.140" UserId="233" />
  <row Id="2016" PostId="2301" Text="duplicate of [How to make animated buttons in a menu with Cocos2d?](http://gamedev.stackexchange.com/questions/2121/how-to-make-animated-buttons-in-a-menu-with-cocos2d)" CreationDate="2010-08-06T16:11:57.080" UserId="55" />
  <row Id="2017" PostId="1639" Text="@Noctrine: how is this a list question? i got many unique answers..." CreationDate="2010-08-06T16:25:17.750" UserId="1004" />
  <row Id="2018" PostId="1603" Text="How a question can be hostile? Or, where it is hostile?" CreationDate="2010-08-06T16:29:04.563" UserId="469" />
  <row Id="2019" PostId="2326" Text="-1 too broad, and a slight duplicate.  See this answer for free graphic resources: http://gamedev.stackexchange.com/questions/20/where-can-i-find-free-sprites-and-images and this answer for procedural generated textures: http://gamedev.stackexchange.com/questions/327/what-happened-to-procedurally-generated-textures" CreationDate="2010-08-06T16:32:02.407" UserId="51" />
  <row Id="2020" PostId="1645" Text="Well... I found out my solution: Your Ramdrive suggestion + CamStudio Lossless codec (not the software) + VirtualDub. The MSU Lossless Codec had a higher compression, but took too much CPU, resulting in wonky framerates. Fraps, also either takes too much CPU in lossless mode, or the compression destroy the graphics. Taksi refused to hook on the game. CamStudio does not support recording only the contents of a window, and the pixels shaved when not recording the window frame are sufficient to put some seconds more of data on the ramdrive" CreationDate="2010-08-06T16:33:18.943" UserId="469" />
  <row Id="2021" PostId="1639" Score="1" Text="Yes but there is nothing that makes your request specific. This is a very open question that can have any number of answers but none that really qualifies as the right one. Because at any number of sites you can get reviews of, and get feedback on your game from players. Hence, why I called it a list and CW'ed it. " CreationDate="2010-08-06T16:51:40.310" UserId="14" />
  <row Id="2022" PostId="2283" Score="1" Text="Even if you end up heavily customizing something later on, there is probably at least one DB out there you can prototype on." CreationDate="2010-08-06T16:55:17.373" UserId="395" />
  <row Id="2023" PostId="1603" Text="Make sure you mark something as accepted if you found a solution. Either Kaj's if that was the deciding one for you, or by posting the hybrid solution that you came up with as a separate answer." CreationDate="2010-08-06T16:56:19.523" UserId="14" />
  <row Id="2024" PostId="493" Text="My big vote for Git (or hg if you prefer), once you have more than 3 maintenance branches SVN gets absolutely impossible to manage." CreationDate="2010-08-06T17:07:23.280" UserId="395" />
  <row Id="2025" PostId="2308" Text="@Ricket where should there be italics, it looks all good to me." CreationDate="2010-08-06T17:07:34.140" UserId="14" />
  <row Id="2026" PostId="2269" Text="I think it would be good to apply some formating to this, (ala the version control question). " CreationDate="2010-08-06T17:08:49.690" UserId="14" />
  <row Id="2027" PostId="2307" Text="Here's the Sutter reference: http://herbsutter.com/2008/04/07/cringe-not-vectors-are-guaranteed-to-be-contiguous/#comment-483" CreationDate="2010-08-06T17:14:49.027" UserId="165" />
  <row Id="2028" PostId="2329" Score="2" Text="Similar to this question: http://gamedev.stackexchange.com/questions/854/what-are-good-games-to-earn-your-wings-with/856#856" CreationDate="2010-08-06T17:20:10.517" UserId="47" />
  <row Id="2029" PostId="2308" Text="@Ricket @Noctrine ditto, I see (italitcs) your link(/italics) (tumblr blog) (line break) (italics) two setences (/italics)" CreationDate="2010-08-06T17:32:37.300" UserId="47" />
  <row Id="2030" PostId="1603" Text="I think I will do that (write my own detailed answer)" CreationDate="2010-08-06T17:39:53.510" UserId="469" />
  <row Id="2031" PostId="2205" Text="FPS-style network movement prediction is in fact very difficult to write correctly. Projects I have worked on have had one full time senior programmer devoted to just getting that right." CreationDate="2010-08-06T17:51:48.813" UserId="162" />
  <row Id="2032" PostId="2283" Score="6" Text="coderanger has it right. I wrote a custom database for an MMO. &#xA;If I were to do it over again in todays world I would probably look more closely at adapting existing technology, because as he mentions that world is more active than it was 4 years ago. &#xA;&#xA;Many MMOs do in fact run on SQL, some of them well and some of them not very well. Max shard concurrency (as opposed to max zone or continent concurrency) is low for those games." CreationDate="2010-08-06T17:54:45.033" UserId="162" />
  <row Id="2033" PostId="2317" Score="1" Text="For Pete's sake though, if you have an animating loading bar with a percentage, make it so that it moves up gradually and accurately instead of staying at 10% for 90% of the time and then jumping to 100%. If you have a non percentage loading animation, at least make it so that it does poll the loading - that way you can stop it when the loading crashes for some reason. I see too many games that animate the loading animation in their own thread, and when the loading thread crashes the animation happily plays on. That kinda defeats the purpose of the loading animation." CreationDate="2010-08-06T17:56:58.370" UserId="865" />
  <row Id="2034" PostId="2317" Text="I can agree entirely there. I don't think it's going to have been done well if it jumps like that." CreationDate="2010-08-06T18:14:55.403" UserId="1156" />
  <row Id="2035" PostId="2324" Text="Those are actually surprisingly clearer than the 360 TCRs themselves &gt;_&lt; Kind of wish the MS had sent us those instead." CreationDate="2010-08-06T18:23:51.687" UserId="395" />
  <row Id="2036" PostId="2326" Score="1" Text="What if this question were worded more along the lines of &quot;How to improve or replace my programmer art?&quot;" CreationDate="2010-08-06T18:25:28.220" UserId="189" />
  <row Id="2037" PostId="2333" Text="Interesting, I was contemplating suggesting a raytracer as well, a very nice math exercise. I do disagree with deferred being a buzzword of the week, it's, like raytracing, a fairly big shift in how you approach your rendering, which, for a graphics programmer seems to be something you should be aware of." CreationDate="2010-08-06T18:29:27.540" UserId="865" />
  <row Id="2038" PostId="2333" Text="I would say that optimization are not as important as dealing with arbitrary meshes, which is a step a lot of people never get to with raytracers." CreationDate="2010-08-06T18:31:55.383" UserId="1024" />
  <row Id="2039" PostId="2201" Text="I'm at least trying to use it in a game under development. It's working well for me so far. I believe the author developed much of it while working for the Playstation group at Sony - Its likely it made it into some games. MobyGames lists him on the credits of JohnMadden Football and one of the Leisure Suit Larry games." CreationDate="2010-08-06T18:54:12.767" UserId="400" />
  <row Id="2040" PostId="2333" Text="I'd second (third?) this suggestion, with the caveat that (as mentioned) it needs to support meshes, and not just stop at shiny-spheres-on-a-chequerboard. Bonus points for any attempt at global illumination.&#xA;&#xA;Even if you don't heavily optimise it into something actually *useable*, you should strive to understand which bits are slow and why.&#xA;" CreationDate="2010-08-06T18:55:58.817" UserId="1091" />
  <row Id="2041" PostId="2321" Text="+1 - I was going to post the same links, JustBoo - until I noticed that you beat me to it! :)" CreationDate="2010-08-06T19:24:44.967" UserId="1206" />
  <row Id="2042" PostId="2312" Text="I am not really sure what makes XDS different from Google Protocol Buffers?&#xA;They seem to serve the same purpose, except that XDS was first." CreationDate="2010-08-06T19:27:03.717" UserId="1206" />
  <row Id="2043" PostId="2321" Text="thanks! The terminology Constructive-Solid-Geometry is exactly what I needed!" CreationDate="2010-08-06T19:34:20.987" UserId="1477" />
  <row Id="2044" PostId="2321" Text="@jacmoe - The irony is amazing and complete now :-) You deserve credit for some of those. Thx." CreationDate="2010-08-06T19:41:50.863" UserId="1467" />
  <row Id="2045" PostId="2275" Text="Thanks again, Olly." CreationDate="2010-08-06T19:43:51.920" UserId="360" />
  <row Id="2046" PostId="2333" Text="And one caveat with this suggestion - while light traveling trough a medium is all there is to graphics, it will give you very little training in what you need in actual (current) production environments." CreationDate="2010-08-06T19:49:36.387" UserId="865" />
  <row Id="2047" PostId="2326" Score="1" Text="That's a different question.  I don't see the reason to try to &quot;fix&quot; this question." CreationDate="2010-08-06T19:51:58.287" UserId="51" />
  <row Id="2048" PostId="2244" Score="1" Text="@samboush, you don't make sense when you fail to address the question fairly. " CreationDate="2010-08-06T20:03:35.533" UserId="355" />
  <row Id="2049" PostId="2324" Text="I'd rather see Sony's user experience documents than Microsoft's.  MS has the money to push its opinion out to us via the web, and MS has the egomaniacal opinion that this is a good thing.  But their product line's user experience is not the best." CreationDate="2010-08-06T20:05:10.177" UserId="355" />
  <row Id="2050" PostId="2230" Score="2" Text="Are you sure you know what &quot;seed&quot; means?  This is the &quot;initial vector&quot; passed in via, e.g., `srand(int)`.  Subsequent calls to `rand()` will return sequential values that are always calculated in the same order, based on this seed.  You set the seed once in your program.  After that, if the algorithm depends only on the results from `rand`, you will get the same result every time." CreationDate="2010-08-06T20:14:59.177" UserId="355" />
  <row Id="2051" PostId="1687" Text="Andreas, what do you mean with portable?" CreationDate="2010-08-06T20:41:19.873" UserId="178" />
  <row Id="2052" PostId="2244" Text="@Heath Hunnicutt, You are right." CreationDate="2010-08-06T21:07:14.377" UserId="1456" />
  <row Id="2053" PostId="728" Text="I viewed this question just to find out what a &quot;one half player game&quot; is.  I'm still wondering." CreationDate="2010-08-06T21:31:01.290" UserId="400" />
  <row Id="2054" PostId="683" Score="1" Text="Digital connections don't solve everything. I had a recent bug report about certain actions causing sudden brightness changes over the whole screen. Connected by HDMI. Nope, nobody was messing with the gamma ramp - it turns out that it's some sort of 'intelligent contrast' feature on a specific LCD TV!" CreationDate="2010-08-06T21:37:13.517" UserId="659" />
  <row Id="2055" PostId="483" Text="Perforce is awesome, if you can afford it. I've not used all of the version control systems out there, but in 10 years of commercial game development, and several version control systems, it's the best I've used by quite some margin. It handles large data files quickly and reliably, and if set up properly, performs well in a multi-site setup over relatively slow internet connections.&#xA;&#xA;The Visual Studio integration may not be perfect, but it's pretty solid." CreationDate="2010-08-06T21:44:22.407" UserId="659" />
  <row Id="2056" PostId="2324" Text="In general the 360 TCRs make sense, most are about maintaining basic interface guidelines so you know what you are getting." CreationDate="2010-08-06T22:21:43.607" UserId="395" />
  <row Id="2057" PostId="1953" Text="Really glad that helped. I am a longtime Eclipse user myself at work but now use Netbeans at home. " CreationDate="2010-08-06T22:27:56.283" UserId="1252" />
  <row Id="2058" PostId="2330" Text="+1 i fall to the same Q while i do know the dev side i dont have the hands nor imagination to put my ideas to paper... So i would either find on the net, try to find some one to work on it or pay some one." CreationDate="2010-08-06T23:22:25.753" UserId="567" />
  <row Id="2059" PostId="2321" Text="*some* of those? :P&#xA;I believe I jotted them all down back there. :D&#xA;Still, they're only basic CSG stuff. It gets pretty hairy from there - not even the major commercial modelling packages got it right." CreationDate="2010-08-07T00:29:12.707" UserId="1206" />
  <row Id="2060" PostId="1480" Text="For a finale, how about some *liver cooking instructions*? http://www.giantitp.com/comics/oots0738.html" CreationDate="2010-08-07T01:31:46.423" UserId="165" />
  <row Id="2061" PostId="2347" Text="-1, low content *and* it's [currently] misspelled.  It's *dead reckoning*." CreationDate="2010-08-07T01:36:48.160" UserId="51" />
  <row Id="2062" PostId="2346" Score="1" Text="There's an article that describes the code too.  http://trac.bookofhook.com/bookofhook/trac.cgi/wiki/Quake3Networking" CreationDate="2010-08-07T01:51:59.940" UserId="1463" />
  <row Id="2063" PostId="1533" Text="Interesting. Thanks for the clarifications, guys. So much for using the GPU to accelerate matrix operations. :(" CreationDate="2010-08-07T02:14:37.087" UserId="263" />
  <row Id="2064" PostId="1940" Text=".Net doesn't, but Neo-Axis uses C++/CLI which does." CreationDate="2010-08-07T02:44:33.033" UserId="603" />
  <row Id="2065" PostId="2315" Score="1" Text="Of course, it the loader is loading asynchronously, you should be able to poll it's progress so you can more accurately update the percentage. That way the player knows that if it does get stuck at a percentage something *is* actually wrong. Also, like I said in other places, please don't update the animation without actually checking with your loading thread whether it's still running, or you'll be happily spinning while the game effectively crashed." CreationDate="2010-08-07T06:46:16.200" UserId="865" />
  <row Id="2066" PostId="2338" Text="I think that link you posted explains everything quite nicely. With the math explained there, you should be able to figure out on which hexagon the user clicked on your map. Drawing the individual tiles might give you more flexibility than using a huge scanned image. Just think about cases where you need to swap a tile graphic? " CreationDate="2010-08-07T08:02:24.223" UserId="20" />
  <row Id="2067" PostId="1976" Text="For more complex GUI stuff you'll need some sort of layout-management pretty soon. Basic layouts like HBox and VBox are much easier to use than positioning all elements with absolute coordinates. Example: http://doc.qt.nokia.com/4.6/layout.html#horizontal-vertical-grid-and-form-layouts&#xA;That makes your GUI easier to use, but not so easy to implement ;)" CreationDate="2010-08-07T08:29:51.143" UserId="20" />
  <row Id="2068" PostId="2356" Text="Meh. Sounds like I'm hired by Google to write stuff like this. I'm not ;)" CreationDate="2010-08-07T09:01:53.717" UserId="20" />
  <row Id="2069" PostId="1253" Text="mmyers, yeah, but that's a big pain in the ass. Why isn't there just a custom code tag?" CreationDate="2010-08-07T11:27:20.827" UserId="824" />
  <row Id="2070" PostId="571" Score="2" Text="There doesn't seem to be an option comparable to [`svn:needs-lock`](http://svnbook.red-bean.com/en/1.2/svn.advanced.locking.html), and since there's also no way to tell [who's *locally* working on what files](http://www.perforce.com/perforce/doc.current/manuals/cmdref/opened.html), you're back to passing a bowl around the team, literally (you aren't allowed to edit without the bowl on your desk). BigFiles extension or not, this VCS is useless for binary files without a practical solution to this." CreationDate="2010-08-07T11:43:45.137" UserId="297" />
  <row Id="2071" PostId="1811" Text="@mmyers, Naming it &quot;impossible&quot; might motivate a few more users to try it, because of the challenge, even if it's not really impossible." CreationDate="2010-08-07T12:10:50.130" UserId="1358" />
  <row Id="2072" PostId="2243" Text="@Olly: good to know you solved it. Whether the GL implements the optimizations I talked about really depends on each implementation you use, sadly." CreationDate="2010-08-07T12:11:30.020" UserId="1374" />
  <row Id="2073" PostId="555" Text="LOL, thumbs up! :)" CreationDate="2010-08-07T13:13:49.523" UserId="490" />
  <row Id="2074" PostId="2288" Score="9" Text="that's just nuts! :D" CreationDate="2010-08-07T13:18:50.870" UserId="490" />
  <row Id="2075" PostId="110" Text="Correct, there are many cocos2d ports but all use their own language. Objective-C for iPhone, Java for Android, Javascript for Web, Python for the original PC version, and C++ for the new Windows port which may or may not support Windows Mobile (it's unclear about that). Other than name and design philosophy they are not interchangeable in any way." CreationDate="2010-08-07T13:43:41.617" UserId="490" />
  <row Id="2076" PostId="2281" Score="4" Text="It's a terrible name to google however, if you only know the &quot;AAAaaaAaAaaaaAAaaaaAAAAAA!!&quot; part. Just one A too little or too many reveals completely irrelevant results: http://www.google.de/search?q=AaaaaAAaaaAAAaaAAAAaAAAA&#xA;&#xA;I do agree with all other aspects though." CreationDate="2010-08-07T13:50:40.387" UserId="490" />
  <row Id="2077" PostId="1903" Score="2" Text="Yes, good answer, and I like the link. And I agreed with everything up to the last line, &quot;No one said unit tests have to be automated&quot;. :) *Have* to, maybe not - but everything I've read implies (or says outright) that **unit tests *should* be automated**, to the point where you only push a single button to run all of your tests. Otherwise, the more work involved in running the tests, the less likely you are to run them often enough. Granted, if you're talking about *display* code, it can be much harder to unit-test, if even possible." CreationDate="2010-08-07T14:08:45.157" UserId="165" />
  <row Id="2078" PostId="1133" Text="Yes, they do misspel damage, among other things. :)" CreationDate="2010-08-07T14:18:31.190" UserId="490" />
  <row Id="2080" PostId="1218" Text="I disagree that a main loop style is recommended. Main loop style games lose to a well-written event controlled game in several areas: 1) on multi-tasking system, they consume an unnecessarily high amount of the processor for a fixed set of features, 2) on portable devices, even on single-tasking systems the extra processor usage adversely affects battery life, 3) the simpler the game, the larger these problems become in comparison to a proper event-driven game." CreationDate="2010-08-07T14:59:57.303" UserId="297" />
  <row Id="2081" PostId="2338" Text="I forgot to mention that the map already has a hex grid on it. It's really just a small map - only about 25 x 10 hexes, and it has hand-drawn terrain, place names, etc. Not sure if that changes anything or not." CreationDate="2010-08-07T15:04:18.370" UserId="959" />
  <row Id="2082" PostId="2347" Text="Removed my downvote." CreationDate="2010-08-07T15:10:48.310" UserId="51" />
  <row Id="2083" PostId="1940" Text="I talked to the Neoaxis lead developer today, and they're announcing Mac OS X support this September. :)" CreationDate="2010-08-07T16:55:59.200" UserId="1206" />
  <row Id="2084" PostId="2363" Text="@The Communist Duck - Yes U got a point. But we will work on it next 2 or more years. Then XP will be gone. I think:).. &#xA;" CreationDate="2010-08-07T16:56:31.430" UserId="1456" />
  <row Id="2085" PostId="2333" Text="+1 writing a ray tracer was the most useful thing I learned in my college graphic's class" CreationDate="2010-08-07T17:09:40.737" UserId="47" />
  <row Id="2086" PostId="2059" Text="@Coderanger Open to what end? I am working on some tools like this for my website, and I would love to pick your brain. " CreationDate="2010-08-07T18:44:10.033" UserId="14" />
  <row Id="2087" PostId="2059" Text="@Noctrine My email is noah@&lt;my website&gt;, feel free to drop me a line :-)" CreationDate="2010-08-07T18:57:22.457" UserId="395" />
  <row Id="2088" PostId="2132" Text="I might have formulated the question poorly, but does anyone have any code for this type of app? Or know where I can find some working code and study?" CreationDate="2010-08-07T20:15:43.503" UserId="1310" />
  <row Id="2089" PostId="2302" Text="Thanks for the reply, can I find working code for this anywhere? I'm a newbee so I want to find code that works and play around with. Anyone have code to share with me, it's only for learning purpose so I get a head start for school.&#xA;Thanks guys&#xA;David" CreationDate="2010-08-07T20:18:59.647" UserId="1310" />
  <row Id="2090" PostId="2364" Score="5" Text="Like, the whole thing? From start to finish? What have you done so far towards it?" CreationDate="2010-08-07T21:38:19.560" UserId="14" />
  <row Id="2091" PostId="1973" Score="2" Text="Your examples are totally backwards. I never replayed Oblivion; I sunk 150 hours into a single character, did every quest once, and never felt a need to play it again. The same with Fallout, except I did the ending twice - maybe 10 minutes of replayability. Portal on the other hand lends itself to multiple paths through each level and speedrunning." CreationDate="2010-08-07T21:53:45.773" UserId="744" />
  <row Id="2092" PostId="1987" Text="&quot;there's no excuse for a game holding the player hostage until the next save point...&quot; unless you're making a DS game (or a Wii game and don't want people frustrated at the size of your save games)." CreationDate="2010-08-07T22:48:33.983" UserId="744" />
  <row Id="2093" PostId="2035" Score="4" Text="Not just basic arithmetic, but understanding how the operations all work in twos-complement, fixed point, and IEEE floating point environments. Without a firm grasp on why 0.1 * 3 != 0.3, or why -x might not be what you expect, you are screwed." CreationDate="2010-08-07T23:15:41.913" UserId="744" />
  <row Id="2094" PostId="2032" Score="1" Text="If you can't read hex, you can't effectively program. Most bitwise constants in C and C++ are going to be specified as hex values." CreationDate="2010-08-07T23:16:38.513" UserId="744" />
  <row Id="2095" PostId="279" Text="I'd also strongly disagree with the notion that most developers are using C over C++ these days. Just take a look some job listings, plenty of positions wanting C++ experience, I don't think I've seen a single one in a long time looking for just C. The Id, Unreal, Source, Torque and Gamebryo engines are all C++." CreationDate="2010-08-07T23:16:45.703" UserId="142" />
  <row Id="2096" PostId="1906" Text="I upvoted this as well - this is in my opinion the single most important check on the list: is it fun?&#xA;Too many games today are just incredibly boring and not fun at all. Technically impressive? Yes. Fun? No. Innovative? Hardly." CreationDate="2010-08-07T23:34:09.653" UserId="1206" />
  <row Id="2097" PostId="2364" Text="-1, doesn't seem like a real question.  Probably off topic." CreationDate="2010-08-07T23:42:01.530" UserId="51" />
  <row Id="2098" PostId="2364" Text="I've been playing around with cocos2d, made a bunch of tutorials, simple games from tutorials, reading, trying different things with xcode and interfacebuilder, learning photoshop.....&#xA;&#xA;I want to know if there is source code to look at as a reference, someone to tutor me and teach me the tricks, help me solve problems etc." CreationDate="2010-08-07T23:51:58.317" UserId="1310" />
  <row Id="2099" PostId="2019" Text="+1 for &quot;Make boring things interesting&quot;" CreationDate="2010-08-07T23:55:49.997" UserId="1024" />
  <row Id="2100" PostId="2363" Text="@The Communist Duck - Time to finish and DX11 architecture &amp; features are big plus for DX11." CreationDate="2010-08-08T00:01:49.657" UserId="1456" />
  <row Id="2101" PostId="2308" Text="Noctrine and Bryan: Yep, a few hours before you commented (but an hour after I commented), mmyers fixed it by escaping the underscore in &quot;Nick_Lalone&quot;" CreationDate="2010-08-08T00:06:04.723" UserId="189" />
  <row Id="2102" PostId="2368" Text="@Axel Gneiting - It's big step for us. Technological advantages are huge and can be useful for all part of engine, not only for render &amp; GPU physical effects. But it means lot of work too.  &#xA;" CreationDate="2010-08-08T00:19:08.837" UserId="1456" />
  <row Id="2103" PostId="838" Text="I presume this doesn't apply if you're purposely trying to overcome these limitations (maybe a water themed platformer)?" CreationDate="2010-08-08T01:45:27.903" UserId="1004" />
  <row Id="2104" PostId="2347" Text="Thanks @Tetrad.  Good luck with your game!" CreationDate="2010-08-08T02:41:34.430" UserId="1463" />
  <row Id="2105" PostId="1811" Text="@finnw: That's true. I guess it also depends on the genre; a FPS might have an &quot;impossible&quot; setting that only a few will ever beat." CreationDate="2010-08-08T03:18:39.373" UserId="233" />
  <row Id="2106" PostId="2370" Text="Resources or tips?" CreationDate="2010-08-08T05:02:27.520" />
  <row Id="2107" PostId="2378" Text="-1, I searched for &quot;game&quot; and got a total of 15 answers.  3 of which might have been actual game programming jobs.  Doesn't seem to be a critical mass of &quot;game development&quot; jobs on this site." CreationDate="2010-08-08T07:18:21.380" UserId="51" />
  <row Id="2108" PostId="1738" Score="2" Text="Common SE courtesy is to post a comment why you downvote, so the rest of the community can benefit." CreationDate="2010-08-08T07:34:41.980" UserId="327" />
  <row Id="2110" PostId="2030" Text="Also great is understanding it in the context of the trig identity sin²(x) + cos²(x) = 1." CreationDate="2010-08-08T09:29:49.730" UserId="744" />
  <row Id="2111" PostId="994" Text="You've missed out actually being able to wade in and fix problems in libraries during release crunch without having to factor in a third party's turnaround time on their closed source, and to optimise the libraries for your precise use case. Those can be pretty valuable." CreationDate="2010-08-08T11:00:03.787" UserId="179" />
  <row Id="2112" PostId="2306" Text="Cryptic is now using it in production with extremely high shard concurrency compared to other MMOs (except Eve, but Cryptic did it on much more modest hardware than Eve)." CreationDate="2010-08-08T11:20:03.450" UserId="744" />
  <row Id="2113" PostId="2378" Score="2" Text="@Tetrad, can I downvote that comment? :) Although this *is* a gamedev site, your *Question* didn't mention looking specifically for *game programmers*, nor did it mention requiring a *critical mass* of them. Even assuming you were looking to hire programmers to create *games*, it's a reasonable assumption that you were looking for *professional* programmers, and would/could train them in the specifics of your job. (I note that you once asked how to sort thru **zero-experience** candidates also :)" CreationDate="2010-08-08T13:42:09.587" UserId="165" />
  <row Id="2114" PostId="2378" Text="@Tetrad - having just criticized your comment - if you're hiring *Unity* developers (or C#/Python programmers), where can I send my resume to? :)" CreationDate="2010-08-08T13:51:47.427" UserId="165" />
  <row Id="2115" PostId="2398" Score="5" Text="No offense to anyone, but is Galaxy a bad-bad-case of &quot;The Not Invented Here Syndrome&quot;? Just sayin'. :-)" CreationDate="2010-08-08T15:17:32.933" UserId="1467" />
  <row Id="2116" PostId="2378" Score="1" Text="I would hope that it's obvious from the context of this site that I'm looking for places where game developers (not just programmers) would see them." CreationDate="2010-08-08T15:34:57.920" UserId="51" />
  <row Id="2117" PostId="2279" Score="3" Text="''Shadowy Night Chronicles of the Legendary Dragon Powered Super Ninja'' - that would probably make a good title!! :D" CreationDate="2010-08-08T16:04:47.227" UserId="1206" />
  <row Id="2118" PostId="2391" Text="Almost-exact duplicate: http://gamedev.stackexchange.com/questions/2326/graphics-for-non-graphics-designers except Tetrad declared it to be a different question when I suggested a title change. Thus this question, I guess." CreationDate="2010-08-08T16:51:11.173" UserId="189" />
  <row Id="2119" PostId="2407" Text="Very nice! Thanks a lot. Also thanks for adding appropriate tags. I was unable to do so due to a lack of reputation. Cheers." CreationDate="2010-08-08T17:13:40.983" UserId="1135" />
  <row Id="2120" PostId="2279" Text="World of WarCraft ?&#xA;How can that be a weird name?&#xA;Do you know the game called WarCraft?&#xA;If you do, then &quot;World of WarCraft&quot; is a natural name for a MMO taking place in the world of WarCraft.. :)" CreationDate="2010-08-08T17:45:05.953" UserId="1206" />
  <row Id="2121" PostId="2398" Text="@JustBoo - do you have a reference to something demonstrating that Galaxy is essentially identical to an existing language? If not, it might just be that Blizzard needed something that wasn't already on offer." CreationDate="2010-08-08T17:51:27.003" UserId="1101" />
  <row Id="2122" PostId="2306" Text="Good to know. (Although, I don't think DB access is all that relevant to concurrency. The 'SQL considered harmful' presentation demonstrated that Cryptic wanted to hit the database for things most other MMOs just keep in memory instead, so it was a self-imposed bottleneck really.)" CreationDate="2010-08-08T17:56:55.573" UserId="1101" />
  <row Id="2123" PostId="2370" Text="Community wiki this?" CreationDate="2010-08-08T18:24:30.023" UserId="1156" />
  <row Id="2124" PostId="2408" Text="Ok thanks.  I tried out CADisplayLink and it seems to work.  When I set the animationInterval to one (which I think corresponds to 60 fps on the iPhone) the animation looks much smoother." CreationDate="2010-08-08T18:38:08.657" UserId="1021" />
  <row Id="2125" PostId="2033" Text="Bayesian AIs tend to be unused for games because of comparatively large memory usage, poor debuggability and predictability, and a well-defined problem space. A good implementation of classic search with clever heuristics is usually (but not always) a better tool." CreationDate="2010-08-08T19:56:06.313" UserId="744" />
  <row Id="2126" PostId="2306" Score="1" Text="If you keep them in memory, you need to implement a database in-memory, or you risk item duplication / loss (as an example) when trading across zones. &quot;Keep them in memory&quot; only works as long as all your players are within the same memory space all the time." CreationDate="2010-08-08T19:59:33.483" UserId="744" />
  <row Id="2127" PostId="2059" Text="Wasn't that what Launchpad+APT was supposed to be, and it just turned into a baroque nightmare?" CreationDate="2010-08-08T20:02:32.040" UserId="744" />
  <row Id="2128" PostId="2033" Score="1" Text="To me its not a particular Bayesian algorithm that I find important, but understanding the reasoning process as espoused by E. T. Jaynes. I don't think is anything inherently slow about Bayesian reasoning." CreationDate="2010-08-08T20:18:58.147" UserId="1024" />
  <row Id="2129" PostId="2415" Text="Which means he needs to convince the artists that they need what he can do.&#xA;Not an easy task. :)" CreationDate="2010-08-08T20:29:17.890" UserId="1206" />
  <row Id="2130" PostId="805" Text="+1 on this. :)&#xA;Assets belongs in their own repository - if in a repository at all.&#xA;Maybe using a dedicated asset repository software? Specifically created for that purpose, instead of trying to make it fit into versioning control systems designed for mainly textual content." CreationDate="2010-08-08T20:35:11.867" UserId="1206" />
  <row Id="2131" PostId="2398" Text="When the product is successful, it's not called NIH, it's called a &quot;competitive advantage&quot;." CreationDate="2010-08-08T20:39:07.117" UserId="744" />
  <row Id="2132" PostId="2132" Text="Is it hard to code up a simple looking game like that? &#xA;What I would like to do is to make this game and add multiplayer feature to it, so I can play against someone on the same wifi network.&#xA;&#xA;So first question, &#xA;How do I code up the board so it fits with the image I created and the coins so they drop into a column I touch and stack on top of eachother?   " CreationDate="2010-08-08T20:40:34.553" UserId="1310" />
  <row Id="2133" PostId="2398" Text="@Boo:&#xA;They created this language because it's easy and designer friendly:&#xA;Look at this tutorial, for instance: http://forums.sc2mapster.com/development/tutorials/5365-trigger-terrain-make-lava-water-raise-and-lower/&#xA;    Timer - Destroy Lava Timer Window&#xA;    Sound - Play Alert_BaseUnderAttackKlaxon for (All players) (at 100.0% volume, skip the first 0.0 seconds)&#xA;That's the language. Very English - too verbose for a coder, but works well in an editor I guess." CreationDate="2010-08-08T20:41:41.993" UserId="1206" />
  <row Id="2134" PostId="2398" Text="I would use Lisp to create a language like that - it's well suited to domain specific languages." CreationDate="2010-08-08T20:42:26.313" UserId="1206" />
  <row Id="2135" PostId="1738" Text="Seemly that does not apply here (I am still wondering why I got -3)" CreationDate="2010-08-08T20:46:13.370" UserId="469" />
  <row Id="2136" PostId="1738" Text="Hum... Maybe it was XNA fanboys (I found some of those before, even if I say the truth, they get mad at me...)" CreationDate="2010-08-08T20:46:48.517" UserId="469" />
  <row Id="2137" PostId="2415" Text="I guess I have had the opposite experience." CreationDate="2010-08-08T20:57:52.967" UserId="1024" />
  <row Id="2138" PostId="2416" Text="If you intend for this question to be a list, please mark it as CW." CreationDate="2010-08-08T21:40:42.317" UserId="14" />
  <row Id="2139" PostId="2390" Score="1" Text="Good point, although I do wonder how Mario handled this as it's a game known to use subpixel values for its character speeds, and therefore must have the same for scrolling. I wonder what the perceptual result would be of scrolling at 2 pixels every odd frame and 3 every even frame. Maybe that is where 60 wins out over 30 as the perceptual discrepancy is less." CreationDate="2010-08-08T21:52:57.683" UserId="865" />
  <row Id="2140" PostId="2412" Text="Unfortunately you seem to have picked one of the pages that's unavailable to view :(" CreationDate="2010-08-08T23:24:40.760" UserId="1004" />
  <row Id="2141" PostId="2416" Text="I don't figured yet how to do it, sorry :/" CreationDate="2010-08-08T23:30:20.640" UserId="469" />
  <row Id="2142" PostId="2294" Text="Hitler on &quot;It's a Small World&quot;" CreationDate="2010-08-08T23:51:26.230" UserId="1553" />
  <row Id="2143" PostId="2416" Text="I took care of it." CreationDate="2010-08-08T23:54:46.037" UserId="51" />
  <row Id="2144" PostId="571" Text="280Z28, have you come across any distributed VCS which has a solution to that problem? Having a lock would seem to me to defeat one of the premises of distributed version control---that you don't have a central server and don't necessarily know the location of all check-outs." CreationDate="2010-08-09T00:19:28.793" UserId="208" />
  <row Id="2145" PostId="386" Text="Yeah but also realise that there's similar libraries for C as well." CreationDate="2010-08-09T01:04:52.240" UserId="603" />
  <row Id="2146" PostId="397" Score="1" Text="There's really nothing stopping you implementing inheritance in C. And if you use C99 you can declare variables in for loops." CreationDate="2010-08-09T01:05:30.400" UserId="603" />
  <row Id="2147" PostId="373" Text="As well as compilation time, C being simpler means it's often easier to debug. Combine this with a tool like... http://clang.llvm.org/diagnostics.html and you have quite a powerful setup." CreationDate="2010-08-09T01:08:36.833" UserId="603" />
  <row Id="2149" PostId="2425" Text="I was going to say the same... All my menus, screens, whatever, are just another level." CreationDate="2010-08-09T03:35:31.390" UserId="469" />
  <row Id="2150" PostId="2424" Text="That's pretty awesome, but they mostly seem like image processing effects" CreationDate="2010-08-09T04:03:14.243" UserId="1553" />
  <row Id="2152" PostId="2412" Text="Page 166?  The link works for me.  Maybe it's a UK thing? Try .com&#xA;&#xA;http://books.google.com/books?id=iX3oWHNf9hMC&amp;lpg=PP1&amp;pg=PA166#v=onepage&amp;q&amp;f=false" CreationDate="2010-08-09T05:28:46.040" UserId="193" />
  <row Id="2153" PostId="2436" Text="Thanks that is helpful. I am assuming no garbage collection, added that to my question." CreationDate="2010-08-09T08:21:37.267" UserId="1495" />
  <row Id="2154" PostId="2428" Text="I agree. Nobody wants to exit the *Game-State* just to enter the *Pause-State*. On the other hand: It's still a state system.. just nested :)" CreationDate="2010-08-09T08:23:56.637" UserId="20" />
  <row Id="2155" PostId="2435" Text="this is exactly how it should be done. Screens should be able to contain multiple other screens in a tree-like architecture. So your program contains a game screen, which contains a pause-menu screen, which contains an audio settings screen and a game settings screen. etc" CreationDate="2010-08-09T08:54:40.073" UserId="119" />
  <row Id="2156" PostId="579" Text="Er, why not?&#xA;Have you just used Lisp, it would have been a much more pleasurable experience I think. :)&#xA;Starcraft II has the scripting language Galaxy which indeed is a domain specific language targeted at non-tech guys/gals." CreationDate="2010-08-09T09:28:25.927" UserId="1206" />
  <row Id="2157" PostId="1987" Text="You only need one save - as soon as you load the game, the save is deleted/invalidated and can be re-used.  If you didn't do this, you could exploit it like a quick-save system." CreationDate="2010-08-09T09:30:44.507" UserId="259" />
  <row Id="2158" PostId="2438" Text="Can you post some sample code that no longer works, or at least name the parameters that are now obsolete?" CreationDate="2010-08-09T09:31:29.047" UserId="259" />
  <row Id="2159" PostId="2430" Text="That's a bit ambiguous isn't it? How many play-styles are there in Call of Duty single-player?  Does that make CoD rubbish?" CreationDate="2010-08-09T09:37:05.213" UserId="259" />
  <row Id="2160" PostId="566" Text="There are plenty of people with good game ideas who can write Lua scripts but I'd never trust near malloc/sprintf/any place they had to pick a data structure/etc. That's really what #2 means - &quot;The ability for bad programmers to cause minimal damage and still get work done.&quot;" CreationDate="2010-08-09T09:37:22.047" UserId="744" />
  <row Id="2161" PostId="2430" Text="Sniper, defender and assaulter are play styles that are usual to FPS games. " CreationDate="2010-08-09T09:40:17.587" UserId="919" />
  <row Id="2162" PostId="2438" Text="Hey, the problem i am having is getting the min and max points for my model i load through the content pipeline. as articles i have seen on how to do it tell you to do such things as&#xA;&#xA;VertexPositionNormalTexture[] vertices=  new VertexPositionNormalTexture[mesh.VertexBuffer.SizeInBytes / mesh.MeshParts[0].VertexStride;&#xA;&#xA;but i can no longer call size in bytes and vertex strides within XNA 4.0" CreationDate="2010-08-09T10:31:37.000" UserId="1557" />
  <row Id="2164" PostId="2436" Text="I've never used a platform in which I can rely on the GC for gameplay logic. Most platforms have a delay - variable-length, for generational GCs - that might be dozens of frames long, before they will really collect something. Some languages like Python do ensure finalization of non-circular references immediately, but it's very rare to not have them in games especially at death (A and B shooting each other; one dies)." CreationDate="2010-08-09T11:03:34.227" UserId="744" />
  <row Id="2165" PostId="2438" Text="@markblue777 - It might be better to update your question rather than post a comment. Just click the &quot;edit&quot; link underneath the question text." CreationDate="2010-08-09T11:10:23.217" UserId="382" />
  <row Id="2169" PostId="2204" Text="@AShelly Was that steering vehicles or something else? I'm scared of situations causing problems such as two vehicles ahead to your left and one ahead to your right. The average vector would result in a movement right, even though that might bring you into contact with the right-hand vehicle.  " CreationDate="2010-08-09T13:04:30.933" UserId="259" />
  <row Id="2171" PostId="2438" Text="It's really nitpicking I know, but could you please put your title in the form of a question. It may help you get answers." CreationDate="2010-08-09T13:08:05.060" UserId="14" />
  <row Id="2172" PostId="2306" Text="It's quite easy to keep most things in memory as long as you are clearly aware of which aspects require transactional semantics and which do not. eg. There's no need to be persisting time online, hitpoints, and location with ACID guarantees, except in a tiny number of edge cases which can be handled safely in the same way you might handle trade." CreationDate="2010-08-09T13:13:56.250" UserId="1101" />
  <row Id="2173" PostId="1023" Score="1" Text="+1. Woah. I'm checking this out. ;D" CreationDate="2010-08-09T13:17:09.627" UserId="1156" />
  <row Id="2174" PostId="1411" Score="7" Text="-1 worthless answer. If your opinion is that web games aren't a good platform then sit down. I don't know why this got so many upvotes, maybe other people share your opinions but it doesn't contribute to answering this question at all." CreationDate="2010-08-09T14:24:21.937" UserId="189" />
  <row Id="2175" PostId="2221" Text="yeah, i see that now. And thanks for the correction on the restitution integration" CreationDate="2010-08-09T14:25:27.987" UserId="1179" />
  <row Id="2176" PostId="2335" Text="I was going to mention my own CSG stuff, but apparently someone else already did :O)" CreationDate="2010-08-09T14:54:28.433" UserId="255" />
  <row Id="2177" PostId="2391" Text="@Ricket: Yeah... that's exactly why I created this question. ;) Besides, some programmers do draw *believe it or not*. So any resource on how to get any better at it would be helpful." CreationDate="2010-08-09T14:57:41.703" UserId="7" />
  <row Id="2181" PostId="1065" Text="This is a reason in itself to use 3D, so that chip manufacturers will have a reason to support it and/or Microsoft will provide decent drivers with windows." CreationDate="2010-08-09T15:37:16.723" UserId="769" />
  <row Id="2182" PostId="580" Text="100% agreed, &quot;very simple&quot; and &quot;mario&quot; in one sentence is a logical fallacy. As far as 2D goes platformers (good ones anyhow, like Mario) are about the most difficult to create." CreationDate="2010-08-09T15:51:34.903" UserId="865" />
  <row Id="2183" PostId="640" Text="-1, vague, subjective, can't be answered in its current form, not a real question..." CreationDate="2010-08-09T15:53:31.937" UserId="51" />
  <row Id="2184" PostId="640" Text="Also, possible duplicate: http://gamedev.stackexchange.com/questions/41/what-are-some-good-resources-for-getting-a-beginner-started-in-developing-games" CreationDate="2010-08-09T15:55:34.807" UserId="51" />
  <row Id="2186" PostId="2410" Score="1" Text="Somebody really needs to make a little demo app to show the immense difference between 30fps and 60fps for common types of motion (In particular, 2D scrolling slow, 2D scrolling fast, and into-the-screen FPS/driving style motion)&#xA;&#xA;It could also show the difference between vsynced and non-vsynced updates.&#xA;&#xA;I think this would convince the majority of 'unbelievers' that 60fps is far smoother than 30fps. And that 250fps+ with no vsync is just silly.&#xA;&#xA;I do think this varies from person to person, some notice the difference a lot more (such as those that played 60fps arcade games back in the day!)" CreationDate="2010-08-09T17:16:36.930" UserId="659" />
  <row Id="2187" PostId="579" Text="Lisp wouldn't be a DSL any more than Lua or Python. It would be a fully formed language that someone else has spent a long time designing, time that you can avoid spending yourself." CreationDate="2010-08-09T17:18:39.953" UserId="395" />
  <row Id="2188" PostId="838" Score="2" Text="No one has ever made a fun water level. Ever. No one. Don't try to overcome them. Just don't do it." CreationDate="2010-08-09T17:37:47.643" UserId="744" />
  <row Id="2189" PostId="580" Text="@D. Hayes: Pygame doesn't use OpenGL through SDL - it doesn't use OpenGL at all in normal operation. This makes it far too slow for most interesting things. You can use an OpenGL binding with it, but then you might as well just go straight for PyOpenGL or pyglet." CreationDate="2010-08-09T17:51:22.107" UserId="744" />
  <row Id="2190" PostId="2437" Text="That, or by building read-only observable/filtered collections which base their contents off of another collection.  Alternatively, you could build partitioned collections which can be viewed in terms of the child collections (one representing each 'partition') or the entire (aggregate) collection.  I generally go with one of those approaches unless there is some compelling reason for an object to have discrete membership in separate collections (usually, there isn't).  In either case, you need to give consideration to concurrent access, and you'll probably want snapshot/versioning capability." CreationDate="2010-08-09T17:54:23.333" UserId="136" />
  <row Id="2191" PostId="2452" Text="I was using the hierarchy as an example; I felt it did emphasise what I meant better.&#xA;In actual code, I'm striving towards components." CreationDate="2010-08-09T17:56:12.987" UserId="1156" />
  <row Id="2192" PostId="2410" Score="1" Text="Okay, I'll rephrase my wording. Vsynched vs non-Vsynched is obvious. 30 vs 60, yes 60 will be smoother (no doubling, less interpolation for the brain), however 30 fps *will* be perceived as smooth (60 as smoother, but 30 won't jar the eye unless you have very big movements or high contrast as with an in the screen racer). My biggest problem is that I prefer constant 30 over 60 with occasional drops as that really jars the eye. " CreationDate="2010-08-09T17:57:39.787" UserId="865" />
  <row Id="2193" PostId="2450" Score="1" Text="Nitpicky, but I don't think `language-agnostic` is an appropriate tag since it depends greatly on the language you're using as to the side effects." CreationDate="2010-08-09T18:11:46.870" UserId="51" />
  <row Id="2194" PostId="2436" Text="@Joe, I'm not really talking about using it for gameplay logic, but you can easily use it for the difficult parts of cruft collection. With jmp97's hypothetical, you can have a &quot;player is still alive&quot; flag, and then add a simple conditional to the &quot;interaction broadcast&quot; system to make sure a player's alive before sending stuff to it. (Or bake that into the data structure traversal.) At that point your gameplay logic is centralized in that simple flag and you can also rely on the GC cleaning up the memory later." CreationDate="2010-08-09T18:11:55.997" UserId="323" />
  <row Id="2195" PostId="2450" Text="Good point, I think I can retag." CreationDate="2010-08-09T18:14:30.157" UserId="1156" />
  <row Id="2196" PostId="2273" Text="I've seen boost::serialization used successfully for client/server communication as well.  However, AFAIK it's stream-based, so it's not exactly version tolerant.  That may not be a deal-breaker for client/server communication, but if you use it for saved games, then any change to the game data structures makes loading older saved games a virtual impossibility (support for loading older object versions becomes a real chore)." CreationDate="2010-08-09T18:16:25.207" UserId="136" />
  <row Id="2197" PostId="2388" Score="1" Text="I worked on a PS2 game that had a &quot;60fps&quot; and &quot;&lt;=30fps&quot; mode. While the switch between them was nearly seamless, it was trivial to see which one the game was in with visual inspection. 60fps was *far* smoother. Ever since then, I've targeted 60fps for all my games. Strongly recommended if you can manage it (my games tend to be low-CPU so I can.)" CreationDate="2010-08-09T18:25:07.577" UserId="323" />
  <row Id="2198" PostId="2388" Score="1" Text="That is certainly the conventional wisdom. Mike Acton recently questioned the conventional wisdom, and posted his fairly rational thoughts over here:&#xA;http://www.insomniacgames.com/blogcast/blog/mike_acton/1503082" CreationDate="2010-08-09T18:43:29.897" UserId="1232" />
  <row Id="2199" PostId="2342" Text="That site was invaluable to me when I was implementing a hex grid in C#/WPF.  Lots of good info there." CreationDate="2010-08-09T18:52:36.133" UserId="136" />
  <row Id="2200" PostId="2069" Score="4" Text="&quot;Gimble [sic] lock is that effect where when you move your mouse to look down, it will stop when you look directly down....&quot; Actually that is usually done for player sanity, and has nothing to do with gimbal lock. " CreationDate="2010-08-09T18:56:15.207" UserId="744" />
  <row Id="2201" PostId="2451" Text="Agreed.  Complexity of your types should definitely be a factor.  If your language supports partial classes (or if member implementations can be organized similarly to C++), then I would even recommend breaking up particularly complex types into multiple files.  For example, if there's a (large) interface that your class must implement, but the code is fairly generic and not terribly relevant to the rest, you could break that code out into a separate file/partial class.&#xA;&#xA;For enum types, I think you could get away with placing all enums for a given namespace within a single file." CreationDate="2010-08-09T19:09:15.707" UserId="136" />
  <row Id="2202" PostId="513" Text="-1, too broad, probably off topic." CreationDate="2010-08-09T19:14:50.717" UserId="51" />
  <row Id="2203" PostId="2457" Text="I've not used glut before, but it seems odd that a window would be receiving input messages if it *didn't* have focus.  Are you sure this is something you need to do manually?" CreationDate="2010-08-09T20:40:47.360" UserId="136" />
  <row Id="2205" PostId="2457" Text="Since these are not game development exclusive topics, this question belongs at Stack Overflow http://www.stackoverflow.com/ where you should get a much better response." CreationDate="2010-08-09T20:41:54.610" UserId="189" />
  <row Id="2206" PostId="2459" Score="1" Text="This seems to be related:&#xA;http://gamedev.stackexchange.com/questions/2230/how-to-generate-random-level-from-a-seed" CreationDate="2010-08-09T20:42:40.100" UserId="1206" />
  <row Id="2207" PostId="618" Score="1" Text="It's all 3D in the end. Spritebatch, the 2D render workhorse, is a shader effect." CreationDate="2010-08-09T20:46:07.863" UserId="678" />
  <row Id="2208" PostId="2459" Text="^ and thus it is in the &quot;Related&quot; column on the right side. No need to link." CreationDate="2010-08-09T20:53:05.943" UserId="189" />
  <row Id="2209" PostId="2459" Score="4" Text="And then it became &quot;linked&quot; as well as &quot;related&quot; - neat, huh? :)" CreationDate="2010-08-09T20:54:13.863" UserId="1206" />
  <row Id="2210" PostId="2451" Score="1" Text="Doesn't grouping your enums mean changing a single value would cause a recompile of every file that uses an enum in that namespace?" CreationDate="2010-08-09T21:00:23.537" UserId="1156" />
  <row Id="2212" PostId="1065" Text="But that is pointless if you are targeting users with legacy computers, most users don't even bother to update their system, does not matter if drivers show up or not, they will plainly not use it." CreationDate="2010-08-09T21:16:19.037" UserId="469" />
  <row Id="2213" PostId="2461" Score="3" Text="This problem can be circumvented by centering the world occasionally." CreationDate="2010-08-09T21:26:11.897" UserId="1024" />
  <row Id="2214" PostId="2451" Text="Well, that really depends on the language, but yes, it could certainly have that effect.  It's not really an issue for me, as I develop primarily in C# (no file-by-file compilation), but it could be problematic in C++ and other languages.  As always, there are language-specific factors to consider, and that would be one of them :)." CreationDate="2010-08-09T21:28:59.200" UserId="136" />
  <row Id="2215" PostId="2388" Score="1" Text="The main reason for the lack of 60fps games on the current generation of consoles is the GPU cost of the switch to HD, and the expectation of very expensive lighting/shadows/shaders and post effects.  Unfortunately, to hit 60fps on these machines seems to require sacrificing just too much 'screenshot quality' for most developers to accept. Maybe next-next-gen will bring back 60fps?  30fps racing games in particular just don't do it for me." CreationDate="2010-08-09T21:32:11.573" UserId="659" />
  <row Id="2216" PostId="2460" Text="Actually, depending on which toolkit you're using, the mouse input events may already be in screen coordinates.  In that case, you wouldn't transform them for the 2D/UI system, but you would for the 3D system (if one exists)." CreationDate="2010-08-09T22:13:55.467" UserId="136" />
  <row Id="2217" PostId="1007" Text="@Andrew: In principle, I can think of a few cases where this sort of architecture would be useful.  Think about strategy games: some object/entity properties might be modified by external factors (i.e. structures providing bonuses to various units).  In such cases, you may not want to modify the effective value directly: instead, you would want want to recompute the effective value any time the base value changes or a modifier is added, removed, or invalidated.  However, you would want the modifier to accept the base value *and* current effective value, and return the modified effective value." CreationDate="2010-08-09T22:38:48.160" UserId="136" />
  <row Id="2218" PostId="2204" Text="I was working mostly with pedestrians, so I can't swear it will work.  One thing to remember is it doesn't have to be a blend of behaviors - it can be a heirarchy.  So you can have collision avoidance take a higher priority to anything else.  In the case you describe the car would only go right until the predicted path intersected the right-hand car's path, at which time avoiding that collion becomes the overriding force.  You can also add special conditions: for instance, if no safe path is found in N frames, add hard braking." CreationDate="2010-08-09T22:57:45.320" UserId="400" />
  <row Id="2219" PostId="877" Text="You missed Pac-Man, Galaga and Gauntlet from the article you linked" CreationDate="2010-08-09T23:43:44.567" UserId="1163" />
  <row Id="2221" PostId="513" Score="1" Text="Don't be fooled! Mario style platform games are not as trivial as you might think!" CreationDate="2010-08-09T23:49:57.907" UserId="1163" />
  <row Id="2222" PostId="2463" Score="2" Text="So, outside of a yes or no what are you asking here?" CreationDate="2010-08-10T00:30:59.633" UserId="14" />
  <row Id="2224" PostId="2463" Text="So, what you want to know exactly?" CreationDate="2010-08-10T00:59:30.500" UserId="469" />
  <row Id="2225" PostId="2364" Text="My suspicion is that the question you should be asking is not &quot;How to make a battleships game&quot; - because if you're familiar enough with programming, battleships will be easy. Instead, as bummzack suggested, start with something ridiculously simple." CreationDate="2010-08-10T01:23:50.847" UserId="321" />
  <row Id="2228" PostId="1007" Text="@Mike: In that case you'd still be better off making each bonus-giving object hold a delegate that defines the bonus behaviour. Rather than having an &quot;additive bonus class&quot; and a &quot;multiplicative bonus class&quot; and an &quot;exponential bonus class&quot; and so on." CreationDate="2010-08-10T01:45:53.290" UserId="288" />
  <row Id="2230" PostId="2465" Text="Really good point about memory usage with large files. I will make sure to split those files up.&#xA;&#xA;And yeah I think the bullet patterns would have the problem mostly, as they are huge files compared to the levels." CreationDate="2010-08-10T02:01:16.607" UserId="962" />
  <row Id="2234" PostId="2463" Score="1" Text="@Noctrine: so? i thought that was the primary kind of question that SE sites liked..." CreationDate="2010-08-10T04:31:25.683" UserId="1004" />
  <row Id="2235" PostId="1007" Text="@Andrew: Well, one may want some additional metadata exposed, as well as an 'Invalidated' event to signal that a modifier's effect has changed and the affected property should be reevaluated.  Therefore, it could be appropriate to have a Modifier class.  However, instead of writing several different implementation classes, the Modifier class could simply accept a value modifier delegate (like what you described) and invoke as required.  That's essentially what I have done in the past." CreationDate="2010-08-10T04:57:07.223" UserId="136" />
  <row Id="2236" PostId="1612" Score="2" Text="As long as that experience also shows you can *finish* a project. Unfinished demos scream that you lose interest after the fun discovery phase is over, and companies kinda need you when the interesting stuff is out of the way too, as a fair part of game development is boring finaling." CreationDate="2010-08-10T06:12:27.317" UserId="865" />
  <row Id="2237" PostId="2370" Text="Singleplayer or multiplayer? The two are drastically different." CreationDate="2010-08-10T07:27:18.153" UserId="323" />
  <row Id="2238" PostId="2464" Text="Are you dead-set on using XML? It tends to be a bit verbose." CreationDate="2010-08-10T08:00:19.993" UserId="678" />
  <row Id="2239" PostId="2482" Text="Is there any specific reason why you chose to skip any scripting? (such as lua/gamemonkey etc)." CreationDate="2010-08-10T08:12:59.463" UserId="1580" />
  <row Id="2240" PostId="2482" Text="Mostly due to lack of experience and due to (possibly unsound) assumptions of how this could negatively affect performance. Also I wanted to keep world editing as simple as possible. &#xA;However, I am open for using scripting." CreationDate="2010-08-10T08:18:03.257" UserId="1495" />
  <row Id="2241" PostId="2482" Score="1" Text="I concur, without scripting support it will be difficult add variety to the quests without involving the engine programmers." CreationDate="2010-08-10T08:24:23.070" UserId="678" />
  <row Id="2242" PostId="2461" Text="Also be aware not just of integer wrap-around but of inaccuracies of small floating point changes when the floating point number is high. Try this: `float pos = 1000000000.0f; float nextPos = pos + 0.001f; float diff = nextPos - pos;`  On my machine, diff is 0." CreationDate="2010-08-10T08:28:44.277" UserId="259" />
  <row Id="2243" PostId="2342" Text="Wow, Amit is still going!  I used that 10+ years ago to learn A* in school." CreationDate="2010-08-10T08:31:27.500" UserId="259" />
  <row Id="2244" PostId="2489" Text="Should be a comment, but still, hehe" CreationDate="2010-08-10T09:30:26.057" UserId="769" />
  <row Id="2245" PostId="2488" Score="6" Text="While that is a good thing to have, it's not a solution, because it expects players to be usability experts. If you don't provide sensible defaults, most won't bother and will just dislike the game." CreationDate="2010-08-10T09:32:17.633" UserId="769" />
  <row Id="2246" PostId="2489" Text="yea mann...tried it with some napkin...bt dunno y it has started revolvin around wen i try to move it :)" CreationDate="2010-08-10T09:51:12.950" UserId="1251" />
  <row Id="2247" PostId="2490" Text="stick together means they overlap...sometimes they get on top of one another and revolve like anythin..." CreationDate="2010-08-10T09:52:08.457" UserId="1251" />
  <row Id="2249" PostId="2490" Text="hmm..actually its a carrom board game..nt pool...said that in the header..coz i thought ppl wudnt understand..dey've got same physics... &#xA;is there some place were i can share my swf?" CreationDate="2010-08-10T10:38:59.783" UserId="1251" />
  <row Id="2253" PostId="2482" Score="1" Text="Scripting languages tend to be fast enough that it's not a problem. I'd strongly recommend using them. That said, much of WoW's scripting is based around triggering spells and events. &quot;Talk to A&quot; would, behind the scenes, cause A to &quot;cast a spell&quot; on the player, and the quest would actually be coded &quot;this succeeds when spell #55728 is cast on the player&quot;. Then you just need a little AI coding to get creatures to cast spells on the player and you're set." CreationDate="2010-08-10T10:53:27.457" UserId="323" />
  <row Id="2255" PostId="2474" Text="Hey eli&#xA;&#xA;Firstly, I am taking into consideration the original spin of the ball, just forgot to mention it in my post&#xA;&#xA;Secondly, I don't think that the x-direction system would work. I tried that, but if the ball hits the surface from below going left, the x vector would be -1, it would mean counter-clockwise rotation, while in reality it should be rotating clock-wise" CreationDate="2010-08-10T11:18:30.990" UserId="1179" />
  <row Id="2256" PostId="2476" Text="Well, consider this case: x+ve is right, y+ive is down; Surface vector S=(1,0); we have two impact velocity vectors V1=(3,4) hitting from above, should rotate ball clock-wise &amp; V2=(3,-4) hitting from below, should rotate ball anti-clock-wise. Now normals for both vectors would be (3/5,4/5) &amp; (3/5,-4/5) respectively. Now dot product for both vectors would be 3/5. angle generated would be arccos(3/5)=53 degrees for BOTH vectors. Which is true, but on opposite sides! so if I use this method, i will still end up with both causing clock-wise rotation. See my dilema? " CreationDate="2010-08-10T11:27:12.223" UserId="1179" />
  <row Id="2257" PostId="2496" Score="2" Text="How many times are you going to ask the same question without providing any specifics that might help us help you?" CreationDate="2010-08-10T11:32:31.357" UserId="678" />
  <row Id="2259" PostId="2501" Score="6" Text="It's called also called boids.&#xA;&#xA;Read about the simple rules surrounding boids here: http://en.wikipedia.org/wiki/Boids&#xA;&#xA;Should be trivial to implement these restrictions." CreationDate="2010-08-10T12:34:52.843" UserId="1352" />
  <row Id="2260" PostId="2430" Text="There's no way to replay a CoD level with a different approach.  They're rollercoaster rides." CreationDate="2010-08-10T12:37:42.480" UserId="259" />
  <row Id="2262" PostId="2461" Text="These are all good points. I think it would be appropriate to recenter the coordinates every time a new set of squares is generated, as long as it is efficient enough." CreationDate="2010-08-10T12:46:50.230" UserId="8" />
  <row Id="2263" PostId="2496" Text="Vishnu Ajit: How do you resolve collisions? If ball A collides with ball B and either balls get moved you have to make sure to resolve any collisions (and detect them) that the balls might cause from moving after the collision... if that makes sense. " CreationDate="2010-08-10T12:54:17.313" UserId="1580" />
  <row Id="2264" PostId="2482" Score="1" Text="Modern scripting languages (such as the Lua Vm) are probably fast enough for you. They're easy to use, easy to implement, you can reload the scripts in runtime, you can debug and step the scripts in runtime and you can iterate MUCH faster while making content. I strongly suggest looking into a scripting engine (examples: lua and gamemonkey) in order to script quests." CreationDate="2010-08-10T13:06:13.777" UserId="1580" />
  <row Id="2265" PostId="2463" Text="@RCIX It just seems like the user is looking for something else.  " CreationDate="2010-08-10T13:07:24.803" UserId="14" />
  <row Id="2266" PostId="2504" Text="This is the clearest answer, thanks!" CreationDate="2010-08-10T13:10:25.543" UserId="1584" />
  <row Id="2268" PostId="2476" Text="3 possible solutions. 1) Don't use the normal but the direction of the side and subtract 90 degrees as mentioned above. 2) Simulate the same by swapping x and y of the normal and inverting one (multiply by -1). 3) Multiply the angle with the sign of the cross product of the two vectors as the crossproduct represents the sin of the angle which is not symetrical around 0 degrees." CreationDate="2010-08-10T13:23:28.540" UserId="865" />
  <row Id="2269" PostId="2511" Score="2" Text="Whilst I agree that is a superb resource, it is only so-called &quot;hardcore&quot; gamers.  It totally misses out (eg) the millions of people who play Solitaire on their work lap-top and the market that PopCap aim at." CreationDate="2010-08-10T13:24:48.550" UserId="276" />
  <row Id="2270" PostId="2504" Text="If you want some more ideas about game state stacks, there's this question: http://gamedev.stackexchange.com/questions/1783/game-state-stack" CreationDate="2010-08-10T13:35:45.747" UserId="1156" />
  <row Id="2271" PostId="2519" Text="I have read that even Depth Peeling techniques to handle per-fragment sorting often obtain good results. Do you think that this is feasible on a small game engine? Do AAA games use these techniques?" CreationDate="2010-08-10T13:36:57.290" UserId="192" />
  <row Id="2272" PostId="2519" Text="What do you think is better/easier to implement between Kd-trees and Octrees?" CreationDate="2010-08-10T13:38:17.973" UserId="192" />
  <row Id="2273" PostId="2419" Text="Can you actually do things like that procedurally, without a base? This is certainly new and interesting to me." CreationDate="2010-08-10T13:45:33.260" UserId="1156" />
  <row Id="2274" PostId="2519" Text="I'd be very surprised if there wasn't a C# implementation for both of them already out there: it's the kind of thing where the meat of it (the subdivision and the querying) is the same for all implementations, but the interesting bits (how do you iterate/query/associate items with the nodes) can vary.&#xA;&#xA;Oct/quad-trees are, to my mind, conceptually simpler, but as has been pointed out, kd-trees are more efficient in a variety of ways. I'd probably go kd-tree just because if you can do that, you can do oct-trees (but the reverse isn't necessarily true)." CreationDate="2010-08-10T13:47:15.067" UserId="741" />
  <row Id="2275" PostId="2519" Score="1" Text="As for per-fragment sorting: without knowing anything about your engine it's hard to say, but it feels like a bit of a premature optimisation. Yes, AAA games might use those techniques, but they'll also be shuffling more objects than an XNA engine will be able to manage, and so require more extreme optimisation techniques to get the most out of it.&#xA;&#xA;My advice would always be to get the basics (transparency sorting) done solidly, and if you find that performance just isn't up to scratch, then go the whole hog and do finer grained sorting. Chances are something else will bound performance first." CreationDate="2010-08-10T13:50:16.323" UserId="741" />
  <row Id="2276" PostId="618" Text="+1 for decoupling the interface from the implementation." CreationDate="2010-08-10T13:52:02.450" UserId="1289" />
  <row Id="2277" PostId="2516" Text="No I mean for computation, not for visible particle effects" CreationDate="2010-08-10T14:04:12.607" UserId="1358" />
  <row Id="2278" PostId="1968" Text="That SMB3 speed run was a fake though =( He should know this ;)" CreationDate="2010-08-10T14:06:09.623" UserId="1352" />
  <row Id="2279" PostId="2514" Text="Yes I do mean for computation, and yes I have profiled it and I am using a fast implementation of `atan2` (the only one of those that the profiler highlighted.)  I will experiment with fixed point arithmetic." CreationDate="2010-08-10T14:06:13.147" UserId="1358" />
  <row Id="2281" PostId="2519" Score="1" Text="There are actually AAA-developers out there that skip using BV-tree's since doing it brute-force while making sure that you actually use most of the clockcycles efficiently (No LHS/L2+L1 Cache misses etc) provides good enough performance. It's amazing how many tests you can push out with a well-designed system. " CreationDate="2010-08-10T14:40:03.410" UserId="1580" />
  <row Id="2283" PostId="2519" Text="Have you got any reference on how to create a Kd-tree from a set of models positioned in a 3D space? I should use the models bounding boxes?" CreationDate="2010-08-10T14:50:02.620" UserId="192" />
  <row Id="2284" PostId="2490" Score="2" Text="@Vishnu Ajit: Over here we like to use full sentences" CreationDate="2010-08-10T14:50:23.260" UserId="769" />
  <row Id="2285" PostId="2503" Score="2" Text="You say you've optimized the software solution as much as possible, but are you making use of the Neon vector processing unit on the Arm7 devices? Look for the WWDC2010 session on the Accelerate framework." CreationDate="2010-08-10T14:55:07.913" UserId="93" />
  <row Id="2286" PostId="344" Score="9" Text="Really, all five of them?  That must have taken a while." CreationDate="2010-08-10T14:55:20.720" UserId="136" />
  <row Id="2287" PostId="887" Score="1" Text="The official XNA Framework is limited to Windows and XBox360, but I do believe there is an effort to bring it to the Mono platform (do a search on &quot;MonoXNA&quot;)." CreationDate="2010-08-10T14:58:52.430" UserId="136" />
  <row Id="2288" PostId="2476" Text="The dot product doesn't give you the angle, only the magnitude of the angle, you also need direction of the angle. All 3 ways above simulate using the sine giving you the side. You could also use basic trig to get the angle. Sin(alpha) = length opposing side / length sloped side (based on a triangle with one 90 degree angle between opposing side and sloped side). That and pythagoras to calculate the sides lengths will do." CreationDate="2010-08-10T15:01:48.303" UserId="865" />
  <row Id="2289" PostId="2306" Text="While that's true for time online and hitpoints, neither of which was guaranteed ACID in Cryptic's DB, it is not true for e.g. quest milestones (5/10 wolves killed) or XP rewards, which can still occur many times per second per player." CreationDate="2010-08-10T15:06:40.927" UserId="744" />
  <row Id="2291" PostId="2201" Text="FreeOrion is using OpenSteer in its tactical combat engine." CreationDate="2010-08-10T15:12:34.053" UserId="136" />
  <row Id="2294" PostId="2476" Text="By the way, reread my original answer, as it does solve the dilemma by taking the angle with the plane instead of the normal and subtracting 90 degrees." CreationDate="2010-08-10T15:39:52.787" UserId="865" />
  <row Id="2295" PostId="2487" Text="I have to say I always appreciate games where I can press F1 or some help key and see all the keycodes and what they do. I dislike when I have to pause the game and go into the keyboard setup screen just to remind myself which key to press. It seems these developers have a very high opinion - too high - of their program and think everyone should just remember the layout. I don't play their game 24/7." CreationDate="2010-08-10T15:48:14.037" UserId="1467" />
  <row Id="2296" PostId="2525" Text="Yay Insomniac Games! One of their offices is near me, in Durham, NC and some employees gave GREAT talks at the Triangle Game Conference this past Spring." CreationDate="2010-08-10T15:48:21.073" UserId="189" />
  <row Id="2297" PostId="2466" Text="Can you mention their names, or is it a secret?" CreationDate="2010-08-10T16:06:53.970" UserId="349" />
  <row Id="2299" PostId="2463" Text="Sometimes I hope that less will be more.  Unfortunately that is not the case here." CreationDate="2010-08-10T16:08:43.623" UserId="349" />
  <row Id="2300" PostId="2522" Text="This is nearly a verbatim copy of JasonD's answer. I swear I didn't look at it before posting." CreationDate="2010-08-10T16:19:01.493" UserId="1581" />
  <row Id="2301" PostId="1973" Text="Hmm. I found myself having replayed Oblivion and Fallout at least 3 or 4 times each, not as far though, trying to be magic based/ranged/good karma/etc." CreationDate="2010-08-10T16:25:49.990" UserId="1156" />
  <row Id="2302" PostId="2512" Text="I wonder if WebGL should pay royalties to Laszlo. http://www.openlaszlo.org/ They've had that same paradigm (canvas, etc.) since 2005 if not earlier. I'm semi-kidding about the royalties. :-)" CreationDate="2010-08-10T16:29:40.160" UserId="1467" />
  <row Id="2303" PostId="2466" Text="I haven't a clue. I'm just guessing, and I answered your original question of &quot;has anyone used it?&quot; Now with your edit you might get some useful responses." CreationDate="2010-08-10T16:31:11.593" UserId="189" />
  <row Id="2306" PostId="2466" Text="I have to apologize, I mistook your question to be &quot;has anyone used _&quot; but instead it's &quot;has anyone used _ to do [thing which is not originally intended for it]&quot;, which seems valid. Though it's still not the best way to ask this. You might get a better (or less hateful/non-serious) response from rephrasing the question &quot;How can the Procedural CityEngine be used to generate levels in real-time?&quot;, and actually ask how it can be done. If that's your question, anyway." CreationDate="2010-08-10T17:10:48.623" UserId="189" />
  <row Id="2307" PostId="2463" Score="1" Text="Consider rephrasing the question &quot;How can the Procedural CityEngine be used to generate levels in real-time?&quot; - see my comment on my answer." CreationDate="2010-08-10T17:11:47.497" UserId="189" />
  <row Id="2308" PostId="268" Text="Great question!" CreationDate="2010-08-10T17:14:30.567" UserId="327" />
  <row Id="2309" PostId="2530" Score="3" Text="Good advice: http://stackoverflow.com/questions/1797546/learning-c-xna-as-a-first-language-for-indie-games-dev especially the responses to #4" CreationDate="2010-08-10T17:17:14.743" UserId="189" />
  <row Id="2311" PostId="487" Text="Nope, different game, but our work on the NPC conversation system actually did come out from some frustration with Morrowind and our desire to improve on it. I wouldn't be surprised if the Oblivion team also thought &quot;how can we make conversations better?&quot;" CreationDate="2010-08-10T17:28:05.550" UserId="305" />
  <row Id="2312" PostId="707" Text="While you're right, there can be a huge penalty for refactoring; so making an informed decision upfront instead of an arbitrary one will save you time in the long run." CreationDate="2010-08-10T17:29:08.483" UserId="327" />
  <row Id="2313" PostId="2533" Text="+1: Nice answer. Do you think that there is an expectation that your portfolio pieces *should* be better since you used XNA? For example, in one of my hardware classes we were given the choice of writing our design project in HC12 assembly, or using C, but with C, our project had to be significantly more interesting due to the ease of programming in C over assembly." CreationDate="2010-08-10T17:36:20.890" UserId="327" />
  <row Id="2314" PostId="2474" Text="How do you take into account the original spin of the ball? If it is rotating very fast, it might launch itself away in a totally different direction.&#xA;&#xA;The problem with dot-product in your case is that it uses the cosine (an even function). You need something else to set the sign of the relationship between your vectors (incident and normal). You can use a cross-product (vector product) for this purpose. I have edited my answer to include a cross-product method." CreationDate="2010-08-10T17:40:49.743" UserId="144" />
  <row Id="2315" PostId="2507" Text="This is essentially the same answer as the other 2, but +1 for the link - That website is a really good reference." CreationDate="2010-08-10T17:50:28.383" UserId="400" />
  <row Id="2316" PostId="2533" Text="I don't really think there would be. It's a tool to a solution, and the reason I say the end product would be 'better' is because there is less time spent on rendering design and more time spent on actual game work." CreationDate="2010-08-10T17:53:04.867" UserId="1156" />
  <row Id="2317" PostId="2533" Text="Unless you are looking specifically for a graphics job, most people won't be looking for tons of graphical polish in a portfolio piece. Make something that looks engaging moreso than pretty. In this respect XNA vs. C doesn't really matter as long as it is fun." CreationDate="2010-08-10T17:53:24.993" UserId="395" />
  <row Id="2318" PostId="2525" Text="I've been looking a bit at data driven development and is certainly something I will use. As for components I'll check it out, especially because I'm not quite happy with the &quot;functional&quot; approach I'm doing right now." CreationDate="2010-08-10T18:11:00.963" UserId="715" />
  <row Id="2319" PostId="1007" Text="@Mike so lets say you do that. What would the delegate take in as a parameter. just a system.object? and then cast it? or should it be a generic delegate or what? This sounds like it could be going somewhere good thanks!" CreationDate="2010-08-10T18:23:31.157" UserId="502" />
  <row Id="2320" PostId="1464" Text="@Andrew thanks for the example, Im not that familiar with lambda expressions in C#. Could you explain a little more?" CreationDate="2010-08-10T18:24:49.920" UserId="502" />
  <row Id="2321" PostId="1014" Text="This is very good news i will keep this in mind from now on =)" CreationDate="2010-08-10T18:25:10.653" UserId="502" />
  <row Id="2322" PostId="279" Score="8" Text="My experience with STL has been nearly opposite.  It's efficient and time-saving.  If you feel the need to roll your own template library or container library, then that's fine.  But don't pretend that the STL (or boost, for that matter) is bad.  I've used STL extensively on commercial iPhone, Nintendo DS, Wii, PC, Mac, and Xbox games.  Every time I've been forced to use someone else's &quot;better&quot; library, I've found it lacking and buggy." CreationDate="2010-08-10T18:40:49.500" UserId="430" />
  <row Id="2324" PostId="2532" Text="That sounds great, thanks. One thing; how would the local position be handled? i.e. Would it be easier to treat each parent as a separate screen, sort of like in the car example, have wheel have a position of 200,400 or something? The local position is the bit that's got me confused." CreationDate="2010-08-10T19:23:17.087" UserId="1156" />
  <row Id="2325" PostId="2525" Text="@Daemoniorum: Sounds good, just throw me another comment if you have any further questions or if you want some help / ideas for implementations." CreationDate="2010-08-10T19:23:32.560" UserId="1580" />
  <row Id="2326" PostId="2532" Text="If there is no scale or rotation involved then you can just add the local position to the parent's global position, but your local position have to be in the correct scale. Does that answer your question? As I am not quite sure what you're asking. The parents can all live in the same screen, just give them one common parent (sceneroot) with translation (0,0). Changing the translation of sceneroot will move your whole world around." CreationDate="2010-08-10T19:26:05.660" UserId="865" />
  <row Id="2327" PostId="2532" Text="No, I feel I badly worded it. Sorry. What I meant was I was asking a good way to handle the local positions; if I have a 2d car with a position of 100,100 for the top left and a length of 100, would a wheel have a position of 20,20 locally, or would it have a position of 200 locally, and keep the 'local' at a same sort of scale as the global? I really am not doing well at getting a point across, and I don't want to edit the question because it'll mess up answers." CreationDate="2010-08-10T19:28:58.350" UserId="1156" />
  <row Id="2328" PostId="2532" Text="Since you don't incorporate scale I would define local offset in global coordinates. So if you want the wheel to be 50 pixels to the left of the center of the car, and 20 below, I'd give it a position of (-50,20). If you want to incorporate scale I'd always consider the parent size to be 1.0 by 1.0 and have the local coords adjusted to that (like -0.5, 0.2) but it would make it harder to place pixel art so I'd go for the former (global coord system for local objects), especially since it gets tricky if you go deeper than one level." CreationDate="2010-08-10T19:40:35.033" UserId="865" />
  <row Id="2329" PostId="2532" Text="Ah, thanks. Definitely helped. :D" CreationDate="2010-08-10T19:42:54.573" UserId="1156" />
  <row Id="2330" PostId="2541" Text="I asked the creators to chime in here actually. Wondering if they will." CreationDate="2010-08-10T20:05:37.687" UserId="14" />
  <row Id="2331" PostId="2474" Text="re-reading the answer after the edit i like it. Tried it out and it worked quite fine. Regarding original spin, i was only talking about making the rotation change gradual... as for original spin affecting exit vector, well, thats my next step :)" CreationDate="2010-08-10T20:12:56.700" UserId="1179" />
  <row Id="2332" PostId="2541" Text="Ooh. Hope so, would be good to get some better placed advice." CreationDate="2010-08-10T20:16:00.953" UserId="1156" />
  <row Id="2333" PostId="2546" Text="The first question would be, is the physical simulation to be accurate across the window? Because the orientation changes make a proper sweep pretty impossible. It's kinda like scale changing portals - a world of possible pain. Second question : Different orientation, as in arbitrary, or at least at 90 degree angles, just an axis swap?" CreationDate="2010-08-10T20:32:56.450" UserId="865" />
  <row Id="2334" PostId="2533" Text="Though if you want it to look pretty, using a rendering engine like Sunburn on top of XNA can help a lot!" CreationDate="2010-08-10T20:38:52.897" UserId="299" />
  <row Id="2335" PostId="2546" Text="Now, this sounds like a problem they had to address in Portal.&#xA;If I remember correctly they mention these problems and how they solved them in some in-game commentaries. You can probably find these online somewhere. " CreationDate="2010-08-10T20:40:41.457" UserId="1352" />
  <row Id="2336" PostId="2544" Text="You're right, I've got the misspelling by osmosis: reading it misspelt in chat channels so often (a bit like the word imba) I've started using that version. One of the stupidest parts of the AI as you mentioned is you can be a level 5000 and ride over the level 10 and he'll attack." CreationDate="2010-08-10T20:41:03.343" UserId="1367" />
  <row Id="2337" PostId="2544" Text="Many game reference it as &quot;Threat&quot; so that may help your search for the standard algorithm (if one even exists)." CreationDate="2010-08-10T20:41:05.853" UserId="299" />
  <row Id="2338" PostId="2544" Score="1" Text="&quot;Hate&quot; is also a vaguely standard term." CreationDate="2010-08-10T20:51:07.937" UserId="395" />
  <row Id="2339" PostId="1007" Text="@Chris: The most straightforward delegate would be generic on the modified property type and would have parameters for the base value and current effective value.  It would return the modified effective value.  `public delegate T ValueModifierCallback(T baseValue, T currentValue)`" CreationDate="2010-08-10T21:12:10.600" UserId="136" />
  <row Id="2340" PostId="1007" Text="@Chris: However, if you're building a particle system, this sort of OO abstraction is probably overkill.  You'd probably be better off going with something more straightforward like what Andrew described below.  Working with events and delegates should consume a smaller memory footprint and be more performant." CreationDate="2010-08-10T21:25:04.340" UserId="136" />
  <row Id="2342" PostId="2544" Text="&quot;you can be a level 5000 and ride over the level 10 and he'll attack&quot;, this is not true in WoW. The radius of the threat decreases the bigger the level gap between you and the mob." CreationDate="2010-08-10T21:30:07.400" UserId="1163" />
  <row Id="2343" PostId="1007" Text="@Mike this confuses me a little more, couldnt you just have it be like.&#xA;&#xA;    public delegate void ValueModifierCallBack(ref T value)" CreationDate="2010-08-10T21:30:09.053" UserId="502" />
  <row Id="2344" PostId="1007" Text="I agree with the particle system idea for modifying particles, you are right this is overkill for that. I am going to be using this for bigger functions in the game." CreationDate="2010-08-10T21:36:27.603" UserId="502" />
  <row Id="2345" PostId="1007" Text="@Chris: Depends on what your needs are.  My design was based on the requirement that objects had properties that could be modified by various external entities, and modifiers might be added/removed in response to various triggers.  Some of those modifiers might be compounded, but others might not.  For example, some effects might be additive (i.e. `+25` to some property) while others might be multiplicative (i.e. `+25%` to some property).  The former would simply return `currentValue + 25` while the latter might return `currentValue + (0.25 * baseValue)`." CreationDate="2010-08-10T21:37:03.953" UserId="136" />
  <row Id="2346" PostId="2541" Text="@The Communist Duck: I think that if it can be run in game it might be a way to generate infinite levels.  Why must the rendering be watered down to run in real time?  The scale of the world generated in each pass would be limited but because we are continually generating geometry we only need to worry about the resolution of the area immediately surrounding the PC.  The CityEngine can even handle LOD directly.    " CreationDate="2010-08-10T21:55:03.063" UserId="349" />
  <row Id="2347" PostId="2466" Text="@Ricket: No worries, I'll refrain from putting questions in the title from now on because many people probably just glance at it.  " CreationDate="2010-08-10T22:00:47.520" UserId="349" />
  <row Id="2348" PostId="2546" Text="@Kaj I think it would be best to split the calculation path for arbitrary and right-angled transitions. This way, the right-angled ones could have a higher precision and speed while other angles would as well be possible." CreationDate="2010-08-10T22:00:54.743" UserId="1323" />
  <row Id="2349" PostId="770" Score="1" Text="Or if looking up makes sense, use a sound or other effect (dripping water, falling sparks, sign with an up arrow) to attract attention." CreationDate="2010-08-10T22:08:28.670" UserId="769" />
  <row Id="2350" PostId="2546" Text="@Nailer If I remember correctly, they created a new physics environment while the portal was opening and then cloned every physics-object that got near into this additional simulation. They said they somehow constrained the objects, but it's most likely that they are just transforming the forces and positions each physics-step.&lt;br&gt;I'm quite sure that they create a third clone at the destination because of the way player movement is simulated in Source." CreationDate="2010-08-10T22:14:18.570" UserId="1323" />
  <row Id="2351" PostId="2549" Text="This seems to be the fastest way possible, but there's a problem if two objects cross the window from the same side: If the first object gets stuck mid-way across the border, the second one wouldn't collide until it reached the border, too, and appear inside the first one at the destination." CreationDate="2010-08-10T22:30:38.993" UserId="1323" />
  <row Id="2352" PostId="2495" Text="Possibly, but most I think blur implementations would use the same shader for the horizontal and vertical passes - and just pass in the sampling offsets (as shader constants or per-vertex data)?" CreationDate="2010-08-10T22:32:40.367" UserId="659" />
  <row Id="2353" PostId="2549" Text="Edited slightly while you typed that, and that was indeed the issue I added :o\" CreationDate="2010-08-10T22:42:03.523" UserId="865" />
  <row Id="2354" PostId="2549" Text="I gotta learn to read. My addition was *another* border case. Will ponder." CreationDate="2010-08-10T22:51:03.683" UserId="865" />
  <row Id="2355" PostId="2549" Text="No, the border is outside the world. So object one would be shot into world 2 (from world 2's border - not at the window position) with it's own velocity, as would object b. They'd collide in world 2 on the border properly....I think :o? However my own border case still holds." CreationDate="2010-08-10T22:53:17.750" UserId="865" />
  <row Id="2356" PostId="1738" Text="The amount of downvoting in this place is annoying.&#xA;You have valid points." CreationDate="2010-08-10T22:55:37.937" UserId="1206" />
  <row Id="2357" PostId="2168" Text="The company that made it shut down, so I don't know about &quot;still being around&quot;. The support for it was picked up by someone else." CreationDate="2010-08-10T23:15:13.147" UserId="249" />
  <row Id="2358" PostId="2559" Text="Full disclosure: pretty sure I found the collaborative diffusion link here somewhere on GD, but I can't for the life of me find the post that refers to it now.  It was quite a find.  =)" CreationDate="2010-08-10T23:30:31.577" UserId="1134" />
  <row Id="2359" PostId="2402" Score="1" Text="I would love to know why you where down voted. " CreationDate="2010-08-10T23:31:50.170" UserId="666" />
  <row Id="2360" PostId="2552" Score="2" Text="I just read through the code: The way they do it is almost like Valve's solution, but without the additional physics environment. Portals in the Portalized engine create a duplicate of an object once it touches the portal surface, then delete it once it has left the portal for a certain time. This answer is still somewhat helpful: The joint used to constrain the duplicates shows how the object is transformed in the portal." CreationDate="2010-08-10T23:46:51.330" UserId="1323" />
  <row Id="2361" PostId="1576" Text="A bit unrelated, but yikes. Pretty brutal license there." CreationDate="2010-08-10T23:49:43.273" UserId="632" />
  <row Id="2362" PostId="2487" Text="Huh?!? And why you wrote that?" CreationDate="2010-08-11T00:01:46.543" UserId="469" />
  <row Id="2363" PostId="2481" Text="If I enable gzip compression, the flash client won't even know that the file has been zipped up? If so then I think that is all I would really need, correct?" CreationDate="2010-08-11T00:11:54.323" UserId="962" />
  <row Id="2364" PostId="2549" Text="Seems like I misread the part about the virtual border.&#xA;Anyway, there is another problem if an object gets stuck. The part on the back-side of the destination window will still get rendered at the original position, but objects that don't touch the border won't collide with it.&#xA;One way to solve these problems would be to unify the simulations, but I'm not sure how this can be done efficiently." CreationDate="2010-08-11T00:40:16.573" UserId="1323" />
  <row Id="2365" PostId="2564" Score="1" Text="This is really pushing the limits of game dev questions imo." CreationDate="2010-08-11T00:49:42.950" UserId="865" />
  <row Id="2366" PostId="2561" Text="This rewards someone to browser reddit all month while implementing some code that could have been a couple of DAYS with proper motivation." CreationDate="2010-08-11T00:54:50.833" UserId="666" />
  <row Id="2367" PostId="2501" Text="Thanks for that wikipedia link, its good" CreationDate="2010-08-11T00:56:02.563" UserId="666" />
  <row Id="2368" PostId="1007" Text="Your requirements sound exactly the same as mine. &#xA;&#xA;That makes a lot more sense thank you very much. &#xA;&#xA;Oh another requirement was that I wanted to be able to create custom ones in an editor and be able to serialize them. Were you able to do that with yours?" CreationDate="2010-08-11T00:56:12.517" UserId="502" />
  <row Id="2369" PostId="226" Text="+1 for Unity, great engine!" CreationDate="2010-08-11T00:56:42.187" UserId="377" />
  <row Id="2370" PostId="2555" Text="This is a great question for http://area51.stackexchange.com/proposals/6243/startup-business, if it ever gets out of *beta*. It's *not* really a game-specific question, however." CreationDate="2010-08-11T01:03:03.190" UserId="165" />
  <row Id="2371" PostId="2430" Text="At least in multi-player it does allow for player to do so.  " CreationDate="2010-08-11T01:14:23.183" UserId="919" />
  <row Id="2372" PostId="2549" Text="No, that's why I said you need to run physics update twice. Before rendering you run the second pass where you take objects out of the border in world 1 and insert them (with velocities) in world 2. However, I am not sure that wouldn't result in new objects entering the border. Seems duplication is really the only viable solution :o\ Unifiying the simulations seems hard. You could try taking out gravity and apply it as seperate forces, and realigning forces when objects go through some trigger (for the window) but it would seem tricky for sure." CreationDate="2010-08-11T01:28:40.747" UserId="865" />
  <row Id="2373" PostId="2564" Text="Look at it in hex/text editor and look for the strings." CreationDate="2010-08-11T01:50:10.460" UserId="1024" />
  <row Id="2374" PostId="1464" Text="@Chris: Do you understand delegates? It's just a shorter syntax (when used in this way). `(touchedBy) =&gt;` is the same as `delegate(GameObject touchedBy)`. For the lambda the compiler will infer the type `GameObject` (or whatever) from what `OnTouch` is expecting." CreationDate="2010-08-11T02:08:06.220" UserId="288" />
  <row Id="2375" PostId="2564" Text="Jonathan, I have looked in a hex editor and there is no identifiable magic string (no xof or anything).&#xA;&#xA;Kaj, sorry, I thought this would be a decent place to ask about identifying game mesh file formats." CreationDate="2010-08-11T02:17:08.273" UserId="1504" />
  <row Id="2376" PostId="2564" Score="3" Text="Seems like a perfect game dev question to me.  I wish I had an answer for you." CreationDate="2010-08-11T02:20:38.763" UserId="953" />
  <row Id="2377" PostId="1007" Text="@Chris: Yes.  Effects are persisted in XML format.  The effect values are written in a custom expression language based on C# (i.e. `$currentValue + (0.25 * $baseValue)`).  The language is basically just the subset of all C# expressions that are representable as LINQ expression trees, but with a few differences (system parameters prefixed with '$', user parameters prefixed with '#', expression-scoped namespace imports, etc.).  The expressions are parsed at runtime and rewritten to be observable/reactive when possible (runtime value changes are automatically propagated)." CreationDate="2010-08-11T03:01:58.087" UserId="136" />
  <row Id="2378" PostId="1007" Text="Are you talking about serializing it with the default .net serializer or just with the XmlWriter class? and just calling WriteObject(object)?" CreationDate="2010-08-11T03:23:27.400" UserId="502" />
  <row Id="2379" PostId="2564" Text="Are there any strings at all in the file, and recognizable words?" CreationDate="2010-08-11T03:30:40.010" UserId="1024" />
  <row Id="2380" PostId="2564" Score="1" Text="Okay, if it is deemed gamedev, let's do it (didn't mean to be that harsh). It could be *any* format. A stripped official format or a custom format. Do you have any pointers on where you got it? Looking at the file it is (oftentimes) possible to reverse at least part by looking for repeating patterns, and after that for numbers (often ints, depending on what era game we're talking) that are a multiple of the repeat count. It's worth a shot." CreationDate="2010-08-11T04:18:06.587" UserId="865" />
  <row Id="2381" PostId="2474" Text="Ouch, the edit was one of the 3 different solutions I suggested, and I explained why you had to do it (dot only gives magnitude, not direction of angle). Alas, should be more concise I guess." CreationDate="2010-08-11T04:43:26.047" UserId="865" />
  <row Id="2382" PostId="1007" Text="Actually, I don't remember if I've started writing the effect serialization code just yet.  If I have, I probably just used XLinq as a stand-in.  I still have some work to do in the expression parser/compiler before I can really put my effect system to good use (lambda support isn't finished yet).&#xA;&#xA;Lately, I've been using Xaml as a persistence format whenever possible.  They've really improved the Xaml API in .NET 4, and it generally beats the hell out of the standard XML serialization mechanisms in .NET." CreationDate="2010-08-11T04:51:23.883" UserId="136" />
  <row Id="2383" PostId="2510" Score="1" Text="Indeed. The question can only be answered with a question. &quot;What is your target audience?&quot;" CreationDate="2010-08-11T04:57:50.740" UserId="865" />
  <row Id="2384" PostId="2244" Text="@samboush, I really respect that response." CreationDate="2010-08-11T05:03:41.603" UserId="355" />
  <row Id="2385" PostId="2528" Text="By the way, upon rereading your question, what console are we talking about? I've done a PSP game where only frustrum culling was used, but the type of game would be fairly important. In most cases (given 10000 as a limit) I'd say pure frustum culling is not enough as you get to 10000 polygons pretty fast in most types of game." CreationDate="2010-08-11T05:16:21.053" UserId="865" />
  <row Id="2386" PostId="2564" Text="Also, try reading the file as floats. If it's not compressed you might gleam some info from that as there's likely to be some vertices that line up, or axis oriented normals. That's only if you want to reverse engineer (a bloody hard task) - I have no idea what format it could be." CreationDate="2010-08-11T05:23:53.257" UserId="865" />
  <row Id="2387" PostId="1768" Text="Anyone mind saying why they downvoted me?" CreationDate="2010-08-11T05:38:51.203" UserId="1004" />
  <row Id="2388" PostId="2486" Score="1" Text="Be warned though, statemachines tend to get very convoluted very fast if you want quest paths to be influenced by outside factors or if your quests are relatively complex. Also multiple quest statemachines (if multiple quests can be active) can be a nightmare. However, since in essence every program is a statemachine, it can be done. But complex problems remain complex no matter how you encapsulate them. A good example (imo) is Oblivion where some mods stop other mods from working - your pre and postconditions for states have to be either pretty solid, or extremely forgiving/error tolerant." CreationDate="2010-08-11T05:48:57.737" UserId="865" />
  <row Id="2389" PostId="2564" Score="2" Text="Where did you get the file from? What is the name/extension of the file?" CreationDate="2010-08-11T06:06:12.133" UserId="1091" />
  <row Id="2390" PostId="2481" Text="@AttackingHobo yes, correct. The beauty of this: you won't even notice the data is zipped, unless you look at the network traffic (and headers)." CreationDate="2010-08-11T06:26:45.260" UserId="20" />
  <row Id="2391" PostId="1007" Text="Alright I think you have lost me. What do you mean by your effect system and how does XLinq tie into that. Also what are you talking about your expression parser/compiler, is that for parsing xml?" CreationDate="2010-08-11T06:37:01.040" UserId="502" />
  <row Id="2392" PostId="2005" Text="@Jacmoe: Either that or you try to build your next game on your previous game and the source is filled with unstructured code that is incredibly difficult to work with. Over time you might build up a huge technical debt which eventually will lead to a certain point where you can't develop anything at all with that said code. I'm not saying it WILL happen, but it might :) " CreationDate="2010-08-11T07:09:57.430" UserId="1580" />
  <row Id="2393" PostId="2567" Score="2" Text="what language is that, with the funny type decls? Or is it just pseudocode?" CreationDate="2010-08-11T07:41:03.580" UserId="259" />
  <row Id="2394" PostId="2511" Score="1" Text="Well, these are the only gamers that play games that require any kind of good hardware. Most casual games are quite lightweight, and could safely assume that any cheap consumer laptop on the marked could cope with it. " CreationDate="2010-08-11T07:41:35.280" UserId="1352" />
  <row Id="2395" PostId="2486" Text="Yup, kaj is right. Just head over to the WoW forums right now and read about people complaining about unfinishable quests. It happens all the time, even in the major league. It's really hard to get everything right." CreationDate="2010-08-11T07:50:19.733" UserId="678" />
  <row Id="2396" PostId="2555" Text="you can also take a look at this site to get answers: http://answers.onstartups.com/" CreationDate="2010-08-11T08:55:05.587" UserId="1583" />
  <row Id="2397" PostId="2541" Text="&quot;It seems to get used in production or pre-production due to its sizable overhead&quot;" CreationDate="2010-08-11T09:41:52.083" UserId="1156" />
  <row Id="2398" PostId="2567" Score="2" Text="I think it may be Actionscript or Javascript, but don't hold me to that." CreationDate="2010-08-11T09:44:16.950" UserId="1156" />
  <row Id="2399" PostId="2576" Score="3" Text="I think you *might* be slightly pushing the edge of gamedev, though I hope you find your answer. You may want to try the gaming stackexchange?" CreationDate="2010-08-11T09:46:54.097" UserId="1156" />
  <row Id="2400" PostId="2519" Text="Always use AABBs, yes. Best to google for kd-tree generation algos, but as a synopsis: generate the AABBs for all the models, then iterate all the AABBs to figure out a single AABB which contains every single other AABB. Then you take that super-volume and choose an axis to split it on (say x), then you need to iterate all the AABBs, and choose a value for x such that if you cut the super-volume with a plane with that x-value to make two smaller AABBs, there would be a roughly equal number of models contained in each smaller AABB. Recurse down, splitting on the y axis, then the z axis, etc." CreationDate="2010-08-11T10:46:48.407" UserId="741" />
  <row Id="2401" PostId="2526" Text="Is there a risk that you'll save the game at some point of no return where there's no way to win?  For example, right as you meet an enemy your character cannot defeat or escape?" CreationDate="2010-08-11T10:52:48.600" UserId="1375" />
  <row Id="2402" PostId="2576" Score="2" Text="As this doesn't directly relate to the *creation* of games. It is off topic, may I suggest. http://gaming.stackexchange.com/" CreationDate="2010-08-11T11:10:35.373" UserId="14" />
  <row Id="2403" PostId="2580" Score="1" Text="I have been using share_ptr almost everywhere, too - but today I try to think whether or not I actually need shared ownership for some piece of data. If not, it might be reasonable to make that data a non-pointer member to the parent data structure. &#xA;I find that clear ownership simplifies designs." CreationDate="2010-08-11T11:24:03.480" UserId="1495" />
  <row Id="2404" PostId="2474" Text="sorry for that kaj, it slipped me... no offense intended :)" CreationDate="2010-08-11T11:27:12.087" UserId="1179" />
  <row Id="2405" PostId="2528" Text="Mostly interested in the handheld consoles (Pandora, GP2X). The newer mobile phones have similar graphics performance." CreationDate="2010-08-11T11:55:14.737" UserId="1505" />
  <row Id="2406" PostId="2306" Text="These still don't need transactional database semantics. Which is why few in this area are feeling the need to implement their own database like Cryptic did." CreationDate="2010-08-11T12:04:26.620" UserId="1101" />
  <row Id="2407" PostId="2576" Text="Sorry, it seemed like a fine question to me." CreationDate="2010-08-11T12:36:47.880" UserId="1034" />
  <row Id="2408" PostId="519" Score="1" Text="@Ricket: +1 @Jared: I'd pay but, only for DRM-free games. If the only reason for not pirating a game were DRM, something went wrong in the design." CreationDate="2010-08-11T12:47:10.623" UserId="252" />
  <row Id="2409" PostId="2544" Text="@TandemAdam from what I can remember, you can still ride over a level 10 monster in WoW (and be the highest level) and most will attack. It would be nice if it ran in fear" CreationDate="2010-08-11T12:53:08.143" UserId="1367" />
  <row Id="2410" PostId="2526" Text="Have more than one save game. ;-) It's a game after all, not a Pandora Avatar Simulator." CreationDate="2010-08-11T13:17:38.713" UserId="1467" />
  <row Id="2411" PostId="2576" Text="@ischeriad It's no problem. " CreationDate="2010-08-11T13:26:30.547" UserId="14" />
  <row Id="2412" PostId="876" Score="1" Text="If foo is 2 and bar is 1 then the code doesn't behave the same way at all. That, and not early evaluation, is the biggest downside I think." CreationDate="2010-08-11T13:32:35.103" UserId="744" />
  <row Id="2413" PostId="2005" Text="I didn't recommend that you should create unstructured code. :)&#xA;Creating a game instead of an engine is not synonymous with creating a mess - not always.. " CreationDate="2010-08-11T13:43:04.703" UserId="1206" />
  <row Id="2414" PostId="2561" Text="Not really, because you then earn less points than coding that days, so those all are weighted. And browser in reddit won't give you any grades." CreationDate="2010-08-11T14:17:14.293" UserId="1479" />
  <row Id="2415" PostId="1007" Text="@Chris: Sorry, I started to stray a bit too far into my own project's details.  I'd be glad to discuss this further, but the comments section here isn't exactly conducive to such a lengthy discussion.  Feel free to drop me an e-mail if you like; first name dot last name at gmail." CreationDate="2010-08-11T14:24:16.057" UserId="136" />
  <row Id="2416" PostId="2555" Text="Thanks for the pointers. I committed to startup-business and I might also pop into answers.onstartups.com.&#xA;&#xA;In the meantime, especially considering the answers I have received, I figure this is at least relevant enough to GameDev that several people have experienced similar scenarios and have something to say on the matter :)" CreationDate="2010-08-11T15:01:52.737" UserId="488" />
  <row Id="2417" PostId="686" Score="1" Text="Exactly. Just to complete the picture the threads are distributed as follows: RHRHCH. R = Reserved for XNA. H = 'Hyperthreaded' core. C = Physical core" CreationDate="2010-08-11T15:39:33.097" UserId="1494" />
  <row Id="2418" PostId="2562" Text="&quot;As between the coders and the designers, if people feel the others don't work hard enough you have the wrong team.&quot; That is, in essence, what I already knew but needed spelled out for me. Thanks.&#xA;&#xA;I think we're basically down to equal shares, or 'each our separate ways'." CreationDate="2010-08-11T15:39:50.040" UserId="488" />
  <row Id="2419" PostId="2587" Score="2" Text="You lost me at 'avoided at all costs.' &#xA;&#xA;Then you go on to describe a type of optimization that is seldom a concern for real-world games. Most game development is characterized by development problems (delays, bugs, playability, etc) not by a lack of CPU cache performance. So I strongly disagree with the idea that this advice isn't a premature optimization." CreationDate="2010-08-11T15:39:51.913" UserId="204" />
  <row Id="2420" PostId="2588" Score="2" Text="You can't comment on other peoples' posts until you hit 50 rep: http://gamedev.stackexchange.com/faq" CreationDate="2010-08-11T15:43:33.223" UserId="51" />
  <row Id="2421" PostId="2555" Score="2" Text="Sorry, but it's still way off-topic. For instance, if many programmers have problems with spilled Coke in their keyboard, that doesn't make it game-dev related. As this Question says (http://meta.stackoverflow.com/questions/14470/what-is-the-boat-programming-meme-about): &quot;The fundamental rule is you can't just stick 'for programmers' on a question to make it programming related.&quot; Your question is, &quot;How can a startup company of *professionals* with different talents, divide up the equity?&quot; The fact that those professionals are *programmers*, is irrelevant." CreationDate="2010-08-11T15:50:19.290" UserId="165" />
  <row Id="2422" PostId="2587" Score="2" Text="I have to agree with early design of data layout. It is important to get any performance out of a modern console / mobile device and is something that should never be over-looked. &#xA;" CreationDate="2010-08-11T16:10:11.070" UserId="1095" />
  <row Id="2423" PostId="2559" Text="This is super awesome but I bit more complexity than I needed. Will read the whitepaper anyway but managed to implement simpler solution." CreationDate="2010-08-11T16:14:20.800" UserId="119" />
  <row Id="2425" PostId="2518" Text="There's a related post on 64-bit architectures as a target platform  here: http://gamedev.stackexchange.com/questions/769/64-bit-platform-for-game&#xA;&#xA;The consensus seems to be that it's not really worth it." CreationDate="2010-08-11T16:26:54.363" UserId="51" />
  <row Id="2427" PostId="2568" Text="On Windows, he may want to compare his window handle to both the active window and the foreground window, ensuring that both match.  I vaguely recall a strange edge case in which the active window was not necessarily the foreground window.  Or perhaps I've simply gone mad." CreationDate="2010-08-11T16:29:19.260" UserId="136" />
  <row Id="2429" PostId="2590" Score="1" Text="Excellent summary. Do you actually mean shared_ptr as opposed to your mentioning of smart_ptr?" CreationDate="2010-08-11T16:36:33.233" UserId="1495" />
  <row Id="2431" PostId="2562" Text="I guess what helped is that we actually quit our jobs and started a company. That way you can be relatively ensured people will put in all their effort as it's a) their dream, and b) do or die. Of course this is a risk and luxury one often can't afford to take." CreationDate="2010-08-11T17:28:58.253" UserId="865" />
  <row Id="2432" PostId="2590" Text="Yes, I meant shared_ptr.  I'll fix that." CreationDate="2010-08-11T17:35:19.367" UserId="51" />
  <row Id="2433" PostId="2599" Score="1" Text="This is pretty much the standard way to determine *direction*. Speed and the like are of course also factors, and if you can translate the problem to 2D there are more methods. Also, direction to turn might depend on current state (like you don't want jitter around the 0 degree line). Any specific reason you'd need another method? There are other ways (like simple trig - sin = opposing side length/sloped side length), but in the end they all boil down to calculating the angle's direction." CreationDate="2010-08-11T17:35:55.140" UserId="865" />
  <row Id="2434" PostId="2545" Text="you may have answered my question but some clarification. If the answer is primatives then I get it. My question meant to say, &quot;is this how I should go about it?&quot;. I kno wI have to add collision but at this point I just wanted ot be directed down the &quot;right road&quot;. So if your answer is.. &quot;use primitives&quot; then I will mark this as the answer." CreationDate="2010-08-11T17:37:26.337" UserId="1119" />
  <row Id="2436" PostId="2524" Text="Yep, that is one of the reasons I have shied away as well.  But the though of a triple is making me consider it again.  The Mono project states:&#xA;&#xA;As MonoTouch does not hide native APIs and is not an abstraction layer, we continue to believe that MonoTouch conforms to the spirit and intent of the terms spelled out in the developer agreement. " CreationDate="2010-08-11T18:16:11.363" UserId="290" />
  <row Id="2437" PostId="2607" Text="Do you mean a 8x8 grid of tiles, each different, and you match 3 in a line to do something? Like Bejeweled?&#xA;EDIT: Found a link..yes, it looks similar to Bejeweled." CreationDate="2010-08-11T18:16:27.510" UserId="1156" />
  <row Id="2438" PostId="2611" Score="1" Text="IMO, most of this describes Fable to a tee." CreationDate="2010-08-11T21:17:47.333" UserId="1467" />
  <row Id="2439" PostId="2564" Score="2" Text="This question is rather useless as we are not told where the file is from." CreationDate="2010-08-11T21:24:42.503" UserId="1206" />
  <row Id="2440" PostId="2601" Score="3" Text="Exception handling on the consoles can be a bit dodgy -- the XDK in particular is sort of exception-hostile." CreationDate="2010-08-11T21:32:24.270" UserId="1573" />
  <row Id="2441" PostId="2613" Score="1" Text="This is the only answer that seems to find the actual valid moves, as opposed to just looking for *existing* runs of three. " CreationDate="2010-08-11T22:46:08.910" UserId="1091" />
  <row Id="2442" PostId="2495" Score="1" Text="@bluescrn - Bloom is typically thought of as a 4-pass effect: one to extract the bright areas &amp; downscale, one to blur horizontally, one to blur vertically, one to combine/upscale the blurred image with the original. While shader parameters could be used to control these, branching would be needed to differentiate all but the two blur passes" CreationDate="2010-08-11T23:12:48.153" UserId="1553" />
  <row Id="2443" PostId="2622" Text="Hehe, The Witcher did not encrypt their data. Very easy to open up the save game file in a hex editor, mess with it a bit and get all the naked chick cards... oh god, I am so sorry!" CreationDate="2010-08-11T23:47:24.960" UserId="647" />
  <row Id="2444" PostId="2607" Text="Another issue is after match 3 objects in a row and eliminates them, is it necessary to rescan all grids or just partial?" CreationDate="2010-08-11T23:49:56.563" UserId="1632" />
  <row Id="2445" PostId="2229" Text="I agree with both of your points, but I'd lump most of that under &quot;use the right data structures and algorithms.&quot; If you're passing around ref-counted smart pointers everywhere and are bleeding cycles through counting, you've definitely picked the wrong data structure." CreationDate="2010-08-11T23:56:47.080" UserId="160" />
  <row Id="2446" PostId="2613" Text="Ohhh I misunderstood the question. As I seem apt to do lately. :-\" CreationDate="2010-08-12T00:27:53.523" UserId="189" />
  <row Id="2447" PostId="2624" Text="Will the background wrap along x and y or only in one direction?" CreationDate="2010-08-12T00:48:45.117" UserId="189" />
  <row Id="2448" PostId="2624" Text="Also what are the screen dimensions? I.e. will the screen always be smaller than 512x512?" CreationDate="2010-08-12T00:49:43.510" UserId="189" />
  <row Id="2449" PostId="2607" Score="1" Text="Since you have time enough (you'll be playing some sort of animation when you remove the match) you'll have ample time to rescan the whole grid. (I know, I implemented it the way I wrote below)." CreationDate="2010-08-12T01:15:41.537" UserId="865" />
  <row Id="2450" PostId="2625" Text="In the case of modulo, negative numbers aren't an issue (at least for Objective-C; in Java, they are)." CreationDate="2010-08-12T01:35:22.363" UserId="189" />
  <row Id="2451" PostId="2625" Text="Really? Okay...it's machine dependent, I guess the iPhone is blessed. Haven't touched Objective-C for a year and a half." CreationDate="2010-08-12T02:04:00.877" UserId="865" />
  <row Id="2452" PostId="2627" Text="Love the bit math implementation (I'm a performance freak) :o) However for an 8x8 grid it's really not needed. I had the blatantly naive implementation above running happily at 60fps while it was at the same time scraping a graphics window of the game running to read the actual input from." CreationDate="2010-08-12T02:43:47.240" UserId="865" />
  <row Id="2453" PostId="2627" Text="@Kaj: yeah, I don't disagree =)  I should probably have been more clear about that up front.  Even the giant function with the quadruply-nested for loop that would occasionally call itself recursively in the code I mentioned ran just fine on the limited platform we ported it to.  It's called very infrequently, and has a tiny data set to traverse." CreationDate="2010-08-12T03:55:59.587" UserId="1134" />
  <row Id="2454" PostId="2627" Text="+1 for awesome in-depth-ness and proper crediting though :op" CreationDate="2010-08-12T04:29:39.077" UserId="865" />
  <row Id="2455" PostId="2587" Score="1" Text="This is an issue that I've seen at one of the AAA-studios that I've been working at. You can also listen to the Head Architect at Insomniac Games, Mike Acton. I'm not saying that boost is a bad library, it's not just well suited for high-performant games. " CreationDate="2010-08-12T05:47:44.747" UserId="1580" />
  <row Id="2456" PostId="2587" Text="@BananaRaffle: I agree that cache coherency might not be important if you're making a simple game. I still argue that data-oriented-designed lead to cleaner designs and simpler code which means that it's easier to understand and easier to debug. If you really have shared-ownership in your game and it truly is a great and good design, then I think that you should implement a shared ownership system that suits you and your code. Not the general case. " CreationDate="2010-08-12T06:05:30.140" UserId="1580" />
  <row Id="2457" PostId="2600" Text="Yes I realised this when I woke up this morning. Chris bambusaled me with his &lt; &gt; mix up." CreationDate="2010-08-12T06:13:30.047" UserId="119" />
  <row Id="2458" PostId="279" Text="My experience with STL agree's quite a lot with what Mike Acton has said. I've seen designs based on STD::map that was used in the base serialization system which caused aches through a 3-year long game development. Fortunately that system was replaced after that. I've also seen the issues with STL not really being &quot;cross-platform&quot; as there are different implementations of what som functions do, dependent on which compiler you use. That being said, STL is designed by incredibly competent programmers and if you don't have the time (or knowledge) to build your own - use it." CreationDate="2010-08-12T06:16:30.307" UserId="1580" />
  <row Id="2459" PostId="2613" Text="Don't be hard on yourself for trying to help! The question was kinda open to both interpretations." CreationDate="2010-08-12T06:17:59.477" UserId="865" />
  <row Id="2460" PostId="212" Text="+1, great comment. Remember that even the STL is platform-dependant (and yes, some functions do different things on different compilers). " CreationDate="2010-08-12T06:18:10.257" UserId="1580" />
  <row Id="2461" PostId="2628" Text="Did you make sure that the event handler gets called? Maybe post the code snippet in question?" CreationDate="2010-08-12T06:26:22.830" UserId="20" />
  <row Id="2463" PostId="2629" Text="thankyou for replyin..i got it worked.i made the allowsleep to false..and it worked :)&#xA;&#xA;well can i ask u another question...i am making a pool game and now when i add the linear velocity it moves in the correct angle but it now sticks towards the point of collision with the wall. i suspect it is because there is some thing wrong with the values provided to setlinearvelocity... :) thankyou for replyin by the way :) " CreationDate="2010-08-12T07:34:48.153" UserId="1251" />
  <row Id="2464" PostId="876" Text="Do you know, you're absolutely right.  So you need to know that either your foos and bars are all 1 or 0 (not guarenteed for booleans), or only use this for OR statements, or preferrably not do it all. :)" CreationDate="2010-08-12T08:04:59.483" UserId="259" />
  <row Id="2465" PostId="405" Text="@Allan @Iain Really? Have you considered the power of WebGL?" CreationDate="2010-08-12T08:26:51.290" UserId="1628" />
  <row Id="2466" PostId="936" Score="1" Text="All of which are subjective advantages or not related to the language itself..." CreationDate="2010-08-12T08:27:53.267" UserId="1628" />
  <row Id="2467" PostId="449" Text="Strange. A similar answer is upvoted a lot, and this one downvoted? Why?  http://gamedev.stackexchange.com/questions/445/why-is-there-a-lack-of-games-for-linux/488#488" CreationDate="2010-08-12T08:39:08.483" UserId="1629" />
  <row Id="2468" PostId="2587" Text="@BananaRaffle, kevin42: I do agree that &quot;at all costs&quot; was an exaggerated. I've modified the post to suit this better." CreationDate="2010-08-12T08:39:13.740" UserId="1580" />
  <row Id="2469" PostId="2587" Score="1" Text="@kevin42: Cache coherency is probably the main source of low-level optimizations in game development today.&#xA;&#xA;@Simon: Most shared_ptr implementations avoid locks on any platform that supports compare-and-swap, which includes Linux and Windows PCs, and I believe includes the Xbox." CreationDate="2010-08-12T08:57:50.950" UserId="744" />
  <row Id="2470" PostId="2629" Text="@Vishnu: Sounds like you are setting the velocity every step, rather than once" CreationDate="2010-08-12T10:28:44.600" UserId="769" />
  <row Id="2471" PostId="1142" Text="When (if?) Flash starts using hardware acceleration for its rendering, a copyPixel renderer will probably be slower than the native renderer." CreationDate="2010-08-12T10:30:26.500" UserId="769" />
  <row Id="2472" PostId="333" Text="Allegorithmic's Substance products look REALLY REALLY good..&#xA;If you take a look at the videos found here: http://www.allegorithmic.com/?PAGE=PRODUCTS.designer " CreationDate="2010-08-12T11:15:59.277" UserId="1352" />
  <row Id="2473" PostId="2526" Text="That would work -- maybe one &quot;auto-save&quot; slot that saves exactly where you are, and a number of &quot;safe&quot; save slots where the game certifies that you are saving in a safe place." CreationDate="2010-08-12T11:16:08.217" UserId="1375" />
  <row Id="2474" PostId="2634" Text="Also keep in mind that polygons in 3D graphics are generally (unless otherwise specified) single sided. If you draw a cube you can only see it from the outside, not from the inside." CreationDate="2010-08-12T12:15:38.637" UserId="678" />
  <row Id="2475" PostId="2622" Text="I've used .NET binary serialization for saving games, and C# is perhaps a slightly more reasonable platform than Java on which to develop games. I like how it automatically saves a whole object graph automatically.  This used to be so much more difficult. Of course now there's the challenge of excluding unnecessary pieces like the textures, but that's not a big deal to accomplish." CreationDate="2010-08-12T12:54:05.003" UserId="1375" />
  <row Id="2476" PostId="2587" Text="@Joe: I'm not disputing that, my point is that it is premature optimization to avoid a generally useful capability 'at all costs' based on the idea that your biggest problem is related to cache performance. Optimization should be used to solve problems you know you have, and avoiding shared pointers at all costs because of potential cache performance that you don't even know you need is premature." CreationDate="2010-08-12T13:00:29.797" UserId="204" />
  <row Id="2477" PostId="2587" Score="1" Text="@Joe Wreschnig: That's true, the cache-miss is still most likely though causing any initialization of a shared-pointer (copy, create from weak pointer etc). An L2 cache-miss on modern PC's is like 200 cycles and on the PPC (xbox360/ps3) it is higher. With an intense game you might have up to 1000 game objects, given that each game object can have quite a few resources we're looking at issues where their scaling is a major concern. This will likely cause issues at the end of a development cycle (when you will hit the high amount of game objects)." CreationDate="2010-08-12T13:07:11.063" UserId="1580" />
  <row Id="2478" PostId="2630" Text="+1 for counting the possibilities =)" CreationDate="2010-08-12T13:12:06.840" UserId="1134" />
  <row Id="2479" PostId="2622" Text="I don't disagree that C# is slightly more *popular* than Java to develop games. More reasonable implies some subjectivity, and as a developer of both XNA and Java, I prefer Java. Feel free to list instructions on serialization in C# too if you'd like, I've never done it but I can edit it into my answer. Java's serialization does save the whole object graph and the 'transient' keyword on variables excludes unnecessary pieces like textures; any non-transient members must be Serializable or you can write a custom writeObject method to get around that." CreationDate="2010-08-12T13:15:57.487" UserId="189" />
  <row Id="2480" PostId="2587" Text="Two notes: pulling in shared_ptr.hpp imposes a noticeable compile time hit (one of the annoying things about boost).  Usually this is insignificant compared to `cc` startup time (one of the reasons I love it when compilers will take a list of source files and an output directory), but it is worth noting." CreationDate="2010-08-12T13:22:30.827" UserId="1134" />
  <row Id="2481" PostId="2587" Text="And the other note: intrusive reference counting can ameliorate the cache miss issue somewhat, depending on your usage patterns." CreationDate="2010-08-12T13:25:00.990" UserId="1134" />
  <row Id="2482" PostId="2567" Text="It's Actionscript 3.  I'm a Flash developer." CreationDate="2010-08-12T13:29:16.410" UserId="953" />
  <row Id="2483" PostId="2625" Text="Well actually, to be honest I haven't actually tried it on Objective-C. I'm making an educated guess based on the fact that AFAIK Java is the only one where % is not modulo, it's &quot;remainder&quot;. Any other language I've seen handles % like modulo; -1 % 3 should be 2. But in Java, it's 1. I have not literally tested Objective-C but if it behaves like it's supposed to then -1 % 3 is 2 and indeed modulo will work correctly even for negative numbers." CreationDate="2010-08-12T13:45:38.600" UserId="189" />
  <row Id="2484" PostId="2306" Text="Great examples, +1." CreationDate="2010-08-12T14:37:55.370" UserId="1134" />
  <row Id="2485" PostId="2625" Text="No, in C it's (apparently, too lazy to check the standard at this ungodly hour) machine dependant. I just verified on my laptop that -5 % 3 equals -2." CreationDate="2010-08-12T14:41:39.497" UserId="865" />
  <row Id="2486" PostId="1747" Text="Wow this is more complicated than I thought! So yes, basically I am trying to do this http://quitordie.com/goodEllipse.gif (taken from this thread http://www.bigresource.com/Tracker/Track-flash-DO1WzX6KNq/).&#xA;&#xA;If I'm understanding this correctly, it means that I am *not* looking to make the points equidistant by arc length." CreationDate="2010-08-12T14:46:42.777" UserId="66" />
  <row Id="2487" PostId="2457" Text="Im using GetAsyncKeyState for input rather that glut." CreationDate="2010-08-12T14:53:18.330" UserId="1541" />
  <row Id="2488" PostId="2629" Score="1" Text="Bart has a good point. In a pool game you should only apply the force once. Either that or it's stuck with the wall. There are two things I tend to do (if I manage velocities myself on a per frame basis). Convert the velocity to a 'desired velocity'-&gt;calculate the difference betweem the desired velocity and the actual velocity and convert that to a force, Secondly, again if managing velocity myself, upon collision move the object out of the face ever so slightly, to prevent getting stuck. In general though - apply force and let the physics engine handle resulting velocities and collisions." CreationDate="2010-08-12T15:22:06.763" UserId="865" />
  <row Id="2489" PostId="2587" Text="@kevin42: I would say that taking your hardware into reference when designing your software is not premature optimizations. Software development is about data transformation. As soon as your software is platform specific (which it is with c++), you need to take the platform into consideration. Using boost::shared_ptr is a generic solution for generic programming. The decision regarding design here is not about the optimization, it's about the platform. Do you also suggest people to not consider multithreading in their application until they see &gt;16ms(or 33ms) / frame in their main thread?" CreationDate="2010-08-12T15:39:48.190" UserId="1580" />
  <row Id="2490" PostId="2587" Text="@Leander: Yes, intrusive reference counting is much more performant than boost::shared_ptr. " CreationDate="2010-08-12T15:42:33.123" UserId="1580" />
  <row Id="2491" PostId="2641" Text="Great answer, I expected something like this. Do you usually use different data structures for dynamic and static geometry? Is there any ad-hoc procedure to make the two structures &quot;meet&quot; when doing collision detection between static and dynamic objects?" CreationDate="2010-08-12T15:54:25.083" UserId="192" />
  <row Id="2492" PostId="2641" Score="2" Text="Using the same data structure is usually easiest because the implementation is already written, and therefore there is also less of an opportunity for bugs to crop up. Sometimes however bounding sphere checks is enough for dynamic objects compared to the overhead of building an entire tree, especially if the objects are moving a lot. Along those lines, it may be beneficial to write a less aggressive partitioning system for dynamic objects to keep calculation times down and use a more aggressive but calculation intensive algorithm for static objects." CreationDate="2010-08-12T16:02:05.050" UserId="353" />
  <row Id="2493" PostId="2601" Score="1" Text="Target platform really should influence your design. The hardware that transforms your data can sometimes have large influences on your source-code. The PS3-architecture is a concrete example where you really need to take the hardware into designing your resource and memory-management as well as your renderer." CreationDate="2010-08-12T16:38:06.033" UserId="1580" />
  <row Id="2494" PostId="2643" Text="the primary problem I'm having (which I think is a symptom of other things too...) is that collision detection no longer works, since I'm checking to see if the _actual_ position is a collision, rather than the _rendered_ position. I don't want to have to have collision code compensate for the camera offset" CreationDate="2010-08-12T17:16:48.253" UserId="1058" />
  <row Id="2495" PostId="273" Text="@Blair Holloway: &quot;The custom allocators are class-based, not instance-based. Allocators are required to construct and destroy objects as well as allocate them. This forces the mixing of two separate concepts: allocation and construction. These are just some of the issues with stl-allocators, unfortunately.&quot; The EA STL gives out several more valid reasons why the STD allocators are bad. It's not just &quot;wether or not they can be overridden&quot;." CreationDate="2010-08-12T17:20:48.793" UserId="1580" />
  <row Id="2496" PostId="2555" Text="Point taken. I'd be okay with this moved elsewhere / into community wiki (still don't 100% get how that works)." CreationDate="2010-08-12T18:26:23.427" UserId="488" />
  <row Id="2497" PostId="1747" Text="I think you do want to plot the points equidistant by arc length. There is just not a nice formula for the circumference of a ellipse. On the mathoverflow page there is a link to this page http://en.wikipedia.org/wiki/Circumference that gives approximations for the circumference that you should be able to use." CreationDate="2010-08-12T18:40:58.220" UserId="1024" />
  <row Id="2498" PostId="2642" Text="It appears that my problem, as usual was between the chair and the keyboard. The defect was actually in my collision detection - I was culling inactive collisions too aggressively from the collision list. " CreationDate="2010-08-12T18:45:21.470" UserId="1058" />
  <row Id="2499" PostId="2555" Text="I think it's game relevant to an extent as there's a lot more indie teams with profit goals in the long term (but not near short term) in the game dev biz than in most other businesses. It's also one of the few businesses where you can do a lot on your spare time while keeping your job, in a team environment. Lastly, the discrepancy between design and programming, and the impossibility to measure time spent on code (as most happens in your head) makes actual input to the project extremely hard to quantify. I don't think many other industries/garage company startups have to deal with that." CreationDate="2010-08-12T18:48:42.540" UserId="865" />
  <row Id="2500" PostId="405" Text="@Rushyo Great in theory, but I'll believe it when I see it across all browsers." CreationDate="2010-08-12T19:01:30.640" UserId="119" />
  <row Id="2501" PostId="2648" Score="1" Text="If update order is not important splicing should be as simple as  moving the last entity to the current index and decreasing your pool count and iterator index." CreationDate="2010-08-12T19:24:16.733" UserId="865" />
  <row Id="2502" PostId="2576" Text="Not sure, but it would seem to me that such a book is mostly interesting to game designers, the general public (even RPG fans) would mostly see it as a novelty. The book would likely mention what worked in what RPG and for what reason - makes it relevant in my book." CreationDate="2010-08-12T19:30:38.357" UserId="865" />
  <row Id="2503" PostId="1774" Text="I don't think there's a definite answer about the best language." CreationDate="2010-08-12T19:30:49.120" UserId="1658" />
  <row Id="2504" PostId="1747" Text="The real lesson I think is that if you want the mathematics to be simple in general, use polynomials or rational functions. Ellipses seem simple, but have complex properties that make them tricky to calculate with. Polynomials are very well bahaved and approximate curves (like ellipses) very well." CreationDate="2010-08-12T19:37:12.787" UserId="1024" />
  <row Id="2505" PostId="1696" Text="What do you think of FRP?" CreationDate="2010-08-12T19:38:09.680" UserId="1658" />
  <row Id="2506" PostId="2650" Score="1" Text="I assume that you suggest a double-linked list here? (forward/back)? Also: Are you suggesting some sort of pool over the link-elements or are you dynamically allocating each pointer-holder in the linked list?" CreationDate="2010-08-12T19:45:02.957" UserId="1580" />
  <row Id="2507" PostId="1696" Score="1" Text="@Wei Hu: I am a huge fan of the idea of FRP and have researched it fairly extensively myself, including creating a few different semantics and writing a few implementations. The best implementations still have severe semantic and/or implementation bugs. I would say that they are viable for game development, but not with many advantages (yet) over traditional approaches." CreationDate="2010-08-12T19:45:48.350" UserId="182" />
  <row Id="2508" PostId="2625" Text="Can someone post some code please, all these numbers just make me dizzy. I've been developing for almost 3 months so I'm not an expert yet.&#xA;&#xA;I liked the 4 sprites way Kaj talked about, it sounds like the easiest way. Can you show me a code sample for this, I learn faster from looking at code and playing around with it.&#xA;&#xA;I have changed the image size to 512x320px. Can anyone help me out please?&#xA;David" CreationDate="2010-08-12T19:55:00.793" UserId="1310" />
  <row Id="2509" PostId="2622" Text="Python's pickle will save an entire object graph for you as well and is drop-dead easy to use. When it comes time to deserialize you are handed back fully hydrated objects, easy as pie: http://docs.python.org/library/pickle.html" CreationDate="2010-08-12T19:58:28.210" UserId="148" />
  <row Id="2511" PostId="2587" Score="1" Text="@kevin42: You missed my point. If you're working on a large game destined for consoles, you _know from the start_ you need better cache coherency than using shared pointers everywhere allows. (Honestly, in my bad moods I'm of the mind that if someone can't be trusted with bare pointers, they probably can't be trusted with shared_ptrs, and should just use managed environment that actually knows how to manage memory, probably faster than they can.)" CreationDate="2010-08-12T20:08:40.153" UserId="744" />
  <row Id="2512" PostId="2587" Score="1" Text="@Simon: Totally agreed. I just wanted to emphasize that in most modern cases, the problem is cache coherency, not lock contention." CreationDate="2010-08-12T20:09:12.943" UserId="744" />
  <row Id="2513" PostId="2650" Text="Yes, it would have to be a double-linked-list that's best suited for that task. Thanks for pointing that out!&#xA;Regarding re-using of items: I was thinking about a specialised pooling class/datastructure, one that creates new objects on demand or uses existing instances if there are some in the pool. Therefore it would be good to actually remove &quot;dead&quot; items from the list and add them to the pool for later usage." CreationDate="2010-08-12T20:09:20.807" UserId="20" />
  <row Id="2514" PostId="2403" Text="If you asked stackexchange how to import images into C++, I bet you'd get a useful answer :)" CreationDate="2010-08-12T20:11:49.553" UserId="430" />
  <row Id="2515" PostId="2648" Text="Wow, very good point Kaj! :)" CreationDate="2010-08-12T20:23:01.647" UserId="189" />
  <row Id="2516" PostId="2625" Text="See my edited answer. Let me know if it works." CreationDate="2010-08-12T20:27:31.713" UserId="865" />
  <row Id="2517" PostId="2650" Text="A singly linked list will do fine.  Doubly linked lists only give the advantage of iterating in both directions.  To iterate through a singly linked list with option of removing the current item you'll need to keep track of the previous entry." CreationDate="2010-08-12T20:29:01.507" UserId="370" />
  <row Id="2518" PostId="2555" Text="http://answers.onstartups.com/questions/tagged/equity - *five pages* of questions involving **startup equity**, including: founders of different involvement levels, founders with different skillsets, technical versus non-technical skills, equity for cash invested versus time invested, and more... Game-development may be a unique and precious snowflake, but when it comes to *dividing money and equity*, professionals have put an awful lot of time into figuring out how to do it, especially in hard-to-quantify situations (since the easy situations don't need as much work)." CreationDate="2010-08-12T20:52:58.893" UserId="165" />
  <row Id="2519" PostId="2655" Text="Very nice observation! And yes, I'd venture to guess it's indeed an ID with flags encoded." CreationDate="2010-08-12T21:00:14.490" UserId="865" />
  <row Id="2520" PostId="2650" Text="@caspin yes exactly. If you're using a single-linked-list, then you need to keep track of previous nodes and link their `next` pointer to the node after a deleted one. If you don't want the hassle of doing this yourself, a double-linked-list would be the DataStructure of choice." CreationDate="2010-08-12T21:16:29.863" UserId="20" />
  <row Id="2521" PostId="2657" Text="+1. I like this. Although I hardly ever need ordered updates within a pool I'll add it to the bag of things to remember if I run into the situation :o)" CreationDate="2010-08-12T21:21:48.043" UserId="865" />
  <row Id="2522" PostId="2356" Text="I've actually used Google Analytics in the past and I think it's a reasonable tool for the job. I guess there aren't any other tools the people are using to measure things like virility, though." CreationDate="2010-08-12T21:50:20.280" UserId="539" />
  <row Id="2523" PostId="2655" Text="Byte offsets seem unlikely in this case unless it's a 1 gig file, and due to the duplicate nature. IDs + flags would seem more likely imo. But without the complete file there's too little to observe." CreationDate="2010-08-12T22:26:10.410" UserId="865" />
  <row Id="2524" PostId="2577" Text="@ Matthias Have you thought about allowing developers to package the cga shape grammar engine with games?  I say this because it might make an interesting in game level editor/generator even if it is not used in real-time.  Imagine if a game generated cga grammars from player supplied data text, music, images.  The player could traverse a world that mirrored her data.      " CreationDate="2010-08-12T23:05:16.710" UserId="349" />
  <row Id="2525" PostId="2660" Text="That is what i am doing right now ;P i was making some 2d game and finished it but i had lot of logic, work and calculations to do... But while i was for example adding the first player controller or sun light etc it seems so easy and i had not much to do other then setting up the settings hehe. Hmmm the builder is then just like i was wondering it would act like. Thanks a lot for the answer ... +1 you deverse the cookie..." CreationDate="2010-08-12T23:37:53.850" UserId="567" />
  <row Id="2526" PostId="2659" Text="Off question, is unity3d tag symbolic link to unity or so ? i've tried to change it from unity to unity3d afew times but it does not work." CreationDate="2010-08-12T23:40:10.010" UserId="567" />
  <row Id="2527" PostId="2625" Text="Thanks Kaj, but with cocos2d I use CCSprite to add the background do I add it like I normally would do and add this code after the init method? and thats it? No more code for this?&#xA;&#xA;I added the old(not scrolling background) in a CCNode and added it to the GameScene, should I do the same with this now?&#xA;Thanks Kaj&#xA;David" CreationDate="2010-08-12T23:51:30.237" UserId="1310" />
  <row Id="2528" PostId="2625" Text="You'd add 4 sprites instead of the normal 1. This code should be called every update (or whenever worldX or worldY changes). Instead of drawsprite you would set the sprite's coordinates. Cocos2D should pick that up and draw them." CreationDate="2010-08-13T00:12:31.413" UserId="865" />
  <row Id="2529" PostId="2655" Text="I meant it as something like ...&#xA;&#xA;struct entity&#xA;{&#xA;  uint8_t  flags; /* usually 0x30 or 0x31 */&#xA;  uint8_t  padding;&#xA;  uint16_t offset_into_the_file;&#xA;}&#xA;" CreationDate="2010-08-13T00:34:13.647" UserId="1141" />
  <row Id="2530" PostId="2466" Text="@Smothers Titles in the form of a question are still preferred." CreationDate="2010-08-13T01:32:33.037" UserId="14" />
  <row Id="2531" PostId="2659" Text="The official name of the engine is Unity. Unity3D is just their website." CreationDate="2010-08-13T01:34:16.623" UserId="14" />
  <row Id="2532" PostId="2370" Text="@Zorba: Multiplayer." CreationDate="2010-08-13T01:52:26.970" UserId="1004" />
  <row Id="2533" PostId="2402" Score="1" Text="We could answer every question on the site with &quot;just google it&quot;. At that point we may as well just replace the entire site with a redirect to www.google.com. The intent is to make our answers generally more useful than a google search." CreationDate="2010-08-13T02:27:04.607" UserId="323" />
  <row Id="2534" PostId="2402" Text="Also, his grasp of grammar is shaky at best, and that tends to lead to downvotes." CreationDate="2010-08-13T02:27:28.647" UserId="323" />
  <row Id="2535" PostId="273" Text="@Simon - I won't argue that the STL's allocator system is perfect, because it's not. It did take us a long time to find a solution that work. What I'm saying is that in some cases, it *is* possible to get a workable, game-friendly solution using STL and a little work with custom allocators." CreationDate="2010-08-13T02:27:30.130" UserId="211" />
  <row Id="2536" PostId="273" Text="@Simon - To elaborate: while the STL may be cumbersome, it's a very well tested and bug-free piece of code; if you can use it, you'll save man-hours having to debug a custom solution. My present job eschews the STL in favour of home-brewed allocators, and I've had to spend time debugging and refactoring some of that code, because it is not at the same level of maturity as the STL." CreationDate="2010-08-13T02:29:55.257" UserId="211" />
  <row Id="2537" PostId="2638" Text="As a quick note: implementing &quot;save&quot; and &quot;load&quot; functions for each version of the game quickly turns into a maintenance nightmare. I've found a better solution is to embed a version number, write &quot;save/load&quot; functions for the current version of the game, and write a &quot;conversion&quot; function from the most recent non-current version to the current version. Then just keep all your conversion functions around. Trying to load a ten-version-old game would run ten conversion functions in series, then the native &quot;load the current game version&quot; function." CreationDate="2010-08-13T02:40:37.943" UserId="323" />
  <row Id="2538" PostId="2638" Text="Much easier to maintain long-term - keeping a series of &quot;load every previous game file&quot; functions around quickly turns into a polynomial-time operation." CreationDate="2010-08-13T02:41:11.733" UserId="323" />
  <row Id="2539" PostId="2667" Text="I'll do that and get back to you, thanks for the advice!" CreationDate="2010-08-13T02:44:01.027" UserId="1004" />
  <row Id="2540" PostId="2562" Text="Another problem with basing it on &quot;hours&quot; is that you're actually handing out significant monetary bonuses for working slowly and inefficiently. This isn't the sort of behavior you want to reward." CreationDate="2010-08-13T02:46:25.730" UserId="323" />
  <row Id="2541" PostId="2667" Text="By the way, I found this site (but haven't really used it) some time ago; it's an online font creator and might be useful to you in mimicking the font: http://fontstruct.fontshop.com/" CreationDate="2010-08-13T02:46:46.153" UserId="189" />
  <row Id="2542" PostId="1968" Score="1" Text="I hate to respond to myself here, but naturally, two days after I made that post, Chris Hecker put his entire talk up online. http://chrishecker.com/Achievements_Considered_Harmful%3F" CreationDate="2010-08-13T02:49:30.683" UserId="323" />
  <row Id="2543" PostId="738" Text="@NocturnDragon - the question title is a bit misleading.  At first glance I expected the question to be about the choices of API available, and I assume this answerer did as well." CreationDate="2010-08-13T02:52:20.193" UserId="660" />
  <row Id="2544" PostId="2659" Text="i see so unity3d is indeed a symbolic link here that goes back to unity thanks." CreationDate="2010-08-13T04:01:43.793" UserId="567" />
  <row Id="2545" PostId="273" Text="@Blair Holloway: On most of the platforms you are indeed correct. However, STL's different things are general solutions  general cases. Never should you have to implement something as complex as what they have done, if you are doing it for your own software. Solve the problem. Don't force a solution onto the problem. " CreationDate="2010-08-13T05:43:53.440" UserId="1580" />
  <row Id="2546" PostId="343" Score="1" Text="@Ed Ropple: I think that the issue is not that STL doesn't fit a given problem, the issue is that it fits too many problems which makes the code in it too complex. It is scary how people over-use STL and I think that is one of the cause why so many (including myself) refrain from using it at all. Like one example I saw not long ago where the question was how to get the largest out of 3 numbers, one of the answers was pushing them into an std::vector and then std:sort it. That's definetly forcing a solution that's unneccessary onto a very simple problem." CreationDate="2010-08-13T05:48:10.500" UserId="1580" />
  <row Id="2547" PostId="2629" Text="I think that would boil down to: *Use the force wisely, young Padawan*. (Sorry, couldn't resist)" CreationDate="2010-08-13T06:24:01.503" UserId="20" />
  <row Id="2548" PostId="2647" Text="A Vector's length is not fixed, but it is typed, and that makes it superior over Array. The drawback is there's no quick syntax to define a pre-filled list, but you don't need that I think." CreationDate="2010-08-13T08:51:28.277" UserId="769" />
  <row Id="2549" PostId="1916" Text="Half a million simultaneous players? Sounds like the Google App Engine comment is worth some additional thought. That will be able to scale from prototype to full-on deployment with nothing but a larger bill." CreationDate="2010-08-13T10:31:11.927" UserId="678" />
  <row Id="2550" PostId="449" Score="1" Text="No clue. People are strange." CreationDate="2010-08-13T11:20:51.140" UserId="10" />
  <row Id="2551" PostId="2638" Text="In games I've worked on it's not that complex -- rather than keeping multiple copies of the load/save methods the one single method uses the version number to determine which bytes to read and write. This is made even easier if you don't just write structures, but implement loading and saving as operations at the primitive data type level (e.g. ReadByte/ReadFload/etc). Then if you add a new member you can do something like if(version&gt;10) { someNewByte = ReadByte(); } Implementing it this way makes supporting different endian platforms easier as well." CreationDate="2010-08-13T11:49:57.593" UserId="204" />
  <row Id="2552" PostId="2680" Text="Hehe. I changed from working towards the goal of being a video game artist to video game programmer at age 19.  I still have some art skillz though. You think an artistic programmer can be as useful as a programming artist?" CreationDate="2010-08-13T12:17:06.230" UserId="1352" />
  <row Id="2553" PostId="2680" Text="Probably. Depends on the art skills I suppose, there's a whole spectrum between &quot;has-trouble-drawing-stick-men&quot; (like me), through &quot;can-make-something-that-doesn't-offend-the-eyes&quot; to &quot;wow-that's pretty&quot;. Generally you'd have to be at the top end to be a professional artist, and while a technical artist could get away with being lower down the scale, it wouldn't be by much. If your skills are more programmery than arty, then shader programmer is probably a better bet." CreationDate="2010-08-13T12:51:36.783" UserId="741" />
  <row Id="2554" PostId="2680" Score="7" Text="Don't forget that you should enjoy working as well - if shader programming isn't your thing you'll most likely get miserable after a while. Money isn't everything!" CreationDate="2010-08-13T13:50:52.330" UserId="1199" />
  <row Id="2555" PostId="2402" Text="@ZorbaTHut  - i'm sorry, i'm not native speaker. And for non concrete question? RTS is pretty large scale. " CreationDate="2010-08-13T14:05:49.283" UserId="1456" />
  <row Id="2556" PostId="2626" Text="Way of the Samurai? no I'll have to check them out." CreationDate="2010-08-13T14:24:02.467" UserId="1477" />
  <row Id="2557" PostId="2618" Text="what did you do for the rest of the game if you ruined the story?" CreationDate="2010-08-13T14:26:42.073" UserId="1477" />
  <row Id="2559" PostId="2685" Score="6" Text="In addition I hear CEO and CTO are great positions, but also hard to get." CreationDate="2010-08-13T15:28:31.210" UserId="744" />
  <row Id="2560" PostId="2685" Text="@Joe Wreschnig: Indeed. The CTO is sometimes the position I'm trying to point out - not always or neccessary though." CreationDate="2010-08-13T16:33:32.867" UserId="1580" />
  <row Id="2561" PostId="2679" Score="2" Text="....hard to get when looking for a job, or hard to fill when you're a company?" CreationDate="2010-08-13T17:12:14.683" UserId="865" />
  <row Id="2562" PostId="2681" Text="+1 @Erlend: Nice commentary and source of information." CreationDate="2010-08-13T17:12:45.980" UserId="191" />
  <row Id="2563" PostId="45" Text="Is this a Pro-only feature? I don't see that menu item in the free/indie Windows version of Unity 2.6." CreationDate="2010-08-13T17:13:41.483" UserId="1317" />
  <row Id="2564" PostId="2695" Text="Flash for the UI! Really?  How does that work?" CreationDate="2010-08-13T17:32:13.140" UserId="370" />
  <row Id="2565" PostId="2695" Text="Look up ScaleForm.  That's what a lot of AAA games use.  If you need something cheaper look at this thread: http://gamedev.stackexchange.com/questions/1707/is-gameswf-usable" CreationDate="2010-08-13T17:34:27.487" UserId="51" />
  <row Id="2566" PostId="2306" Text="Those don't need transactional semantics if you're fine dealing with users who lose their quest progress if the server happens to go down. In the case of XP rewards, that can mean losing a level, and when a game crashes and you lose a level, the next step is usually to stop playing." CreationDate="2010-08-13T18:09:59.823" UserId="744" />
  <row Id="2567" PostId="2696" Score="1" Text="ClanLib has a nice example of this alpha cutting technique (hulling a sprite to a polygon to use for collision)." CreationDate="2010-08-13T18:10:39.493" UserId="395" />
  <row Id="2568" PostId="2306" Score="2" Text="XP very much needs to be transacted. One of the specific exploits that lead to the creation of the CrypticDB in the first place (trust me, I wrote it) involved XP gain on multiple servers at once and a failed syncing that was user interruptible. Anything that is critical to the progression of a character really needs to be transacted, otherwise players will find some way to exploit." CreationDate="2010-08-13T18:54:32.353" UserId="162" />
  <row Id="2569" PostId="2702" Text="Thanks for the update!" CreationDate="2010-08-13T19:15:08.967" UserId="865" />
  <row Id="2570" PostId="2673" Text="While I don't directly see anything wrong with this question, I think it would benefit from being made Community Wiki. For example:  http://gamedev.stackexchange.com/questions/480/version-control-for-game-development-issues-and-solutions" CreationDate="2010-08-13T19:15:10.463" UserId="14" />
  <row Id="2571" PostId="2700" Score="1" Text="What platform?  PC?  Mac?  Linux?  Console/handheld?  If PC/Mac/Linux, what make of processor on your dev box (helps for specific suggestion)?  Also, what programming languages (aside from lua) and compilers?" CreationDate="2010-08-13T19:39:11.343" UserId="1134" />
  <row Id="2572" PostId="2700" Text="Are you asking for home-brew profilers or just any profile-tool?" CreationDate="2010-08-13T19:59:15.930" UserId="1580" />
  <row Id="2573" PostId="2700" Text="Profiling a debug build would be a fairly pointless exercise anyhow - regardless of size. " CreationDate="2010-08-13T20:00:00.153" UserId="865" />
  <row Id="2574" PostId="2700" Text="@Kaj: hehe, except when your debug build gets too slow to be reasonably usable =)  I've been threatening to get out the tools for our platformer engine's debug build, which has over the last few months picked up an abysmal slowdown in debug... such that even coders aren't running in debug anymore with the extra asserts, memory fencing, and the like, which is leaving us open to a lot more bugs than usual." CreationDate="2010-08-13T20:09:38.900" UserId="1134" />
  <row Id="2575" PostId="2707" Text="+1.  This is a great idea.  We used this approach (separate layer, possibly exported to a separate image) to encode terrain height in a fixed-perspective isometric game, matching up the in-engine conception of the height with the visuals.  It's not necessarily the smallest solution if you don't bake it down (which you recommend anyway), but great for when you need per-pixel accuracy for metadata." CreationDate="2010-08-13T20:28:45.997" UserId="1134" />
  <row Id="2576" PostId="2704" Text="While I appreciate the accepted answer, wait a bit: you're likely to get even better stuff within the next day or so...  =)  See for example jpaver's answer, which would let you do all of this without a hand-rolled frontend tool, just a data baking tool." CreationDate="2010-08-13T20:32:01.933" UserId="1134" />
  <row Id="2577" PostId="2707" Text="Thanks. The technique can also work well for placing the sprite centre points, attachment points eg. for attaching a helmet to a head, or a gun to a hand, bullet exit points etc." CreationDate="2010-08-13T20:34:47.107" UserId="1232" />
  <row Id="2578" PostId="279" Text="@BananaRaffle I am not generally pro or against STL. I just don't find myself using it apart from vector and string here and there. You've used STL for a commercial DS game? How did that work out, which one?" CreationDate="2010-08-13T20:43:56.587" UserId="19" />
  <row Id="2579" PostId="2707" Text="Wow, I'd never thought of using a .xcf file directly either. Is there code out in the wild to literally display an .xcf directly? Or do you use it only to extract the layer from it?" CreationDate="2010-08-13T20:44:47.253" UserId="1467" />
  <row Id="2580" PostId="2700" Text="Make different flags for disabling different debug levels/features? " CreationDate="2010-08-13T20:46:47.827" UserId="865" />
  <row Id="2581" PostId="2673" Text="I made it CW. However, I think the guidelines on when to make a question CW seem a bit unclear to me as a newcomer, especially since this is debated in general (http://meta.stackoverflow.com/questions/55888). Maybe we could explicitly state the gamedev policy concerning this in the FAQ?" CreationDate="2010-08-13T21:10:03.747" UserId="1495" />
  <row Id="2582" PostId="2700" Text="@Kaj: yeah, already done to some extent.  There's something in the core object system that's gained some weight recently which is affecting all debug levels. =(  Hence the &quot;it'll be easier to just profile it when it gets too annoying&quot;..." CreationDate="2010-08-13T21:11:19.407" UserId="1134" />
  <row Id="2583" PostId="405" Text="@Iain It's already implemented in all major browsers except IE (obviously). Check out the latest trunk releases." CreationDate="2010-08-13T21:52:28.903" UserId="1628" />
  <row Id="2584" PostId="2707" Text="Sadly, none that I know of. GIMP is open source http://www.gimp.org/source/#source so surely you can extract the relevant portions from there. More on the format here: http://en.wikipedia.org/wiki/XCF_(file_format)" CreationDate="2010-08-13T22:03:02.363" UserId="1232" />
  <row Id="2585" PostId="1888" Text="Doesn't look like it supports sockets though, only HTTP" CreationDate="2010-08-13T22:27:23.573" UserId="769" />
  <row Id="2586" PostId="2564" Text="I guess you could always trial-and-error through your 3d modeler's importer to see if it loads via a certain importer." CreationDate="2010-08-13T22:35:29.637" UserId="656" />
  <row Id="2587" PostId="2419" Text="@The Communist Duck - All these examples come from RenderMonkey, so you can see how they're done. The &quot;base&quot; is typically a noise image (the first three use a volumetric noise while the fourth is a fluid dynamics simulation that spawns fluid on the velocity and density textures where the user clicks and simulates (across 23 passes...) from there. It's also possible to go completely procedural (ie a pattern), but the GPU is limited in it's generation of random numbers, so noise images generated offline are typically better." CreationDate="2010-08-13T22:37:11.567" UserId="1553" />
  <row Id="2588" PostId="947" Text="It is mostly a labour of love as you can't really plan for success. For every indie success story there's thousands of people with 1 or 2 sales. Apart from that, the internet is filled with indie success stories, an afternoon of googling should give you more info than this page will give you." CreationDate="2010-08-13T22:40:52.640" UserId="865" />
  <row Id="2589" PostId="1436" Text="What he said. Also, it's often convenient to have an x/y offset for each frame in an animation so that you can pack the sprite images into their bounding boxes tightly but then place them where you want in an animation. It also lets you do some basic stuff like jiggling by just using a single image." CreationDate="2010-08-13T23:02:00.583" UserId="160" />
  <row Id="2590" PostId="2698" Text="Indeed, the moment I found out I had to support Japanese and Korean I switched to static bitmaps for a project." CreationDate="2010-08-13T23:10:28.150" UserId="865" />
  <row Id="2591" PostId="2722" Text="Re 2) Of course, at export you'd have to reverse code this (ie per row, what spawn points should become active, as with this system you need to be aware of some spawn points before they become visible. A detail though, this is indeed the most logical way." CreationDate="2010-08-13T23:44:30.997" UserId="865" />
  <row Id="2592" PostId="2723" Score="1" Text="The topic is a bit broad to answer simply. The fact that there is no clear solution (although the Wiki points to one) is because it's an unsolved area. Whether you like it or not, you can't properly solve this problem without *research*. To me the wiki seems the best place to start, so better than no answer? You yourself tell him to TRY, I don't see what better place to start than a Wiki dealing with the topic. Trying to understand existing code and modifying it to suit your needs is generally harder than understanding the concepts and implementing it yourself. To each their own, but TANSTAFL." CreationDate="2010-08-13T23:58:33.293" UserId="865" />
  <row Id="2593" PostId="2723" Text="By the way, for what it's worth, your answer had NO info in it, making it less useful than mine, I at least pointed to the one resource that specializes in the subject of procedural content generation (and links to an article about roguelike dungeons and many more articles to ignite the spark. How is that worse than no answer...should I have copied the wiki verbatim? Have coded it for him?)." CreationDate="2010-08-14T00:02:08.560" UserId="865" />
  <row Id="2594" PostId="2345" Text="I think the OP is looking for a site where people share XAML they wrote for a particular purpose and you can search for/use that XAML" CreationDate="2010-08-14T00:36:53.857" UserId="1553" />
  <row Id="2595" PostId="2722" Text="As a note, make sure you're using an editor that lets you easily shift nodes in bulk. When setting up your shmup level you'll be inserting and removing enemies, and constantly tweaking timings in the middle of your level, and having to shift all your entities one at a time will kill you." CreationDate="2010-08-14T00:42:32.050" UserId="323" />
  <row Id="2596" PostId="2723" Text="Oh and lastly, he asked for resources. If a wiki that deals specifically with the requested topic isn't a resource I honestly don't know what is." CreationDate="2010-08-14T00:51:33.780" UserId="865" />
  <row Id="2597" PostId="2680" Score="2" Text="@Zolomon - Doubly true in the game development world, since if you're good enough to be a game developer, you could probably make twice as much with half the stress being a web developer or something." CreationDate="2010-08-14T00:53:48.267" UserId="1553" />
  <row Id="2598" PostId="1576" Score="2" Text="@Gabriel, why's it a brutal license? The game is still commercial, introversion just happen to be being rather nice and allowing people access - they can't afford to lose sales by letting people give out the compiled source willy nilly." CreationDate="2010-08-14T00:58:06.950" UserId="1687" />
  <row Id="2599" PostId="279" Score="3" Text="It works as good on the DS as it does on any other platform I've used it on.  I used STL all over the UI and AI code.  The game was http://ds.ign.com/articles/832/832147p1.html.  I was working at a small studio that was part of Amaze, which was part of Foundation 9." CreationDate="2010-08-14T01:07:59.130" UserId="430" />
  <row Id="2600" PostId="2281" Text="If it is popular enough Google will autocomplete it for you anyway." CreationDate="2010-08-14T01:43:19.233" UserId="1163" />
  <row Id="2601" PostId="1598" Text="Doesn't this still create spinouts? If timestep is big you need more integration steps in your physics engine causing it to take longer, causing your next time step to be longer? While it makes up for a draw call taking longer it doesn't solve the other problem, a sim step being too expensive." CreationDate="2010-08-14T04:09:57.993" UserId="865" />
  <row Id="2602" PostId="1619" Text="regarding option 2: I am not sure a raycast can ever be faster than pythagoras distance checks, except if you are very brute force in your application of pythagoras, but a raycast will also be very expensive if you don't add a broadphase." CreationDate="2010-08-14T04:13:18.913" UserId="865" />
  <row Id="2603" PostId="2722" Text="I love this idea as it'll really make the editing a whole lot easier, which is always a plus" CreationDate="2010-08-14T04:22:32.790" UserId="309" />
  <row Id="2604" PostId="1673" Score="1" Text="Maybe with WebGL there will be" CreationDate="2010-08-14T05:29:32.290" UserId="1024" />
  <row Id="2605" PostId="2690" Score="2" Text="I do agree with you, but IMO the differences between a const pointer vs a pointer to const are subtle but very learnable by a good developer.  Finding the developer who can learn but doesn't know yet is hard..." CreationDate="2010-08-14T05:29:58.373" UserId="228" />
  <row Id="2606" PostId="1595" Text="I don't think slowdown in a game *as a result of fixed timestep* can ever be intentional, because it's because of lack of control. Lack of control is by definition surrendering to chance and thus can't be intentional. It can happen to be what you had in mind, but that's as far as I'd like to go on that. As for fixed timestep in networking, there's a definite plus there, as keeping physics engines on two different machines in synch without the same timestep is pretty impossible. Since the only option to synch then would be to send all entity transforms, that would be way too bandwidth heavy." CreationDate="2010-08-14T05:36:20.110" UserId="865" />
  <row Id="2607" PostId="2629" Text="well..i figured it out..thankyou..the problem was i dint call WakeUp function with the setlinear velocity" CreationDate="2010-08-14T05:36:57.957" UserId="1251" />
  <row Id="2608" PostId="2629" Text="Kinda strange, if you set allowSleep to false you'd expect it would never go to sleep, so you shouldn't have to wake it up? Must be a Box2D thing." CreationDate="2010-08-14T06:24:32.733" UserId="865" />
  <row Id="2609" PostId="1933" Text="I think easing would still make it too smooth. The perlin noise seem like a good idea, or otherwise a plain random with the random range diminishing to zero over time to make it fade out (I would rather experiment with different ease functions on the diminishing radius than on the actual movement, easing the movement itself will make the camera feel like it's on a spring, doesn't feel right with camera shake in my experience)." CreationDate="2010-08-14T06:48:32.200" UserId="865" />
  <row Id="2610" PostId="1828" Text="The biggest problem I face when implementing a camera shake is that it seems the player character (which the camera focuses on) moves instead of the camera. The odd thing is that it is the camera that moves, if you look at the surroundings you notice, but since you're so focused on the player character your perception gets screwed. I am still trying to solve this - probably by changing the field of view when the camera moves away/towards the player." CreationDate="2010-08-14T06:50:58.310" UserId="865" />
  <row Id="2611" PostId="2717" Text="I mentioned cross platform as I program on a Linux machine.  I do dual boot Windows7 so I can play games, but I generally don't develop there." CreationDate="2010-08-14T07:04:49.717" UserId="370" />
  <row Id="2612" PostId="2720" Score="1" Text="AFAIK FontForge can create Bitmap-Fonts, but these are fundamentally different from what the OP needs. A Bitmap-Font is like a font file but contains bitmaps (preferably in various sizes) for each character. He needs a font to be rendered to a texture, so the result won't be a bitmap-font but an image." CreationDate="2010-08-14T08:02:52.383" UserId="20" />
  <row Id="2613" PostId="2718" Score="1" Text="FreeType is more of a &quot;font-rasterization-library&quot;. It isn't exactly an application that creates textures (with power of 2) from fonts. FreeType would be a good choice if you decided to write such a tool yourself though." CreationDate="2010-08-14T08:14:47.193" UserId="20" />
  <row Id="2614" PostId="2711" Text="I totally disagree. We used Valve's font stuff for our UI, and it was an enormous memory savings compared to caching bitmaps for each character + outlined character + bold character at 3 font sizes, and it makes text scaling in flashy UIs much cheaper / nicer." CreationDate="2010-08-14T10:22:19.433" UserId="744" />
  <row Id="2615" PostId="2734" Score="2" Text="This should be phrased much better. At the very least capitalize your sentences and use some punctuation." CreationDate="2010-08-14T11:02:01.133" UserId="353" />
  <row Id="2616" PostId="2701" Text="+1 for explaining what you ended up doing, although I'd be curious to hear more details on your tests.  =)" CreationDate="2010-08-14T11:42:08.090" UserId="1134" />
  <row Id="2617" PostId="2639" Text="If you are ok with windows specific code, this would work fine i guess" CreationDate="2010-08-14T13:11:21.047" UserId="1697" />
  <row Id="2618" PostId="2641" Score="2" Text="I found grids work particularly well for dynamic objects. They are simple and fast." CreationDate="2010-08-14T13:40:48.810" UserId="1697" />
  <row Id="2619" PostId="2749" Text="The game supports any resolution, but I would like provide a list of resolutions that the player could choose between." CreationDate="2010-08-14T13:48:42.393" UserId="1550" />
  <row Id="2620" PostId="2750" Text="thanks, but this is not exactly what I am looking for. I want all the resolutions I should support." CreationDate="2010-08-14T14:02:23.640" UserId="1550" />
  <row Id="2623" PostId="2750" Text="thanks a lot ;)" CreationDate="2010-08-14T14:15:57.430" UserId="1550" />
  <row Id="2624" PostId="2752" Text="I'd suggest adding a 'rendering' tag, as you are purely interested in graphics LOD, whereas LOD can also be applied to physics, AI and any other area where importance can be scaled down based on distance to something or performance." CreationDate="2010-08-14T15:05:48.747" UserId="865" />
  <row Id="2625" PostId="2752" Text="@Kaj: Good point. I'm talking about polygonal mesh simplification in particular." CreationDate="2010-08-14T15:09:54.383" UserId="18" />
  <row Id="2626" PostId="2752" Text="Oh, seems we edited at the same time (I forgot I could add tags, feel free to remove graphics-programming :o\ ). I'll try to come up with an answer later on - am in crunch today." CreationDate="2010-08-14T15:11:15.520" UserId="865" />
  <row Id="2627" PostId="2736" Text="Both answers so far mentioned Java so I'll comment here: should you choose to use Java, you can often compile on one platform, and use the resulting JAR file on any platform (there are occasional problems, and you should always test). It does have OpenGL bindings already, JOGL and LWJGL are the two most widely used. In addition, with the use of Java applets, your game can even easily run in a browser! This is my favorite and most appealing thing about Java; RuneScape is the most popular example of a Java applet which uses OpenGL (or DirectX!) to great effect." CreationDate="2010-08-14T15:16:02.370" UserId="189" />
  <row Id="2628" PostId="2746" Text="This looks promising.  However, it's not free for comemrcial use.  A commercial version is can be had for 20-30 bucks." CreationDate="2010-08-14T15:50:42.560" UserId="370" />
  <row Id="2629" PostId="2754" Text="Sorry, but Mono is .NET and not Windows specific.  From their front page:&#xA;&#xA;Mono is an open source implementation of Microsoft's .NET Framework based on the ECMA standards for C# and the Common Language Runtime.&#xA;&#xA;http://www.mono-project.com/Main_Page" CreationDate="2010-08-14T17:54:54.320" UserId="290" />
  <row Id="2630" PostId="2754" Text="That's great, but it's not saying it implements the full .NET framework, and if it is saying that, it is simply wrong. Check their roadmap: http://mono-project.com/Compatibility clearly certain features are not supported. I also advise you to check the wikipedia entry at http://en.wikipedia.org/wiki/.net_framework&#xA;" CreationDate="2010-08-14T18:39:29.193" UserId="865" />
  <row Id="2631" PostId="2605" Score="1" Text="When you talk to him, you might also mention that the personal page pointed to in his bio (rmichaelyoung.com) doesn't exist anymore either." CreationDate="2010-08-14T18:52:24.347" UserId="290" />
  <row Id="2632" PostId="2754" Score="2" Text=".NET is not the same as the .NET Framework.  If you will edit your answer above to match the title of the Wikipedia entry you reference, and state that the full .NET Framework is not supported except on Windows, then I will gladly agree with you because you are correct.  &#xA;But &quot;.NET is Windows specific.&quot; is incorrect." CreationDate="2010-08-14T19:00:57.400" UserId="290" />
  <row Id="2633" PostId="2731" Score="1" Text="+1. I see what you're getting at, and I agree with you to a point, but is it important that every programmer have written their own hash map? Or is it more important that they understand how a hash map works and when to use it. To me, the latter is more important--perhaps because I come from the &quot;programmer-time-is-expensive-dont-reinvent-the-wheel&quot; business world." CreationDate="2010-08-14T19:01:42.517" UserId="327" />
  <row Id="2634" PostId="2731" Text="Fair point. Although a good drilling in vector math will prove useful more often than understanding the internals of a hashmap (in my opinion, although I prefer to know both). I'm a hack of a programmer, but the fact that I wrote this and similar code from scratch hundreds of times by now has firmly ingrained it in my system. But I see your point and I guess it kinda depends on where you come from. Realize though that the industry is hearing voices that there's a lack of generalists with deep knowledge - and don't forget we're not reinventing the wheel, we're trying to create a better one" CreationDate="2010-08-14T19:07:29.480" UserId="865" />
  <row Id="2635" PostId="2754" Text="Fair enough. My post does say &quot;.Net framework is never fully ported&quot;, but I indeed use the terms interchangeably (then again so does Mono in the line you quoted!)." CreationDate="2010-08-14T19:17:25.120" UserId="865" />
  <row Id="2636" PostId="1632" Text="+1 on the Graph API, but that is related to the environment your game will live in more than the game itself." CreationDate="2010-08-14T20:19:30.760" UserId="290" />
  <row Id="2637" PostId="2342" Text="+1 for a blast from the past.  I remember looking at those tutorials back in the late 90s.  Great link!" CreationDate="2010-08-14T20:25:12.603" UserId="290" />
  <row Id="2638" PostId="2690" Score="1" Text="Good point nicely put, Rick.  Unfortunately a lot of devs spend too much time crunching for deadlines to spare any for mentoring.  We can definitely do better." CreationDate="2010-08-14T21:00:23.453" UserId="259" />
  <row Id="2639" PostId="2767" Text="Very close to my mantra." CreationDate="2010-08-14T21:49:13.973" UserId="10" />
  <row Id="2640" PostId="2765" Score="2" Text="Java programmers not knowing how to use Exceptions?  Java is based around exception handling.  Even the most basic of Java programmers understand the Try, Catch, Finally blocks.  You really can't program in Java without either throwing Exceptions or handling them." CreationDate="2010-08-14T22:33:57.183" UserId="891" />
  <row Id="2641" PostId="2767" Text="+1 It's all about the size of your game." CreationDate="2010-08-14T22:55:32.307" UserId="1024" />
  <row Id="2642" PostId="2765" Score="4" Text="Its more then just stack unwinding. Exceptions add overhead to every function call. http://www.codeproject.com/KB/cpp/exceptionhandler.aspx" CreationDate="2010-08-14T23:09:44.607" UserId="1024" />
  <row Id="2643" PostId="1436" Text="Yes, I completely agree. In fact, the animation system I'm using allows for this. It makes it much easier to change the position of any frame without going in a editing the image data." CreationDate="2010-08-14T23:10:37.493" UserId="974" />
  <row Id="2644" PostId="2771" Text="I'm mooking more for some kind of genetic evolution." CreationDate="2010-08-15T01:19:32.423" UserId="1708" />
  <row Id="2645" PostId="2770" Score="1" Text="Never seen it (or not that I was aware of). It seems that it would take long to get a decent opponent modeled after the player though, and once the player mastered the evolved enemy the DNA is too specific to create a new challenge (as the weak genes have been evolved away). So you'd have to introduce mutation to reintroduce some old genes periodically I guess. Cool idea though" CreationDate="2010-08-15T01:29:16.177" UserId="865" />
  <row Id="2646" PostId="873" Text="No Linux though." CreationDate="2010-08-15T01:31:50.380" UserId="865" />
  <row Id="2647" PostId="2773" Score="1" Text="I think Messiah used progressive meshing extensively, it seems aeons ago the world was abuzz about it. But I agree, static lod still seems to be prevalent where I look. It's hard to algorithmically decide what detail is critical to preserve, although many a SigGraph paper has been written about it as I'm sure OP knows. As an aside, a cute method I always remembered was the 'true imposter' chapter in one of the Game Programming gems I believe...where they use imposters with parralax occlusion mapping. I know I've seen more papers written along the same methodology (Fabio Policarpo perhaps?)" CreationDate="2010-08-15T01:59:08.787" UserId="865" />
  <row Id="2648" PostId="2771" Text="Maybe something like Diablo 2's randomized enemies?" CreationDate="2010-08-15T02:33:53.990" UserId="395" />
  <row Id="2649" PostId="2774" Text="Which console is it not supported on?" CreationDate="2010-08-15T02:59:22.577" UserId="891" />
  <row Id="2650" PostId="2770" Text="This might be better asked on the gaming stack exchange site: http://gaming.stackexchange.com/" CreationDate="2010-08-15T03:25:57.007" UserId="51" />
  <row Id="2651" PostId="2774" Text="I'm trying to be coy because of NDAs, even though it's been revealed more specifically on SO before." CreationDate="2010-08-15T04:41:14.813" UserId="1443" />
  <row Id="2652" PostId="2700" Text="Are your threads running on seperate cores? Just asking because that would make the profiling a lot easier. Also, if they're running on the same core you might consider what you gain by having the code running in threads. I'd definitely try to profile my code with as little threading as possible so I know what is taking how much time without the added overhead of threading." CreationDate="2010-08-15T06:12:45.190" UserId="865" />
  <row Id="2653" PostId="2747" Text="Totally forgot about the demoscene. The 18-bit color one, in particular, might make a sweet image processing effect. I also totally forgot about fractals -- I've seen an HLSL mandlebrot; I wonder what others could be made into shaders." CreationDate="2010-08-15T08:10:48.527" UserId="1553" />
  <row Id="2654" PostId="2759" Score="1" Text="Sweet... bacon... Jesus that's awesome." CreationDate="2010-08-15T08:11:41.707" UserId="1553" />
  <row Id="2655" PostId="2744" Score="1" Text="Heh, totem destroyer is fun!" CreationDate="2010-08-15T09:19:08.650" UserId="678" />
  <row Id="2656" PostId="2765" Text="@David Young I'm talking more about the strong/weak guarentees, and the more complex side of using exceptions, that university graduates may not be experienced in.  To compound that, many universities are much more interested in how you structure your OOP so put less emphasis on learning how to use Java exceptions properly.  But you're right I wasn't clear." CreationDate="2010-08-15T09:55:26.597" UserId="259" />
  <row Id="2657" PostId="2765" Text="Also, maybe &quot;afraid&quot; is the wrong word. :)" CreationDate="2010-08-15T09:57:01.290" UserId="259" />
  <row Id="2658" PostId="2777" Score="1" Text="You're right, but unfortunately rather than use alternative error-handling, most games programmers just revert to crashing or returning NULL (which will probably lead to a crash anyway).  We've not come up with any decent replacement." CreationDate="2010-08-15T09:58:01.883" UserId="259" />
  <row Id="2659" PostId="2708" Text="Just create ONE successful game, improve and extend it in the next two versions and then, bring out a new version every year, that is just a assembly of the features of the first three ones." CreationDate="2010-08-15T10:12:21.423" UserId="202" />
  <row Id="2660" PostId="2779" Score="1" Text="You would probably be better off asking this at http://math.stackexchange.com?" CreationDate="2010-08-15T10:59:46.010" UserId="20" />
  <row Id="2661" PostId="2779" Text="I thought about that, but I'm mostly concerned with how to do it algorithmically. A pure maths solution would help but not be the answer." CreationDate="2010-08-15T11:05:13.020" UserId="465" />
  <row Id="2662" PostId="2784" Text="PS: the anti-aliased terrain looks lovely!" CreationDate="2010-08-15T11:18:46.907" UserId="678" />
  <row Id="2663" PostId="2777" Text="Returning NULL, or an error code, is a perfectly reasonable replacement so long as you check the return codes too." CreationDate="2010-08-15T11:56:52.123" UserId="1091" />
  <row Id="2664" PostId="2784" Text="Yeah, that looks like a classic &quot;didn't clear the buffer&quot; issue." CreationDate="2010-08-15T11:58:04.617" UserId="1091" />
  <row Id="2665" PostId="2784" Text="Fixed it! I was clearing the buffer too early it seems. I had figured that was the issue initially but after trying a few combinations it wasn't helping and I, mistakenly, moved on.&#xA;&#xA;@Ranieri Thanks :) I've got a version with a higher LOD: http://www.facebook.com/photo.php?pid=14023991&amp;l=68bc941e7d&amp;id=592045104&#xA;&#xA;Still plenty of work to go..." CreationDate="2010-08-15T12:35:57.600" UserId="1628" />
  <row Id="2666" PostId="2784" Text="(Only started playing with OpenGL this week)" CreationDate="2010-08-15T12:36:54.353" UserId="1628" />
  <row Id="2667" PostId="2784" Text="Hmmm.. spoke too soon. That killed the AA... Ah well. I'll have a poke around. Least I'm sure of where to look now. Thanks!" CreationDate="2010-08-15T12:40:27.417" UserId="1628" />
  <row Id="2668" PostId="2777" Text="Yeah but most games programmers don't.  Which is my point." CreationDate="2010-08-15T13:02:48.923" UserId="259" />
  <row Id="2669" PostId="728" Text="Well, it was intended to be 1 or 2. =)" CreationDate="2010-08-15T13:12:10.337" UserId="73" />
  <row Id="2670" PostId="2784" Text="Fixed. No, really this time &gt;.&gt;" CreationDate="2010-08-15T13:12:15.967" UserId="1628" />
  <row Id="2671" PostId="2779" Text="Then maybe try http://www.stackoverflow.com? It looks like a generic programming problem, I don't see the word &quot;game&quot; in your post anywhere (not that it's a requirement but that's a pretty good sign that you might want to look elsewhere)" CreationDate="2010-08-15T15:41:21.983" UserId="189" />
  <row Id="2672" PostId="2765" Score="2" Text="I would say they're often the opposite of &quot;afraid&quot; - if you don't have a strict &quot;no exceptions, no exceptions&quot; rule, most recent Java graduates will end up throwing exceptions more often than returning, just like novice C programmers use goto and break rather than write good loop invariants." CreationDate="2010-08-15T15:49:35.773" UserId="744" />
  <row Id="2673" PostId="2793" Text="Nice answer and interesting link. Didn't know about that. Thanks." CreationDate="2010-08-15T15:55:21.013" UserId="20" />
  <row Id="2674" PostId="2793" Score="1" Text="The question is entirely aimed at game development, as a programmer. I am a programmer with projectX, there must be people who would want to help with this project right? &#xA;&#xA;So step 1) Make some docs and such&#xA;step 2) Make a sourceforge/google code project&#xA;step 3) Where do i find others interested? &#xA;&#xA;See, Your answer is good but unrelated (and ill clear that up in my question perhaps :) )&#xA;&#xA;I am not looking for a programmer to do stuff for me, i am looking for a team." CreationDate="2010-08-15T16:06:08.637" UserId="1716" />
  <row Id="2675" PostId="2779" Text="I need help with some terms, like no divible slice, zero solution space, normalized probility density." CreationDate="2010-08-15T16:20:03.460" UserId="1024" />
  <row Id="2676" PostId="2777" Text="Then they wouldn't last very long where I work, code reviews would become quite embarassing." CreationDate="2010-08-15T16:43:29.473" UserId="865" />
  <row Id="2677" PostId="2705" Text="I use the timer approach a lot (prefer it over a regular profiler to get an overall feel). It is less useful if you can't isolate your threads (on a single core) though as you can't truly know what you are timing." CreationDate="2010-08-15T16:47:11.920" UserId="865" />
  <row Id="2678" PostId="2769" Text="As of yet I'd consider it more of a showcase technology than practical as you're really be excluding a huge lot of target audience. But yes, procedurals might be the way forward in some shape or form just not sure it's MS's current implementation. Time will tell." CreationDate="2010-08-15T16:57:07.193" UserId="865" />
  <row Id="2680" PostId="2797" Score="1" Text="You might want to reconsider your choice of grey-on-grey for your blog. The code comments are unreadable and with subpixel hinting on a 1024x768 screen the code itself is also almost unreadable." CreationDate="2010-08-15T17:10:08.313" UserId="744" />
  <row Id="2681" PostId="50" Text="Actually, Python is not easy to incorporate into programs. The normal way to do Python/C interoperability is to extend, not embed. http://twistedmatrix.com/users/glyph/rant/extendit.html" CreationDate="2010-08-15T17:12:35.470" UserId="744" />
  <row Id="2682" PostId="92" Text="Two engines really don't make traction. I'd guess the reason it's only a recent development is that there haven't been many good JavaScript interpreters prior to Mono and V8. SpiderMonkey isn't exactly something you look and say &quot;Yes, I want my game to be that fast and lean and stable!&quot;" CreationDate="2010-08-15T17:15:23.483" UserId="744" />
  <row Id="2683" PostId="2797" Text="I'll adjust the css for the comments, thanks. Weirdly enough i don't know anyone using 1024x768 ;P Not since i posted has anyone mentioned it being a problem - but thanks for the feedback. I updated the CSS to a blue color. Hope that helps legibility." CreationDate="2010-08-15T17:15:55.290" UserId="1716" />
  <row Id="2684" PostId="279" Text="@BananaRaffle that's great to hear then! Thanks." CreationDate="2010-08-15T17:47:46.410" UserId="19" />
  <row Id="2685" PostId="2785" Text="Halleluja... Great reference. i've had an aversion with exceptions for exactly this reason, but apparently it is the preferred way of doing things nowadays. Great to see a nice article which gives another view " CreationDate="2010-08-15T17:58:45.763" UserId="1697" />
  <row Id="2686" PostId="2795" Text="One con for me was the size. If you're building a simple/casual game then the v8 engine is quite large, and may even be many times larger than your entire game." CreationDate="2010-08-15T18:12:21.897" UserId="974" />
  <row Id="2687" PostId="2703" Text="I tried using CodeAnalyst, but for some reason it kept complaining it did not found profile info, and refused to work :/ (that was a long time ago, mind you... not after your really good reply)" CreationDate="2010-08-15T18:18:26.487" UserId="469" />
  <row Id="2688" PostId="2801" Text="I've done this several times in the past. It works to a point, but you always end up throwing something else out because it's &quot;too hard&quot; to do the physics right with a hacky controller. In this particular game I'm hoping to involve some spring/rope mechanics for the player's movement, and that crossed into the realm of &quot;I'd rather hack down a real physics engine&quot; rather than &quot;I'd rather hack up a box mover&quot;." CreationDate="2010-08-15T19:56:53.590" UserId="744" />
  <row Id="2689" PostId="2779" Text="Yeah, this is a good question for another site, but offtopic here." CreationDate="2010-08-15T20:05:21.277" UserId="162" />
  <row Id="2690" PostId="2734" Text="To answer this we would need more details about your code" CreationDate="2010-08-15T20:21:58.973" UserId="162" />
  <row Id="2691" PostId="2740" Text="I half agree with you. Definately shmup physics are fake and based on the ship not actually moving forward. That said, the question is still valid as you do have a camera etc to consider" CreationDate="2010-08-15T20:44:31.213" UserId="119" />
  <row Id="2692" PostId="2803" Text="Interesting counter, but the problem is not that i need a project : its that i have one in progress already (for example a game i started 2 years ago that i would love to finish). &#xA;&#xA;The goal is to get help, again. Not to find something to do. But i can see your view, it sort of helps and sort of gives me &quot;because i have a lot to do already&quot;. &#xA;&#xA;But, this makes no sense either. Millions of stagnant projects, no developers around. So, i think id prefer to still ask for help and rope people in (as Larry put it as well) &#xA;&#xA;:)" CreationDate="2010-08-15T20:59:22.160" UserId="1716" />
  <row Id="2693" PostId="2800" Text="This is pretty much along what i was aiming to hear. You need something in hand, something to show, and something that works. Totally agree - The links provided are great too.&#xA;" CreationDate="2010-08-15T21:01:31.967" UserId="1716" />
  <row Id="2694" PostId="2795" Text="True, but as a standalone .lib file is that a big concern? It simply slots in next to your SDL, or your lua. If you meant generated code size, well i haven't tested how big it is but thats not a bad point. " CreationDate="2010-08-15T21:03:39.593" UserId="1716" />
  <row Id="2695" PostId="2733" Text="Thanks very much that worked a treat." CreationDate="2010-08-15T21:11:27.030" UserId="1557" />
  <row Id="2696" PostId="2779" Text="How are your Gaussians defined? Do you have a numerical function, or is it the parameters of a regular Gaussian (mean, variance)?&#xA;&#xA;I would also like clarification of &quot;no divisible slice&quot;, and what this has to do with solution spaces." CreationDate="2010-08-15T21:19:58.970" UserId="144" />
  <row Id="2697" PostId="2770" Text="You might be interested in Adaptive AI. While I'm not sure if it employs a genetic algorithm, several of the Crytek games feature Adaptive AI that adapts to player tactics." CreationDate="2010-08-15T21:26:31.407" UserId="360" />
  <row Id="2698" PostId="2803" Score="4" Text="The answer isn't because &quot;I have a lot to do already&quot;. No one wants to work for someone else, especially on hobby projects. The way you counter that is to offer money or a very sexy project, or a position on a project that's not 70% done already so they can have input. No one offered these to you, so you started your own. You're not offering them to anyone, so no one will take you up on your offer." CreationDate="2010-08-15T21:34:16.140" UserId="744" />
  <row Id="2699" PostId="2727" Text="In the 'VoIP world', jitter control is a function of the specific codec employed. Buffers are used to 'pad' voice data to avoid jitter. Playback is attempted to be transmitted no matter what and never muted. Which codecs have you tried / implemented? As an afterthought, you could monitor the jitter buffers and 'mute' audio if the buffer level goes below a threshold." CreationDate="2010-08-15T21:34:33.503" UserId="360" />
  <row Id="2700" PostId="2703" Text="Yeah, I definitely have had issues with CodeAnalyst crashing in the past.  It has gotten better lately.  Try it on whichever OS you haven't already?  There are both Linux and Windows versions.  You might also want to see if you can net Vtune or one of the other commercial products (with an educational discount, maybe?).  I'm pretty sure there are a handful of other gratis sampling profilers out there, too." CreationDate="2010-08-15T21:48:04.603" UserId="1134" />
  <row Id="2701" PostId="2773" Score="1" Text="Another strike against continuous LOD is the fixed amount of memory available in the console environment. Discrete objects let you throw out the hi-res models and all their dependent textures/shaders and swap in a much lower cost model with a simple shader and pre-combined smaller texture. &#xA;&#xA;In open world titles fighting over what data fills the limited available memory is often a bigger struggle than CPU/GPU cycles." CreationDate="2010-08-15T22:22:05.223" UserId="154" />
  <row Id="2702" PostId="2795" Text="I meant the generated code size. I suppose it's not THAT large considering the size of most games today." CreationDate="2010-08-15T23:22:31.720" UserId="974" />
  <row Id="2703" PostId="2772" Score="3" Text="+1 for Effective C++. Reading the 3rd edition as we speak. Exception are fine with me, as long as you're very strict about where you use them, where you catch them and you can guarantee that any 3rd party code does the same." CreationDate="2010-08-15T23:29:45.547" UserId="647" />
  <row Id="2704" PostId="2700" Text="On windows vista and up I would use the windows performance toolkit (xperf): http://msdn.microsoft.com/en-us/performance/default.aspx, this will give you stack level sampling based profiling that is accurate (and much more) I'm not an expert on gcc, but if you can take your relase build and disable inlining, this will give you a good overall profile.  In VS2010 you can also use the Concurrency Visualizer + the sampling profiler, but these are not free of cost." CreationDate="2010-08-16T01:48:38.600" UserId="228" />
  <row Id="2705" PostId="2703" Text="I tired again, the exact reason I don't use it, is that it keeps complaining that it don't find the source, and I have no idea on how to fix it (even after reading the manual, googling, that btw only find one match for the error phrase, and the resulting page is in russian...)" CreationDate="2010-08-16T03:54:36.127" UserId="469" />
  <row Id="2706" PostId="2810" Text="Thanks, I was looking at ogre thinking it seemed like a good option. I hadn't got as far as some of those plugins yet. Thanks for the links." CreationDate="2010-08-16T04:24:33.787" UserId="1173" />
  <row Id="2708" PostId="2809" Text="I understand what your saying about the day/night cycles.. but I have a different take. I think that even first person shooters could add a day/night cycle element to add to the challenge, giving the chance for attempted stealth as well as your standard brightly lit environments as long as it has been well balanced. It is almost a 'must have' for role playing style games however." CreationDate="2010-08-16T04:59:54.830" UserId="1173" />
  <row Id="2709" PostId="2788" Text="Yup! I'm actually asking this b/c I'm working on a similar (open-source) tool (though slightly different audience)" CreationDate="2010-08-16T05:14:56.553" UserId="1553" />
  <row Id="2710" PostId="2780" Text="That's a pretty sweet site! Most seem like ye olde lighting/refraction/etc, but some of those materials look cool" CreationDate="2010-08-16T05:18:22.507" UserId="1553" />
  <row Id="2711" PostId="2801" Score="3" Text="I'd rather hack up a box mover, at least it can't get instable, whereas a physics engine tends to explode if you throw too many forces on it because you need to constrain movements to exact specs (and physics engine constraints ain't rigid, they can only try to comply so much). Also, applying forces to solve one undesired issue tends to influemce everything else, leading to tweakers hell." CreationDate="2010-08-16T05:24:58.253" UserId="865" />
  <row Id="2712" PostId="2759" Text="Definately have to incorporate that into my next app ;)" CreationDate="2010-08-16T06:46:23.787" UserId="1628" />
  <row Id="2713" PostId="2755" Text="well, i cant make a physics engine because i do not know how. I learned there are engines called APE and fisix, which would  you recommend?" CreationDate="2010-08-16T07:03:59.753" UserId="1251" />
  <row Id="2714" PostId="2779" Score="1" Text="Hmm. the top hit for &quot;divisible slice&quot; on google is this question. Then a number of documents where &quot;divisible&quot; and &quot;slice&quot; occur next to each other, but are part of different sentences. You might want to explain that one, as it's obviously not uniform usage." CreationDate="2010-08-16T07:45:36.143" UserId="678" />
  <row Id="2715" PostId="2705" Text="There is a timer included in it. It also includes thread-id for when the probe was called etc." CreationDate="2010-08-16T07:49:28.990" UserId="1580" />
  <row Id="2716" PostId="2788" Text="Cool, the technique is usually referred to as &quot;splicing&quot; , and &quot;abstract shader tree&quot; type technology. There are also things like http://www.mapzoneeditor.com/ which have great reference." CreationDate="2010-08-16T08:43:47.797" UserId="1716" />
  <row Id="2717" PostId="2795" Text="Ok, i have a build on the latest SVN, im curious how big a binary linking in would be :) Ill post back with some stats." CreationDate="2010-08-16T08:46:46.463" UserId="1716" />
  <row Id="2719" PostId="2748" Text="Also, re-tagged as PC since this isn't relevant on consoles or all the other platforms where resolution is effectively fixed." CreationDate="2010-08-16T09:00:34.013" UserId="741" />
  <row Id="2720" PostId="2795" Score="1" Text="Tested, Default shell.cc with latest SVN clocks in at 1.441 MB http://bit.ly/9DNn8J. While this seems quite hefty, most library's needed to do anything else (networking, graphics) will add to that just as dramatically. A side project of mine with v8, phoenixGL, ENet, bunches of boost, and a lot more code inside the solution (like compression, encryption, gui libraries, awesomium) clocks in at 2.5 MB in visual studio 2008 - And zipped in a &quot;release&quot; build weights in at 861 KB. For me, that is not all that bad. On certain platforms i could see it being troublesome - not for most though :)" CreationDate="2010-08-16T09:07:35.587" UserId="1716" />
  <row Id="2721" PostId="2785" Score="1" Text="+1 because exceptions have a much too high risk to fail late, i.e. when the game's already shipped." CreationDate="2010-08-16T09:51:38.173" UserId="908" />
  <row Id="2722" PostId="746" Text="Have a look at http://gamedev.stackexchange.com/questions/9/whats-the-newest-trend-method-for-terrain-rendering. Never use ROAM, there are better alternatives available." CreationDate="2010-08-16T10:15:20.453" UserId="1494" />
  <row Id="2724" PostId="2779" Text="I'll post this to Math then work from there :)&#xA;Divisible slice means because its floating point numbers there is no way you can cut it into pieces. Because theoretically floating points go on forever. (can't think of proper name) " CreationDate="2010-08-16T13:00:24.800" UserId="465" />
  <row Id="2726" PostId="2727" Text="I abused the term jitter, which led to confusion.  Sorry.  I updated the question to clarify.  The API I'm coding to is pretty robust, so the codec end of things works fine." CreationDate="2010-08-16T14:00:18.370" UserId="430" />
  <row Id="2727" PostId="2727" Text="After doing some more reading, I think understand what you're saying now with regard to using buffers to pad voice data and avoid jitter.  That makes sense, thanks!  It sounds effective but complicated to properly implement." CreationDate="2010-08-16T14:04:46.863" UserId="430" />
  <row Id="2728" PostId="1497" Text="This isn't really a direct answer, so I'll just leave it as a comment.  I recommend checking out the book Large-Scale C++ Software Design by John Lakos.  It was very enlightening for me." CreationDate="2010-08-16T14:14:54.093" UserId="430" />
  <row Id="2729" PostId="2398" Text="@jacmoe Galaxy does not look like your example. That is their Trigger UI which generates Galaxy on your behalf (Similar to the WC3/JASS story)." CreationDate="2010-08-16T14:21:37.133" UserId="1494" />
  <row Id="2730" PostId="2803" Text="I have to agree completely with this point. I have gone as far as to actually attempt to join up with some other projects in the hope of gaining some knowledge as to how I could make my own requests in the future actually successful. Having at least one completed project is going to make people have more faith that you will stick through to the end. Also like Joe says, make it one sexy project so people will want to see it finished. Just about every project I have run across has the opinion it's the best one out there, but very few have simply tried to make theirs more appealing." CreationDate="2010-08-16T15:52:54.553" UserId="1413" />
  <row Id="2731" PostId="2798" Text="I think fuzzyspoon was saying that 56 cubes on this card would render at the same speed as 1 cube on a 1 texture unit card, which would be true. " CreationDate="2010-08-16T18:09:33.907" UserId="1413" />
  <row Id="2732" PostId="2826" Text="I definitely wouldn't blow off a sketchbook and some pencils with good erasers. I was just wondering if there was an intermediary tool between pen and paper and trying to create the full blown map. Basically just looking for a more polished draft to work from" CreationDate="2010-08-16T18:25:00.990" UserId="852" />
  <row Id="2733" PostId="2826" Text="If its not playable is it as valuable? If not its probably just considered concept art or a specification, perhaps how big the doors are in relation to a player." CreationDate="2010-08-16T19:27:01.707" UserId="1716" />
  <row Id="2734" PostId="2798" Text="yep, its 56 pixels at once, we are saying the same/similar things." CreationDate="2010-08-16T19:28:20.673" UserId="1716" />
  <row Id="2735" PostId="2822" Text="Heh optimisation master, a texture unit nazi as well??" CreationDate="2010-08-16T19:28:50.687" UserId="1716" />
  <row Id="2736" PostId="2826" Score="1" Text="@FuzzYSpo0N - I think it's more valuable to have a solid understanding of what you want your level to look like without committing a lot of time to developing assets and what not that you might or might not need, as well as discovering potential problems or pitfalls before you've overcommitted" CreationDate="2010-08-16T19:51:04.317" UserId="852" />
  <row Id="2737" PostId="2748" Text="@MrCranky What about Mac, or mobile devices? Or even browser sizes for Flash/plug-in games." CreationDate="2010-08-16T20:06:13.643" UserId="1163" />
  <row Id="2738" PostId="2822" Text="First rule of optimization: don't. ;)" CreationDate="2010-08-16T20:54:37.270" UserId="525" />
  <row Id="2739" PostId="2831" Score="3" Text="Also, if you pick 3, you're a jerk." CreationDate="2010-08-16T21:07:11.093" UserId="744" />
  <row Id="2740" PostId="2829" Text="I was assuming that you are using this for optimizing uv maps, but I am curious what the application is." CreationDate="2010-08-16T22:06:23.740" UserId="1024" />
  <row Id="2741" PostId="50" Text="LUA is popular because 1) It has a small memory footprint ( approx 150k), 2) Has excellent C/C++ bindings making it easy to add new game specific APIs 3) Is easy to pick up 4) Is flexible - i.e Has elements of OO, imperative and functional - none of which are mandatory 5) Has good buy-in from from mod community from games such as WoW etc" CreationDate="2010-08-16T22:16:16.267" UserId="347" />
  <row Id="2742" PostId="2809" Score="1" Text="The engine overview at devmaster should be used for seeing what engines are out there only. Don't trust the overall rating or the feature list. Mostly fanboys and fangirls and some very clueless people rate the engines. Balanced reviews by knowledgeable people are rare. And the feature list is hard to compare, mostly irrelevant buzzwords and features are listed only as there/absent. Even though there is a lot of gray in between. Take it with a pinch of salt." CreationDate="2010-08-16T22:23:20.030" UserId="685" />
  <row Id="2743" PostId="2829" Text="ftgles is library that uses opengl and freetype to render fonts.  However each glyph is stored in its own texture.  I'd like to pack them into one texture." CreationDate="2010-08-16T23:30:14.020" UserId="370" />
  <row Id="2744" PostId="2793" Text="http://www.odesk.com/ and http://www.elance.com are also pretty good.  We got several writers/copy editors for some of our site content through oDesk and 1 was awesome, 2 were good, and 1 was wretched.  We started with 4 small tasks and build up until we have the awesome one working 1/2 time for us now." CreationDate="2010-08-17T00:26:54.530" UserId="290" />
  <row Id="2746" PostId="2837" Score="2" Text="The general approximate rule of thumb for compressed music is one meg per minute. On mp3, that comes out at slightly below standard quality. On ogg, that comes out at slightly above standard quality. Note that this is stereo, and mono should reduce in size somewhat further (no, not a factor of two, the compression algorithms are smarter than that.)" CreationDate="2010-08-17T06:09:31.183" UserId="323" />
  <row Id="2747" PostId="2759" Text="Wow, If I can put that in Cube 2 engine, I would be able to remake my portfolio demo, make it faster, AND prettier  (it EATS your processor with manually modelled buildings around the building that you actually play inside)" CreationDate="2010-08-17T06:11:23.753" UserId="469" />
  <row Id="2748" PostId="2836" Score="2" Text="MP3 is a compressed format. For best quality you should choose a lossless (AIFF, WAV) format as the starting point of your conversions." CreationDate="2010-08-17T06:22:28.350" UserId="20" />
  <row Id="2749" PostId="2398" Text="Confusing! :)&#xA;Thanks for clarifying." CreationDate="2010-08-17T06:51:57.930" UserId="1206" />
  <row Id="2750" PostId="2462" Text="+1: never underestimate the power of turn-based games" CreationDate="2010-08-17T06:57:23.333" UserId="273" />
  <row Id="2751" PostId="2821" Text="Yep, that looks like what he's doing wrong. Good eye!" CreationDate="2010-08-17T07:43:32.863" UserId="263" />
  <row Id="2752" PostId="2803" Text="I don't necessarily disagree with the points mentioned, just seeing what the thought patterns of other developers :) &#xA;So, what if the project is sexy, and ready for input : the question again - where do i post to find a team?" CreationDate="2010-08-17T08:56:56.557" UserId="1716" />
  <row Id="2753" PostId="2831" Text="Lol, 3 is a bit badass but it might be effective. But again it feels like the question is still where do i find these people. I appreciated the views on how to make a project appealing ( and its likely i have a few appealing projects ) but if you see what im asking is WHERE do i go with my project.. Opening it up to the best PLACE not the best project." CreationDate="2010-08-17T08:59:06.507" UserId="1716" />
  <row Id="2754" PostId="2826" Text="The problem with Legos is that they lend themselves far better to narrative than to architecture. We've tried them numerous times and people always rather come up with a story than with a map. Even if they are told to build a map they immediately fall into storytelling mode when they present it. That said, Legos might be ideal for prototyping story." CreationDate="2010-08-17T09:17:31.707" UserId="908" />
  <row Id="2755" PostId="2839" Text="I looked at your texture and thought to myself &quot;I'm sure our texture packer does a bit better than that&quot;. And then I went and looked at it, and realised that I broke it some time ago and didn't notice (because once it's working, who looks at the output textures?)...&#xA;&#xA;So thanks for posting - wouldn't have found the bug otherwise :)&#xA;&#xA;(once I fixed the bug, it looks very similar - maybe a shade better, but it's tricky to tell exactly. &quot;as good&quot; is probably the safest description). " CreationDate="2010-08-17T09:35:42.213" UserId="1091" />
  <row Id="2756" PostId="2836" Text="How small do you want them to be?" CreationDate="2010-08-17T09:51:13.417" UserId="430" />
  <row Id="2757" PostId="2748" Text="Well, there's no tag for MacOS (probably should be really). I'll leave it to the original poster to clarify which platform they meant then. I can't think that this would be a useful question if it was meant cross platform. Certainly the fact that they accepted an answer pointing at the Steam Hardware survey would suggest that PC was what they meant..." CreationDate="2010-08-17T10:01:42.473" UserId="741" />
  <row Id="2758" PostId="2854" Text="yep - how do I find the second point in an efficient manner?" CreationDate="2010-08-17T10:13:58.690" UserId="119" />
  <row Id="2759" PostId="2854" Text="You should find two points which are near enough to give a good approximation. This can be done by sampling points around your collision point." CreationDate="2010-08-17T10:19:12.337" UserId="192" />
  <row Id="2760" PostId="2835" Text="Giving non-programmers Lua still requires them to program, and to in some sense &quot;be programmers&quot;. Depending on the complexity of the task, don't underestimate the value of a programmer/designer, or a programmer with some time budgeted to work next to a designer." CreationDate="2010-08-17T10:34:15.303" UserId="744" />
  <row Id="2761" PostId="2838" Score="1" Text="I believe the iPhone can decode MP3 and AAC much faster than other formats like Vorbis, leaving you with more CPU time budgeted for important things. So even though the compression ratio is about the same, Vorbis has a major disadvantage." CreationDate="2010-08-17T10:38:16.187" UserId="744" />
  <row Id="2762" PostId="2854" Text="The distance around your point at which you sample will be important: if you sample just at the 8 pixels immediately surrounding the current one, you will only get angles in multiples of 45 degrees. A sensible radius at which to sample is something close to the radius of the object you wish to bounce." CreationDate="2010-08-17T10:40:01.083" UserId="1691" />
  <row Id="2763" PostId="2835" Text="Joe - yes, that's all quite true. However it's funny how often I've seen an artist or designer complain that they don't want to be a programmer, and yet have no real problem &quot;scripting&quot;. As if scripting was in some way different to programming...&#xA;" CreationDate="2010-08-17T10:57:07.550" UserId="1091" />
  <row Id="2764" PostId="2856" Score="1" Text="If you're worried about speed, you can precalculate the positions relative to the impact point for the (e.g. 16) samples, avoiding sin/cos and float-&gt;integer conversion. &#xA;&#xA;This technique can be combined with the collision detection: if you do collision detection on points in a circle around the edge of the grenade, then the vector from the point which collides with the terrain first to the centre of the grenade is a normal to the surface." CreationDate="2010-08-17T11:08:41.933" UserId="1691" />
  <row Id="2765" PostId="1619" Score="1" Text="If you use Verlet with unequal time steps you are throwing out the baby with the bathwater. The reason Verlet is as stable as it is, is because errors cancel out in subsequent time steps. If the time steps are not equal, this does not happen and you are back in exploding physics land. " CreationDate="2010-08-17T11:15:15.540" UserId="678" />
  <row Id="2766" PostId="2856" Score="1" Text="I felt the &quot;sin/cos&quot; stuff needed to go in there to describe the values. I don't recommend using sin/cos ever. There is never* a good reason to use trigonometry.&#xA;&#xA;*if you happen to find one, then kudos and let me know. ;)" CreationDate="2010-08-17T11:26:14.697" UserId="1742" />
  <row Id="2767" PostId="2856" Text="so should I store offsets for each pixel to check? e.g. [x:0, y:-10], [x:2, y:-7], etc?" CreationDate="2010-08-17T11:44:00.347" UserId="119" />
  <row Id="2768" PostId="2856" Text="You could, and i probably would, but your performance is going to be bound on the collision check per iteration, not on your implementation of the vector array." CreationDate="2010-08-17T12:35:00.367" UserId="1742" />
  <row Id="2769" PostId="2856" Text="I would recommend you read up on texture swizzling, to increase cache coherency if it's just an image lookup as your collision check." CreationDate="2010-08-17T12:36:09.070" UserId="1742" />
  <row Id="2770" PostId="2836" Score="1" Text="Don't worry about loading the entire file at once.  You're probably better off streaming the file as long as you aren't doing a lot of other I/O.  The Cocoa APIs support that directly, I think." CreationDate="2010-08-17T12:48:04.443" UserId="430" />
  <row Id="2771" PostId="2779" Text="@Kimau: Perhaps you were referring to irrational numbers when you stated &quot;no divisible slice?&quot; http://en.wikipedia.org/wiki/Irrational_number" CreationDate="2010-08-17T13:22:09.850" UserId="553" />
  <row Id="2772" PostId="2865" Text="Title could be a bit better. Just to be clear are you asking &quot;What is the difference between C++ and Java on the Android Phone?&quot;" CreationDate="2010-08-17T13:22:23.843" UserId="14" />
  <row Id="2773" PostId="2852" Text="Starting w/ WAV and going to m4a seems to do the trick.  Thanks!" CreationDate="2010-08-17T13:28:29.523" UserId="1021" />
  <row Id="2774" PostId="2858" Text="Thanks - duplication (of either indices or vertices) was what I was worried about, but if that's the indented use of indices, I'm happy using those and plotting everything as separate lines.&#xA;&#xA;The other thing I was concerned about was artifacts at the vertices from plotting two separate lines rather than a GL_LINE_LOOP, since I'm using blending. For single-pixel-width lines though, this isn't an issue (at least on my hardware)." CreationDate="2010-08-17T13:38:59.153" UserId="1691" />
  <row Id="2775" PostId="2843" Text="Although downvoted, I would like to thank everyone who answered so far. Some good and useful considerations were made!" CreationDate="2010-08-17T13:43:26.007" UserId="1219" />
  <row Id="2776" PostId="2851" Text="Thanks, it's a good overview and I liked the part on reliability. The bottom line can be that anyone might need to fulfill a certain task at one point or another." CreationDate="2010-08-17T13:44:59.967" UserId="1219" />
  <row Id="2777" PostId="2033" Text="@Jonathan: Agreed, that and numerical integration methods should be sufficient for most things." CreationDate="2010-08-17T13:45:30.167" UserId="1049" />
  <row Id="2778" PostId="2864" Text="So what should I do if I want to display right from splash screen?" CreationDate="2010-08-17T13:58:43.613" UserId="1216" />
  <row Id="2779" PostId="2865" Score="5" Text="I think if you use the NDK (http://developer.android.com/sdk/ndk/index.html) then you can write most of your code in C++." CreationDate="2010-08-17T13:59:02.647" UserId="1597" />
  <row Id="2781" PostId="2870" Text="That sounds sensible enough." CreationDate="2010-08-17T14:06:06.967" UserId="678" />
  <row Id="2782" PostId="2872" Text="By the way, I suspect most answers without hard numbers and research are going to verge on nationalism and possibly racism, so I'm not really sure I'd like to see this question stay open." CreationDate="2010-08-17T15:00:29.240" UserId="744" />
  <row Id="2783" PostId="2874" Text="I don't like this answer, where are the facts? I provided links to support my question. I have [facts](http://en.wikipedia.org/wiki/List_of_countries_by_GDP_%28nominal%29) to show that Europe's GDP/capita is actually higher than US GDP/capita..." CreationDate="2010-08-17T15:05:50.957" UserId="1219" />
  <row Id="2784" PostId="2876" Text="thanks, &quot;you can code in C/C++ on Android using the NDK&quot;, yeah I appreciate that, but why stick to old guns all the time if something actually turns out projects better / faster." CreationDate="2010-08-17T15:08:03.573" UserId="1742" />
  <row Id="2785" PostId="2874" Text="That links to GDP, not GDP per capita. The link you want is http://en.wikipedia.org/wiki/List_of_countries_by_GDP_%28nominal%29_per_capita and you'll see that the US tops the countries I listed; on http://en.wikipedia.org/wiki/Economy_of_Europe you will see GDP per capita for Europe is 27K USD compared to 46K for the US." CreationDate="2010-08-17T15:08:42.353" UserId="744" />
  <row Id="2786" PostId="2872" Text="Please, if you use hard numbers, provide references.&#xA;&#xA;I observed the facts and wondered upon their origin: the question is open for anyone to provide insights. One good point would be sponsorship, which is provided by the state in Canada for games like Assassin's Creed. I never heard of such sponsorships in Europe, but I'm don't know for sure. I believe that there are people in here who will be able to give insightful and useful views upon the stated question." CreationDate="2010-08-17T15:11:19.727" UserId="1219" />
  <row Id="2787" PostId="2864" Score="4" Text="It's a setting in Info.plist in the XCode project for the application.   &#xA;&#xA;It's called UIApplicationExitsOnSuspend. If you set it to YES the application will exit when it gets suspended.   &#xA;&#xA;Here's a link to the Information Property List Key Reference that talks about it.  &#xA; &#xA;http://developer.apple.com/iphone/library/documentation/General/Reference/InfoPlistKeyReference/Articles/iPhoneOSKeys.html" CreationDate="2010-08-17T15:15:46.530" UserId="1418" />
  <row Id="2788" PostId="2876" Score="1" Text="Oh, I see what you're getting at. Java has the bonus of having a massive standard library and an extremely competent library for dealing with XML. The Android platform extends the standard library with libraries for all of the fancy hardware goodies and some extra, user-side functionality.&#xA;&#xA;Java also supports incremental compilation/error checking, so you'll get feedback on errors pretty much as soon as you type them. Honestly, you shouldn't fear performance either. It's not going to be as fast as C on bare metal, but it's still quite speedy.&#xA;&#xA;I would say that there isn't much to worry about." CreationDate="2010-08-17T15:17:31.760" UserId="1634" />
  <row Id="2789" PostId="2872" Score="1" Text="I don't feel this is a fair study; there could be other reasons the USA had greater response, for example perhaps this &quot;GameCareerGuide&quot; is most popular in the USA and has few subscribers in the Europe. Or perhaps there's a more &quot;serious&quot; game developing periodical available in Europe that the more professional game developers subscribe to. I feel this is terribly biased towards the USA." CreationDate="2010-08-17T15:23:48.517" UserId="189" />
  <row Id="2790" PostId="2851" Text="&quot;Also, art is definitely a large marketing point of most games, since good visuals will pull a.&quot; Did you fall asleep? :-D" CreationDate="2010-08-17T15:25:13.200" UserId="189" />
  <row Id="2791" PostId="2874" Score="3" Text="It's not exactly rocket science: the home market is just huge 'over there'. No need to cross any borders. Any company has a potential mass market. Not the case in Europe.&#xA;Which is why companies are willing to take bigger risks in the US compared to Europe." CreationDate="2010-08-17T15:25:42.950" UserId="1206" />
  <row Id="2792" PostId="2864" Score="3" Text="As a user, I would very much like to be able to pop out for a quick SMS and get right back into the game. Enabling this setting will seriously annoy me." CreationDate="2010-08-17T15:26:46.960" UserId="678" />
  <row Id="2793" PostId="2872" Text="&quot;It is not harder&quot; is also a good answer :-) People like Richard already stated that, &quot;the people I know (pro game dev) are definitely getting nearer the U.S. pay level&quot; so if more people can confirm this, we can decide that the survey was biased. However, some facts would be nice :-)" CreationDate="2010-08-17T15:33:38.350" UserId="1219" />
  <row Id="2794" PostId="2872" Text="I'd like to see some evidence that &quot;lower average salaries&quot; means making games is actually harder, too, which is one of the unstated (and I think, mostly indefensible) assumptions of your question." CreationDate="2010-08-17T15:38:01.193" UserId="744" />
  <row Id="2795" PostId="2840" Text="i suggest to have a look on modarchive.org. They even have a java jmod player so you can tune in to each title." CreationDate="2010-08-17T15:54:10.970" UserId="1020" />
  <row Id="2796" PostId="2306" Text="Joe, the best solution to xp loss when servers go down is to stop the servers going down. ;) Obviously that is idealistic but pushing to the DB more often doesn't fix the problem anyway, just merely reduces it. Obviously it makes sense to force a write in situations that the end user is sensitive to, such as when they level up, but that doesn't require that all XP gains need immediately pushing out to hard storage." CreationDate="2010-08-17T15:57:34.683" UserId="1101" />
  <row Id="2797" PostId="2306" Text="Ben, That's specific to your game design. Other MMOs work fine in this regard by ensuring there isn't the possibility of XP gain to the same character on multiple servers at once." CreationDate="2010-08-17T15:58:29.300" UserId="1101" />
  <row Id="2798" PostId="2615" Text="Aww, downvoted for humour. :(" CreationDate="2010-08-17T15:59:12.747" UserId="1101" />
  <row Id="2799" PostId="2785" Text="I completely agree with point number 2. I won't fight against languages that use exceptions throughout, but neither do I consider them the 'right' way to handle error conditions either." CreationDate="2010-08-17T16:32:32.330" UserId="1101" />
  <row Id="2800" PostId="2798" Score="1" Text="Yes, we do have the same thing in mind then.  AFter bluescrn's &quot;per-pixel&quot; comment, it sounded as though you were being contrary and implying that 56 cubes were actually required to see the speed up. Sorry for the confusion." CreationDate="2010-08-17T16:33:31.753" UserId="1719" />
  <row Id="2801" PostId="2777" Score="1" Text="It's a problem of the C++ language as much as anything - if you see a line of code that says `function();` you don't instantly know whether an error code is being ignored or not. This is presumably why languages that let you ignore a return value try and coerce you into preferring exceptions." CreationDate="2010-08-17T16:35:58.443" UserId="1101" />
  <row Id="2802" PostId="2866" Text="Much faster than _what_? Globals are going to be in some random memory page if they're a pointer, and some fixed but probably distant memory page if they're a value. The compiler can't use any useful peephole optimizations on them. By any measure I can think of, globals are _slow_." CreationDate="2010-08-17T16:40:25.893" UserId="744" />
  <row Id="2804" PostId="2781" Text="I disagree that that's the main problem; &quot;don't use globals&quot; goes back further than the existence constructors. I would say there are two major problems with them. First, they complicate reasoning about a program. If I have a function that accesses a global, that function's behavior depends not just on its own arguments, but also on all other functions that access the global. That's a lot more to think about. Second, even if you can hold it all in your head (you can't), they still result in more complicated concurrency problems." CreationDate="2010-08-17T16:47:29.490" UserId="744" />
  <row Id="2805" PostId="2866" Text="Faster than getters and setters and passing references around.&#xA;But not by much.&#xA;It does help to keep sizes down, so it would help in some systems.&#xA;I probably exaggerated when I said 'much', but I am very sceptical of anyone saying that you shouldn't use something. You just need to use your common sense. After all, singletons are nothing more than a static class member, and those are globals." CreationDate="2010-08-17T17:05:05.050" UserId="1206" />
  <row Id="2806" PostId="2852" Score="1" Text="You have to be careful about relying on the hardware audio decompression. It can only decompress one at a time. If you don't do things like prevent background music from playing you can get in a situation where the OS decides to decode it in software which might have negative performance impacts. " CreationDate="2010-08-17T17:17:11.393" UserId="51" />
  <row Id="2807" PostId="2872" Score="1" Text="-1, subjective and argumentative. " CreationDate="2010-08-17T17:19:53.310" UserId="51" />
  <row Id="2808" PostId="2866" Text="But to solve any synchronization problems with globals you need getters/setters for them, so that's not really relevant. The problem with (and rare benefit of) global state is that it's global state, not any concerns about speed or (effectively) syntax aspects of the interface." CreationDate="2010-08-17T17:27:24.623" UserId="744" />
  <row Id="2809" PostId="2756" Text="C# 3.0 and .NET 3.5 seem pretty well supported on Mono these days too." CreationDate="2010-08-17T17:38:20.127" UserId="136" />
  <row Id="2810" PostId="2839" Text="@JasonD, I'd love to know what your algorithm does, if it gets better output :) Even if it gets roughly equivalent output in a different way." CreationDate="2010-08-17T17:39:44.540" UserId="323" />
  <row Id="2811" PostId="1436" Text="Nice working example, WOW Thumbs up. Would recommend it." CreationDate="2010-08-17T17:44:53.750" UserId="666" />
  <row Id="2812" PostId="2851" Text="Whoops. Yes. I apologize, I was falling asleep. D:" CreationDate="2010-08-17T17:56:52.073" UserId="1740" />
  <row Id="2813" PostId="2882" Text="For those of you who don't know, DI is &quot;Dependency Injection&quot;, and IoC is &quot;Inversion of Control&quot;.  Link: http://www.martinfowler.com/articles/injection.html  (I had read about these before but never seen the acronym, so it took me a bit of searching.)  +1 for mentioning this excellent transformation, though." CreationDate="2010-08-17T18:07:46.683" UserId="1134" />
  <row Id="2814" PostId="2839" Text="I described it my answer. Essentially I think it's the same as yours, but with a slightly different heuristic. It would be easy for you to try, I think. Change your system to rotate the chars so they're always taller than they are wide, and sort by height rather than area - see what happens. Might be better, might be worse :)&#xA;   &#xA;As with any heuristic method, there will be good cases and bad cases, but I've generally found that keeping things to be roughly the same shape (by rotating) and sorting by height (which minimises gaps in the initial packing) helps in the average case." CreationDate="2010-08-17T18:33:58.927" UserId="1091" />
  <row Id="2815" PostId="2835" Text="Artist/designer dissatisfaction isn't what I'm cautioning against - they'll happily &quot;not program&quot; thousands of lines, which a real programmer will then need to debug and maintain, because that's the real skill that's hard to learn." CreationDate="2010-08-17T18:38:27.763" UserId="744" />
  <row Id="2816" PostId="2872" Text="And Discussion-y" CreationDate="2010-08-17T18:51:03.727" UserId="14" />
  <row Id="2817" PostId="2835" Text="Yes, I think I'd be worried if there was a significant amount of code being generated outside of the actual programming team. Having said that, some designers and artists are quite capable. And if the script environment is sufficiently sand-boxed, I'm all for letting them loose." CreationDate="2010-08-17T18:52:34.363" UserId="1091" />
  <row Id="2818" PostId="2833" Score="1" Text="Hello, we ask that questions explicitly looking for a list of suggestions be made Community Wiki as a minimum. While this can be answered, (And has by @Jason), if you are looking for a list please mark it as CW. Relevant Meta Thread: http://meta.gamedev.stackexchange.com/questions/139/questions-that-are-list-of-x" CreationDate="2010-08-17T18:58:34.507" UserId="14" />
  <row Id="2819" PostId="2856" Text="This is a good technique to be sure; basically, akin to calculating the &quot;bent normal&quot;. &#xA;&#xA;As described though, this algorithm may return strange results if you have a collision on a thin shell. Eg. a cave that is pretty close to the surface, but does not quite connect with the surface. &#xA;&#xA;You really only want to figure out the average samples in the arc that your grenade just came from. Do this by scanning left, then right from your starting point (ie. angle where grenade came from) and determine the extents of the arc. Then just average the extents to compute the surface normal." CreationDate="2010-08-17T19:00:40.650" UserId="1232" />
  <row Id="2821" PostId="1578" Score="1" Text="Second Life massively improved performance by going from UDP to HTTP over TCP: http://blogs.secondlife.com/community/technology/blog/2010/08/13/http-assets-improve-grid-performance-and-other-technology-news" CreationDate="2010-08-17T21:16:46.133" UserId="450" />
  <row Id="2822" PostId="2892" Score="1" Text="Depends, do you want it to actually respond to commands? Or just gauge yelling?" CreationDate="2010-08-17T23:32:55.020" UserId="14" />
  <row Id="2823" PostId="2762" Score="1" Text="Oddly no one had any pros" CreationDate="2010-08-18T00:21:21.837" UserId="891" />
  <row Id="2824" PostId="2900" Score="2" Text="You can also develop in C, C++, and Javascript. You'll need to do a little Objective-C but it can be minimal compared to the others if you want.&#xA;&#xA;Arguably, you can also develop in scripting languages like Lua, but the rules and regulations around that are still somewhat unclear." CreationDate="2010-08-18T04:22:29.043" UserId="323" />
  <row Id="2825" PostId="2900" Text="Thanks for your reply. I get the difference between development, programming and design but was looking for suggestions for books on all 3 topics.  I'm not really looking for iPhone specific books because most of them seem to suck.  I'm also looking for more general books for my partner who doesn't code.  He'd like to understand more of the process.  " CreationDate="2010-08-18T04:33:36.740" UserId="1759" />
  <row Id="2826" PostId="2892" Text="ideally respond to commands would be good, but I don't know if voice recognition is advanced enough yet to make that a viable option. If it only could understand you some of the time it would just make it frustrating." CreationDate="2010-08-18T05:04:07.293" UserId="1173" />
  <row Id="2827" PostId="2901" Score="2" Text="Basically all the open-source speech recognition systems are lightyears behind the commercial world unfortunately. The tech is all there, but they haven't had the same amount of time tweaking the pattern engines and they don't have access to the same size and quality of training data (that stuff is $$$$$)." CreationDate="2010-08-18T05:59:16.683" UserId="395" />
  <row Id="2828" PostId="2899" Score="3" Text="-1, subjective and a probable dupe.  I also made it a CW." CreationDate="2010-08-18T06:40:04.527" UserId="51" />
  <row Id="2829" PostId="2899" Score="2" Text="http://gamedev.stackexchange.com/questions/1265/must-read-game-dev-books" CreationDate="2010-08-18T06:40:33.263" UserId="51" />
  <row Id="2830" PostId="2899" Score="1" Text="http://gamedev.stackexchange.com/questions/355/free-ebooks-about-game-development" CreationDate="2010-08-18T06:42:14.617" UserId="51" />
  <row Id="2831" PostId="2899" Text="What role do you see for your partner? What background does he have? What background do you have?" CreationDate="2010-08-18T06:46:49.067" UserId="865" />
  <row Id="2832" PostId="2901" Text="For a game you don't need to rely on full-NLP. As long as you keep the available command list short and distinct even basic solutions can work. &#xA;&#xA;Here is Sphinx being used in a RTS-like demo example: http://www.youtube.com/watch?v=owJS5XwXAEA" CreationDate="2010-08-18T06:49:14.757" UserId="154" />
  <row Id="2833" PostId="1326" Text="+1 on this, the logic and better thinking over older approaches is awesome. It also covers the things that are often assumed as default knowledge." CreationDate="2010-08-18T06:55:09.927" UserId="1716" />
  <row Id="2834" PostId="2900" Text="If you want to understand the process, wouldn't it be better to read, say, Gamasutra? Because there really isn't *one* process, and a book will kinda make you believe there is, better to get a good grasp on the field as a whole." CreationDate="2010-08-18T06:58:57.857" UserId="865" />
  <row Id="2836" PostId="2732" Text="This is good to hear. However, we're an indie start-up, and our budget is unusually tight, so we may not be able to afford that. You'll hear from us if we do that though!" CreationDate="2010-08-18T07:50:11.603" UserId="1004" />
  <row Id="2837" PostId="2905" Text="Can you elaborate on doing test-driven development in a game setting? Aside from some basic logic, I've never found highly interactive programs to be very well-suited for this kind of thing. Also, you are linking to the disambiguation page ;)" CreationDate="2010-08-18T08:09:33.727" UserId="678" />
  <row Id="2838" PostId="2905" Score="1" Text="@Ranieri If you draw a line between the parts that interface with the graphics hardware and user input, testing is straightforward." CreationDate="2010-08-18T08:26:39.487" UserId="1024" />
  <row Id="2839" PostId="2905" Text="@Ranier Thanks, fixed the link.&#xA;I agree that coming up with tests first for interactive simulations or client-server games can be tricky. In addition to your unit tests you might probably want to have some higher level functionality tests and possibly playback sessions which run at certain intervals.&#xA;In any case, thinking about the tests first is likely to pay off in many scenarios.&#xA;Find some interesting views in http://gamedev.stackexchange.com/questions/1905/experiences-of-test-driven-devleopment-in-large-projects" CreationDate="2010-08-18T09:38:41.377" UserId="1495" />
  <row Id="2840" PostId="2907" Score="4" Text="+1, good advice. Don't let yourself be caught by the infamous Analysis Paralysis as this get's you nowhere. Whereas refactoring is a mighty tool to straighten out past flaws, so don't be afraid to make mistakes." CreationDate="2010-08-18T10:07:25.437" UserId="13" />
  <row Id="2841" PostId="2906" Score="1" Text="I like the idea. The only problem I can see is that with a small closed surface your horizon will be rather close, and your view will be filled with mostly sky. Of course, you can also do the same thing with the *inside* of the sphere, and you would be looking mostly at geometry." CreationDate="2010-08-18T10:38:56.563" UserId="678" />
  <row Id="2842" PostId="2905" Text="@jpm97, thanks nice link." CreationDate="2010-08-18T10:40:07.653" UserId="678" />
  <row Id="2843" PostId="571" Text="@280Z28: this is also an issue we found for any files if you have a policy that any new code needs to be tested against the latest build. Otherwise you can find that when you come to push your tested code, someone else has committed new changes, so you have to pull, merge, and repeat your tests. Obviously this could go on indefinitely." CreationDate="2010-08-18T10:44:34.140" UserId="1101" />
  <row Id="2844" PostId="2898" Text="Exactly what I was looking for, thanks!" CreationDate="2010-08-18T11:18:09.283" UserId="430" />
  <row Id="2845" PostId="2898" Text="http://www.topology.org/comms/rtp.html" CreationDate="2010-08-18T11:27:15.587" UserId="430" />
  <row Id="2847" PostId="2907" Text="Ahh. *Analysis Paralysis*. My biggest enemy! I should build a game where *Analysis Paralysis* gets served as the End-Boss. I best start by designing the game-architecture first... *Noooo!*&#xA;Joking aside: Great answer and good comment!" CreationDate="2010-08-18T12:15:51.813" UserId="20" />
  <row Id="2848" PostId="2908" Score="1" Text="I don't think there is any development methodology that doesn't claim to &quot;get it done and have a solid software designer&quot;." CreationDate="2010-08-18T12:27:10.417" UserId="744" />
  <row Id="2849" PostId="2892" Text="Yeah, voice recognition is very difficult., And like Coderanger said below all of the open libraries are quite a bit behind." CreationDate="2010-08-18T13:29:26.653" UserId="14" />
  <row Id="2850" PostId="2914" Score="4" Text="+1 for saying that scripts are usually easier to update by non-programmers. Designers aren't always programmers, and they don't have to be." CreationDate="2010-08-18T14:11:12.637" UserId="102" />
  <row Id="2851" PostId="1141" Text="+1 for A* not being the right algorithm to use." CreationDate="2010-08-18T14:20:49.790" UserId="189" />
  <row Id="2852" PostId="2915" Score="2" Text="Slick wraps OpenGl and hides the &quot;hard stuff&quot;" CreationDate="2010-08-18T14:26:41.040" UserId="891" />
  <row Id="2854" PostId="2914" Score="7" Text="I feel like I'm repeating myself in every question about scripting - if your workflow requires non-programmers to program (which includes scripting), it is going to bite you in the ass later. Designers aren't always programmers, but as soon as they write non-trivial scripts (e.g. as soon as they try to define a function or use a loop) they're pretending to be one. If they don't have training in programming, that's going to end in tears and wasted time for everyone." CreationDate="2010-08-18T14:39:20.603" UserId="744" />
  <row Id="2855" PostId="2914" Text="To put it another way - if your professional value as a programmer is being able to write good C++ when everyone else can only write good Lua, you're not going to last long. Being a programmer means knowing so much more than just another stupid imperative syntax." CreationDate="2010-08-18T14:46:17.637" UserId="744" />
  <row Id="2856" PostId="2679" Text="This is something that's going to change over time, due to simple supply and demand, so be aware any answer of what's &quot;hot&quot; right now might be completely invalid in six months." CreationDate="2010-08-18T16:15:34.533" UserId="458" />
  <row Id="2857" PostId="2923" Text="Cool response, and helpful link :) &#xA;For me, personally, it's not about getting the work done for me. I am trying to emphasize the word team. Many programmers ignore this and end up getting owned and never finishing anything. There is plenty of space to work together on hobbyist projects and i think it would be 100 times more rewarding than a hundred incomplete projects of my own.&#xA;&#xA;And for reference, it is more that my projects are cool/will do well/are just plain fun to work on - but it's as you say. Thats for the programmer in question to find out if i give them the info.&#xA;&#xA;" CreationDate="2010-08-18T16:27:38.890" UserId="1716" />
  <row Id="2858" PostId="2930" Score="1" Text="This is pretty good advice, although I would recommend a time or some other kind of resource bound on the loop, after which you just exit(0) and try another prototype." CreationDate="2010-08-18T16:57:04.113" UserId="744" />
  <row Id="2859" PostId="2914" Score="3" Text="Joe - that doesn't invalidate the argument, it just means that you have to decide where to decouple the &quot;programming stuff&quot; from the &quot;design stuff&quot; and the dividing line will be different based on the technical expertise of your designers (or lack thereof)." CreationDate="2010-08-18T17:06:25.610" UserId="458" />
  <row Id="2860" PostId="2934" Score="1" Text="I have used torque quite a bit, and can comment on non XNA/Torque-X ones only. But i will note that no matter how the engine works, or behaves, the screenshots are only as pretty as the art. This is true in any tech :) Better art = better screenshots." CreationDate="2010-08-18T17:30:01.267" UserId="1716" />
  <row Id="2861" PostId="2826" Text="Yea true on the legos. @Andrew - agreed, i actually was teaching this recently. Layout the level for gameplay **and** look if you can because you will lose out redoing things later. No need to do any assets at all until the level feels right. Then, make a playable cubes/walls only mesh. " CreationDate="2010-08-18T17:45:15.500" UserId="1716" />
  <row Id="2862" PostId="2934" Score="1" Text="Aside from the subjective issue (Torque seems to be a polarizing subject). This is essentially a discussion, ideally we are looking for questions that can be objectively answered. " CreationDate="2010-08-18T17:55:49.317" UserId="14" />
  <row Id="2863" PostId="2930" Text="@Joe Wreschnig - Time plans can be included in AnalysingResults() , but I think that You can use RapidPrototype for a while and finish it later or put it to the plans. Better then got stuck on it forever :). In RapidPrototype You can simulate functionality too. It's prety useful in many ways." CreationDate="2010-08-18T17:57:40.127" UserId="1456" />
  <row Id="2864" PostId="2932" Score="1" Text="+1 on this post, its good advice. Scope is the project killer." CreationDate="2010-08-18T17:57:52.403" UserId="1716" />
  <row Id="2865" PostId="2934" Text="I can see a potentially solid question in &quot;What would be necessary to create scenes like those (on the torque page) using Torque-X&quot; But asking for everyones use case is kind of iffy." CreationDate="2010-08-18T18:04:59.703" UserId="14" />
  <row Id="2866" PostId="2914" Score="2" Text="It does invalidate the argument; you're making a different argument, which is essentially that worse programmers do less damage in simpler languages. But even good programmers are worse programmers after 24 hours awake, a heavy lunch, a breakup, etc. It has nothing to do with designer accessibility; it's just a good mantra to keep everything as simple as possible, regardless of who will be in charge of it." CreationDate="2010-08-18T18:16:04.783" UserId="744" />
  <row Id="2867" PostId="2934" Text="@Fuzzyspo0N -I agree the artwork makes the difference, but none of the 3D scenes appeared as well shaded, light, etc. " CreationDate="2010-08-18T18:20:42.060" UserId="1198" />
  <row Id="2868" PostId="2934" Text="@Noctrine - I think its a quite answerable question. An ideal answer would compare and contrast Torque and Torque-X Engines and possibly have some pro/con for each. I don't see the argumentative nature of it at all. I'm not looking for a flame post on Torque (though it may influince me in my decision to use Torque). The bottom line, is that I'm looking for gotchas, maybe that wasn't clear from the title, but I did spell that out in the body of my question." CreationDate="2010-08-18T18:22:13.010" UserId="1198" />
  <row Id="2869" PostId="2915" Text="Slick is a great library and I highly recommend it. Unlike many game engines which force you to do things their way Slick gets out of your way and let's you focus on getting things done." CreationDate="2010-08-18T18:40:46.497" UserId="539" />
  <row Id="2870" PostId="2427" Text="Thanks for the answer, I actually found confirmation of this in the OpenGL ES 2.0 specification the other day, but now can't find the reference to post here." CreationDate="2010-08-18T18:47:46.700" UserId="831" />
  <row Id="2871" PostId="2914" Text="I'm pretty sure that any self respecting designer is well taught in at least one language. To clarify things a bit, I would like to nuance the term &quot;non-programmer&quot; as somebody who's profession is not that of a software engineer. I regret using the term, thanks to Joe I see it's ambiguous. I believe there is a broad range of programmers, from those who write simple XML to hardcore assembly to math heavy signal processing. I hope this solves the &quot;non-programmer&quot; duality issue." CreationDate="2010-08-18T19:32:43.513" UserId="1219" />
  <row Id="2872" PostId="2934" Text="@Nate Re-opening to see how it goes." CreationDate="2010-08-18T20:09:52.833" UserId="14" />
  <row Id="2873" PostId="862" Text="What about when someone has done all 3 of these, what about after pac man? there are still many game concepts you haven't learnt after pacman, such as having a scrolling map..." CreationDate="2010-08-18T21:07:12.010" UserId="1775" />
  <row Id="2874" PostId="2945" Text="What's binary search?" CreationDate="2010-08-18T21:16:44.997" UserId="119" />
  <row Id="2875" PostId="2942" Text="The phenomenon you're describing is commonly called &quot;tunneling&quot;, and the best way to deal with it is to introduce a sweep test - as TetraD and JasonD have both mentioned below." CreationDate="2010-08-18T21:19:13.533" UserId="1232" />
  <row Id="2876" PostId="2947" Score="2" Text="For game PROGRAMMING:&#xA;&#xA;http://www.amazon.com/s/ref=nb_sb_ss_i_0_12?url=search-alias%3Dstripbooks&amp;field-keywords=iphone+games+development&amp;x=0&amp;y=0&amp;sprefix=iPhone+Games&amp;ih=11_0_0_0_1_0_0_0_0_1.71_165&amp;fsc=11" CreationDate="2010-08-18T21:25:45.953" UserId="1400" />
  <row Id="2877" PostId="2947" Score="2" Text="For game DEVELOPMENT:&#xA;http://www.amazon.com/Game-Development-Essentials-Jeannie-Novak/dp/1418042080/ref=sr_1_1?s=books&amp;ie=UTF8&amp;qid=1282166537&amp;sr=1-1" CreationDate="2010-08-18T21:26:08.000" UserId="1400" />
  <row Id="2878" PostId="2945" Text="Sorry - binary search is more or less what you were talking about in the question. You start in the middle, and divide the search space by two until you converge on the answer. It's optimal in many cases, but in your case it would not work (you might skip the correct answer entirely)." CreationDate="2010-08-18T21:35:09.827" UserId="1091" />
  <row Id="2879" PostId="2922" Score="2" Text="Unfortunately you are correct in that this is not the right place for this question; game development stack exchange is for the development of games, whether software (video games) or ideas (game design) or even traditional (board) games. I believe you will find better help at http://gaming.stackexchange.com/, though they are aimed towards game players and gameplay questions, so it may also not be a great place to ask. Your question seems like something that would be posted on http://www.hackaday.com/ but they aren't a question-answering site... I would try to find a different forum though." CreationDate="2010-08-18T21:37:51.917" UserId="189" />
  <row Id="2880" PostId="2921" Score="4" Text="Why waste man-hours writing unit tests when you have a virtually endless army of slave labor to do playtesting for you?  I kid, I kid... ;)" CreationDate="2010-08-18T21:58:46.447" UserId="136" />
  <row Id="2881" PostId="2921" Score="1" Text="Actually you need not kid, that's a really good point! I didn't think about that, but games are the easiest type of software to get other people to test. I guess that somewhat offsets the difficulty of automated game testing (unit or otherwise)." CreationDate="2010-08-18T22:01:25.823" UserId="189" />
  <row Id="2882" PostId="2937" Text="Please note, though you don't seem to be new to SX, that answers are not ordered and saying something like &quot;both of the above comments&quot; is bound to quickly deprecate, as it currently is now that you are one vote ahead of one of the two other answers at this time. :)" CreationDate="2010-08-18T22:03:16.743" UserId="189" />
  <row Id="2883" PostId="2940" Text="Good point about the scale, I'm sure the output matrices have uniform scale. However given that the local matrices are generated in step A, not by a composition of matrices, what can I assume about extracting components from them?" CreationDate="2010-08-18T22:21:23.183" UserId="831" />
  <row Id="2884" PostId="2940" Text="Yeah, its tough to say for sure, but if you perform the decomposition after you have created the local matrices I think it should work, regardless of how the matrices were created. I am 90% sure, if have any trouble performing, let me know and I'll see if I can help you." CreationDate="2010-08-18T22:27:08.763" UserId="1024" />
  <row Id="2885" PostId="2951" Text="Thanks for your reply. I edited the question with some example code for more clarity." CreationDate="2010-08-18T22:39:07.267" UserId="831" />
  <row Id="2886" PostId="2906" Text="+1 Now there's an idea - a game world that is the *inside* of a sphere. " CreationDate="2010-08-18T22:43:32.813" UserId="831" />
  <row Id="2887" PostId="1008" Text="@seanmonstar  thanks you rock, of course, all the mobs from a tower share a route, you just made my game do like 1% of pathfinding i was doing, same result." CreationDate="2010-08-18T22:49:48.423" UserId="666" />
  <row Id="2888" PostId="2949" Text="Thanks for the response! I am aware that there are many other units(like the DX2) and solutions(including very fine emulators) but as you said I'm &quot;set on hacking this thing&quot;, for historical reasons really (and the actually useful result!); the entire fun of it being to use this old hardware once again for some serious coding!" CreationDate="2010-08-18T22:55:26.637" UserId="1766" />
  <row Id="2889" PostId="2922" Text="Thanks for the links and tips, I'll keep on looking. Perhaps I could also try a more general approach; looking for commonalities in generally applying battery backup to stuff...I have some ideas now anyhow!" CreationDate="2010-08-18T22:59:21.530" UserId="1766" />
  <row Id="2890" PostId="2950" Text="Wow, I was not expecting such a negitive response; but I'll take this under serious consideration before I give them any money. On a different note, what would you recommend instead for an XNA based engine? Preferably in the same $$$ range?" CreationDate="2010-08-18T22:59:28.503" UserId="1198" />
  <row Id="2891" PostId="2950" Text="From my quick researching it looks like Ox ( http://oxgameengine.codeplex.com/ ) might be a good XNA engine.  Open Source.  Not sure of what your needs are though.  For me though, I've regressed into C++/OpenGL land. Always look at the engine documentation and community size first.  Not the supposed &quot;features&quot; an engine supports.  If you can't make heads or tails of their documentation, it won't be any easier when you've started to invest your time. " CreationDate="2010-08-18T23:12:53.940" UserId="891" />
  <row Id="2892" PostId="630" Text="Runescape was made by 3 people, and IMO its a bit misleading to put it here because the original version of runescape was much smaller and crappier, the current runescape happened after they got a team of hundreds of people" CreationDate="2010-08-18T23:22:50.600" UserId="1775" />
  <row Id="2893" PostId="1911" Text="@coderanger's first comment starts out spot-on.  You can only write tests for code that you intend to understand.  If you have no intention of understanding how your code works, there is no need for tests.  You can't test for how you want other people to use the code (e.g. an isFun test), but you can test that the code that you wrote works as you expect it should.  Btw, you can test far more than people typically think is possible, but it does require extensions to the typical xUnit-style frameworks.  Plus, functional tests (i.e. higher level tests) can fit that bill partly as well." CreationDate="2010-08-18T23:26:58.830" UserId="1780" />
  <row Id="2894" PostId="2914" Text="At my place of employ, the designers' &quot;scripting&quot; sandbox is visual.  Essentially they're hooking black boxes together with triggers and timers.  The UI isn't great, and the designers sometimes wish they could just type it all out, but doing it visually allows the tools to tightly constrain what they can do and to make it &quot;impossible&quot; to make mistakes." CreationDate="2010-08-18T23:36:44.527" UserId="1780" />
  <row Id="2895" PostId="2914" Text="BTW- I believe that the power in scripting languages, be it Lua or Python or whatever, is that the *programmers* can use it and be many times more productive, simply due to getting out of the change, compile, execute loop.  ...although I guess depending on your implementation you may require that for scripts too, which then makes them less valuable.  :)  However- having a &quot;scripting&quot; console in-game is an amazing tool." CreationDate="2010-08-18T23:38:05.757" UserId="1780" />
  <row Id="2896" PostId="2950" Text="@Nate, told you :p" CreationDate="2010-08-18T23:40:16.390" UserId="14" />
  <row Id="2897" PostId="2957" Text="I think that the interpolation option might produce a rather strange effect because the &quot;velocity&quot; of the delayed cursor wouldn't necessarily map to the original velocity.  That could make it significantly more difficult for the user (player) to predict the future position of the cursor." CreationDate="2010-08-18T23:57:04.083" UserId="136" />
  <row Id="2898" PostId="2899" Text="My partner's background is Project Management.  I'm a software developer (c#, .net, asp.net etc.)" CreationDate="2010-08-18T23:59:15.107" UserId="1759" />
  <row Id="2899" PostId="2950" Score="2" Text="I would say the lack of documentation and the stability of a crucial editor is not subjective though.  Unfortunately you need to own TorqueX before you can see their own users saying they've given up on the product http://www.torquepowered.com/community/forums/viewthread/113865 The title of the post is &quot;Does anyone even use TorqueX3D or did everyone just give up because of the bugs????&quot; posted on 4/11/2010" CreationDate="2010-08-19T00:03:38.967" UserId="891" />
  <row Id="2900" PostId="2935" Score="3" Text="The first paragraph is key.  The fact is that TDD requires you to design your code better than you would have without it, simply to allow the testing.  Of course many think that they are experts at design, but of course those most impressed with their own skills are usually the ones with the most to learn..." CreationDate="2010-08-19T00:18:40.903" UserId="1780" />
  <row Id="2901" PostId="2957" Text="Could you expand on This linear interpolation?  That sounds like it might be more like what I'm after." CreationDate="2010-08-19T00:20:04.473" UserId="1198" />
  <row Id="2902" PostId="2677" Text="UnitTest++ is the only testing framework that you should need, especially given that it's easy to modify and extend.  If you find yourself doing any Java programming later, JUnit will strike you over and over in the face with a hammer with the utter inelegance that it displays." CreationDate="2010-08-19T00:22:05.623" UserId="1780" />
  <row Id="2903" PostId="2957" Text="'Interpolation' just means &quot;computing intermediate values.&quot;  So you store points at some interval, and when you want to compute a new location you find the point &quot;sooner&quot; than your current point and the point &quot;later&quot;, and do a weighted blend between the two points' positions based on the time differential." CreationDate="2010-08-19T00:38:49.817" UserId="1780" />
  <row Id="2904" PostId="2906" Text="inside of a torus would be Ringworld" CreationDate="2010-08-19T01:07:36.873" UserId="1448" />
  <row Id="2905" PostId="2957" Text="@Mike - the future position would always be closer to the mouse than the current position as it moves from current to mouse position. It's like a springy connection without overshoot. Like I said, it depends on what OP is after, but it should work well enough. " CreationDate="2010-08-19T01:20:53.583" UserId="865" />
  <row Id="2906" PostId="2957" Text="@Nate - for example visibleMousePos = prevMousepos * someFloatFactor + (1-someFloatFactor) * actualMousePos); prevMousePos = actualMousePos (or visibleMousePos, both can work) - with someFloatFactor being between 0 and 1." CreationDate="2010-08-19T01:23:04.453" UserId="865" />
  <row Id="2907" PostId="2903" Score="1" Text="I think if you visually obscure the mechanic (ie by not using the sphere or related idea) it would be confusing. Someone that was in front of you can shoot you in the back. I think there needs to be a clear indication for the player to justify this, whether it's logic, visual, gimmick or story. If it's confusing it's likely to frustrate." CreationDate="2010-08-19T02:59:05.860" UserId="865" />
  <row Id="2908" PostId="723" Text="+1 for production value of podcast.  Nothing very in-depth, but entertaining and well executed." CreationDate="2010-08-19T03:19:27.270" UserId="369" />
  <row Id="2909" PostId="1578" Score="2" Text="Uh not really, they improved performance of their asset streaming by changing how it works. Using HTTP/TCP in that instance made it easier for them to implement, not faster.&#xA;&#xA;I might also note that zeromq is an interesting project, and it may scale very nicely to game networking.&#xA;&#xA;http://www.zeromq.org/" CreationDate="2010-08-19T04:41:54.827" UserId="603" />
  <row Id="2910" PostId="2719" Score="1" Text="I ran across Amaranth what seems like months ago, but I'd forgotten the name by the time I got into dungeon generation myself. Thanks for the link!" CreationDate="2010-08-19T05:27:22.480" UserId="632" />
  <row Id="2911" PostId="2723" Text="A bit of an unpopular answer, but certainly indicative of what my research has found! I was expecting the territory to be more well explored and documented than I've found it to be. The PCGWiki content links off to the &quot;Build a dungeon in 12 easy steps!&quot; heuristic, which I didn't find terribly useful, and Angband's generator.c is about 11k lines of C..." CreationDate="2010-08-19T05:35:03.120" UserId="632" />
  <row Id="2912" PostId="2924" Text="If you are inclined to treat the ball as a sphere there's no need to do the state switching as it should always return to a non-colliding state after a reflect - it's moving when it's incoming so there is speed after the collision. This does however assume that you detect your collision when the edge of the ball hits, which you generally do with a sweep (see if the distance of the line segment from the center of the beginning of circle at the start of the move to that on the end of the move gets closer to any edge than the length of your radius, if so, determine when, and resolve the collision" CreationDate="2010-08-19T06:53:05.293" UserId="865" />
  <row Id="2913" PostId="316" Text="That doesn't work if both spheres move, (not even if you do it twice). Seems to me that you'd have to first do a distance check between the lines spanning movement a and the one spanning movement b, and if that is less than radius a + radius b you have a possible collision. After that I would do a check to see where that point is in time for sphere a and where for sphere b to see if the times are close. If so I'd check speed against distance in time for that point, if it's still a possible collision I'd do a stepwise refinement." CreationDate="2010-08-19T07:02:00.610" UserId="865" />
  <row Id="2914" PostId="590" Text="He could be making a pool game for all you know." CreationDate="2010-08-19T07:03:17.407" UserId="865" />
  <row Id="2915" PostId="2723" Score="1" Text="Yes, it's not trivial, it's mostly trial and error and sudden ideas that may or may not work, with patches to hack out the edge cases. It's great fun and a nice challenge to play around with though. It's also one of the holy grails of gamedev. The part that it's not well documented is that once you start implementing it you end up exploring many many avenues and in the end it's hard to backtrack what worked and why, and what the heck you did with that one algorithm that worked so well but that you somehow ended up modifying till it broke." CreationDate="2010-08-19T07:16:17.580" UserId="865" />
  <row Id="2916" PostId="2916" Score="1" Text="An articulated body is not light on a physics engine as many shapes will be close to eachother and need to be tested for penetration (assuming they are jointed close together). What amount of shapes, what kind of shapes and what kind of contraints are involved?" CreationDate="2010-08-19T07:34:26.770" UserId="865" />
  <row Id="2917" PostId="2940" Score="1" Text="As jpaver mentioned, the scale can be deduced from the length of the three axes in your rotation matrix, which are, depending on your setup, either the rows or columns of the matrix." CreationDate="2010-08-19T07:39:34.997" UserId="865" />
  <row Id="2918" PostId="2906" Text="Yes, I was expecting that the environment would be large enough that from the camera viewpoint it would look like like a perturbed plane.  It would probably be an interesting design choice for it to be small enough to give the feel of running about on the surface of a &quot;small 3D planet&quot; - probably not 100% original, but still fun." CreationDate="2010-08-19T07:51:52.360" UserId="1738" />
  <row Id="2919" PostId="2708" Score="1" Text="&quot;Just create ONE successful game&quot; ... easier said than done." CreationDate="2010-08-19T08:05:58.847" UserId="490" />
  <row Id="2920" PostId="2903" Text="Excellent point Kaj." CreationDate="2010-08-19T08:21:11.743" UserId="678" />
  <row Id="2921" PostId="2963" Text="yeah I was thinking a Worms-like terrain. Could you divide it in to tiles dynamically, then just mark empty tiles to not be checked? If there were a lot of missiles at once maybe that would speed things up a bit?" CreationDate="2010-08-19T08:28:49.993" UserId="119" />
  <row Id="2922" PostId="2944" Text="I was thinking about a destructible bitmaps terrain like in Worms. Could you dynamically generate primitives from a bitmap or would that be too crazy?  " CreationDate="2010-08-19T08:30:04.017" UserId="119" />
  <row Id="2923" PostId="2962" Text="This is a good answer. And it does make sense." CreationDate="2010-08-19T08:46:26.083" UserId="919" />
  <row Id="2924" PostId="2963" Text="So do you think I shoudld move forward pixel by pixel, checking intersection, rather than stepping backwards?" CreationDate="2010-08-19T08:49:58.010" UserId="119" />
  <row Id="2925" PostId="2963" Text="I think all three answers have suggested a forward search. Checking backwards isn't going to work if the forward step makes it skip over some scenery.&#xA;" CreationDate="2010-08-19T09:07:15.160" UserId="1091" />
  <row Id="2926" PostId="2934" Text="@Nate - lighting and shading is still an artist issue. I can assure you its possible to get good looking scenes with even the simplest of shading (or the lack there of) :)" CreationDate="2010-08-19T09:14:17.523" UserId="1716" />
  <row Id="2927" PostId="2965" Score="2" Text="Comments with such experience should post links to the engines that you have created (those ones that are far better of course). You could sell that? How about the games that you have completed that look better ? Id love to see some of these links :) " CreationDate="2010-08-19T09:16:19.067" UserId="1716" />
  <row Id="2928" PostId="2958" Text="I know how to implement it from a technical standpoint. I'm more looking for game design suggestions." CreationDate="2010-08-19T10:16:55.227" UserId="678" />
  <row Id="2929" PostId="2939" Text="So when you turn around and start going in the opposite direction, you eventually see you opponent emerging from the mist, without a clue that he might be there before he does?&#xA;" CreationDate="2010-08-19T10:20:07.563" UserId="678" />
  <row Id="2930" PostId="2942" Text="just saying &quot;sweep test&quot; doesn't actually help me though. How do I do it with a bitmap terrain?" CreationDate="2010-08-19T10:20:20.043" UserId="119" />
  <row Id="2931" PostId="2906" Text="Yes, I'm aiming more for a &quot;largish arena&quot; feel than an &quot;entire planet&quot; feel. I probably should have mentioned that in the question." CreationDate="2010-08-19T10:22:39.573" UserId="678" />
  <row Id="2932" PostId="2933" Text="Well, in the game i'm making (a shmup) i had to deploy a &quot;framework&quot; for weapons and projectiles and ships, and i can't imagine how it would have worked if had tried to grow the framework in an ad-hoc manner. Actually, i can: i probably would have ended up with a mess :P" CreationDate="2010-08-19T10:32:36.413" UserId="1004" />
  <row Id="2933" PostId="2473" Text="`s/moral/morale`" CreationDate="2010-08-19T10:32:56.040" UserId="1004" />
  <row Id="2934" PostId="2483" Score="3" Text="During the prototypes try to take out everything that seems un-fun until you only have things that are fun. " CreationDate="2010-08-19T10:57:03.047" UserId="83" />
  <row Id="2935" PostId="2964" Text="When I said the platform was very limiting, I was not kidding: there is a 1-2 sec refresh rate. If it were a little bit better, I'd do as you suggested, however for now, the navigation will be along the axis pressed to the first open tile, with a slant to the pressed direction versus perpendicular to it." CreationDate="2010-08-19T11:14:17.993" UserId="1684" />
  <row Id="2936" PostId="2916" Text="I'm using exactly 1 vehicle and a few boxes on a flat terrain. 2 vehicles was too much. With ODE, I think the vehicle is especially the problem since it is using 4 hinge joints." CreationDate="2010-08-19T12:28:03.333" UserId="1505" />
  <row Id="2937" PostId="2927" Text="It looks like I will have to learn ARM VFP and NEON assembly to improve that area in Bullet.&#xA;" CreationDate="2010-08-19T12:37:57.493" UserId="1505" />
  <row Id="2938" PostId="2934" Score="1" Text="I'm adding this as a comment rather than an answer because although I'm a customer of Garage Games (as Torque was previously known), I have no experience of TorqueX. IMO, the company is unfocussed with too many products for the number of staff they have. They have recognised this to some extent and put most of their effort into their premier Torque3D engine in past 2 years. The consequence is that other 'lesser' products have suffered from a lack of attention. " CreationDate="2010-08-19T13:05:04.693" UserId="93" />
  <row Id="2939" PostId="2916" Text="Are you using btRaycastVehicle? I see you said the terrain is flat, but what kind of physics primitive is it? just a plane?" CreationDate="2010-08-19T13:27:26.093" UserId="1597" />
  <row Id="2940" PostId="245" Text="If you're putting large binary files into your version control system,  you're doing it wrong (tm) anyway.  That's more a job for a backup system." CreationDate="2010-08-19T13:38:16.083" UserId="284" />
  <row Id="2941" PostId="630" Score="1" Text="@Click, the Wiki entry only lists two people for the *game* creation, not the *company* they formed to market it, so that's what I posted. You're right that it was significantly improved, though, I'll edit that." CreationDate="2010-08-19T13:48:38.367" UserId="165" />
  <row Id="2942" PostId="2934" Text="@Noctrine, I can understand re-opening it, but shouldn't it be a wiki? Not like there's one &quot;right&quot; answer..." CreationDate="2010-08-19T14:11:51.697" UserId="165" />
  <row Id="2943" PostId="2965" Text="I never said my engines were better, I said they follow my philosophy so I won't have to dig around to find out how to accomplish tasks, it's a different thing. I also never said any of the games I worked on looked better, I said that depends on the artists, much less on the engine - you can make a crappy looking game in Unreal 3 and a stunner in shockwave. As for the engines I did write professionallyy, they span from PSX to PS3, and I was core architect or part of the core architecure team on all of them. I just said it wasn't beginner friendly but also said it had some benefits." CreationDate="2010-08-19T15:01:54.043" UserId="865" />
  <row Id="2944" PostId="2963" Text="Yes, definitely forwards." CreationDate="2010-08-19T15:03:04.867" UserId="865" />
  <row Id="2945" PostId="2605" Score="1" Text="Any word on what happened to it?  Did you get a chance to talk to your instructor?" CreationDate="2010-08-19T15:18:24.570" UserId="290" />
  <row Id="2946" PostId="2914" Text="There has been much debate about this from both sides but I am on the side of having (some) designers write scripts. Raph Koster summarises this well (http://www.raphkoster.com/2007/11/02/using-scripting-languages/) by saying that design is not just about content but about systems, and thus designers need good tools to edit systems. A high level scripting language is one such tool." CreationDate="2010-08-19T15:20:55.553" UserId="1101" />
  <row Id="2947" PostId="2942" Text="Jason's suggestion seems to be best to me: one pixel at a time." CreationDate="2010-08-19T15:51:21.757" UserId="1232" />
  <row Id="2948" PostId="2960" Text="Careful with refer-a-friend. Assuming open trading, it can become easy for a player to &quot;refer&quot; themselves with a second account, then trade everything to their primary, which defeats the purpose." CreationDate="2010-08-19T16:04:20.983" UserId="458" />
  <row Id="2949" PostId="2973" Text="Is definitely game related, but you still might get a better answer on stackoverflow.com" CreationDate="2010-08-19T16:12:30.323" UserId="119" />
  <row Id="2950" PostId="2944" Score="1" Text="I'm sure you could, but it might be easier/faster just to do pixel by pixel testing for an arbitrary bitmap." CreationDate="2010-08-19T16:37:28.413" UserId="51" />
  <row Id="2951" PostId="2965" Score="2" Text="Yep, though my post sounded bitchy, i was actually curious. It's often where theres claims and no links (which is sad cos if there is so much potential alternative people are just being cagey). &#xA;&#xA;Also, I havent seen an engine that doesnt require learning first (digging around per say) :) &#xA;&#xA;And to be clear, im not rooting for any tech on purpose. Just playing a bit of devil's advocate for the discussion sake." CreationDate="2010-08-19T16:41:11.667" UserId="1716" />
  <row Id="2953" PostId="2960" Text="Usually you only get the bonus if the new account spends money (in most games it is after their first month's subscription goes through), but I agree it can be harder to manage with a free-to-play game." CreationDate="2010-08-19T17:03:33.633" UserId="395" />
  <row Id="2954" PostId="2965" Text="Fair enough. Yes, all engines require learning, and Torque actually does have a fair bit of documentation comparend to some others. I do believe Torque to be a tad shaky in the stability department, but there's not many alternatives in its price range - complete game engines that offer full source, so if you are up to debugging (or even enjoy it) it is certainly useful, as good games have been made with it and in the end that's where the proof is. Like I said, you can make great games with it, but you'll have to work. Having access to the sourcecode is definitely a plus." CreationDate="2010-08-19T17:12:04.323" UserId="865" />
  <row Id="2957" PostId="2984" Score="11" Text="+1 on the unsolicited design document comment. Sadly, there's no way you're going to get a studio to sign an NDA on a game design either. The smart investor typically doesn't get involved unless you can prove you can finish the implementation of your design." CreationDate="2010-08-19T18:07:41.803" UserId="1232" />
  <row Id="2958" PostId="2916" Text="Currently using Bullet's raycast vehicle and a plane for the terrain. ODE provides no raycast vehicle out of the box so I may go with Bullet simply for the speed advantage." CreationDate="2010-08-19T18:26:12.563" UserId="1505" />
  <row Id="2959" PostId="2981" Text="Hey good to see that you came here :)" CreationDate="2010-08-19T18:35:23.480" UserId="14" />
  <row Id="2960" PostId="2981" Score="21" Text="Nobody's gonna copy/steal your idea. Sorry, but there are millions of ideas out there, the value comes in being able to successfully execute that idea and make something real about it. This is a common pitfall I see in novice game developers." CreationDate="2010-08-19T18:37:29.840" UserId="48" />
  <row Id="2961" PostId="2985" Text="+1 It's all about execution, and only you can do YOUR idea." CreationDate="2010-08-19T18:50:53.510" UserId="14" />
  <row Id="2962" PostId="2981" Score="1" Text="@davr - You would be quite surprised. I agree successful execution is key, but ideas are still very valuable." CreationDate="2010-08-19T20:04:12.877" UserId="1198" />
  <row Id="2963" PostId="2978" Text="Thanks for this answer.&#xA;I didn't think of checking the current sample position but this is an excellent idea as it will not shift during pauses. Also LWJGL seems to already have its own events thread (the events received during a sleep are received in the correct order and with a 1ms precision) and their time are relative to the main timer. So it will simplify my job a lot :).&#xA;I'm a musician myself and I totally agree that offbeat rhythm game are not fun, that's why I want to be the more synchronized as possible and asked this question. :)" CreationDate="2010-08-19T20:18:35.853" UserId="1286" />
  <row Id="2964" PostId="2914" Text="Just to be clear, I am not against scripting languages. I strongly encourage scripting in game engines. I am against pretending that people who program are not programmers. Your job title might still be &quot;designer&quot;, but there's a guy with that title who is actually a writer, and a guy with that title who is actually an architect - you're the guy with that title who is actually a programmer. And just like if you ask a writer to build a level, if you ask non-programmer designers to write a script, you're going to get crap." CreationDate="2010-08-19T20:47:13.943" UserId="744" />
  <row Id="2965" PostId="2759" Text="Awarding the bounty to this one, but thanks to everyone else who provided suggestions!" CreationDate="2010-08-19T20:58:49.983" UserId="1553" />
  <row Id="2966" PostId="2908" Text="@Joe I think many &quot;heavyweight&quot; methodologies tend to prefer CYA over solid software.  Indeed, much of my non-agile experience tends to be &quot;it doesn't need to be right, it needs to be right now,&quot; whereas &quot;agile&quot; aims to say &quot;it needs to be right now, but do everything that you can to make stuff right as you go along.&quot;" CreationDate="2010-08-19T21:13:13.933" UserId="1780" />
  <row Id="2968" PostId="2984" Text="Or have lots of money yourself and pay for someone to do it for you." CreationDate="2010-08-19T21:22:07.793" UserId="469" />
  <row Id="2969" PostId="462" Text="Cool, FINALLY I know how to distribute my XNA 2.0 game (yep, I made a game when 2.0 was new, and I searched extensively but could not find how to make easy a installer that download all stuff needed for it to not crash on the poor user...)" CreationDate="2010-08-19T21:37:27.503" UserId="469" />
  <row Id="2971" PostId="2934" Text="Agreed. Made it so." CreationDate="2010-08-19T21:57:05.050" UserId="51" />
  <row Id="2972" PostId="2997" Score="2" Text="If I could UP you more than once I would, for all the pain that is the Torque series of products." CreationDate="2010-08-19T22:00:30.243" UserId="891" />
  <row Id="2973" PostId="2998" Text="Thanks! Yes, I meant the first kind (where the resolution is in real time but depends entirely on the order given before; no twitchy input required). While you say &quot;plenty&quot;, it seems like they're all board or card games, and few even in that space. Why doesn't that version of chess exist? Why not digital games ? Seems perfect for multiplayer turn-based strategy (which can get boring waiting for the other player to finish their turn; see Advance Wars)." CreationDate="2010-08-19T22:01:22.240" UserId="1553" />
  <row Id="2974" PostId="2999" Score="2" Text="I bet you will get good answer's but I would cross post here: http://forums.cgsociety.org/forumdisplay.php?f=2" CreationDate="2010-08-19T22:26:27.773" UserId="1024" />
  <row Id="2975" PostId="3000" Score="4" Text="Better answer than I could write. I'll just add that another option is to work with the artist you've found/hired to define the visual style together. They probably have more artistic training and skills than you do, and you should be able to trust them to come up with the right look, even if it's something a little different from what's in your mind's eye right now." CreationDate="2010-08-19T22:57:07.037" UserId="458" />
  <row Id="2976" PostId="3001" Text="Just played the demo for Laser Squad Nemesis --That's definitely the idea, and the game looks appealing, but the UI is... ugh. Well, I guess that highlights some of the potential issues :-)" CreationDate="2010-08-19T22:58:18.720" UserId="1553" />
  <row Id="2977" PostId="3001" Text="Zwok is kinda awesome! That's the right way to do it." CreationDate="2010-08-19T23:01:11.070" UserId="1553" />
  <row Id="2978" PostId="3002" Text="Good examples, though no precisely what I was thinking. FFs only have action going on at once, so it's basically just turn-based (but actions can be entered in real-time). I haven't played NWN, but I thought it was you can pause the game to issue real-time orders? Good thought, but wouldn't work multiplayer." CreationDate="2010-08-19T23:04:32.437" UserId="1553" />
  <row Id="2979" PostId="2998" Text="I think Age of Wonders did this. Sanctum (which I mentioned) also worked this way. I remember playing a console tactical-RPG a long time ago that worked this way, where you'd enter your squad's orders and then they and the enemies would move simultaneously (I forget the name, unfortunately).&#xA;&#xA;You see this as a solution to the problem in multiplayer games of having to wait for your opponents to move, but that's not really a full solution; one player can still finish early and have to wait for the others." CreationDate="2010-08-19T23:07:47.050" UserId="458" />
  <row Id="2980" PostId="2998" Text="Also, it makes a player's turn a lot more uncertain: you don't know exactly what will happen because what you order might not actually happen (e.g. if you try to move to an occupied location). Not all strategy players enjoy this kind of play, where they out-strategize the opponent only to be out-guessed and lose randomly (at least, that can be the perception), which I think is why it's not as common as &quot;pure&quot; real-time or turn-based." CreationDate="2010-08-19T23:09:49.433" UserId="458" />
  <row Id="2981" PostId="2998" Text="First thought was RoboRally. Basically all actions have the equivalent of an initiative value. That value determines who goes first even within the real-time segment. So you still are really doing sequential resolution of actions, but neither player knows who's move will go first during their strategy phase. " CreationDate="2010-08-19T23:32:13.937" UserId="154" />
  <row Id="2984" PostId="3002" Text="Yeah, pretty much. But even without the pausing effect of NWN, it's still turn-based and realtime. The turns are time-based, while the action is still realtime." CreationDate="2010-08-20T00:04:46.327" UserId="647" />
  <row Id="2985" PostId="2933" Text="Fair enough, but what you describe is really really small. By framework, I'm more thinking of a game engine, a script system, etc. Collection of classes/objects that you can't comfortably fit in your head if you want. What I said doesn't remove the need to think your object structure through." CreationDate="2010-08-20T00:12:12.817" UserId="1684" />
  <row Id="2986" PostId="2977" Text="Question is. Where will be market after 2 years?.I'm sure that our project is targeted after this time. We are focusing primary on technology and formation of production processes now and We want to do right things at the right time. We know that for production phase we will need much more people than We have now. But these things We can buy (if money :-)). Like We did before . We paid to able painter  for design creation and computer artists for basic bunch of models, textures and animations. Only what we need for testing, engine development and presentation. We are only two actually:-)." CreationDate="2010-08-20T00:19:43.830" UserId="1456" />
  <row Id="2987" PostId="3000" Score="1" Text="+1 to both reply and comment; just to add my own input: it's rare that anyone &quot;gets&quot; the visual style straight off the bat. Reference images go a long way to providing the initial data to your artist, but iteration can help get even closer to your vision." CreationDate="2010-08-20T00:50:31.397" UserId="1232" />
  <row Id="2988" PostId="2937" Text="Thanks I didn't think about that while commenting. I've since updated the comment to pick out the individual comments." CreationDate="2010-08-20T00:54:02.090" UserId="539" />
  <row Id="2989" PostId="3003" Score="4" Text="Presumably there's not a single &quot;best&quot; here, just that different tools are better than others in specific situations and there are tradeoffs with everything?" CreationDate="2010-08-20T01:04:28.373" UserId="458" />
  <row Id="2990" PostId="3003" Text="This is definitely subjective and should be CW. I have a feeling it will turn into a list." CreationDate="2010-08-20T01:06:50.647" UserId="189" />
  <row Id="2991" PostId="2473" Text="Edited the mispelling =p" CreationDate="2010-08-20T01:31:00.653" UserId="919" />
  <row Id="2993" PostId="2977" Text="But It's not question of the day. Main thing is engine. Target platform is PC and Windows but We hope that not only. In Future if money etc etc.We try to think and work like You set. Scalable. SystemLayer, InputDataLayer,DataModelLayer, RenderInterfacelayer, PhysLayer , RapidPrototypeLayer, EditorLayer,WorldGenerator, EngineCore etc. Then we implemented DX9 specification, constructed render and render pipelines in editor, made some tests and looking to future and asking questions now :-). Implementation of DX11 take some time, but it will push us to improve the rest of the engine. We think. " CreationDate="2010-08-20T01:43:03.153" UserId="1456" />
  <row Id="2994" PostId="462" Text="@speeder It's worth pointing out that the ClickOnce features were new in XNA 3.0, see this post here: http://blogs.msdn.com/b/astebner/archive/2008/09/18/8957968.aspx There are workarounds for 2.0 - although I think the easiest might be to upgrade from XNA 2.0 to 3.1." CreationDate="2010-08-20T01:57:00.670" UserId="288" />
  <row Id="2996" PostId="697" Text="This seems &quot;unethical&quot; to me, though I can't pinpoint why. +1 in any case." CreationDate="2010-08-20T02:58:41.817" UserId="1553" />
  <row Id="2997" PostId="2950" Score="2" Text="I was interested in Torque a while ago. And if you look around the net those negative comments are all over the place. I would recommend you take a look at Unity." CreationDate="2010-08-20T05:31:56.580" UserId="1804" />
  <row Id="2998" PostId="2864" Text="Thank full to you all." CreationDate="2010-08-20T06:11:23.740" UserId="1216" />
  <row Id="2999" PostId="3003" Text="I believe the &quot;game-design&quot; tag is intended for the actual game-play aspect, not the technology." CreationDate="2010-08-20T07:10:11.243" UserId="678" />
  <row Id="3000" PostId="3019" Text="PS: I saw that Ian mentioned Age of Wonders. That is specifically cited as an inspiration for Spacecrack." CreationDate="2010-08-20T07:14:21.093" UserId="678" />
  <row Id="3001" PostId="2981" Score="1" Text="Btw, if you are the same Dalilean as on DeviantArt, wow. Atmosphere is obviously your forte. I would exploit that as much as possible with really good concept art." CreationDate="2010-08-20T07:25:14.110" UserId="678" />
  <row Id="3002" PostId="2990" Text="Following on the playable demo comment, is it within the realm of possibility to get anything like that going either by yourself or with a few trusted associates? It would really help with the elevator pitch." CreationDate="2010-08-20T07:27:55.257" UserId="678" />
  <row Id="3003" PostId="3017" Text="Also of note, pretty sure none of these (other than &quot;HTML5&quot;, aka. JS+Canvas+CSS+HTML+etc) will run on all the various mobile platforms (yes you can package Unity games for iPhone and such, but that is different than using the web player)." CreationDate="2010-08-20T07:44:34.047" UserId="395" />
  <row Id="3004" PostId="3008" Text="Agree, except that unit tests don't force developers to write good code. There's another option: really badly written tests. You need commitment to the idea of unit tests from your coders to stop them getting jaded." CreationDate="2010-08-20T07:46:02.857" UserId="259" />
  <row Id="3005" PostId="436" Score="2" Text="Go go magic soap box. Lua is a noun not an acronym, you would never write JAVA.  Lua means moon.  You would not write MOON.  thanks - the Lau Nazi." CreationDate="2010-08-20T08:29:10.460" UserId="370" />
  <row Id="3006" PostId="2935" Score="1" Text="I wouldn't agree that the code is necessarily designed better as a result. I've seen plenty of abominations where a previously clean interface had to be smashed open and encapsulation broken in order to inject testable dependencies." CreationDate="2010-08-20T11:03:02.637" UserId="1101" />
  <row Id="3007" PostId="3030" Score="1" Text="`finalPositionDelta = -0.5 * sqr(currentSpeed) / maximumDeceleration` However this assumes that your deceleration is a constant, which depending on the depth of your simulation may not be the case. I'd go with Ranieri's solution. (whoops sorry it's DIV deceleration, not mul)" CreationDate="2010-08-20T11:18:54.927" UserId="259" />
  <row Id="3008" PostId="2915" Text="I will definitely try this, it seems really good" CreationDate="2010-08-20T11:43:29.323" UserId="115" />
  <row Id="3009" PostId="3006" Text="Java Web Start is only a distribution tool, it's possible to make a game playable directly, via JWS and an applet. IMHO, the main advantage of JWS is that it can install your application in 1 click and update it automatically using the JNLP file.&#xA;So accessing to native level resources can also be done in an applet (LWJGL can work in an applet). But if you want to have a native access, it will display a warning unless you have (buy) a certificate from a certificate authority." CreationDate="2010-08-20T12:34:37.217" UserId="1286" />
  <row Id="3010" PostId="3007" Score="1" Text="@Ricket, you really are missing out if you haven't at least *tried* the Unity Engine. It can generate a standalone executable for desktop OS (PC and Mac, no Linux), so you don't even need the browser plugin, to experiment with development in Unity. C'mon, *get it*, you know you want to. :)" CreationDate="2010-08-20T13:41:43.477" UserId="165" />
  <row Id="3011" PostId="3038" Text="Great for boids or space ships, but to apply them to vehicle physics you have to interpret the resulting vector, and you're back to the original problem again." CreationDate="2010-08-20T15:23:17.567" UserId="259" />
  <row Id="3012" PostId="2997" Text="When you switched mid-development, what did you switch to?" CreationDate="2010-08-20T15:29:26.877" UserId="1198" />
  <row Id="3013" PostId="622" Text="Wouldn't WCF introduce latency, or would you use a custom binding that talked raw sockets?" CreationDate="2010-08-20T15:31:23.850" UserId="1198" />
  <row Id="3014" PostId="1013" Score="1" Text="Developers have been using pathfinding algorithms like A* and Dijkstra on far less powerful hardware for decades (think Game Boy).  Any phone new enough to have a screen adequate for gaming shouldn't have a problem, provided of course that the implementation is reasonably efficient.&#xA;&#xA;There are some nifty optimizations discussed here: http://harablog.files.wordpress.com/2009/06/beyondastar.pdf" CreationDate="2010-08-20T15:33:23.817" UserId="136" />
  <row Id="3015" PostId="3040" Score="1" Text="Here's a video of a combat session in BotF: http://www.youtube.com/watch?v=26cuUjrRnNw" CreationDate="2010-08-20T16:36:10.557" UserId="136" />
  <row Id="3016" PostId="2176" Text="I've decided to go with Box2D. I've kinda cancelled work on my game until I figure out how it works, and I found a great set of tutorials here: http://www.kerp.net/box2d/index.php Since you mentioned Box2D first, I'll accept yours even if it is really late. :p" CreationDate="2010-08-20T16:50:35.873" UserId="354" />
  <row Id="3017" PostId="3028" Text="I don't see any documentation on that in the best practices (http://code.google.com/p/cocos2d-iphone/wiki/BestPractices) could you share me some links/or an example.&#xA;&#xA;BTW I am NOT drawing from this scheduled selectors.&#xA;" CreationDate="2010-08-20T17:07:39.920" UserId="666" />
  <row Id="3018" PostId="2993" Text="+1 just for reminding people to look outside of games for ideas. Game designs are all too often just based on other games." CreationDate="2010-08-20T17:11:57.073" UserId="1101" />
  <row Id="3019" PostId="622" Text="Well, if he needs a telnet interface, WCF probably isn't a good choice anyway; I suspect it'd be overkill.  But I wouldn't think latency would be an issue considering the information being sent back and forth would be relatively simple--certainly simpler than the payloads of many web services.  I use WCF for a fairly complex turn-based strategy game, and I have not had any performance problems.  I keep the payload small with custom serialization, and latency isn't an issue because messages aren't sent back and forth very often (for my project, most messaging happens at the end of each turn)." CreationDate="2010-08-20T17:20:58.697" UserId="136" />
  <row Id="3020" PostId="2976" Text="FYI, the garbage collector has been substantially improved in .NET 4.  It now supports background collection of all three generations of objects, but I don't know if/how the changes might affect issue #3 on your list.  If anyone knows, please share :)." CreationDate="2010-08-20T17:46:21.200" UserId="136" />
  <row Id="3021" PostId="3028" Score="1" Text="Actually according to http://www.cocos2d-iphone.org/wiki/doku.php/prog_guide:draw_update &quot;Each node, by default, has no updates. If you want to update the state of your node you should schedule a callback&quot;." CreationDate="2010-08-20T17:59:01.117" UserId="666" />
  <row Id="3022" PostId="3046" Score="1" Text="The &quot;lack of instant gratification&quot; is an interesting point.  I think it really depends on the scale of combat in the game.  If you have only a handful of units, then one might prefer to see an immediate result.  But for large-scale battles (e.g. fleet-based space battles), I'd find it less gratifying to see the battle proceed one unit at a time.  The delay seems like a fair trade-off when you get to witness the resulting fleet actions carried out in an epic battle, even if the battle is broken up  into turns." CreationDate="2010-08-20T18:16:06.777" UserId="136" />
  <row Id="3023" PostId="2622" Text="When using the built-in binary formatter, excluding certain fields from serialization in C#/.NET is as simple as adorning them with the [NonSerialized] attribute.  What's easy to overlook, however, is that compiler-generated events (i.e. any event without custom add/remove operators) create a backing field to store their subscribers.  Thus, it's easy to accidentally (and unknowingly) include event handlers in a serialized object graph.  To get around this, you need to add the NonSerialized attribute to the event declaration, but you need to add the &quot;field:&quot; qualifier: `[field: NonSerialized]`" CreationDate="2010-08-20T18:33:30.453" UserId="136" />
  <row Id="3024" PostId="3037" Score="1" Text="I'm not worried about taking shortcuts if it's invisible to the player, but if a vehicle could stop dead on the spot it would look very strange." CreationDate="2010-08-20T18:37:29.947" UserId="119" />
  <row Id="3025" PostId="1670" Score="4" Text="It will be interesting to see whether Windows Phone 7 changes the game here any. You have to use XNA if you want to develop 3D games for WP7, which means it's profile within AAA studios may raise." CreationDate="2010-08-20T18:47:39.193" UserId="1813" />
  <row Id="3026" PostId="2914" Score="4" Text="I didn't hear anyone suggest that designers should be writing complex, mission-critical scripts for production.  However, designers with a modest understanding of programming could still tweak some scripts experimentally (and then hand them off actual programmers).  They could certainly write simple ad hoc scripts from a console at runtime to facilitate their own testing.  I imagine designers might want to leverage basic scripting in order to prototype new screen designs (even if they're nothing more than semi-functional, interactive mockups).  Plenty of non-production code needs writing." CreationDate="2010-08-20T18:52:09.590" UserId="136" />
  <row Id="3027" PostId="1670" Score="7" Text="Given how unlikely it is that Windows phones will hit any useful market penetration, probably not so much." CreationDate="2010-08-20T18:52:41.477" UserId="395" />
  <row Id="3028" PostId="3007" Text="@Cyclops, well, it is a requirement of my game development course this semester, so I must submit to the ways of Unity in a month or two. Until then I will continue my Java+OpenGL R&amp;D :)" CreationDate="2010-08-20T18:53:21.100" UserId="189" />
  <row Id="3029" PostId="3044" Text="Sure it's complicated, but who's it complicated _for_? If it's complicated for the user, I can see the argument; if it's complicated for the game designer, well... that's their job, right?" CreationDate="2010-08-20T19:00:33.473" UserId="1553" />
  <row Id="3030" PostId="1973" Text="Well, the examples will clearly be subjective but the point is good. Every game would benefit from having playability. It's just hard to prove without getting subjective." CreationDate="2010-08-20T19:09:08.993" UserId="1217" />
  <row Id="3031" PostId="1984" Score="1" Text="Something I like is when games make the beginning a natural tutorial (like gears of war 2) and then highlight stuff later on in the game. Stuff that requires a certain button or activity that the player might have forgotten about." CreationDate="2010-08-20T19:17:36.810" UserId="1217" />
  <row Id="3032" PostId="3035" Score="1" Text="Thinking about it some more, one thing I'd add: since a lot of ideas are going to fail, find ways to fail faster and more cheaply. So, one skill that does help is learning how to do rapid prototypes, in paper when possible and with quick-and-dirty mockups if absolutely necessary." CreationDate="2010-08-20T19:47:57.747" UserId="458" />
  <row Id="3033" PostId="2950" Text="Unity is a much better engine/editor! +1 But it doesn't support XNA though." CreationDate="2010-08-20T20:15:13.790" UserId="891" />
  <row Id="3034" PostId="2887" Text="Great list.  Personally I find only negative value in singletons and globals because of the problems that come from shared (likely mutable) state.  I do not find the &quot;codegen&quot; problem to be an issue though; you either need to pass the pointers through registers or you need to do some sequence of operations to get it, I think it changes the code vs. data size sightly, but the sum will be about the same." CreationDate="2010-08-20T20:27:00.787" UserId="1780" />
  <row Id="3035" PostId="2781" Text="@Joe the key word is &quot;dependencies.&quot;  A function that accesses globals (or singletons or any other shared state) has implicit dependencies on all of those things.  It is much easier to reason about a bit of code if all of its dependencies are explicit which is what you get when the complete list of dependencies are documented in the argument list." CreationDate="2010-08-20T20:28:42.920" UserId="1780" />
  <row Id="3036" PostId="2943" Text="My question would be then, why use singletons at all?  I see that people like to wrap APIs with singletons or classes that consist only of static functions, but why bother with the class at all?  It seems even easier to me to just have the function calls (wrapped as you wish), but then internal to them access the &quot;global&quot; state.  E.g. Log::GetInstance()-&gt;LogError(...) could just as well be LogError(...) which internally accesses any global state without requiring the client code to know about it." CreationDate="2010-08-20T20:31:43.367" UserId="1780" />
  <row Id="3038" PostId="3045" Text="I would love to hear from anyone experienced in UDK on these issues" CreationDate="2010-08-20T20:42:28.243" UserId="825" />
  <row Id="3039" PostId="2638" Text="Another way to avoid improve versioning support is to avoid having your objects' serialization/deserialization methods write/read individual values directly from a stream.  Instead, objects could write their owned data into a property bag using key/value pairs, and then write the bag out to the stream.  During deserialization, objects could read values from the bag by name.  But instead of having specific version number checks like kevin42 suggested, you could just have rules for how to handle missing values (i.e. use a standard default value when the required value isn't in the bag)." CreationDate="2010-08-20T21:32:36.537" UserId="136" />
  <row Id="3040" PostId="3008" Score="1" Text="Sure but that's no reason to throw the baby out with the bath water. Use tools responsibly but first use the tools." CreationDate="2010-08-20T21:40:48.250" UserId="539" />
  <row Id="3041" PostId="3015" Text="Yeah, that looks like the sort of thing done right... if you watch the video, though i seems *very* slow-paced (they mentioned playing multiple games at once). I wonder if there's a way to speed it up but still keep the mechanic?" CreationDate="2010-08-20T22:10:21.890" UserId="1553" />
  <row Id="3043" PostId="2991" Text="How long do you spend on a typical prototype?" CreationDate="2010-08-21T02:04:42.007" UserId="1821" />
  <row Id="3044" PostId="2887" Text="Yep, re the codegen, the only thing we've actually seen make a significant difference was going from individual globals to a globaltable: it shrunk the literal pools, and hence the .text section size, by several percent.  Which is a very nice thing on small systems.  =)  The performance benefits of not hitting the dcache quite so much for literals was just a nice (albeit tiny in most cases) side benefit.  One other advantage of moving to a global table was the ability to really easily move it to a section that resided in faster memory..." CreationDate="2010-08-21T03:54:52.333" UserId="1134" />
  <row Id="3045" PostId="2935" Score="1" Text="I find that happens more in instances where tests are written for pre-existing classes rather than the other way around.  " CreationDate="2010-08-21T04:26:55.617" UserId="292" />
  <row Id="3046" PostId="906" Text="WPF requires creating a managed stack.  In this case, I needed a pure Win32 / DirectX solution." CreationDate="2010-08-21T04:35:24.343" UserId="292" />
  <row Id="3047" PostId="2921" Score="3" Text="Unit testing isn't necessarily about making sure your application works correctly as a whole (i.e. functional testing).  It's more about making sure future changes don't break existing functionality.  Sure, a user can see when the spaceship is upside down, but when the pathing algorithm is off by .001, the effects may not be apparent until the game is played for 200 hours.  That's the kind of things unit tests can catch before the code ever goes out the door." CreationDate="2010-08-21T05:46:15.873" UserId="1810" />
  <row Id="3048" PostId="1316" Score="1" Text="Does that mean &quot;run around and shoot things,&quot; which sums up 90% of first person shooters, qualifies as fun?  Obviously it can be, but it can also be mind-numbingly repetitive." CreationDate="2010-08-21T05:50:42.153" UserId="1810" />
  <row Id="3049" PostId="2991" Text="A prototype need not be a vertical slice of the entire experience. More likely it is just some simple aspect of an unpolished product, like some new mechanic that needs to be proved to be feasible and fun. Therefore, the time to prototype an idea can easily range between an hour and a month depending on the complexity of the idea and the skills and tools you can leverage to get it done." CreationDate="2010-08-21T06:00:52.900" UserId="1232" />
  <row Id="3050" PostId="3036" Text="I cannot use this method because as I stated a floating range is non-divisible (not sliceable). So sampling is impossible. I already use this method for enumerations which are possible to sample.&#xA;&#xA;Also I've taken advice and moved this question to Math Stack&#xA;&#xA;http://math.stackexchange.com/questions/2584/combine-n-normal-distribution-probability-sets-in-a-limited-float-range" CreationDate="2010-08-21T08:13:18.050" UserId="465" />
  <row Id="3051" PostId="3026" Score="1" Text="Should probably be a community wiki?" CreationDate="2010-08-21T09:07:12.993" UserId="20" />
  <row Id="3052" PostId="597" Text="Hey - so I'm one of the Founders of Red Badger.  XPF is coming along very nicely, we're hoping to get a public beta out very soon.  We'll be making announcements on our blog http://red-badger.com/Blog&#xA;&#xA;@Cubed2D thanks for the mention!" CreationDate="2010-08-21T10:28:25.440" UserId="1813" />
  <row Id="3053" PostId="3047" Text="Did you texture the 'cube' in Blender and export the texture or is this a new texture you want to use?" CreationDate="2010-08-21T11:03:30.307" UserId="1543" />
  <row Id="3054" PostId="3037" Text="That is certainly true, however it helps to stop precisely at the point you want it to after a decelaration, thus avoiding complex calculation and having the divide your time step too many times." CreationDate="2010-08-21T11:27:33.403" UserId="1684" />
  <row Id="3056" PostId="3060" Text="wait, I'm having some troubles...when I try running code like your guy's code I get errors like this:&#xA;Syntax error: expected a definition keyword (such as function) after attribute b2PolygonShape, not shape." CreationDate="2010-08-21T14:22:54.267" UserId="354" />
  <row Id="3057" PostId="3036" Text="Ok, let's move there." CreationDate="2010-08-21T15:53:12.900" UserId="678" />
  <row Id="3058" PostId="3047" Text="I only have a simple material on the cube in Blender just so the texture coordinates export.  The textures on the top and bottom faces are runtime textures.  The sides can be exported with the object (if possible).  Maybe this is a limitation of exporting everything as an Objective-C header file... ??" CreationDate="2010-08-21T18:01:27.453" UserId="1745" />
  <row Id="3059" PostId="3066" Text="Great stuff thanks.  I had never considered building my own easy to load image format.  Is there an already built minimal texture loading library.  Then again it's basically a stream of bytes with a width, height, and encoding(ie GL_RGB555)." CreationDate="2010-08-21T18:23:39.390" UserId="370" />
  <row Id="3060" PostId="3066" Text="Don't so much build your own image format as get the image into the exact format that DirectX, GL, or whatever you're using wants.  =)  As far as libraries go: there are a ton out there.  For tools, I tend to just use the ImageMagick ( http://www.imagemagick.org/script/index.php ) library stuff or even the programs...  The ImageMagick code is old-school and a bit ugly, but pretty fast, flexible, and road-tested.  I'm sure others will have lots of other suggestions; if you're using e.g. C# for your toolchain, a lot of this stuff will already be built into .NET libs..." CreationDate="2010-08-21T18:40:12.460" UserId="1134" />
  <row Id="3061" PostId="3066" Score="1" Text="&quot;I'm sure others will have lots of other suggestions&quot; &#xA;&#xA;MFC! :) Or perhaps OpenIL. &#xA;&#xA;I think one of the important points about baking assets into platform-specific formats is that as you add more source formats and more platforms the number of combinations will explode. Converting the source assets into an intermediate format and then converting that into platform-specific formats will cut down on the number of conversion routes. Add another source format, just write a converter to the intermediate format. Add another platform, add a baker to that platforms target format." CreationDate="2010-08-21T19:31:46.320" UserId="1597" />
  <row Id="3062" PostId="3068" Text="Ya never know..." CreationDate="2010-08-21T20:31:07.637" UserId="1004" />
  <row Id="3063" PostId="1897" Text="As with the other comments, this will work for a stationary target but will likely be unacceptable for any moving targets.  The C0 and C1 terms are traditional damped spring stuff, where C0 represents the spring's strength (usually called `k`) and C1 is the damping factor (usually called 'B' or 'c').  So yes, you can minimize oscillation by cranking up the damping but the problem is that this does not try to anticipate where the target *will* be, so is doomed to lag the desired goal." CreationDate="2010-08-21T21:39:01.410" UserId="1780" />
  <row Id="3064" PostId="3066" Score="1" Text="I would add that keeping the complexity outside of the engine doesn't necessarily mean that functionality isn't available to the engine.  Keeping it separate though so it's easily divorced from the engine is key.  I can't stress enough how useful it is to support hot loading of assets, i.e. reloading things on the fly.  This too can bring a lot of complexity into your system though so you'll want to make sure it's built in such a way that the game doesn't need to care about where the assets are coming from." CreationDate="2010-08-21T21:48:06.693" UserId="1780" />
  <row Id="3065" PostId="2997" Score="1" Text="Cube 2 engine. Although it is open source, we had better support than Torque.&#xA;&#xA;First, it is the engine of more than one &quot;done&quot; games, meaning that it has no &quot;game breaking&quot; bugs. Second, the editor is easier to use than any other that I ever saw (unless you want to abuse organic shaped levels... like, a tree, or alien stuff), even easier than Unreal, or Unity, or Quake-derived (like Source), you can fiddle with the source if you want, it is multiplatform, use industry standard file formats (like md3 and md5, Torque you needed converters or use their editor), and the authors ALWAYS replied FAST" CreationDate="2010-08-21T22:02:13.640" UserId="469" />
  <row Id="3066" PostId="2997" Text="What I mean with reply fast is: I could show up in the engine development Irc channel, ask a question, and get a response in some hours if noone have time (usually the response was in less than 5 minutes).&#xA;&#xA;AND if you want even better support, the authors have a company set-up for that (they actually can make the entire programming of the game for you, if you want to...)" CreationDate="2010-08-21T22:03:44.543" UserId="469" />
  <row Id="3067" PostId="2997" Text="Oh, just a note: our target was PC (not XBOX 360... basically because our XBOXes we could not make them work properly, because of issues making creators club account in our country...)" CreationDate="2010-08-21T22:05:05.150" UserId="469" />
  <row Id="3068" PostId="2977" Text="I expanded my answer, see above." CreationDate="2010-08-21T23:52:08.510" UserId="831" />
  <row Id="3069" PostId="3031" Text="Great answer. This has been an issue on prototype project - eg &quot;what do you mean you need it as PNG, not TGA?&quot;" CreationDate="2010-08-21T23:56:58.283" UserId="831" />
  <row Id="3070" PostId="2500" Text="Original approach, +1." CreationDate="2010-08-21T23:57:31.433" UserId="1677" />
  <row Id="3071" PostId="3031" Text="I had some severe issues with this myself, no matter how much I explained, some artists plainly don't understood...&#xA;&#xA;One was particularly annoying, I told him: &quot;Don't USE IK or CONTROLLERS!&quot; and he used them... and the animator animated that, only to me get the files and reject because the engine won't load it. He was really upset with me, because I &quot;don't explained&quot;, and I explained again, and he still did it wrong, only later I would realize that I had to say: &quot;use bones, those ones here in this menu, not the other ones in that menu in your 3D application...&quot;" CreationDate="2010-08-22T00:56:57.837" UserId="469" />
  <row Id="3072" PostId="2835" Text="are there any simple game engines which simple support lua scripting for character AI modelling?" CreationDate="2010-08-22T02:56:34.257" UserId="1734" />
  <row Id="3073" PostId="3074" Text="Off-topic for Game Developers. I think you were aiming for Gaming but autocomplete got you." CreationDate="2010-08-22T03:43:09.930" UserId="14" />
  <row Id="3074" PostId="3062" Text="Yup; agreed all-round. I was thinking  way to solve this might be to allow units to only execute one command per turn (like most console TRPGS - FFT, Disgaea, etc.). This would reduce, if not eliminate, the issue. But I'm not sure if it would be enough to give players back that feeling of control" CreationDate="2010-08-22T05:52:46.050" UserId="1553" />
  <row Id="3075" PostId="2996" Score="1" Text="http://armorgames.com/play/5426/steambirds" CreationDate="2010-08-22T06:03:09.217" UserId="1004" />
  <row Id="3076" PostId="3074" Text="yeah...sorry posted it in the wrong forum, http://gaming.stackexchange.com" CreationDate="2010-08-22T07:39:26.137" UserId="1734" />
  <row Id="3077" PostId="1155" Text="...and as a format to share data between tools, it's a terrible idea except for the most trivial of datasets.  Unless all of the 3D packages are going to render every COLLADA file the same, you don't get the cross-package benefits that were touted." CreationDate="2010-08-22T09:39:05.450" UserId="1780" />
  <row Id="3078" PostId="2087" Text="If you write an exporter and then later can't figure out how to export some new piece of data that you need, then you shouldn't be writing tools.  Just sayin'." CreationDate="2010-08-22T09:41:21.750" UserId="1780" />
  <row Id="3080" PostId="3079" Text="I'm not handling keyboard events with sf::Event, rather sf::Input, because it's real-time detection IIRC. I tried to keep it as API-agnostic as possible. :P (The question, that is)" CreationDate="2010-08-22T11:01:35.493" UserId="1156" />
  <row Id="3082" PostId="2916" Score="1" Text="It's really hard to know what your performance-issues are without providing some sort of performance-trace. What's hogging your cycles, what is your integration time etc. It could be something as simple as your data being unordered all over the memory which causes unneccessary l2-cache misses. Please provide some sort of profiling so that we can investigate the issue further." CreationDate="2010-08-22T12:08:51.903" UserId="1580" />
  <row Id="3083" PostId="3083" Text="Too random. I don't think it would look as much like lightning. I could try it though" CreationDate="2010-08-22T12:54:31.560" UserId="1838" />
  <row Id="3084" PostId="2927" Score="2" Text="@mdat: take a look at https://code.google.com/p/vfpmathlibrary/ and surrounding https://code.google.com/p/oolongengine/ for inspiration =)" CreationDate="2010-08-22T15:11:37.477" UserId="1134" />
  <row Id="3085" PostId="3081" Text="@Calvin1602: Thanks for the answer.  Do you have some source code for your first answer?  I guess that's why I started investigating texture atlases..." CreationDate="2010-08-22T15:21:19.703" UserId="1745" />
  <row Id="3086" PostId="3083" Text="This is basically what I've done before in 2D; it worked out fairly well. The trick is to severely limit the deflection angle at each 'step' - lightning never really goes &quot;sideways&quot; so you're looking for something like 5 to 10 degrees off the current direction. I also forked out some very small branches of the lightning occasionally but that got kind of expensive.&#xA;&#xA;After about halfway you can start bringing it back around; it actually doesn't look bad if you just traverse the angles in reverse order so you end up with a symmetrical lightning fork." CreationDate="2010-08-22T15:35:56.933" UserId="96" />
  <row Id="3087" PostId="3075" Text="The sample you found will bleed you dry in 3d. It actually tries to solve the electrical equations. " CreationDate="2010-08-22T15:38:24.420" UserId="678" />
  <row Id="3088" PostId="3084" Text="This definitely interests me; would the input component register itself for certain events (something like playerInput registers 'left', 'right', etc) or would every input component that's registered receive all messages?" CreationDate="2010-08-22T16:35:09.973" UserId="1156" />
  <row Id="3089" PostId="3081" Text="@TReddy : No, not really, but simply create a texture large enough so that the 3 fit (and still power of two), memcpy (or the C# equivalent) 3 times, render." CreationDate="2010-08-22T17:42:53.927" UserId="1761" />
  <row Id="3090" PostId="2839" Text="@ZorbaTHut : Thanks for algo description + the admitted fail + the source code. Great post." CreationDate="2010-08-22T18:03:37.217" UserId="1761" />
  <row Id="3091" PostId="2991" Text="http://www.kloonigames.com/blog/ is &quot;the experimental monthly game project&quot;. Always SDL+box2D, always just a few hours/days. It eventually created World Of Goo. Hope this answers you question :)" CreationDate="2010-08-22T18:17:50.843" UserId="1761" />
  <row Id="3092" PostId="3084" Text="It really depends on your requirement and how you like to implement it. In my case listeners register themselves for specific events and implement the appropriate input handler interface. Having every input component receive all messages should work, but the message format needs to be more generic than what I have." CreationDate="2010-08-22T20:39:07.033" UserId="18" />
  <row Id="3093" PostId="3072" Text="Interesting. A bit of searching brought it up (look for &quot;melr1999.exe&quot; but be careful of viruses, I ran my copy in a sandbox because it supposedly had a trojan). In fact it's actually a Portuguese program, not fan-translated, and was freeware. Unfortunately it only generates four measures though, a perfect recipe for the most annoying background music ever. :)" CreationDate="2010-08-22T22:21:18.747" UserId="189" />
  <row Id="3094" PostId="3094" Text="Could you link to an example of this in action?" CreationDate="2010-08-23T01:09:37.853" UserId="1838" />
  <row Id="3095" PostId="3094" Text="http://www.youtube.com/watch?v=-fiZtLkOIQ4&amp;feature=related" CreationDate="2010-08-23T02:02:54.173" UserId="865" />
  <row Id="3096" PostId="3072" Text="Your version probably is better translated then :P I think that it is fan translated from japanese, because there are in the same style also &quot;Wave Raiser&quot; (and my version is english, and some strings empty), and the &quot;Melody Raiser&quot; have japanese characters to edit the music." CreationDate="2010-08-23T02:39:41.507" UserId="469" />
  <row Id="3097" PostId="3075" Text="Eww. But I still want to use it :O" CreationDate="2010-08-23T03:08:48.063" UserId="1838" />
  <row Id="3098" PostId="3092" Text="Yes the player will be able to tell the difference and there are a few effects this has on gameplay, but it's more of a 'gimmick' for fun at the moment. Sort of like the wound system in Dwarf Fortress, which is also very detailed but negligible. But as you already mentioned it is a lot of fun to work on and that is my main focus right now." CreationDate="2010-08-23T05:02:30.033" UserId="1135" />
  <row Id="3099" PostId="3098" Text="Given that, what's the alternative? How can you maintain depth in your draw buffer and also acquire the depth component as a texture?" CreationDate="2010-08-23T06:24:11.677" UserId="1628" />
  <row Id="3100" PostId="3094" Text="Hmm. Looks okay... but it doesn't really look &quot;lightningty&quot;" CreationDate="2010-08-23T06:38:37.483" UserId="1838" />
  <row Id="3101" PostId="3099" Score="2" Text="HTML5 canvas is still reserved for FanBoys! It is still stupidly slow, and not as accessible as Apple would have you believe." CreationDate="2010-08-23T06:47:25.937" UserId="1163" />
  <row Id="3102" PostId="3094" Text="I guess you'd have to add more (and thinner) forks, more random segment lengths, play with the delay, select your (forked) endpoints wisely. Sorry, it was the closest I could think of, and it was a couple of years ago - I bet it could be improved, but at least it's a starting point?" CreationDate="2010-08-23T07:07:15.023" UserId="865" />
  <row Id="3103" PostId="3094" Text="http://www.youtube.com/watch?v=lAPTrlTq0q4&amp;feature=related around the 8 second mark...looks lightningey to me? Alternatively, there are some vids on the net of highly slomo lightning, analyze and try to break it down." CreationDate="2010-08-23T07:44:53.590" UserId="865" />
  <row Id="3104" PostId="3104" Text="I never used XNA, does it have a scenegraph on its own ? " CreationDate="2010-08-23T08:30:53.840" UserId="1761" />
  <row Id="3105" PostId="3098" Text="@Rushyo : An alternative could be to get rid of the stencil buffer (if possible!) and make the depth renderbuffer a depth texture. Why are you using a stencil ?" CreationDate="2010-08-23T08:34:46.967" UserId="1761" />
  <row Id="3106" PostId="3035" Text="&quot;Fail early, fail often&quot; (plenty of links on google)" CreationDate="2010-08-23T08:36:34.610" UserId="1761" />
  <row Id="3107" PostId="3098" Text="Essentially whenever I acquire the depth texture, my depth tests break. If I attach a depth attachment to my FBO, the FBO doesn't write any depth information elsewhere - so when I try to retrieve the color attachment there's no depth testing on it (which their normally is if I don't have a depth attachment). I've tried every combination I can think of, including the aforementioned 'cumbersome and slow' method. Whatever I do I can't get both a 'typical' render of my scene in one texture and just the depth in another." CreationDate="2010-08-23T08:49:50.260" UserId="1628" />
  <row Id="3108" PostId="3098" Text="@Calvin1602 When I was dabbling with the renderbuffer, I found that using the depth attachment without the stencil attachment produced unwanted results." CreationDate="2010-08-23T09:13:03.757" UserId="1628" />
  <row Id="3109" PostId="3098" Text="@Rushyo I bet you're not setting up the texture correctly, posting code will allow us to help :)" CreationDate="2010-08-23T11:41:42.963" UserId="35" />
  <row Id="3110" PostId="3104" Text="No. XNA is a bit lower level than that. You would have to write your own." CreationDate="2010-08-23T11:45:37.077" UserId="288" />
  <row Id="3111" PostId="3098" Text="@Rushyo : IMHO you should begin by this problem. What hardware do you get ? How do you setup your FBO ?" CreationDate="2010-08-23T11:46:34.843" UserId="1761" />
  <row Id="3112" PostId="3098" Text="I'll post a full code dump tonight when I've got access to my workstation. It's C#/OpenTK. It's seen many many iterations, so I'll just post the latest. Appreciate the assistance!" CreationDate="2010-08-23T12:30:07.233" UserId="1628" />
  <row Id="3113" PostId="2981" Text="Yeah, this is the same Dalilean. Wow, I am a celebrity...just kidding. Thanks for the comment though. I really apreciate it." CreationDate="2010-08-23T13:03:30.147" UserId="1779" />
  <row Id="3114" PostId="3113" Score="1" Text="Try the gaming stackexchange? Unless you're developing one, it doesn't really belong here." CreationDate="2010-08-23T13:09:32.583" UserId="1156" />
  <row Id="3115" PostId="3114" Score="2" Text="When I said public, I meant it in the sense of &quot;Don't close the doors to your design process, let people see what your doing as your doing it&quot; Not make it a full on Community Project. :p" CreationDate="2010-08-23T13:21:35.273" UserId="14" />
  <row Id="3116" PostId="3113" Text="As it is, this just looks like a [game-rec] over at Gaming. But reading the topic it seems like this could be development related, if you feel as though I closed this in error please tell me here." CreationDate="2010-08-23T13:30:29.950" UserId="14" />
  <row Id="3118" PostId="3113" Text="I could see it being development related if you were asking for routines to generate games, but not just fishing for links." CreationDate="2010-08-23T14:44:46.260" UserId="1597" />
  <row Id="3119" PostId="3044" Score="1" Text="It's complicated for the developer. Complications mean extra development time and cost, and possibly the increased chance of bugs, and maybe difficulty testing and balancing gameplay. A decision has to be made, and often it's worth dropping some of the requirements so that you can do a better job on the other ones." CreationDate="2010-08-23T14:50:08.433" UserId="1101" />
  <row Id="3120" PostId="3030" Text="Yeah, this method is still useful even if you frame it as a control systems problem, because understanding the gradients involved should help avoid instability or oscillation in the error measurement." CreationDate="2010-08-23T14:56:19.030" UserId="1101" />
  <row Id="3121" PostId="1438" Text="`const Vector3 = doSomething()`? Then the return-value optimisation can kick in and probably elise an assignment or two." CreationDate="2010-08-23T15:22:14.453" UserId="259" />
  <row Id="3122" PostId="2916" Text="Thanks. I'm looking for general non-specific performance tips and optimizations. For example, neither Bullet or ODE offer SIMD optimizations on ARM, so that will be one area that will need to be improved." CreationDate="2010-08-23T15:26:19.303" UserId="1505" />
  <row Id="3123" PostId="3079" Score="1" Text="But I think the point Calvin1602 is making is that your original statement in the question of &quot;I have to poll, rather than do callbacks because of API limitations (SFML)&quot; is not true; you have events, so you can issue a callback when you handle an event." CreationDate="2010-08-23T15:31:00.110" UserId="1101" />
  <row Id="3124" PostId="3114" Score="1" Text="See, And I thought I was the one getting lost in translation. lol" CreationDate="2010-08-23T17:16:04.267" UserId="1779" />
  <row Id="3125" PostId="402" Score="17" Text="And 99% of statistics are made up." CreationDate="2010-08-23T19:04:04.247" UserId="430" />
  <row Id="3126" PostId="3121" Text="FYI, in every instance that I've checked (which is, I think, darwin gcc and vc2008), std::copy will just compile to a call to memcpy if both types are POD." CreationDate="2010-08-23T19:08:15.767" UserId="430" />
  <row Id="3127" PostId="3121" Text="Also, RE: STL vector vs plain arrays, why not use the nice parts of vector and use normal C pointers instead of iterators if you don't like them?  You can just do &amp;myvector[N].  It's like the best of both worlds, assuming your C code does memory allocation the same way.  Or, in for loops, check out BOOST_FOREACH.  Makes it even simpler than C." CreationDate="2010-08-23T19:15:18.840" UserId="430" />
  <row Id="3128" PostId="3112" Text="Thanks for the reply.&#xA;&#xA;re: #1 - This doesn't answer my question at all.&#xA;&#xA;re: #2 - Do you have any citations, or any more information?&#xA;&#xA;re: #3 - I know about the SceneCapture* actor classes, but it seems like they're limited to capturing a &quot;normal&quot; view of the scene. I specifically asked about being able to do a projective depth comparison.&#xA;&#xA;I've certainly tried to get what I want out of the tools available in the UDK, and that's exactly how I formulated this list of questions." CreationDate="2010-08-23T19:21:00.297" UserId="101" />
  <row Id="3130" PostId="2981" Text="to @davr:&#xA;I do have to say one thing. There are a million ideas out there. Most of them useless, alot of them undeveloped, some of them futile. But it just takes 1 good idea to make a hit. I seriously think you are underunderrating the importance of a good inicial concept. &#xA;&#xA;If any idea is good, then the only defining factor would be execution. &#xA;That is not the case." CreationDate="2010-08-23T20:07:54.710" UserId="1779" />
  <row Id="3131" PostId="1130" Text="Flash is not (just) an engine, it's an entire platform." CreationDate="2010-08-23T20:30:07.583" UserId="1163" />
  <row Id="3133" PostId="855" Text="On IA32 you've got CMOVcc instead." CreationDate="2010-08-23T23:22:25.003" UserId="1143" />
  <row Id="3134" PostId="3131" Text="Should this be community wiki?" CreationDate="2010-08-23T23:23:27.200" UserId="1863" />
  <row Id="3135" PostId="3131" Score="4" Text="I don't think so." CreationDate="2010-08-23T23:24:35.717" UserId="189" />
  <row Id="3136" PostId="2893" Text="A down vote? Don't forget that the original Worms ran on the Amiga which had a Motorola 68000 CPU - an integer only unit with no FPU whatsoever." CreationDate="2010-08-23T23:28:27.443" UserId="1143" />
  <row Id="3137" PostId="3132" Score="1" Text="Game dynamics are too powerful to let one person keep a &quot;competitive advantage.&quot;" CreationDate="2010-08-23T23:36:20.080" UserId="1863" />
  <row Id="3138" PostId="3132" Text="I'm thinking and going through my game design books, I'll surely be editing this answer a few times before I give up. Already just after your comment I added one that I think might be good." CreationDate="2010-08-23T23:37:47.240" UserId="189" />
  <row Id="3139" PostId="852" Text="I think that even just two options (where you start a quest and you either succeed or fail, with different outcomes) is both more interesting and yet still manageable." CreationDate="2010-08-24T00:35:54.300" UserId="284" />
  <row Id="3140" PostId="3131" Score="2" Text="I have a hard time believing that there are only/exactly seven game dynamics.  Anyone looking to keep their list of dynamics a secret is looking to extract money from players on an ongoing basis." CreationDate="2010-08-24T00:46:57.833" UserId="1780" />
  <row Id="3141" PostId="1393" Score="3" Text="While having a fixed maximum amount of currency in play at any time does indeed create an economy, I don't see why that amount would have to stay at any exact integer number.  For example, instead of having 23423423 coins available at any point in time, you could have 500 coins available per active account, and create more if the currently available number of coins fell below that maximum.  In that way, while resources would remain limited, they could still expand dynamically to suit play." CreationDate="2010-08-24T00:58:47.390" UserId="284" />
  <row Id="3143" PostId="1873" Text="The WM_ messages are certainly the simplest, but &quot;best&quot; only if you don't care about missed events.  I abandoned that solution once I realized it was an intractable problem; if your application loses focus while a key is down, that key will be &quot;stuck&quot; until you press it again in-focus." CreationDate="2010-08-24T01:58:14.883" UserId="1780" />
  <row Id="3144" PostId="3132" Text="*Back at scavenger we like to joke that with seven game dynamics you can get anyone to do anything...*  As I figured- it's a method to milk money out of people, and he's not claiming that they believe that there are only seven, just that they only need to implement seven to do their extraction." CreationDate="2010-08-24T02:14:10.403" UserId="1780" />
  <row Id="3145" PostId="171" Score="1" Text="For a 3D game, or even one without integral positions, this can be further expanded by rendering circle or sphere gradients of some radius." CreationDate="2010-08-24T02:17:23.377" UserId="1780" />
  <row Id="3146" PostId="2222" Text="I would suggest looking at scaling the dot product (instead of the final result) by the restitution value so that you don't affect the velocity parallel to the surface.  You may also consider a different coefficient for that value although it'd be a slightly more complicated insertion into that equation." CreationDate="2010-08-24T02:19:35.650" UserId="1780" />
  <row Id="3147" PostId="870" Score="2" Text="See also the excellent Pitfalls of Object Oriented Programming presentation (Sony R&amp;D) ( http://research.scee.net/files/presentations/gcapaustralia09/Pitfalls_of_Object_Oriented_Programming_GCAP_09.pdf ) -- and the cranky but fascinating CellPerformance articles by Mike Acton ( http://cellperformance.beyond3d.com/articles/index.html ).  Noel Llopis's Games from Within blog also touches on this subject frequently ( http://gamesfromwithin.com/ ).  I cannot recommend the Pitfalls slides enough..." CreationDate="2010-08-24T02:24:27.217" UserId="1134" />
  <row Id="3148" PostId="3140" Score="1" Text="This seems better for the gaming SE maybe? Its a fine line, but there might be more expertise over there." CreationDate="2010-08-24T03:19:56.367" UserId="395" />
  <row Id="3149" PostId="3140" Score="1" Text="Should be at http://gaming.stackexchange.com" CreationDate="2010-08-24T03:48:44.927" UserId="14" />
  <row Id="3150" PostId="3140" Score="6" Text="Noctrine, the community there has said it's not on topic for them: http://meta.gaming.stackexchange.com/questions/562/do-mod-development-questions-belong-here and the discussion on our meta points to yes: http://meta.gamedev.stackexchange.com/questions/58/do-mod-and-map-making-questions-belong-here, reopening." CreationDate="2010-08-24T04:24:39.317" UserId="51" />
  <row Id="3151" PostId="3140" Text="@Tetrad, it feels so weird. But after reading the gaming communities thread I agree." CreationDate="2010-08-24T04:34:59.600" UserId="14" />
  <row Id="3152" PostId="3134" Text="Ok, I figured out your problem, I updated my answer." CreationDate="2010-08-24T05:04:38.633" UserId="962" />
  <row Id="3153" PostId="3134" Text="Thank you very much. That did fix the problem. So very odd how the lines seem to cause all sorts of odd issues. I wonder if there is a way to fix it, but either way this will work perfectly as a work around. Thanks again." CreationDate="2010-08-24T05:26:33.183" UserId="1860" />
  <row Id="3155" PostId="2981" Text="Interestingly, I did have somebody steal my brand once. The game eventually fell into vaporware after I'd done some marketing due to university work - so a third-party with a tacky flash game stole the game's name and used similar logos, etc. I suspect the court case would be heavily in my favour had I chosen to go that route - but like I say I was tied up with university." CreationDate="2010-08-24T06:53:18.980" UserId="1628" />
  <row Id="3156" PostId="397" Score="5" Text="Going to disagree with point 3.  It's just as easy to write messy, hard-to-debug code in C as it is in C++.  Better debugging isn't something inherent in the C language." CreationDate="2010-08-24T07:02:43.793" UserId="1443" />
  <row Id="3157" PostId="386" Text="Lots of people use boost in games, I believe.  But it's far from a requirement (or even desirable) for many of us." CreationDate="2010-08-24T07:03:51.800" UserId="1443" />
  <row Id="3158" PostId="3094" Text="Hmm, it only looks good if it is in flashes..." CreationDate="2010-08-24T07:07:58.410" UserId="1838" />
  <row Id="3159" PostId="3144" Text="You should be, it's very good! I did find the roller-coaster editing on a sloped terrain to be very tricky though, and it could take a lot of tries (and money!) to make the tracks match up. In the end I almost always went with one of the design pre-sets if I had the space for it just to avoid the hassle. I can't help but at least partly blame the jump to 3d for that." CreationDate="2010-08-24T07:58:14.113" UserId="678" />
  <row Id="3160" PostId="373" Text="@Casey &amp; SAHChandler you're both right - IdTech 4 began as IdTech3 (Q3A) but it is written in c++ (or at least the SDK is)" CreationDate="2010-08-24T07:58:32.770" UserId="778" />
  <row Id="3161" PostId="3121" Text="Thanks for the tip about std::copy memcpy. I didn't know that. When Alexandrescu treated this some years ago it was not the case. About C++ iterators. It is mainly about the philosophy, I try to program how C++ was meant to be program both for the sake of people I work with and to take advantage of C++ features. It was mainly made to point out that some C++ improvements like STL containers are not always better than doing it in the old C way." CreationDate="2010-08-24T08:05:38.577" UserId="1856" />
  <row Id="3162" PostId="3094" Text="@Kotaru: if you slowed down the rate at which the lightning bolt changes, then it might look better. Looks pretty good to me though..." CreationDate="2010-08-24T09:13:45.380" UserId="1004" />
  <row Id="3163" PostId="3127" Text="Agreed: considering that a lot of people lose interest before they receive their invite, and everything else those 5000 people could be doing at any one time - including sleeping and working - having roughly 5% or more online at all times is actually quite good." CreationDate="2010-08-24T09:38:13.820" UserId="1101" />
  <row Id="3164" PostId="3144" Text="There was the auto-complete feature but yes the interface was difficult to get right. We did experiment with spline-based coasters, rather than lego blocks, but the interface was even harder to get right!" CreationDate="2010-08-24T09:45:53.947" UserId="259" />
  <row Id="3165" PostId="397" Score="1" Text="Even clean code can be harder to understand in C++ - with overloading, templates, virtual functions, and exceptions, it's much harder to see at a glance exactly what the actual control flow will be." CreationDate="2010-08-24T09:51:05.620" UserId="1101" />
  <row Id="3166" PostId="3098" Text="Posted up as of last night." CreationDate="2010-08-24T09:53:24.067" UserId="1628" />
  <row Id="3167" PostId="3145" Text="I think that would complicate things because it has to be possible for multiple things to occur within the animal. For instance, just because the stomach is digesting something doesn't mean the heart stops beating or the animal stops walking. Sure, you could define a set of states, each of which takes certain functions into consideration, but the amount of the states would be insanely huge." CreationDate="2010-08-24T09:59:18.520" UserId="1135" />
  <row Id="3168" PostId="3144" Score="1" Text="@Ranieri: The jump to 3D is not to blame, but the jump to continous terrain elevation. You could have elevation in steps, like in RCT2, and still render it in beautiful 3D." CreationDate="2010-08-24T10:23:50.170" UserId="769" />
  <row Id="3169" PostId="3156" Score="3" Text="While I get your general gist, listing Mario64 as a rubbish 3D game, and saying nintendo now only make 3D side-scrollers (the excellent Mario Galaxy 2 has come out since New Super Mario Bros Wii) is, to put it charitably, bollocks." CreationDate="2010-08-24T10:41:59.450" UserId="259" />
  <row Id="3170" PostId="212" Text="+1 for the last point (always test)" CreationDate="2010-08-24T11:10:13.183" UserId="769" />
  <row Id="3171" PostId="3155" Text="Well to be honest I often don't see it either, but people around me instantly do." CreationDate="2010-08-24T11:12:32.117" UserId="769" />
  <row Id="3172" PostId="3156" Score="1" Text="&quot;Imagine making a game like &quot;Baldur's Gate&quot; (250+ hours of gameplay) in 3D&quot; - In this day and age, with so many great games to play, I don't want to be playing one game for 250 hours" CreationDate="2010-08-24T11:17:33.590" UserId="769" />
  <row Id="3173" PostId="3134" Text="Good job for answering the question, but a general tip: &quot;Copy the movieclip...&quot; should be a comment to the question :)" CreationDate="2010-08-24T11:24:05.340" UserId="769" />
  <row Id="3174" PostId="3156" Score="1" Text="I never said it was a rubbish game. And I would never say Caesar 4, RCT3 and Neverwinter Nights are rubbish games either! But, just like the original poster, I didn't get as addicted to them as I did to older 2D variants.&#xA;&#xA;I also didn't say that 3D does not fit for a platformer or RPG. As the industry matures, more and more new 3D games are even more addictive than the 2D games we played in the past! But this addictiveness has nothing to do with the game being 2D or 3D... it has to do with the gameplay and how the developers used the available technologies." CreationDate="2010-08-24T11:25:41.637" UserId="1219" />
  <row Id="3175" PostId="3154" Text="For GTA4, it's stipple transparency that gives it away ;)" CreationDate="2010-08-24T11:31:35.603" UserId="678" />
  <row Id="3176" PostId="3130" Text="Thanks! Totally forgot to specify texture coordinates separately. Not entirely sure how it's working - probably forgot to unbind some similar looking ones somewhere else.&#xA;I think i've been thinking about this the wrong way. When using the 512x512 'texture target', I should be using glViewport with the actual screen dimensions, such that I end up rendering what would normally be displayed to the screen to the screen-sized chunk of the texture target. Then, I can use texture coordinates to properly bind that portion of the texture over the quad, leaving the unused part of the texture off screen." CreationDate="2010-08-24T12:53:49.000" UserId="1850" />
  <row Id="3177" PostId="3140" Text="I think it feels weird because its far more likely that someone in that community (with their vast array of StarCraft questions/answers) will probably be able to answer this better than us." CreationDate="2010-08-24T13:03:54.593" UserId="14" />
  <row Id="3178" PostId="3160" Text="Back when I was involved in 3D graphics I could tell at a glance which rendering engine an application used. While there were less to choose from and the graphics weren't as advanced there were tell-tale giveaways like these listed here." CreationDate="2010-08-24T13:10:11.113" UserId="382" />
  <row Id="3179" PostId="3160" Text="Yup, the days of fixed-function pipelines when the rendering engine was responsible for things such as lighting and blending. In the post-FFP era those aspects are completely replaced with developer-written code though. Irritatingly, I learnt FFP in university - just as it became completely obsolete." CreationDate="2010-08-24T13:45:08.083" UserId="1628" />
  <row Id="3180" PostId="2779" Text="Apparently the problem is that real numbers in an interval are not countable/enumerable. I'm not sure how it fits into the problem yet though." CreationDate="2010-08-24T13:58:12.767" UserId="678" />
  <row Id="3181" PostId="1873" Score="1" Text="Indeed missing input is a problem, but the easiest solution would be to appropriately handle the focus/activation messages and work around it. Practically what you want to do is to pause the game when you lose focus, since the user might need t switch away to another more urgent application, or they just hit the windows key accidentally." CreationDate="2010-08-24T14:13:26.103" UserId="728" />
  <row Id="3182" PostId="3098" Text="@Rushyo I don't see if you are using glCheckFramebufferStatus, are you?" CreationDate="2010-08-24T15:20:07.243" UserId="35" />
  <row Id="3183" PostId="3144" Text="Please don't take anything I said as an insult! RCT3 was a very finely produced game, and I agree that it stayed true to RCT2 in many ways. That's why this is so puzzling!" CreationDate="2010-08-24T15:33:48.070" UserId="1263" />
  <row Id="3184" PostId="3144" Text="Perhaps it is indeed something as simple the isometric camera. I don't think I ever used that option in RCT3. Next time I play I will surely keep that in mind." CreationDate="2010-08-24T15:39:29.490" UserId="1263" />
  <row Id="3185" PostId="3167" Text="i was thinking something like street fighter where slow attacks leave you open..." CreationDate="2010-08-24T15:40:50.367" UserId="119" />
  <row Id="3186" PostId="3162" Text="This is perfect. That's exactly what I needed. Thank you." CreationDate="2010-08-24T15:42:07.317" UserId="1860" />
  <row Id="3187" PostId="3144" Text="@Zach Conn no offense taken, just glad for the excuse to talk about former glories. :)" CreationDate="2010-08-24T16:02:06.327" UserId="259" />
  <row Id="3188" PostId="397" Score="1" Text="@Dan: Simply by having more stuff, C++ is harder to debug. You can of course restrict yourself from using any of that stuff, in which case it becomes as easy to debug as C - because it becomes C." CreationDate="2010-08-24T16:39:38.773" UserId="744" />
  <row Id="3189" PostId="3160" Score="1" Text="This is a pretty comprehensive list, only things I'd add are level size/streaming and the handling of destructible geometry. " CreationDate="2010-08-24T17:00:07.530" UserId="154" />
  <row Id="3190" PostId="3098" Text="I am. Just stripped out error checking from that snippet. I also do generic error-checking after every meaningful action." CreationDate="2010-08-24T17:45:19.883" UserId="1628" />
  <row Id="3191" PostId="3134" Text="Check my rank, I cannot do that yet, but I had I thought correctly that I knew his problem." CreationDate="2010-08-24T19:01:06.547" UserId="962" />
  <row Id="3192" PostId="3175" Text="&quot;Damage float(er)s&quot; for damage and combat-related text (e.g. &quot;Dodge!&quot; &quot;Critical!&quot;). &quot;Reticle&quot; for the other stuff around a mob, e.g. name and health bar. &quot;Floating/floater text&quot; (by the design team) or &quot;notifications&quot; (in code) for the stuff that pops into the middle of the screen in a similar way." CreationDate="2010-08-24T19:17:27.593" UserId="744" />
  <row Id="3193" PostId="3175" Text="(Wait, &quot;was&quot;? If Alex already rewrote that he'd better explain. :)" CreationDate="2010-08-24T19:18:23.210" UserId="744" />
  <row Id="3194" PostId="3171" Text="I'm not sure about your last point. Altitude is often important in RTS games, and can be crudely represented by 2D isometric tile sets but your mind still have that &quot;degree of freedom,&quot; therefore according to your logic it definitely should be 3D." CreationDate="2010-08-24T19:28:40.537" UserId="259" />
  <row Id="3195" PostId="3175" Text="Past tense for me since I don't have to care anymore :-P" CreationDate="2010-08-24T19:51:03.033" UserId="395" />
  <row Id="3196" PostId="873" Text="This is a great option for Win/Mac.  Unity is very nice. " CreationDate="2010-08-24T20:59:16.850" UserId="117" />
  <row Id="3197" PostId="3179" Text="You don't have access to the UE3 source or native classes, as 'proper' licensees do, so you can't do much deep hacking on the engine per se. But DLLBind (http://udn.epicgames.com/Three/DLLBind.html) lets you write native code and call it from UnrealScript, which should be enough for optimization purposes." CreationDate="2010-08-24T21:31:22.580" UserId="744" />
  <row Id="3198" PostId="3178" Text="Also, it comes with a nifty editor." CreationDate="2010-08-24T21:53:36.977" UserId="678" />
  <row Id="3199" PostId="3175" Score="5" Text="&quot;Damage Floaters&quot; sounds like the morning after a rather hot curry." CreationDate="2010-08-24T22:21:16.960" UserId="1143" />
  <row Id="3200" PostId="3183" Score="1" Text="On second thought, maybe this question is a little too subjective for this website. Should this be community wiki?" CreationDate="2010-08-25T00:12:50.523" UserId="1263" />
  <row Id="3201" PostId="3160" Text="@Rushyo - it's not problem, you have to know old things to do new things right :)... BUt You are right, new engines are about quick and easy contruction of everything on any level." CreationDate="2010-08-25T00:27:36.930" UserId="1456" />
  <row Id="3202" PostId="3154" Score="2" Text="All people are based on the same technology, all cars are, all movies are, all oil paintings on canvas are. The technology influences only a fraction of a final product." CreationDate="2010-08-25T00:40:30.903" UserId="865" />
  <row Id="3203" PostId="3183" Score="1" Text="I recall reading a few articles that said that the storyline defined the game too much, making the player feel like his choices were merely influencing the script path being taken (Heavy Rain seems to suffer from this) and made the player feel like a puppet in a play instead of being in control. This would take away from the emotional significance as you feel that your actions are merely perhiperal. I guess it's like people that believe in pure destiny, it renders any decision pointless as the outcome is already defined." CreationDate="2010-08-25T02:28:03.780" UserId="865" />
  <row Id="3204" PostId="3183" Text="It's a subjective question with no correct &quot;answer&quot;.  Converted to CW. " CreationDate="2010-08-25T04:02:09.000" UserId="51" />
  <row Id="3205" PostId="3192" Score="1" Text="Pay particular attention to #3. The joint is not fixed, the physics engine will do its best to keep it in place but it is by no means rigid. If you indeed want it to be part of the character you're way better of with 2 or 1. " CreationDate="2010-08-25T04:40:03.090" UserId="865" />
  <row Id="3206" PostId="3181" Text="This is not quite correct. They will move in ways allowed by the joint *unless obstructed*. Rigid joints are rarely rigid, and can get pretty unstable when under stress. Try running into a wall with the part attached by the joint, it will either break, stop you, or explode your sim depending on the engine." CreationDate="2010-08-25T04:42:54.560" UserId="865" />
  <row Id="3207" PostId="3035" Text="Well, one thing I'd like to ask is, &quot;What is this &quot;prototyping&quot; thing, everybody is talking about&quot;. Could you explain that,please?" CreationDate="2010-08-25T06:22:00.720" UserId="1251" />
  <row Id="3208" PostId="3191" Text="+1, great link." CreationDate="2010-08-25T06:47:40.013" UserId="370" />
  <row Id="3209" PostId="3149" Text="Thanks, was my hunch." CreationDate="2010-08-25T06:56:54.100" UserId="778" />
  <row Id="3211" PostId="3193" Score="1" Text="Have you tried running your app as Administrator?" CreationDate="2010-08-25T07:32:35.493" UserId="530" />
  <row Id="3212" PostId="3161" Text="I've implemented this and I like it. Thanks!" CreationDate="2010-08-25T07:38:53.453" UserId="1700" />
  <row Id="3213" PostId="3194" Text="BTW, you might want to read the entire article, as well as his previous one. The sample here is a critical paragraph is what could be considered a rave review. Bissel might be a bloody snob, but he &quot;gets it&quot;. Also, he has had problems with addictions of the chemical variety before, so I can forgive him for being a bit guarded.&#xA;&#xA;http://www.guardian.co.uk/theobserver/2010/mar/21/tom-bissell-video-game-cocaine-addiction" CreationDate="2010-08-25T07:39:31.907" UserId="678" />
  <row Id="3214" PostId="3196" Text="An interesting topic but since there is no &quot;correct answer&quot; I'm converting it to CW.  " CreationDate="2010-08-25T07:49:54.197" UserId="51" />
  <row Id="3215" PostId="3164" Text="This looks like a &quot;list of&quot; question. Converting to CW. " CreationDate="2010-08-25T07:51:53.030" UserId="51" />
  <row Id="3216" PostId="3196" Text="Ah ok I though community wiki was only for no correct answers not questions with multiple correct answers. My bad." CreationDate="2010-08-25T08:12:22.150" UserId="919" />
  <row Id="3217" PostId="3199" Text="Interesting read a good perspective for the RPG trinity. But no actual concrete solutions to this question. " CreationDate="2010-08-25T08:48:48.057" UserId="919" />
  <row Id="3218" PostId="3094" Text="Yeah, looks pretty lightning-like to me. The longer it is displayed, the more time you'll have to pick holes in it: for flashes it should look fine." CreationDate="2010-08-25T08:58:51.717" UserId="741" />
  <row Id="3219" PostId="3154" Text="@Kaj: Apparently so. I wasn't previously aware of how much of the rendering process is custom made." CreationDate="2010-08-25T09:15:09.037" UserId="769" />
  <row Id="3220" PostId="3201" Text="I think that in that world performance matters above all, since more users will be hit by low performance than programmers by bad code." CreationDate="2010-08-25T09:16:26.243" UserId="769" />
  <row Id="3221" PostId="3113" Text="Well, I have developed a Sudoku game and are looking for game input, so it sort of belongs to here. I am not interested in generating games, so yes I am fishing for links :-)" CreationDate="2010-08-25T09:21:57.280" UserId="1851" />
  <row Id="3222" PostId="3192" Text="#2 is the officially recommended way too" CreationDate="2010-08-25T09:38:20.957" UserId="769" />
  <row Id="3223" PostId="3145" Text="Multiple things can happen per state, because you store all active organs on a state and execute each one each frame. A lot of what happens in your simulation seem to fit with state transitions though. E.g. Chewing -&gt; Digesting. But I guess you are right that an animal can not have only one state. There are state transitions happening say with the limbs that are unrelated to state transitions happening in the digestive system. But maybe it is just more complicated that what you have. Just thought it might be something to consider." CreationDate="2010-08-25T10:13:50.380" UserId="1856" />
  <row Id="3224" PostId="3199" Score="1" Text="There aren't really any 'actual concrete solutions' to the question. They're abstract concepts in the first place." CreationDate="2010-08-25T10:38:37.723" UserId="1628" />
  <row Id="3225" PostId="3112" Text="Yeah, you are right ... I was dragged away and started to ramble :), sorry for that ... I edited my answer so it is hopefully of more help to you." CreationDate="2010-08-25T10:48:02.907" UserId="500" />
  <row Id="3226" PostId="2851" Text="Excellent post :) Glad to say after 13 years I can competently cover all those roles." CreationDate="2010-08-25T10:49:28.990" UserId="1628" />
  <row Id="3227" PostId="3204" Text="I know that it will change in context of the game genre that's why I specified them as well. Conversely some can archetype can be translated to other genres hence me posting the question. =)" CreationDate="2010-08-25T11:09:51.890" UserId="919" />
  <row Id="3228" PostId="3199" Text="I mean there weren't any archetype discussed in the article. Except maybe the trinity and possible tweaks to it." CreationDate="2010-08-25T11:10:36.193" UserId="919" />
  <row Id="3229" PostId="3188" Score="2" Text="Community wiki? I think it might end as a list of tips." CreationDate="2010-08-25T11:21:47.013" UserId="1156" />
  <row Id="3230" PostId="3169" Text="Slightly different, you can sprint for a while by tapping and run forever by holding the button (at least in GTA4 on PS3)" CreationDate="2010-08-25T11:36:36.557" UserId="769" />
  <row Id="3231" PostId="3193" Score="1" Text="I assume you're trying this using the standard .Net I/O routines. As an alternate strategy you could try going through the XNA Storage system:&#xA;&#xA;http://msdn.microsoft.com/en-us/library/bb200105.aspx" CreationDate="2010-08-25T11:44:19.177" UserId="1597" />
  <row Id="3232" PostId="3205" Score="1" Text="To be precise I'd worry about vtable penalties for any code that's called many many times a frame.  This may or may not be low-level." CreationDate="2010-08-25T11:52:32.197" UserId="259" />
  <row Id="3233" PostId="3182" Text="&quot;Unless the animations for a powerful and weak attack start the same&quot; - yeah that's how you would have to do it." CreationDate="2010-08-25T12:02:28.543" UserId="119" />
  <row Id="3234" PostId="3189" Text="the ps1 didn't actually have analogue buttons though, so they would have definitely had to use this technique, right? I don't think there are any controllers that can detect button pressure are there?" CreationDate="2010-08-25T12:03:49.633" UserId="119" />
  <row Id="3236" PostId="3172" Text="In Street Fighter 4, you can charge the hadoken fireball of Sakura or shoot it just like it is without charging. Also, you can start a 'focus attack', which let's you charge an attack which may be cancelled anytime. If you charge it through to the end, it damages even a blocking character." CreationDate="2010-08-25T12:41:18.970" UserId="13" />
  <row Id="3237" PostId="3191" Text="Wow, that additive blending helped more than anything else so far! Sweet." CreationDate="2010-08-25T13:30:13.627" UserId="141" />
  <row Id="3238" PostId="3139" Text="I don't have it with me, but I don't remember those specific dynamics mentioned. " CreationDate="2010-08-25T14:22:29.203" UserId="1101" />
  <row Id="3239" PostId="3212" Score="2" Text="+1 - I agree that the Java community seems to have vastly over-complicated what seems to be a very simple idea. " CreationDate="2010-08-25T14:25:33.957" UserId="1597" />
  <row Id="3240" PostId="3193" Text="@ArdaXi I am running as administrator. (updated question text to reflect this)" CreationDate="2010-08-25T14:37:32.300" UserId="404" />
  <row Id="3241" PostId="3094" Text="I guess for lightning would look more like lightning if you start with the center 'beam'overbright and have it stay fairly in place (just have some nodes move a bit) and have it fade out instead of jump around to simulate retention of vision. The forks should probably move a bit more erratic. Like I said, examine slomo footage - this was made by just trying, I suggest you do the same - experiment, it's a big part of gamedev, and it wouldn't be fun if it was all solved for us, we might as well go code databases." CreationDate="2010-08-25T14:41:33.280" UserId="865" />
  <row Id="3242" PostId="3212" Score="4" Text="The idea isn't necessarily that you'll need to swap out different implementations in production, but that you might want to inject special implementations to facilitate automated testing.  In that regard, DI/IoC can certainly be useful in games, but you want to keep it reasonably scoped.  You shouldn't need more than a few one-time service resolutions at a high level--you don't want to be resolving services for every little object in the game, and certainly not every frame or anything like that." CreationDate="2010-08-25T14:47:19.373" UserId="136" />
  <row Id="3243" PostId="3193" Text="@ChrisHowe I think I tried that, but I'll double check" CreationDate="2010-08-25T14:50:06.013" UserId="404" />
  <row Id="3244" PostId="3198" Text="@MrCranky I think that I'm only requesting read permission, but I'll double check that." CreationDate="2010-08-25T14:50:55.120" UserId="404" />
  <row Id="3245" PostId="3210" Text="I am not trying to write to the Program Files directory. User save data is done using the StorageDevice classes in XNA." CreationDate="2010-08-25T15:04:22.630" UserId="404" />
  <row Id="3246" PostId="3212" Text="I never called it &quot;diligent software development&quot; - I said the developers were diligent, i.e. the kind of people who care about the quality of their code. Also, I did specifically say software developers not game developers. Personally, I don't see where it would fit into gamedev, but I wanted to know what AAA studios were doing." CreationDate="2010-08-25T15:25:49.130" UserId="119" />
  <row Id="3247" PostId="3212" Score="1" Text="Indeed, YAGNI comes to mind." CreationDate="2010-08-25T15:33:36.257" UserId="678" />
  <row Id="3248" PostId="3196" Text="It might be better described (in this case) as also being more appropriate for questions that are basically asking for a list of something. " CreationDate="2010-08-25T15:41:23.537" UserId="51" />
  <row Id="3249" PostId="3214" Score="4" Text="http://gamedev.stackexchange.com/questions/2791/finding-other-programmers-to-help-on-a-project" CreationDate="2010-08-25T15:43:22.897" UserId="51" />
  <row Id="3251" PostId="3166" Text="+1 for Super Smash Bros, it came to mind for me as well." CreationDate="2010-08-25T17:04:19.897" UserId="189" />
  <row Id="3252" PostId="3191" Text="done, thanks :)" CreationDate="2010-08-25T17:33:20.197" UserId="1232" />
  <row Id="3253" PostId="58" Score="1" Text="+1 for Unity, read about the horrors of Torque engines http://gamedev.stackexchange.com/questions/2934/what-has-your-experience-been-with-torque-products" CreationDate="2010-08-25T17:44:45.550" UserId="891" />
  <row Id="3254" PostId="3221" Score="1" Text="+1, Evolve Your Hierarchy is a great link which I'd completely forgotten about.  The Scott Bilas slides are good too -- correct link for these is ( http://scottbilas.com/files/2002/gdc_san_jose/game_objects_slides.pdf ).  There's one more set of related slides, but I've forgotten where..." CreationDate="2010-08-25T18:51:35.710" UserId="1134" />
  <row Id="3255" PostId="3226" Score="4" Text="+1 Wolfire's Linear Algebra for Game Developers series was pretty helpful to me. (Starts here: http://blog.wolfire.com/2009/07/linear-algebra-for-game-developers-part-1/)" CreationDate="2010-08-25T19:43:51.450" UserId="389" />
  <row Id="3256" PostId="3223" Text="Thank you for the clean-up Tetrad." CreationDate="2010-08-25T19:48:15.563" UserId="1477" />
  <row Id="3257" PostId="3221" Text="Also the article in Games Gems 5 (I think) by Bjarne Rene." CreationDate="2010-08-25T20:07:15.443" UserId="1597" />
  <row Id="3258" PostId="3234" Score="2" Text="This question is broad as can be. Are you looking for sounds? graphics? 2d? Sprites? Tiles? 3d? Models? Animations? The modding scene generally has a lot available of all of the aforementioned though." CreationDate="2010-08-25T20:32:25.947" UserId="865" />
  <row Id="3259" PostId="3234" Score="1" Text="Check out this other question http://gamedev.stackexchange.com/questions/20/where-can-i-find-free-sprites-and-images" CreationDate="2010-08-25T20:32:26.500" UserId="666" />
  <row Id="3260" PostId="3234" Text="or the free tag: http://gamedev.stackexchange.com/questions/tagged/free" CreationDate="2010-08-25T20:48:40.493" UserId="51" />
  <row Id="3262" PostId="1152" Score="2" Text="Armor repair fees do scale, though indirectly. More player money leads to more expensive armor with higher armor repair fees. Effectively causing players with more money pay more for repairs." CreationDate="2010-08-25T20:58:49.567" UserId="1900" />
  <row Id="3263" PostId="3184" Score="3" Text="Huh? Who am I? Where am I? What time is it? ...Oh. I *wish* you would warn before linking to TVTropes." CreationDate="2010-08-25T21:11:19.753" UserId="233" />
  <row Id="3264" PostId="3231" Score="7" Text="Its frustrating to see a really interesting article title and then to have to go oh wait its premium." CreationDate="2010-08-25T21:17:05.200" UserId="1477" />
  <row Id="3265" PostId="3231" Text="Yep, Alex is making a new type of account called a PLUS account which is somewhere between insider and premium.  That account is supposed to be more student based.  If you think about it though 90 dollars for 3 months of access to the last 2 years of info?  You'd spend 90 dollars on a single book in game AI.  It's understandable that there is a premium account though.  Almost everything is stream video or audio streams, as well as live interviews/master classes/etc." CreationDate="2010-08-25T21:30:01.670" UserId="891" />
  <row Id="3266" PostId="3149" Text="Parental controls, especially password-protected ones, do affect a game's rating. I think WoW is rated Teen, but the user-generated content (chat text, names, etc) is definitely not." CreationDate="2010-08-25T21:34:59.153" UserId="1900" />
  <row Id="3267" PostId="3112" Text="Thanks for the additional info. I understand where you're coming from when you say that the material editor is versatile enough for most things. It's unfortunate that it looks like I won't be able to realize this idea using the UDK. Injecting special cases into every single material isn't really a viable approach." CreationDate="2010-08-25T23:25:25.677" UserId="101" />
  <row Id="3268" PostId="3179" Text="Thanks for the reply; however, I'm pretty sure most of what I want to achieve could hypothetically be implemented just fine in UnrealScript from a performance standpoint. The performance of the first two things I asked about would mainly be dependent upon the shaders being used, not UnrealScript. For the third and fourth, I would ideally be able to request that the scene be re-rendered into a specified render target, with a specific material that would override all standard materials in the scene. Neither part would be particularly script-intensive; the workload would still fall on the engine." CreationDate="2010-08-25T23:39:35.893" UserId="101" />
  <row Id="3269" PostId="3149" Text="Most MMOs have the rating modifier &quot;Experience may change during online play&quot;, even though the only offline play is the login screen." CreationDate="2010-08-25T23:50:34.360" UserId="395" />
  <row Id="3270" PostId="3149" Score="2" Text="All online titles that have gone through the ratings process in recent years have the &quot;Experience may change...&quot; text. The ratings of a game are based on the content on disc, not what users might do with that content. " CreationDate="2010-08-26T00:17:16.920" UserId="154" />
  <row Id="3271" PostId="3224" Text="Second this one! Worth saying that in between the game design theory, the author also often touches on visual art and bizdev, giving a bit of insight beyond the standard &quot;how to make your game more fun.&quot;" CreationDate="2010-08-26T00:25:30.787" UserId="458" />
  <row Id="3272" PostId="3231" Score="3" Text="I love this site and think it's well worth the subscription fee as it's indeed hard to find detailed information elsewhere that pertains directly to applied (applied being the keyword here) game AI." CreationDate="2010-08-26T00:31:58.710" UserId="865" />
  <row Id="3273" PostId="3230" Text="This is true in some cases, while in others it's more of means of attack that stats i.e. Grapplers uses close range unblockable moves for example. " CreationDate="2010-08-26T01:05:03.260" UserId="919" />
  <row Id="3274" PostId="3189" Text="Supposedly the Bouncer had a middle ground between tap and pressed but it was very hard to hit it consistently. " CreationDate="2010-08-26T01:08:51.403" UserId="919" />
  <row Id="3275" PostId="3243" Text="Nice reference." CreationDate="2010-08-26T01:49:20.043" UserId="1263" />
  <row Id="3276" PostId="3044" Text="Fair enough...." CreationDate="2010-08-26T02:06:22.570" UserId="1553" />
  <row Id="3277" PostId="3227" Score="2" Text="I REALLY like the &quot;fix your timestep&quot; article and in fact I was preparing to write a question about that very subject; Markus (Notch) used the fixed timestep technique in his Ludum Dare entry this past weekend and I found it to be extremely elegant, whereas in my entry I used the first example of what not to do - a time delta, and I tried to have all my equations as functions of time, and it was challenging but overall reasonably successful. Not as good/easy as a fixed timestep though." CreationDate="2010-08-26T02:35:02.933" UserId="189" />
  <row Id="3278" PostId="3213" Text="Well, the ideal would be to be able to get access to OLC so that I can play with it and get ideas directly from the actual thing itself.  I had a mud's OLC that I played on in the past, but I don't have any kind of access to it any more (it went down recently), so I lost that opportunity to see how those things were done right.  As I said, I didn't have any luck with an easy compile to create a running mud, so I came to gamedev to settle for screenshots or something else, 'cause I think I can still pull ideas from those." CreationDate="2010-08-26T03:32:49.437" UserId="284" />
  <row Id="3279" PostId="3213" Text="Err, and yeah, going through the source (wasn't really sure where to look), if it's readable enough to piece back together into the ideas of what you got on an OLC screen, might work as well, I'll try that out as well, thanks." CreationDate="2010-08-26T03:34:12.683" UserId="284" />
  <row Id="3280" PostId="3208" Text="First mainstream commercial game to support 3D acceleration, IIRC" CreationDate="2010-08-26T04:15:51.307" UserId="1553" />
  <row Id="3281" PostId="3213" Text="I think I can work with Merc.h.  It's a bit dirtier than just viewing some OLC screen that shows everything at once directly, but I should be able to decipher it." CreationDate="2010-08-26T04:26:48.857" UserId="284" />
  <row Id="3282" PostId="3226" Text="Just read some here: http://blog.wolfire.com/2010/08/Avoiding-artificial-gameplay-restrictions and it's already got the juices flowing, a good resource." CreationDate="2010-08-26T04:31:51.430" UserId="284" />
  <row Id="3283" PostId="3225" Score="2" Text="Who could avoid reading something with a phrase like &quot;Sometimes she goes off onto a bondage-themed pixel-art tangent, though&quot;?" CreationDate="2010-08-26T04:33:35.613" UserId="284" />
  <row Id="3284" PostId="3193" Text="@ChrisHowe I tried similar stuff, and I tried looking for specifically that, but the closest I could find was StorageContainer.TitleLocation, which was close, but not file load. Looking through the help file you linked was great, but I couldn't get it to work, because it was XNA 4.0 (still in beta), and using C# Express 2008, is still on XNA 3.1, which doesn't support the awesome TitleContainer. Way good document though. Thanks" CreationDate="2010-08-26T04:43:03.333" UserId="404" />
  <row Id="3285" PostId="3198" Text="I was doing a FileMode.Open, which (IMO) should only request read, but unless you specify, it requests write too by default." CreationDate="2010-08-26T04:47:21.830" UserId="404" />
  <row Id="3286" PostId="3226" Text="This stuff gets better and better the more I see of it." CreationDate="2010-08-26T05:25:58.950" UserId="284" />
  <row Id="3287" PostId="3140" Score="2" Text="&quot;Use map settings&quot; from SC1 and now Custom maps on SC2 is a real game development community that have innovated in a lot of game-plays. I don't see why this would be off-topic." CreationDate="2010-08-26T05:58:54.890" UserId="666" />
  <row Id="3288" PostId="3163" Score="2" Text="Theres a reason they're named &quot;Unreal&quot; ;)" CreationDate="2010-08-26T06:32:28.220" UserId="1004" />
  <row Id="3289" PostId="3214" Text="actually I have got the same question. would be great to get some advise on this topic." CreationDate="2010-08-26T07:01:14.260" UserId="1804" />
  <row Id="3290" PostId="3212" Text="In my experience, if unit tests only prove themselves correct, they are not good unit tests and you should rewrite them. And DI at least (the principle of decoupling &quot;new&quot; calls from client code, not necessarily any framework) goes a long way to making code simpler and good unit ests easier to write." CreationDate="2010-08-26T07:41:50.653" UserId="294" />
  <row Id="3291" PostId="3198" Text="Well, FileMode is unrelated to what you intend to do with the file, it's just about whether or not the file gets created if it's not there, and whether or not you want to append. It makes no assumptions about whether or not you're opening for reading or writing: it allows both.&#xA;&#xA;But yeah, just one of those things that you get bitten by once, and remember for the future." CreationDate="2010-08-26T09:04:07.897" UserId="741" />
  <row Id="3292" PostId="3212" Score="1" Text="@Thomas Dufour: the concept of a test can never prove anything. It's just a data point. You can have a test pass 100000 times without proving that it will pass on run 100001. Proof comes from logical analysis of the subject matter. I would argue that these IoC containers and the like make testing easier at the expense of making proving correctness harder, and I believe that is a bad thing." CreationDate="2010-08-26T10:16:04.707" UserId="1101" />
  <row Id="3293" PostId="3212" Text="@Mike Stroble: I had hoped I'd covered that with my 2nd paragraph." CreationDate="2010-08-26T10:17:03.723" UserId="1101" />
  <row Id="3294" PostId="1897" Text="That's what the linear prediction at the end is for." CreationDate="2010-08-26T10:19:35.390" UserId="1147" />
  <row Id="3295" PostId="3253" Text="Can you go into more detail? Because it sounds like you want to film a real environment and expect to be able to import it into a game engine, which sounds, er, a bit sci-fi." CreationDate="2010-08-26T11:16:19.577" UserId="259" />
  <row Id="3296" PostId="3147" Text="Feel free to add some of that information as an answer rather than an edit; you seem to have found some useful stuff so deserve some rep for it." CreationDate="2010-08-26T15:30:29.727" UserId="259" />
  <row Id="3297" PostId="3258" Text="somebody please clean this post up.  Change the image links to embedded images and use consistent indentation in the code." CreationDate="2010-08-26T16:36:14.110" UserId="370" />
  <row Id="3298" PostId="2915" Text="I highly recommend Slick" CreationDate="2010-08-26T16:55:44.767" UserId="47" />
  <row Id="3299" PostId="3139" Text="I suppose that's true; Koster likely focuses on what makes the game interesting to play, while Priebatsch's list seems more focused on compelling the player to play." CreationDate="2010-08-26T16:57:08.867" UserId="1780" />
  <row Id="3300" PostId="3260" Text="Thx, I find that I use another angle unit for SFML's rotate. But I still don't know why mass == 0 ." CreationDate="2010-08-26T17:32:58.287" />
  <row Id="3301" PostId="3109" Text="+1. It's a great tool. It's also open source, so you can extend it if you require." CreationDate="2010-08-26T18:23:58.043" UserId="734" />
  <row Id="3302" PostId="3212" Score="4" Text="@Kylotan the concept of a test never tries to *prove* anything.  It tries to demonstrate that the behavior with given inputs is as expected.  The more behavior is shown to be correct, the greater your belief that overall function is correct but it's never 100%.  The statement that a minimal interface proves anything is ludicrous." CreationDate="2010-08-26T18:32:46.093" UserId="1780" />
  <row Id="3303" PostId="3257" Text="I was also of the &quot;so *this* is what people are excited about?&quot; when I read about DI, but the fact is that most game programmers could stand to learn about it and about how it would apply to the work that we do." CreationDate="2010-08-26T18:39:12.337" UserId="1780" />
  <row Id="3304" PostId="3270" Score="2" Text="Blender is free animation/modelling software using by indie developers." CreationDate="2010-08-26T19:11:09.147" UserId="1156" />
  <row Id="3305" PostId="3273" Text="why does the genre of the game matter?" CreationDate="2010-08-26T20:22:00.757" UserId="1163" />
  <row Id="3306" PostId="3273" Score="4" Text="I love the idea of having the world slowly melt." CreationDate="2010-08-26T20:36:50.833" UserId="144" />
  <row Id="3307" PostId="3279" Text="Most (all?) physics engines will not be able cope with a numbers like 0.01 and 10^13 simultaneously and remain stable.  I'd bet it can't be done uniformly.  The simulation would have to divided into two separate systems, one that models fluids, and another that fakes fluidity in &quot;highly viscous solids&quot;." CreationDate="2010-08-26T21:25:06.867" UserId="370" />
  <row Id="3308" PostId="3279" Text="I actually had a para on that that I snipped out, since I draw the conclusion that you would be silly to actually simulate motion of something that will for all intents and purposes will never move on human timescales.&#xA;If you scale up time enough, well, even rock flows. Panta rei my brother, panta rei." CreationDate="2010-08-26T21:31:11.567" UserId="678" />
  <row Id="3310" PostId="3273" Text="the genre not so much, more of an example of the scale of a world in this case. I could see some sort of puzzle game being able to get away with alot less processing for this then a game with an entire world." CreationDate="2010-08-26T22:28:28.380" UserId="1477" />
  <row Id="3311" PostId="2990" Text="Most investors, especially VCs, will never sign an NDA. http://blog.guykawasaki.com/2006/01/the_venture_cap.html" CreationDate="2010-08-27T00:10:50.430" UserId="283" />
  <row Id="3312" PostId="3272" Score="2" Text="Sculptris is the name you're looking for. And it was acquired by Pixologic (makers of ZBrush) recently, although they've decided to keep making it available for free." CreationDate="2010-08-27T00:38:51.313" UserId="93" />
  <row Id="3313" PostId="3251" Text="Video of the effect is linked from this page: http://www.iit.bme.hu/~szirmay/firesmoke_link.htm" CreationDate="2010-08-27T01:13:29.497" UserId="211" />
  <row Id="3314" PostId="3269" Text="Ha, how soon after my own answer did you post this? :P" CreationDate="2010-08-27T01:26:28.580" UserId="295" />
  <row Id="3315" PostId="1152" Text="I disagree with that strongly. There are no points in World of Warcraft where a player can turn money directly into armor. More fancy materials leads to more expensive armor which leads to higher armor repair fees, but the amount of gold already in the economy is irrelevant to that scale. In other words, if everyone's wallet increased by a factor of ten, they'd be paying the same amount for armor repairs but ten times as much for auction house fees." CreationDate="2010-08-27T02:17:10.223" UserId="323" />
  <row Id="3316" PostId="906" Text="Well, state that in the question." CreationDate="2010-08-27T02:28:23.383" UserId="318" />
  <row Id="3317" PostId="3269" Text="I read the post and then opened the editor and looked it up, then typed up my reply and submitted it and saw yours there. So pretty much right after :P." CreationDate="2010-08-27T02:37:48.000" UserId="1700" />
  <row Id="3318" PostId="3291" Text="Some nice examples. &#xA;&#xA;The caution part is a very good point. One easily missed issue of balance between variety and accessability/convenience. " CreationDate="2010-08-27T02:50:14.067" UserId="919" />
  <row Id="3319" PostId="3264" Text="Thank you for adding sanity back into the world." CreationDate="2010-08-27T03:06:15.117" UserId="29" />
  <row Id="3320" PostId="3197" Text="Excellent, this was just the hint I needed to figure the rest out!" CreationDate="2010-08-27T03:44:44.270" UserId="1702" />
  <row Id="3321" PostId="2296" Score="1" Text="Except gametunnel is dead, since a year ago. (just check the last update)" CreationDate="2010-08-27T04:36:27.943" UserId="469" />
  <row Id="3322" PostId="81" Score="1" Text="SDL does not take over your main game loop. You typically create your own, and inside of that call SDL_PollEvent to get any events SDL is aware of (keyboard input, mouse movement, etc)." CreationDate="2010-08-27T04:46:17.190" UserId="27" />
  <row Id="3323" PostId="3284" Score="2" Text="that's more then sorta, I think FastLSM is exactly what i need. It even handles fracturing and soft/rigid body in combination!" CreationDate="2010-08-27T04:46:51.753" UserId="1477" />
  <row Id="3324" PostId="3284" Text="I said sorta as the bodies will bend and fracture, but they aren't fluid.  The volume of an arm can't be pushed into the rest of the body causing it to swell.  The bodies are soft bodies instead of rigid, but they are still bodies not fluids." CreationDate="2010-08-27T05:02:57.850" UserId="370" />
  <row Id="3325" PostId="3285" Text="well, I solved it . The problem was because i had used an actor class along with an array for all the coins.And when I removed the coins I removed it from the array. So I just had to ensure I did not remove from the array. :)" CreationDate="2010-08-27T05:04:32.000" UserId="1251" />
  <row Id="3326" PostId="3286" Text="Thanks.  It shoulds like premultiplied alpha is well enough supported in XNA (or soon will be).  I'm still looking for non-XNA tools to create my pipeline with." CreationDate="2010-08-27T05:15:27.230" UserId="370" />
  <row Id="3327" PostId="3291" Score="1" Text="instead of forcing characters to take multiple of these roles, perhaps one could design things so not all roles are required but rather you have different avenues of attack which are equally viable but depend on personal preference/play style. Or dump the class model and allow people to learn abilities that suit them as they please. I'd love to be a buff+debuff+threat guy but how many others would want to do that?" CreationDate="2010-08-27T05:16:53.113" UserId="1477" />
  <row Id="3328" PostId="3272" Text="Total win, that is exactly what I was thinking of :-) The author posts on /r/gamedev every now and then." CreationDate="2010-08-27T05:24:25.923" UserId="395" />
  <row Id="3329" PostId="3276" Text="Solidworks is far from free, and you would be hard pressed to do game modeling with it (I tried in Uni since we had a campus site license)." CreationDate="2010-08-27T05:26:18.963" UserId="395" />
  <row Id="3330" PostId="3109" Text="thats really a good tool, i tested it and had not a single problem importing it into my game. " CreationDate="2010-08-27T05:56:38.133" UserId="115" />
  <row Id="3331" PostId="3109" Text="ok so now i want to know how to make non-tile-based levels, like the worlds in worms, but i guess i'll ask this in a new question someday" CreationDate="2010-08-27T05:58:57.037" UserId="115" />
  <row Id="3332" PostId="3290" Text="What should be changeable? The look, the position, the label? Please add some information to your question about what you're trying to do." CreationDate="2010-08-27T06:38:09.983" UserId="20" />
  <row Id="3334" PostId="3227" Score="2" Text="+1, &quot;fix your timestep&quot; was excellent. And there's tons of useful networking stuff." CreationDate="2010-08-27T07:25:13.383" UserId="1272" />
  <row Id="3335" PostId="3290" Score="2" Text="I'm stuck between you meaning buttons as GUI elements and keyboard 'buttons'." CreationDate="2010-08-27T08:02:07.737" UserId="1156" />
  <row Id="3336" PostId="3290" Text="@The Communist Duck: Good point. I didn't even think about that. I guess we both agree that some clarification is needed here." CreationDate="2010-08-27T08:03:12.767" UserId="20" />
  <row Id="3337" PostId="1871" Text="+1 for SFML. It's great, but the only issue is the lack of an iphone port." CreationDate="2010-08-27T08:16:41.623" UserId="1156" />
  <row Id="3338" PostId="3294" Text="Pokemon also has the baton pass build which is a sort of buffer in other RPGs. " CreationDate="2010-08-27T08:49:09.710" UserId="919" />
  <row Id="3339" PostId="3274" Text="these are covered by buff and debuff types." CreationDate="2010-08-27T08:50:12.213" UserId="919" />
  <row Id="3340" PostId="3294" Text="Ah yes, I forgot about that one. One thing that does surprise me about pokemon is the lack of a tank." CreationDate="2010-08-27T09:07:06.997" UserId="1156" />
  <row Id="3341" PostId="3183" Score="2" Text="&quot;The time you enjoy wasting is not wasted time.&quot; - Bertrand Russell " CreationDate="2010-08-27T09:07:10.347" UserId="10" />
  <row Id="3342" PostId="3290" Text="I think it's pretty safe to assume keyboard keys" CreationDate="2010-08-27T09:28:11.220" UserId="769" />
  <row Id="3343" PostId="3275" Text="This is a particularly good answer but forgive me if I'm wrong, but I think we should keep the question open for a while since the subject is very weakly documented across the Internet, in case it brings additional insight." CreationDate="2010-08-27T09:48:20.017" UserId="1908" />
  <row Id="3344" PostId="3212" Text="I know it doesn't try to prove anything. But software can be proven correct, and the simpler it is, the more practical that is. Testing, although valuable in itself, should not require the code to be made more complicated to facilitate it." CreationDate="2010-08-27T10:31:03.150" UserId="1101" />
  <row Id="3345" PostId="3199" Score="2" Text="The variety of distinct archetypes is going to depend entirely on the conflict system in question, and to a degree on the game fiction." CreationDate="2010-08-27T10:35:56.030" UserId="1101" />
  <row Id="3346" PostId="3265" Text="I'm in exactly the same position as you - I want to use it everywhere, but am not sure how easily I can edit my assets with it if I need to develop some extra tooling for it." CreationDate="2010-08-27T10:39:43.297" UserId="1101" />
  <row Id="3347" PostId="3250" Text="+1, that's exactly what I have been looking for a long time now! Also, like the writing style of the  blog. :)" CreationDate="2010-08-27T10:58:46.227" UserId="13" />
  <row Id="3348" PostId="3195" Text="+1 for comparing it to a movie. That's why I don't really like games where you have to decide what way you want to go in a game. Too many crossroads means that, when I've completed the game, I haven't even seen everything (I have yet to see a movie where you have to decide what way the main characted should take)" CreationDate="2010-08-27T11:27:02.467" UserId="1920" />
  <row Id="3349" PostId="3290" Text="Just to make sure, when you say &quot;user-definable&quot; you mean definable by the person playing your Flash game (i.e. the player), and not definable by you (i.e. the developer, i.e. the Flash user), right?" CreationDate="2010-08-27T11:29:08.677" UserId="458" />
  <row Id="3350" PostId="3274" Text="a debuff archetype hadn't been mentioned yet when I wrote this" CreationDate="2010-08-27T11:44:15.490" UserId="1477" />
  <row Id="3351" PostId="3276" Text="Oh sorry I sorted by price and it was grouped around free products so I didn't notice the question mark in its price field. I'll edit." CreationDate="2010-08-27T11:44:49.810" UserId="189" />
  <row Id="3352" PostId="3298" Text="I agree, this is a book well worth checking out. It's very neat, though I didn't find it entirely practical, but it feels like the closest thing to making game design a science." CreationDate="2010-08-27T11:50:06.417" UserId="189" />
  <row Id="3353" PostId="2605" Text="Well I haven't been able to catch him. I sent him an email a number of days ago but he apparently ignored it (he is an extremely busy guy but it still surprises me that he would ignore a student email)." CreationDate="2010-08-27T11:55:19.357" UserId="189" />
  <row Id="3354" PostId="2605" Text="Have you tried looking into/asking Charles River Media about the journal?" CreationDate="2010-08-27T13:00:19.033" UserId="1477" />
  <row Id="3355" PostId="2611" Score="1" Text="This can be dangerous narrative-wise though since it can lead to the main character feeling disjointed from the story or the actions they take in scripted events or cutscenes seeming counter-intuitive to the character they've built. I've read about this being an issue in Red Dead Redemption specifically. Not saying that this is inevitable just something one may want to look out for." CreationDate="2010-08-27T13:03:36.217" UserId="1477" />
  <row Id="3356" PostId="3302" Text="changed &quot;mesh transformation&quot; to &quot;geometric transformation&quot; to help clarify the question. i'm also waiting for opencl es, which could be available early as next year. " CreationDate="2010-08-27T14:10:18.890" UserId="1505" />
  <row Id="3357" PostId="3305" Score="1" Text="With a bit more info, this could be a good question. As it stands, it seems contradictory." CreationDate="2010-08-27T14:52:40.270" UserId="1198" />
  <row Id="3358" PostId="3304" Text="As this isn't game development specific, you might get a better response at http://www.stackoverflow.com/." CreationDate="2010-08-27T14:56:46.397" UserId="189" />
  <row Id="3359" PostId="3305" Score="4" Text="I have no idea what is being asked here." CreationDate="2010-08-27T14:57:22.587" UserId="189" />
  <row Id="3360" PostId="3153" Score="2" Text="That's called grain table synthesis, and yes, I've seen it in two completely different games companies and it leads to awesome quality motor sounds." CreationDate="2010-08-27T15:01:11.940" UserId="1742" />
  <row Id="3361" PostId="3305" Score="1" Text="'Is it easy for a game programmer to jump into the game industry?'&#xA;&#xA;It seems that experience is not that useful and/or easy to get.&#xA;Is the experience important to longer-standing game programmers? What's the most important thing to improve as a game programmer?" CreationDate="2010-08-27T15:10:58.307" UserId="1156" />
  <row Id="3363" PostId="3305" Text="also this should be three seperate questions imo" CreationDate="2010-08-27T15:25:05.153" UserId="1477" />
  <row Id="3364" PostId="3212" Text="A component's code needn't be made more complicated to facilitate testing.  And the point isn't necessarily to prove correctness, but to help identify regressions or subtle, unintended changes in behavior." CreationDate="2010-08-27T15:34:11.377" UserId="136" />
  <row Id="3365" PostId="3232" Text="I would say that this blog is far more than just an iPhone game blog. Noel is a vet-turned indie and his advice is gold." CreationDate="2010-08-27T15:42:07.373" UserId="908" />
  <row Id="3366" PostId="3198" Text="@MrCranky Yup, it's funny that it's never been a problem before." CreationDate="2010-08-27T16:06:16.853" UserId="404" />
  <row Id="3367" PostId="3212" Text="It sounds like people don't understand the goal of unit testing. Testing a unit of behavior will never prove the entire system correct, it says nothing about how different pieces of the system will interact, and it's too low level for scenario testing. If you want QA write scenario or integration tests.&#xA;&#xA;&#xA;The reason why people advocate TDD and unit testing is because by following the process you end up with code which is better factored, more loosely coupled, and closer to single responsibility. The act of placing a piece of code under test forces the author to make better design decisions." CreationDate="2010-08-27T16:08:24.590" UserId="539" />
  <row Id="3368" PostId="3260" Text="You can use an sf::View to solve the issues with pixel-based coordinates. But yes, inverted-y and its insistence on degrees for angles drives me nuts." CreationDate="2010-08-27T16:08:41.563" UserId="744" />
  <row Id="3369" PostId="3212" Text="@Mike: we're going round in circles here. If you can meaningfully test an object without changing the interface, great. That's a case where the testing costs you little and buys you a lot. But we were talking specifically about changing interfaces to permit dependency injection purely for testing purposes. Obviously if your language supports swapping components out without imposing any restriction on how you make the aggregate object (eg. Python does), that's a different matter, and doesn't require explicit IoC containers or any of that fluff." CreationDate="2010-08-27T16:11:24.133" UserId="1101" />
  <row Id="3370" PostId="3212" Score="1" Text="@Alex Schearer: I'm afraid I can't ever accept that needing to use a formalised IoC container system and typically creating additional constructor arguments or factory classes to facilitate testing is, in any way, making the code better factored, and certainly not making it looser coupled. In fact it pretty much tramples on encapsulation, a key aspect of OOP. Instead of relying on TDD to drive their design and hope that a good result emerges, people could just follow SOLID principles in the first place." CreationDate="2010-08-27T16:17:30.490" UserId="1101" />
  <row Id="3371" PostId="3264" Text="Alex: nobody is objecting to passing in already-created objects to drive custom functionality where needed. Everybody does it, just like in your example. The problem is where people are using entire frameworks that exist purely to handle this stuff, and religiously code every aspect of functionality to depend on this functionality. They first add IReader as a parameter to Sprite construction, and then end up needing special SpriteWithFileReaderFactory objects to facilitate this, etc. This attitude does originate from Java and things like the Spring IoC containers, etc." CreationDate="2010-08-27T16:24:32.040" UserId="1101" />
  <row Id="3372" PostId="3264" Text="But we aren't talking about IoC containers -- at least I don't see it in the original post. We're just talking about the pattern itself. You're argument, as best I can tell, is &quot;Because some tools in the wild are bad we should not use the underlying concepts.&quot; That strikes me as throwing the baby out with the bath water. Hitting the right balance between simplicity, getting things done, and maintainability/testability is a hard problem likely best treated on a project by project basis." CreationDate="2010-08-27T17:54:29.900" UserId="539" />
  <row Id="3373" PostId="3303" Text="W.r.t. the &quot;actually slower on GPU&quot; part; this is a very broad statement. If you're talking about constructing the matrix for each vertex on GPU then your performance will depend on your bottlenecks. You'll only get slower performance if you are ALU/ register bound on the GPU, which is not necessarily the case. Doing exactly the same thing on a CPU would also be slower under these bottleneck scenarios. An example where this *is* commonly done on GPU: vertex shaders construct vertex tangent space matrices on the fly to save vertex fetch bandwidth. Again, dependent on your bottlenecks, so YMMV.&#xA;" CreationDate="2010-08-27T18:32:30.877" UserId="1232" />
  <row Id="3374" PostId="3310" Text="YES! Finally one who get it: assets and code needs different tools! +1" CreationDate="2010-08-27T19:20:30.970" UserId="1206" />
  <row Id="3375" PostId="270" Score="1" Text="The STL offers algorithms as well as containers.  There is never a reason not to use the stl version of an algorithm.  For example, `std::sort` generally uses introsort underneath, blazingly fast and complex enough that you won't want to do it yourself." CreationDate="2010-08-27T20:03:47.463" UserId="370" />
  <row Id="3377" PostId="3291" Text="Lathomas, I think you'd be surprised :) If the game mechanics make it fun, people will find something they want to do. I think that if you were trying to make a good solid MMO boss battle, you'd *have* to specify what combination of roles was intended one way or another, and it would lead to instant frustration if some battles required different sets of people. WoW does that by just having every battle require roughly the same combination and I think that's by far the best approach." CreationDate="2010-08-27T20:46:35.003" UserId="323" />
  <row Id="3378" PostId="3305" Text="I can't tell if you're asking how a programmer can &quot;break in&quot; to the industry (convincing game companies they've got what it takes even if their experience is in financial software or something), or how a game programmer can get a non-game programming job (convincing other people that game programmers don't just play games all day but they actually have real programming skills). Which is it?" CreationDate="2010-08-27T21:24:00.803" UserId="458" />
  <row Id="3379" PostId="3284" Score="1" Text="They aren't fluids but it is a pretty good solution to the problem the liquid idea was trying to address." CreationDate="2010-08-27T21:24:45.717" UserId="1477" />
  <row Id="3380" PostId="3275" Text="Oh, sure. I do not have direct first hand info so maybe someone else will magically pop up from nvidia and answer." CreationDate="2010-08-27T22:33:33.830" UserId="162" />
  <row Id="3381" PostId="3276" Text="There have been a few answers mentioning Blender as being widely used, so I think this is the best answer. Thanks everyone!" CreationDate="2010-08-27T22:38:05.570" UserId="1700" />
  <row Id="3383" PostId="3225" Text="I think that everyone will add this blog to their feed only to see those bondage pixel-art :P" CreationDate="2010-08-28T06:01:05.633" UserId="469" />
  <row Id="3385" PostId="3306" Text="Yes, it's not exactly what I'm looking for, but I guess there is no other easy way to do this. Thanks for the answer." CreationDate="2010-08-28T14:05:02.947" UserId="1924" />
  <row Id="3386" PostId="3331" Text="If you want to do a motion-blur like that, you could blur in the pixel-shader for the sprite, rather than as a post-process. Sprites, being 2D, are an easier case than 3D geometry." CreationDate="2010-08-28T16:08:02.520" UserId="1091" />
  <row Id="3387" PostId="3330" Score="1" Text="Yes but it is not full stereo." CreationDate="2010-08-28T16:24:45.617" UserId="1456" />
  <row Id="3388" PostId="3331" Text="Yes, I should´ve been more specif, I was thinking of doing this at draw time." CreationDate="2010-08-28T21:02:32.953" UserId="457" />
  <row Id="3389" PostId="3330" Text="They mention this on a game developer commentary somewhere, can't find the link at the moment." CreationDate="2010-08-29T07:54:12.637" UserId="891" />
  <row Id="3390" PostId="3330" Text="@samboush: Why is this not &quot;full stereo&quot;? It works with Nvidia 3D Vision and usual Stereo Glasses." CreationDate="2010-08-29T09:18:59.273" UserId="1936" />
  <row Id="3391" PostId="3342" Score="2" Text="sounds more like a http://www.stackoverflow.com question." CreationDate="2010-08-29T14:58:29.850" UserId="653" />
  <row Id="3392" PostId="3337" Text="What flame? I don't understood what you meant here..." CreationDate="2010-08-29T15:54:03.513" UserId="469" />
  <row Id="3393" PostId="3330" Text="@Enrico: If you have Screen with depth, you know real coordinates of every pixel. Then U can count shift of normal scene for left and right eye. But real 3D stereo is that you draw two scenes - firts for left eye  and second for right eye. Two full scenes. Then it takes 2 time more of drawing time." CreationDate="2010-08-29T20:59:18.847" UserId="1456" />
  <row Id="3394" PostId="600" Score="1" Text="I'm confused about this answer being the &quot;accepted&quot; answer, given the two seemingly contradictory answers also here." CreationDate="2010-08-29T22:13:38.883" UserId="825" />
  <row Id="3395" PostId="3342" Text="Dunno but some tags might help. Also mentioning the platform/library. I'm suspecting iPhone or Mac but I guess a bit more info would help. Also, maybe telling what you tried and didn't work? Surely you can give a bit more than one line if you want others to solve it for you." CreationDate="2010-08-30T01:09:36.840" UserId="865" />
  <row Id="3396" PostId="3346" Text="P.S. I already answered your question, but this would've been better suited for http://www.stackoverflow.com since it's just a general programming question. If my answer isn't thorough enough you are welcome to repost it there and see what responses they give." CreationDate="2010-08-30T02:37:21.330" UserId="189" />
  <row Id="3397" PostId="3347" Text="Some great resources.  I should get a chance to try it out in a couple days." CreationDate="2010-08-30T02:51:40.770" UserId="1947" />
  <row Id="3398" PostId="3346" Text="I'm on stackoverflow also, but I'm still learning the mix of what questions are valid for here." CreationDate="2010-08-30T02:55:13.917" UserId="1947" />
  <row Id="3399" PostId="600" Text="I don't know why this is the accepted answer, as it is factually incorrect." CreationDate="2010-08-30T03:52:22.363" UserId="962" />
  <row Id="3400" PostId="3346" Score="2" Text="This question seems perfectly fine here. After all, he probably got the abswer he needed.   See this:  http://meta.gamedev.stackexchange.com/questions/3/programming-questions-here-or-belongs-on-stackoverflow" CreationDate="2010-08-30T04:01:03.657" UserId="51" />
  <row Id="3401" PostId="3351" Score="1" Text="The last &quot;additionally&quot; bit should probably be a separate question so the main one doesn't get sidetracked. " CreationDate="2010-08-30T08:24:18.500" UserId="51" />
  <row Id="3402" PostId="3237" Text="`(this is a true fact which even saved my life once)` Care to elaborate? :)" CreationDate="2010-08-30T09:15:40.370" UserId="1004" />
  <row Id="3403" PostId="3347" Text="+1, the snippets are great. However, I don't fully agree about not meaning anything -- it's always better to check the amount of memory than letting your program spectaculary fail." CreationDate="2010-08-30T10:27:23.770" UserId="1943" />
  <row Id="3404" PostId="1576" Text="well I think I agree that it doesn't belong here since the question, at least as worded, isn't about designing, developing, or even marketing a game. It looks to be about trying to play the game on linux which would support the gaming suggestion." CreationDate="2010-08-30T12:07:33.733" UserId="1477" />
  <row Id="3405" PostId="3237" Text="@RCIX, *obviously* he was touring a secret government facility when a physics-experiment-gone-wrong breached a portal into another dimension, requiring him to *quickly decide* how to make effective use of makeshift weapons, how to *improvise under pressure* when faced with impending deadlines, and how to *react* quickly and decisively to a fluid environment. It's definitely the sort of thing you'd put on your *resume* - right after the section on your *guild leadership* experience." CreationDate="2010-08-30T13:46:12.767" UserId="165" />
  <row Id="3406" PostId="3362" Text="The problem is you'll get diamonds instead of squares in this case, and that's not what the OP wanted." CreationDate="2010-08-30T14:00:43.257" UserId="1943" />
  <row Id="3407" PostId="3361" Score="2" Text="The distortion is actually pretty severe with this - the quads in the middle of the face will be near square, and the ones near the corners will be badly distorted." CreationDate="2010-08-30T14:35:09.867" UserId="1091" />
  <row Id="3408" PostId="3361" Text="@JasonD : It will still be better than all diamonds. Suggest a solution which is less distorted if you want to downvote." CreationDate="2010-08-30T14:39:56.287" UserId="1943" />
  <row Id="3409" PostId="3340" Text="Of course, the danger of dynamic difficulty adjustment is that players purposefully play suboptimally to prevent the game from getting too hard, so you have to be careful about this. DDA isn't a no-brainer panacea by any means." CreationDate="2010-08-30T15:05:25.947" UserId="458" />
  <row Id="3410" PostId="3364" Text="Actually, my question is &quot;since I obviously can't do what you thought I was really asking, what might I do instead?&quot;" CreationDate="2010-08-30T15:32:06.090" UserId="1593" />
  <row Id="3411" PostId="3361" Text="Well, you can approximate a sphere pretty nicely with geodesic division, but I'm not sure I see how that helps me." CreationDate="2010-08-30T15:32:51.753" UserId="1593" />
  <row Id="3412" PostId="3364" Text="Very well, edited then." CreationDate="2010-08-30T15:34:04.700" UserId="452" />
  <row Id="3413" PostId="3362" Text="Unless I'm missing something, that doesn't give me regions that are any easier to coordinate and map and link...does it?" CreationDate="2010-08-30T15:34:23.637" UserId="1593" />
  <row Id="3414" PostId="3364" Text="Yeah, I guess I got side-tracked by the other part.  I was thinking about implementing Fuller's Dymaxion Map but working with triangular tiles seemed like as much of a clusterF* as the polar-tiling problem that I'm starting with.  So, with your suggestion, if someone is sailing from North America to northern Asia, and the coordinates matter (maybe they can establish floating bases or something) how do I stitch the seams together?  Just come up with a table of NA:A5 -&gt; A:Z475 type connections? " CreationDate="2010-08-30T15:38:24.427" UserId="1593" />
  <row Id="3415" PostId="3347" Text="Well, but I think the point was not necessarily that you shouldn't check the amount of memory, but that the amount of memory isn't a clear indicator of anything. When the card runs out of memory it might mean it will fail, or it might mean your texture data will just be automatically swapped in and out as necessary. 0 memory might not actually mean a fatal out-of-memory error." CreationDate="2010-08-30T16:02:40.690" UserId="189" />
  <row Id="3416" PostId="3362" Text="Geodesic seems like the way to go to me, can't think of any other options for regular subdivision.&#xA;&#xA;If you really need square regions, surely you can generate a square region, centred on the triangle centre, even though it overlaps with other tiles. For large enough spheres (and small enough triangles), the offset between the square regions and the adjacent triangle faces will be neglible. That should preserve the advantage of being able to describe local (i.e. same square) interactions in the same coordinate system, no?" CreationDate="2010-08-30T16:17:39.460" UserId="741" />
  <row Id="3417" PostId="3314" Text="...and business rules can be learned by a competent programmer..." CreationDate="2010-08-30T16:21:23.800" UserId="1780" />
  <row Id="3418" PostId="3357" Text="I always wondered if it might be easier for some applications to move *everything else* and keep the &quot;player&quot; at the origin.  Interesting to see I'm not the only one!" CreationDate="2010-08-30T16:23:04.160" UserId="1780" />
  <row Id="3419" PostId="3356" Text="It is unlikely that in any game you would need the &quot;close to zero&quot; precision of floating point.  If you have a one meter unit, 10 bits of precision gives you sub-millimeter accuracy and still lets you model over 4000km in each direction if you're stuck with 32 bit values.  If you need more precision than a millimeter then you can shift a few more bits, for sure.  Moving to 64 bit values in a space game would give you a solar system (or more?) with constant precision throughout the entire volume." CreationDate="2010-08-30T16:27:45.303" UserId="1780" />
  <row Id="3420" PostId="3330" Text="Why do you want to completely re-draw every single with a slight offset for Stereo Rendering, when you already have these information? Most of the calculated pixels will be correct in the reprojection cache, no need to recompute them. Those that change are of course recomputed - et voila, you have complete stereo. " CreationDate="2010-08-30T16:39:06.470" UserId="1936" />
  <row Id="3421" PostId="3364" Text="I guess. Though if they manage to do that, I'd just give them a bonus reward and put them off the grid until they go somewhere sensible." CreationDate="2010-08-30T16:42:07.670" UserId="452" />
  <row Id="3422" PostId="3237" Text="Competitive first person shooters train your reaction time which proved very useful in a quite precarious situation in traffic.&#xA;&#xA;I'm not here to start a flame war Cyclops neither should you. You may accept the fact or not. Simple as." CreationDate="2010-08-30T17:03:08.760" UserId="1874" />
  <row Id="3423" PostId="3345" Text="Pekuja you was evil in that question :P You managed to get 2 replies, one about Bullet, and one about Box2D... Why you had to ask both at the same time? :P" CreationDate="2010-08-30T17:51:46.460" UserId="469" />
  <row Id="3424" PostId="3330" Text="Screen Space Re-Projection Stereo can have artifacts.&#xA;&#xA;If there is a brick wall, and you are looking at it exactly parallel to one face, the one eye should be able to see that face, while the other should not be able to. Also on a curved object, the right eye should see slightly more of the right side, and the left slightly more of the left. Both of these are impossible with single pass rendering with Screen Space Re-Projection." CreationDate="2010-08-30T18:50:44.367" UserId="962" />
  <row Id="3425" PostId="3256" Score="3" Text="This is my blog. I'm honored to be mentioned in the company of some of the others here. The blog is now more about general game design. I've written articles about strategy games more than MMOs over the last few months." CreationDate="2010-08-30T19:31:35.423" UserId="1921" />
  <row Id="3426" PostId="3237" Text="I wasn't trying to start a flame war :P just interested...." CreationDate="2010-08-30T20:04:08.413" UserId="1004" />
  <row Id="3427" PostId="3340" Text="@Ian: in that case, it's sort of their fault, and they can play back through to get a more optimal experience if they want. Just as someone who's an expert in a game can pick &quot;Easy&quot; if they want... :)" CreationDate="2010-08-30T20:07:01.313" UserId="1004" />
  <row Id="3428" PostId="3347" Score="1" Text="Personally I'm planning to use this as a simple guideline for tracking leaks and watching my hardware compatibility. Using &quot;20mb&quot;? Yeah that'll probably run on anything on the market today. Using &quot;500mb&quot; on a simple game with half a dozen dynamically-allocated textures with a lot of churn? Whoops something has probably gone rather wrong with my garbage collection." CreationDate="2010-08-30T20:12:03.127" UserId="323" />
  <row Id="3429" PostId="916" Score="1" Text="I've done a little experimenting in this, coming from Cocos2d on iPhone, and it seems pretty nice so far for sprite based 2d games. The project seems active and has a decent forum community around it." CreationDate="2010-08-30T20:13:58.807" UserId="1952" />
  <row Id="3430" PostId="1851" Text="In addition to AndEngine, I've been playing with the AIR for Android Betas, and they are pretty nice, if a little slow. I think it'll work well for strategy games, or action games without too many elements. I've been working with the beta on 2.1 though, so the final release on 2.2 might be significantly fast, I'm not sure yet. Definitely something to watch." CreationDate="2010-08-30T20:16:06.450" UserId="1952" />
  <row Id="3431" PostId="3362" Text="I think that there are some geodesic shapes that can give aproximate squares if REALLY needed." CreationDate="2010-08-30T22:09:47.577" UserId="469" />
  <row Id="3432" PostId="3351" Text="I want to figure how to force fixed point... My game has all sorts of strange errors because Lua uses the FPU, and DirectX fiddles with FPU too...&#xA;&#xA;I've saw things like 2*9000 = 17995 or 500*10 = 4897 it is really silly.&#xA;&#xA;But the worst error probably is one that is discussed in Ogre3D forums, where 1+5 = 4." CreationDate="2010-08-30T23:28:25.257" UserId="469" />
  <row Id="3433" PostId="3370" Text="Unfortunately I can upvote this only once! Partnership is the biggest pitfall in any business. It's extremely hard to do it right. There are too many traps in those kind of deals." CreationDate="2010-08-30T23:47:18.240" UserId="19" />
  <row Id="3434" PostId="3360" Text="Could you elaborate on what you mean by &quot;square(ish)&quot;? How squarish is &quot;square(ish)&quot;?" CreationDate="2010-08-31T02:17:45.757" UserId="1923" />
  <row Id="3439" PostId="2435" Text="I would love to see example source code for this! (Preferrably in C++/C#/Java)" CreationDate="2010-08-31T06:18:50.200" UserId="1199" />
  <row Id="3440" PostId="1478" Text="another advantage of rendering the HUD in 3D space is that graphics cards should be able to make your game stereoscopic for free (or so I've been told). " CreationDate="2010-08-31T06:25:45.653" UserId="1931" />
  <row Id="3441" PostId="3374" Text="Big-O = Optimization. Took me a bit to figure out what big-0 was." CreationDate="2010-08-31T06:28:50.733" UserId="962" />
  <row Id="3442" PostId="1738" Text="Downvoting is important in helping determine what is welcome in the  site, however providing no comment is completely unhelpful." CreationDate="2010-08-31T07:07:02.247" UserId="1958" />
  <row Id="3443" PostId="3374" Score="8" Text="Big-O isn't &quot;optimization&quot;. Big-O is a form of analysis that tells you how different algorithms will behave, in terms of efficiency, as the number of elements acted upon increases. See http://en.wikipedia.org/wiki/Big_O_notation for more detail." CreationDate="2010-08-31T07:11:53.717" UserId="323" />
  <row Id="3444" PostId="3374" Score="2" Text="I can assure you the people that came up with octrees and BSP/PVS knew all about big-O. In the end, the only thing that matters is the performance of the application. But to get there you have to consider all manner of things, including the asymptotic complexity of the algorithms that handle a lot of data." CreationDate="2010-08-31T07:32:35.400" UserId="678" />
  <row Id="3445" PostId="3237" Text="I wasn't referring to you. I was talking about Cyclops." CreationDate="2010-08-31T07:41:23.100" UserId="1874" />
  <row Id="3446" PostId="1576" Score="1" Text="@lathomas64: the games are already available for linux, the question is about *compiling* them and creating new games based on that source." CreationDate="2010-08-31T07:43:26.590" UserId="252" />
  <row Id="3447" PostId="3391" Score="3" Text="This is incorrect, Big O notation is used to show upper bounds of parallel algorithms just the same as linear algorithms.  Big O can be used for concurrent read/concurrent write architectures etc.  You can even do crazy things like sorting in O(1) with n^2 processors hah" CreationDate="2010-08-31T08:13:35.260" UserId="891" />
  <row Id="3448" PostId="3392" Text="Nice answer, lots of stuff I haven't thought about. I updated my question to reflect that I use Android" CreationDate="2010-08-31T08:15:51.053" UserId="1957" />
  <row Id="3449" PostId="3383" Score="3" Text="a simple google search will reveal all that you need to know ;)" CreationDate="2010-08-31T08:36:08.770" UserId="1282" />
  <row Id="3450" PostId="3379" Text="I second using Google App Engine. Even if your game gets massively popular, you should still easily be able to fit it inside the free tier. Also, never having to worry about the server platform is a HUGE plus.  " CreationDate="2010-08-31T08:37:15.273" UserId="678" />
  <row Id="3451" PostId="3314" Text="@dash-tom-bang: Yes. " CreationDate="2010-08-31T09:17:41.200" UserId="1456" />
  <row Id="3452" PostId="3391" Text="David, do you have any real-life examples? I mean, I can also Big-O the number of apples a group of people can carry, but that doesn't mean that it's used or useful. From my experience, most of the time gamedev choose their (parallel) algorithms based on raw performance, not on their growth functions." CreationDate="2010-08-31T09:20:48.727" UserId="1750" />
  <row Id="3453" PostId="3383" Score="4" Text="And hopefully in the future, that google search will point to this question. Nothing wrong with that." CreationDate="2010-08-31T09:46:57.673" UserId="259" />
  <row Id="3454" PostId="3397" Text="hey xeon i have worked with the iphone/ipad programming but never worked on the any game engine .So need help from person like you .&#xA;&#xA;Thanks.." CreationDate="2010-08-31T10:47:59.383" UserId="1959" />
  <row Id="3455" PostId="3378" Score="3" Text="This. It's important to understand the performance characteristics of your code. You just never know when a designer will use something you've added in a way you didn't expect, and suddenly the bit of code you thought would only have to handle 5 items is now handling 5000 and being pinged 100 times a frame. Do you optimise that? Can you? How many is actually reasonable? A profile will only tell you how slow it is, not why. Knowing the complexity will tell you whether you need to optimise the code, or replace it with something different.&#xA;" CreationDate="2010-08-31T10:48:30.367" UserId="1091" />
  <row Id="3457" PostId="3397" Score="5" Text="You need help from a person like yourself, to show initiative and learn what you need to learn. " CreationDate="2010-08-31T11:36:34.497" UserId="678" />
  <row Id="3458" PostId="3356" Text="Indeed. And that's why you'd use a solar system's Sun as a point of reference in a galaxy-sized world! The point is, your chosen method of handling precision doesn't bring anything to the table either way. It's moot, so you might as well use the one your library/hardware is attuned to." CreationDate="2010-08-31T12:32:08.140" UserId="1628" />
  <row Id="3459" PostId="3369" Text="I won't use a torus.  I could use a cylinder like the Civ games do.  But, given the lack of brilliant solutions, I'm seriously leaning toward a cube.  A cube is a polyhedron! :)" CreationDate="2010-08-31T12:35:45.760" UserId="1593" />
  <row Id="3460" PostId="3395" Score="3" Text="This is an effective duplicate of http://gamedev.stackexchange.com/questions/222/best-place-for-learning-how-to-write-games-in-unity3d&#xA;Can we close and mark as duplicate?" CreationDate="2010-08-31T12:45:35.077" UserId="465" />
  <row Id="3461" PostId="3323" Text="The dot(VecFromCameraToSurface, SurfaceNormal) is the method I use - but it's nice to see different ideas." CreationDate="2010-08-31T12:46:16.080" UserId="1628" />
  <row Id="3462" PostId="3378" Score="2" Text="Agreed. Universities teach you the 'Big-O' because it handles many of the problems you'll face. When you're asked 'oh, we can make this infinite rather than just 5? the testers hate the limitation' that's when the training pays off. You shouldn't just say 'no I can't'. It's vital to be able to problem solve out of that and say 'yes I can'. Your game needs a searchable galaxy? 'No problem'. Those million units need to be ordered? 'No problem'. 'Didn't study that enough' just doesn't cut it." CreationDate="2010-08-31T12:50:35.007" UserId="1628" />
  <row Id="3463" PostId="3391" Score="2" Text="&quot;sorting in O(1) with n^2 processors&quot; I generally feel that this usage of O is misleading as the resource usage is still O(n^2) no matter what way you slice the problem. A larger number of threads does not only mean a larger number of cpu cycles per second." CreationDate="2010-08-31T12:55:08.207" UserId="1742" />
  <row Id="3464" PostId="3401" Text="Please make your question (title) slightly more descriptive." CreationDate="2010-08-31T12:59:50.753" UserId="189" />
  <row Id="3465" PostId="3401" Score="1" Text="Do you have experience with Android?" CreationDate="2010-08-31T13:03:02.903" UserId="14" />
  <row Id="3467" PostId="3401" Score="1" Text="@Ricket or we could do it for him :)" CreationDate="2010-08-31T13:03:39.843" UserId="288" />
  <row Id="3468" PostId="3237" Text="So video games can train reaction speed - but can they train *sense of humor*? :) My comment was fairly clearly a *joke*, not a criticism of the effects of game-playing on useful personal traits." CreationDate="2010-08-31T13:25:27.623" UserId="165" />
  <row Id="3469" PostId="3350" Text="I agree. My friend used PhysX in university and had a lot of success with it - not sure how it caters for the 'just collision detection plox' market though." CreationDate="2010-08-31T13:33:38.357" UserId="1494" />
  <row Id="3470" PostId="3357" Text="I like your reasoning. I would just like to point out that when it comes to games that involve networking fixed point seems to have less quirks/deviations (client prediction is more accurate)." CreationDate="2010-08-31T13:37:31.883" UserId="1494" />
  <row Id="3471" PostId="3351" Score="1" Text="Didn't justify a comment; but if you do decide to use fixed point Q-Floats ( http://en.wikipedia.org/wiki/Q_(number_format) ) are your friend; they are ridiculously fast and easy to implement." CreationDate="2010-08-31T13:41:07.440" UserId="1494" />
  <row Id="3472" PostId="462" Text=".Net 4.0 **always** causes a reboot on my machines - just be aware of that." CreationDate="2010-08-31T13:43:36.307" UserId="1494" />
  <row Id="3473" PostId="3183" Text="That's his perspective: &quot;The 'story' usually seems like filler.&quot; For me the &quot;game&quot; sometimes seems like a filler between the story. Indeed I have turned down the difficulty (in game that let you do it part way through) many times just to get at the story faster. I wouldn't take one little mans opinions too seriously. It's these types of comments that make more of a name for a person; and that's exactly what he wanted and has achieved." CreationDate="2010-08-31T14:00:51.213" UserId="1494" />
  <row Id="3474" PostId="1576" Text="okay, well there was no mention of making new games in the original question." CreationDate="2010-08-31T14:01:23.993" UserId="1477" />
  <row Id="3475" PostId="3398" Text="Well I meant it more as a community rating locale.  I'm aware of what Google gets me." CreationDate="2010-08-31T14:08:09.877" UserId="776" />
  <row Id="3476" PostId="3398" Text="'Rating locale'? This is a list, thus a community wiki, which awards no rep." CreationDate="2010-08-31T14:11:01.110" UserId="1156" />
  <row Id="3477" PostId="3398" Text="No rep, sure. But there's still voting on answers." CreationDate="2010-08-31T14:29:04.760" UserId="51" />
  <row Id="3478" PostId="3398" Text="Ah. I mistook what you meant Präriewolf. Apologies." CreationDate="2010-08-31T14:34:50.453" UserId="1156" />
  <row Id="3479" PostId="3382" Text="&quot;When you prototype a game function or an aspect of a game, you shouldn't worry about optimizing it at all.&quot; This is true sometimes but not always. Certain games, like Dead Rising, rely on fast execution to make the core game mechanic - hundreds of zombies in real-time - feasible." CreationDate="2010-08-31T14:45:58.033" UserId="744" />
  <row Id="3480" PostId="3401" Text="Thanks a lot for that! @Andrew Russell" CreationDate="2010-08-31T15:01:58.943" UserId="1960" />
  <row Id="3481" PostId="3403" Text="Thanks @Bryan Denny" CreationDate="2010-08-31T15:05:53.817" UserId="1960" />
  <row Id="3482" PostId="3402" Text="Exactly what I was looking for. Thanx @Firas Assaad" CreationDate="2010-08-31T15:14:40.923" UserId="1960" />
  <row Id="3483" PostId="3407" Text="I can't, the C++ representation depends on inheritance, and honestly in this case composition doesn't make sense -- does a NPC include a Mobile which includes a Thing? Or does an Item include a Thing?" CreationDate="2010-08-31T15:44:32.343" UserId="1943" />
  <row Id="3484" PostId="3406" Text="Renderbound entities are not a problem. However the world is a breathing entity and in the background there's a lot of action. Consider the amount of alive entities in the 100000 range. However, the allocator idea seems quite reasonable, considering that each userdata would be the size of a pointer. I think boost has one that could be used out of the box." CreationDate="2010-08-31T15:45:36.803" UserId="1943" />
  <row Id="3485" PostId="3391" Text="Sorting in O(1) with n^2 processors isn't the best example, this type of Big-O notation is probably most often seen in academia.  Something like this http://www.cs.bu.edu/~best/crs/cs551/homeworks/hw1/pram.html&#xA;More realistic parallel algorithms can use log(n) processors.  This type of stuff is better suited to overloading onto GPU processing or super computing where there are hundreds of cores available." CreationDate="2010-08-31T16:21:20.687" UserId="891" />
  <row Id="3486" PostId="3407" Text="A Thing has-a Mobile (which I assume means physics) and has-a NPC (which I assume means AI or conversation). I don't know how Item fits into your hierarchy; usually, barring some in-world representation, a Thing has-a Inventory has-a Item; the item itself shares no base class with e.g. the player avatar." CreationDate="2010-08-31T16:37:56.167" UserId="744" />
  <row Id="3487" PostId="3396" Text="&quot;The problem with Big O&quot; is that people seem to forget that it is algorithmic complexity wrt performance relative to large dataset sizes.  In games we don't (usually) hit those values of N so we need to be concerned about the other pieces of the puzzle.  I suspect that bubble sort will always outperform quicksort when you have a list of two elements." CreationDate="2010-08-31T16:46:12.273" UserId="1780" />
  <row Id="3488" PostId="3374" Score="1" Text="Remember the rule of when to optimize:&#xA;&#xA;1) Don't do it.&#xA;2) (experts only) Don't do it yet." CreationDate="2010-08-31T17:00:25.647" UserId="452" />
  <row Id="3489" PostId="3407" Text="Nope, thing is anything that can be placed on the map, mobile means something that can move (inteface has movement and the map doesn't cache position), NPC means the object can receive NPC events, has stats etc..." CreationDate="2010-08-31T17:19:07.363" UserId="1943" />
  <row Id="3490" PostId="3407" Text="Item shares a lot with the player avatar -- a position, a map it belongs to, an event mechanism, a name (and other similar stats) and similar reaction to some events -- both are tangible things so both have physical statistics. " CreationDate="2010-08-31T17:20:27.857" UserId="1943" />
  <row Id="3491" PostId="3407" Text="While I see where you're going, the problem is that due to composition, the C++ code will get really messy. We are talking about quite a big **existing** game. +1 anyway though -- the articles are an excellent read." CreationDate="2010-08-31T17:21:17.093" UserId="1943" />
  <row Id="3492" PostId="3391" Text="err I meant offloading, not overloading.  Can't edit my original comment anymore." CreationDate="2010-08-31T17:41:49.890" UserId="891" />
  <row Id="3493" PostId="3183" Text="I think this question should be renamed, for example, &quot;Is story more important or the gameplay more important?&quot;" CreationDate="2010-08-31T17:53:55.190" UserId="1966" />
  <row Id="3494" PostId="3407" Score="1" Text="I think you will find, as argued in the linked articles, that the C++ code will get considerably cleaner by switching to components. (Your NPC class already sounds close to a blob.)" CreationDate="2010-08-31T17:54:09.003" UserId="744" />
  <row Id="3495" PostId="3383" Text="...and presumably the answers will change over time, but how many will keep their own answers updated?" CreationDate="2010-08-31T17:56:45.990" UserId="1780" />
  <row Id="3496" PostId="3237" Text="In this case I'm sorry Cyclops." CreationDate="2010-08-31T18:12:55.853" UserId="1874" />
  <row Id="3497" PostId="3407" Text="The motivation driving components is sound even if you (like me) find it pointless to have a &quot;generic bag of crap&quot; in each of your entities.  Consider: A &quot;Thing&quot; is anything in the world, it might have a position, it might not.  Give &quot;Thing&quot; a bunch of pointers instead of descendants; the player's AI* would point to the input handling.  Anything that can appear in the world has a Model*.  Anything that moves has MovementInfo*.  Anything that doesn't have one or more of these things just has a NULL in there." CreationDate="2010-08-31T18:18:10.353" UserId="1780" />
  <row Id="3498" PostId="3406" Score="1" Text="You don't even need to use Boost, as they're not hard to implement by hand.  A small object allocator is an array of the size of your small object.  The freelist is the index of the first free item, and each free item is casted to an int and that is the index of the next free item.  When you want to allocate one item, just peel the first one off the list, construct-in-place, and you're done.  To free it, just destroy it, write the first free item's index into it, and then set firstfree to the index of the item." CreationDate="2010-08-31T18:25:23.103" UserId="1780" />
  <row Id="3499" PostId="3356" Text="Incidentally, I worked on a game where we had to model over 4000km in each direction. For compatibility with code in other projects, it had to use 32 bits for positions. It's not a theoretical problem, given the commercial demands placed on code reuse and the size of game worlds today." CreationDate="2010-08-31T18:26:05.213" UserId="744" />
  <row Id="3500" PostId="3407" Text="The advantage of the &quot;generic bag of crap&quot; rather than a hardcoded set of pointers is that some of the crap can be entirely driven by an attached script, rather than C++ code. This was a motivation of doing it for Dungeon Siege (which is one of the main published references about it), and is also the core typing mechanism of Unity3D." CreationDate="2010-08-31T18:30:43.487" UserId="744" />
  <row Id="3501" PostId="3406" Text="You can also just plug in something like tcmalloc (http://goog-perftools.sourceforge.net/doc/tcmalloc.html) which has better support for small object allocation and see if it helps, no code changes necessary." CreationDate="2010-08-31T18:31:56.153" UserId="744" />
  <row Id="3502" PostId="3407" Text="Agreed, I might consider it in the next project, however, I can't rewrite this one from scratch :/." CreationDate="2010-08-31T18:36:59.463" UserId="1943" />
  <row Id="3503" PostId="519" Text="@Jared: There are probably very few folks who wouldn't use any closed-source software on Linux. You're likely to find more anti-DRM sentiment, but DRM doesn't do any good anyway, so I don't see the harm in dropping it." CreationDate="2010-08-31T19:14:22.020" UserId="1974" />
  <row Id="3504" PostId="3321" Text="Protobufs are significantly more compact than XML, and have both a text (JSON-esque) and binary form. Otherwise, I agree, it's good to know how this stuff works under the hood." CreationDate="2010-08-31T19:22:41.863" UserId="744" />
  <row Id="3505" PostId="3402" Text="Another good resource is the book [Hello, Android](http://pragprog.com/titles/eband3/hello-android) which explores making a Sudoku game over several chapters, including drawing using canvas and handling user input. There's also a chapter on 3D graphics that builds a textured rotating cube." CreationDate="2010-08-31T19:27:22.627" UserId="18" />
  <row Id="3506" PostId="3398" Text="@The Communist Duck No worries. =)" CreationDate="2010-08-31T19:50:52.323" UserId="776" />
  <row Id="3507" PostId="273" Text="@Simon: I'm a little late to the party here, but I'm curious if you would give a specific example of what you mean by that.  What is a good example of solving a specific problem in a way that the STL is too general to solve efficiently?" CreationDate="2010-08-31T20:29:49.503" UserId="430" />
  <row Id="3508" PostId="3194" Text="*cough* than* *cough*" CreationDate="2010-08-31T20:33:22.750" UserId="1981" />
  <row Id="3509" PostId="6" Text="+1 for mentioning dynamic A* better know as D*" CreationDate="2010-08-31T21:09:43.263" UserId="891" />
  <row Id="3510" PostId="3183" Text="I like your title better, SHiNKiROU, so I changed it. The original title came from the article I linked to in the question text, but your title is more appropriate to the actual question asked and the responses." CreationDate="2010-08-31T21:19:40.313" UserId="1263" />
  <row Id="3511" PostId="770" Score="1" Text="Don't look up is more emphatic on console, as well. Mouselook has much less issue with flicking a glance around the environment." CreationDate="2010-08-31T21:30:14.627" UserId="1970" />
  <row Id="3512" PostId="925" Text="Good practical advice here." CreationDate="2010-08-31T21:31:45.030" UserId="1970" />
  <row Id="3513" PostId="273" Text="Thanks so much for the link to EASTL - I think that is the perfect response to this question, as it is a real-world solution by one of the most prominent developers." CreationDate="2010-08-31T21:48:14.843" UserId="825" />
  <row Id="3514" PostId="3409" Text="You can also publish to the Android market as of the latest version, although I have not tried." CreationDate="2010-08-31T22:12:17.923" UserId="1794" />
  <row Id="3515" PostId="3424" Score="2" Text="Sounds like they get full IP over it, in exchange for the prize money of course." CreationDate="2010-08-31T22:18:01.087" UserId="891" />
  <row Id="3516" PostId="3" Score="2" Text="The last link is broken because the * is not seen as part of it: http://en.wikipedia.org/wiki/A%2A" CreationDate="2010-08-31T22:47:13.400" UserId="450" />
  <row Id="3517" PostId="816" Text="The worst jump puzzle is in Mega Man 2 HeatMan stage: http://www.youtube.com/watch?v=hUVdA9ABzpg (0:29~0:46) One mistake and you die.&#xA;&#xA;In general, old Mega Man games are short, so they have annoyingly difficult levels." CreationDate="2010-08-31T22:54:57.257" UserId="1966" />
  <row Id="3518" PostId="1738" Text="Yep, this is why I asked why I got several downvotes... (I cannot see totals, but I had a couple)" CreationDate="2010-08-31T23:04:17.700" UserId="469" />
  <row Id="3519" PostId="3379" Text="The problem is that the game itself I have no idea on how to prevent cheating... I mean, it is probably kinda easy to run Cheat Omatic (search for this software, it is pretty cool), and edit the scores, or any other number in the memory (actually using it I could even create more units than normally allowed in Age of Empires for example)." CreationDate="2010-08-31T23:07:16.090" UserId="469" />
  <row Id="3520" PostId="3379" Text="There are something like google app engine that don't use python or java? I know bazillions of languages, but not those two :/" CreationDate="2010-08-31T23:08:22.623" UserId="469" />
  <row Id="3521" PostId="3381" Text="MySql would work? The country where I live MySql hosting is pretty common and cheap (well, sorta cheap)." CreationDate="2010-08-31T23:08:57.083" UserId="469" />
  <row Id="3522" PostId="3379" Text="Not that is free. There is Heroku if you know Ruby/Rails, and I've heard it isn't too expensive. As for preventing cheating, I would need to know a lot more about the game. PunkBuster and Valve's Anticheat might be options for client hardening, but you will need some kind of server-based solution if you want to be really sure. Alternatively just have entries on the leaderboards age off after a week or so, most spammers will lose interest." CreationDate="2010-08-31T23:40:56.473" UserId="395" />
  <row Id="3523" PostId="816" Text="Nailer, on the contrary, I love Kreedz Climbing maps." CreationDate="2010-09-01T00:57:33.030" UserId="962" />
  <row Id="3524" PostId="3425" Score="1" Text="Yeah, the tl;dr is they own it, and anything that will ever come from it, In its entirety. Also you still have to localize it for them. ***IANAL***" CreationDate="2010-09-01T00:59:57.373" UserId="14" />
  <row Id="3525" PostId="3330" Text="@AttackingHoboYes: You are right and Good example. They use right eye first then caclulate left. My example is easy too. You have sheet of paper and looking on it abeam : on right side  You have letter &quot;A&quot; and on left side of paper you have letter &quot;B&quot; . On full stereo You will see &quot;A&quot;&amp;&quot;B&quot; but in CryEngine3 You will see &quot;A&quot; only. " CreationDate="2010-09-01T01:15:27.033" UserId="1456" />
  <row Id="3526" PostId="3425" Text="Good stuff, thanks a lot! Gonna pass on this then." CreationDate="2010-09-01T01:21:32.227" UserId="422" />
  <row Id="3527" PostId="3427" Score="3" Text="Good points! Enterprise practices are recommended because they are proven to produce better products, faster. Millions are invested in researching this stuff and I'm wondering why this research doesn't seem to apply to game development.&#xA;&#xA;I don't think the games industry has any more rigorous tight schedules than other software dev industries, does it? Everyone needs to make a dollar, and I've had my fair share of long hours and rushed jobs on non-game projects." CreationDate="2010-09-01T01:28:59.087" UserId="1799" />
  <row Id="3528" PostId="3425" Text="&quot;in up to 19 languages&quot; sounds like translating into 19 human languages. Should &quot;submissions&quot; be edited to &quot;languages&quot; or did I misinterpret the last quoted sentence?" CreationDate="2010-09-01T01:43:21.393" UserId="189" />
  <row Id="3529" PostId="3345" Text="Yeah, I realised I should have asked separate questions about 2D and 3D. I'm sorry about that. I wonder if it's possible to split this..." CreationDate="2010-09-01T02:36:47.387" UserId="302" />
  <row Id="3530" PostId="3409" Text="I have heard that Processing has performance issues with Android, is that true?" CreationDate="2010-09-01T02:42:53.223" UserId="1960" />
  <row Id="3531" PostId="3419" Text="@Kimau I'm a Java developer, seems Airplay SDK is a C++ / XCode SDK?" CreationDate="2010-09-01T02:43:38.063" UserId="1960" />
  <row Id="3532" PostId="3374" Text="Well first of all Big O can be used for space or computational complexity, so &quot;over everything else&quot; isn't exactly true. Second, Big O is usually a lot simpler to compute for something than normal case analysis, and would be used as a quick mental check for whether you are doing something wrong. If drawing a sprite takes O(2^n) time, you should probably choose a different algorithm. If you want a more practical approach to software design look into SE practices rather than CS. CS is theoretical in nature, whereas SE is more based on industry." CreationDate="2010-09-01T03:01:58.090" UserId="1413" />
  <row Id="3533" PostId="3427" Text="Thanks for the great links!" CreationDate="2010-09-01T03:23:48.660" UserId="1799" />
  <row Id="3534" PostId="3409" Text="I haven't tried enough different things to give a well-backed true/false answer. My programs seem to behave fine on Android. I'd say search the web, search processing's android forum, etc... Or just try it out. ;)" CreationDate="2010-09-01T03:29:20.743" UserId="1794" />
  <row Id="3535" PostId="3425" Text="Yes, I did mean that. Thank you for bringing it to my attention. I edited it in my answer. I had typed it a bit of a hurry." CreationDate="2010-09-01T04:45:06.507" UserId="962" />
  <row Id="3536" PostId="3425" Text="I am not a lawyer as well, but the text seems pretty straightforward to me." CreationDate="2010-09-01T04:46:14.133" UserId="962" />
  <row Id="3537" PostId="1176" Text="Yeah for flash games I recomend not using gradients for anything that is going to be vector and rendered by flash each frame, other than a few things on the HUD and the player sprite. Gradients eat performance fast." CreationDate="2010-09-01T05:11:15.330" UserId="962" />
  <row Id="3538" PostId="3434" Text="Jake, do you need some code to do the dot product function. If so, we can do that too.&#xA;&#xA;To make it a little more robust, you could normalize newVelocity and scale it by speed. " CreationDate="2010-09-01T05:42:41.360" UserId="1923" />
  <row Id="3539" PostId="3435" Score="1" Text="Yeah I'm looking for approaches that would help me ascertain resources prior to prototyping. This way I can easily go into creating levels/scenes while the programmers prototype the project. " CreationDate="2010-09-01T06:24:15.457" UserId="919" />
  <row Id="3540" PostId="3406" Score="2" Text="Also, see Modern C++ Design for Alexandrescu's Tiny Allocator." CreationDate="2010-09-01T07:36:20.683" UserId="259" />
  <row Id="3541" PostId="3426" Score="3" Text="If the article you've linked to is discussing protyping, isn't it a straw man to assume it applies to production code as well? I don't think the authour would use that approach for production code." CreationDate="2010-09-01T07:40:03.887" UserId="259" />
  <row Id="3542" PostId="3195" Score="1" Text="@Micheal: I appreciate the +1, but that's not what I meant at all." CreationDate="2010-09-01T07:43:35.907" UserId="678" />
  <row Id="3543" PostId="3195" Text="The question has changed substantially since I posted this answer, to the point that it's not longer answering the question. What is the proper etiquette in these cases?" CreationDate="2010-09-01T07:45:00.710" UserId="678" />
  <row Id="3544" PostId="3427" Score="2" Text="@secoif agreed. The only technical difference between games programming and enterprise programming is a minimum framerate requirement (not that enterprise programming can be dog slow). I think the problem stems from promoting devs to senior production positions. They're not interested in process or scheduling; they just want to make the creative decisions. We should have professional standards for production managers and producers, so they have a minimum understanding of what managing a software team entails." CreationDate="2010-09-01T07:48:27.383" UserId="259" />
  <row Id="3545" PostId="3" Text="fixx0r3d both links" CreationDate="2010-09-01T07:51:25.060" UserId="259" />
  <row Id="3546" PostId="3420" Text="+1 for Amit. I learned A* from his website 10+ years ago." CreationDate="2010-09-01T07:52:11.083" UserId="259" />
  <row Id="3547" PostId="3424" Score="2" Text="for the CHANCE of winning $5000, this is a terrible deal." CreationDate="2010-09-01T08:29:08.823" UserId="119" />
  <row Id="3548" PostId="3426" Score="5" Text="In game development, it is very common that (prototype code + bugfixes + optimization) = production code" CreationDate="2010-09-01T09:09:42.737" UserId="659" />
  <row Id="3549" PostId="3432" Text="Chipmunk is cool as a 2D physics engine - but last time I looked, which was admittedly the best part of 2 years ago, there was no easy way of manually doing collision queries (e.g. raycasts, intersection tests). Has support for that sort of thing been added yet?" CreationDate="2010-09-01T09:15:25.120" UserId="659" />
  <row Id="3550" PostId="3424" Score="2" Text="These types of contests are scams to get free IP from gullible developers. They should be avoided at all costs." CreationDate="2010-09-01T09:40:16.440" UserId="639" />
  <row Id="3551" PostId="3426" Text="So surely the question should be &quot;how do we stop people putting prototype code into production?&quot;" CreationDate="2010-09-01T10:07:09.143" UserId="259" />
  <row Id="3552" PostId="3440" Score="1" Text="Re: TDD. See the comments to this answer (http://gamedev.stackexchange.com/questions/1905/experiences-of-test-driven-devleopment-in-large-projects/1911#1911) for why I think TDD can absolutely be applied to game development and prototyping. Although it seems controversial." CreationDate="2010-09-01T10:09:15.207" UserId="259" />
  <row Id="3554" PostId="3442" Score="1" Text="I've mentioned this in another question - the view that optimization is orthogonal to game design is only true for certain types of games. Dead Rising's core mechanic requires a certain amount of graphical and AI power. WoW's core mechanic requires a certain minimum database concurrency. Sometimes, the very ability to scale way way up is what makes the game fun, so knowing your budgets when prototyping is more important." CreationDate="2010-09-01T11:14:11.027" UserId="744" />
  <row Id="3555" PostId="2655" Text="let me look at more of the file and see if that pattern continues. Nice observation indeed!" CreationDate="2010-09-01T11:32:43.890" UserId="1504" />
  <row Id="3556" PostId="3444" Text="Wow, so many questions in one thread. Please spin off different questions into different threads." CreationDate="2010-09-01T14:01:56.967" UserId="14" />
  <row Id="3557" PostId="3438" Score="3" Text="Yes, this touches on an interesting point, that in games you can't treat the presentation aspect as a detachable and replaceable concept like HTML and CSS is for web apps. Often it's the artists who are dictating some of the 'rules' you have to work with, so the logic must take the properties of the view into account." CreationDate="2010-09-01T14:28:38.383" UserId="1101" />
  <row Id="3558" PostId="3426" Score="2" Text="In another comment, you say &quot;Enterprise practices are recommended because they are proven to produce better products, faster.&quot; Could you present a source for this claim, including support for why you think MVC and TDD are included, and what they are compared against? In particular, TDD is very new in terms of gaining popularity and I'd be surprised if many enterprises used this method." CreationDate="2010-09-01T14:37:46.773" UserId="1101" />
  <row Id="3559" PostId="2520" Text="It does sound like he moved first. Then, while inter-penetrated past mid-point, he calculated a new velocity (in roughly an opposite direction) which did not have the speed to separate them by the next frame, which again reversed direction, which didn't make it out... etc...etc... balls stick together.&#xA;&#xA;@Vish: If you move first, you must remove penetration before calculating new velocity. Better yet, google, &amp; implement quadratic equation which solves exact point of contact, then calculate new velocity from there.&#xA;One of these threads should not have been closed... it is a common noob problem." CreationDate="2010-09-01T14:52:13.983" UserId="1923" />
  <row Id="3560" PostId="3438" Text="yes that's exactly what I was trying to say (I think you said it better)" CreationDate="2010-09-01T14:54:13.617" UserId="119" />
  <row Id="3561" PostId="3447" Score="1" Text="re: tdd point 1, I think your point is more applicable when trying to force unit tests on existant code. When writing new code, TDD will produce code with low coupling and less shared state that is easy to test. Also, testing the &quot;main simulation&quot; is IMO more the area of functional tests, not TDD and unit tests." CreationDate="2010-09-01T14:59:04.960" UserId="259" />
  <row Id="3562" PostId="3250" Text="Nice find, cheers" CreationDate="2010-09-01T15:02:36.860" UserId="804" />
  <row Id="3563" PostId="3426" Text="Automated Testing (and to some extent TDD) is very old. It is just recently gaining traction again though." CreationDate="2010-09-01T15:05:33.677" UserId="1198" />
  <row Id="3564" PostId="3448" Text="@Ricket thank you for your time and effort. :)" CreationDate="2010-09-01T15:20:15.630" UserId="1960" />
  <row Id="3565" PostId="3447" Text="&quot;TDD will produce code with low coupling and less shared state that is easy to test.&quot; Compared to what? These are the vaunted benefits but there's a dearth of any proof that this is a better approach than just following best practices for interface design from the start." CreationDate="2010-09-01T15:27:26.007" UserId="1101" />
  <row Id="3566" PostId="3438" Score="3" Text="This sounds like a case where the [MVVM](http://en.wikipedia.org/wiki/Model_View_ViewModel) pattern might apply." CreationDate="2010-09-01T16:03:12.563" UserId="539" />
  <row Id="3567" PostId="3444" Score="1" Text="-1, there isn't really a single question here that can be answered.  " CreationDate="2010-09-01T16:25:42.760" UserId="51" />
  <row Id="3568" PostId="3256" Text="Awesome, its part of my rotation and gives me plenty to ponder in the game I work on in my spare time." CreationDate="2010-09-01T16:53:12.593" UserId="1893" />
  <row Id="3569" PostId="3204" Text="would be a fun thought experiment to try and make a game mechanic out of as many of those keywords as possible." CreationDate="2010-09-01T17:19:10.917" UserId="1477" />
  <row Id="3570" PostId="497" Text="Interesting; two different definitions of design coming up in the answers: 'game-play design' and 'game-software design'." CreationDate="2010-09-01T18:11:36.250" UserId="1970" />
  <row Id="3571" PostId="986" Text="Yes, *most* game design applicants are low quality; don't be alarmed, it's just how it is. :)" CreationDate="2010-09-01T18:13:03.420" UserId="1970" />
  <row Id="3572" PostId="1051" Text="Or for game designers, ask them to, y'know, design a level. Level design is where the rubber meets the road, so to speak; it demonstrates an understanding of mechanic use, pacing, the role of story, etc. etc. etc." CreationDate="2010-09-01T18:14:51.047" UserId="1970" />
  <row Id="3573" PostId="3382" Text="What percentage of game development is prototyping?  Eventually you want to ship *something*, right?" CreationDate="2010-09-01T19:08:58.860" UserId="1780" />
  <row Id="3574" PostId="3412" Text="Both of your code examples are O(n).  Big-O discussions have nothing to do with &quot;one extra operation per loop,&quot; but rather &quot;one extra search through everything per iteration of the loop over everything.&quot;" CreationDate="2010-09-01T19:11:45.970" UserId="1780" />
  <row Id="3575" PostId="3453" Text="Related question: http://gamedev.stackexchange.com/questions/2913/why-we-heavily-use-scripts-in-game-developing" CreationDate="2010-09-01T20:45:24.330" UserId="51" />
  <row Id="3576" PostId="3444" Text="@Tetrad, how do you figure?" CreationDate="2010-09-01T20:47:22.420" UserId="1780" />
  <row Id="3577" PostId="3457" Score="1" Text="Great answer! No need for apologies for such a well detailed answer. I think I will take the time to develop component &quot;actions&quot; defined in Lua and do some benchmarking. Thanks!" CreationDate="2010-09-01T20:52:39.973" UserId="1700" />
  <row Id="3578" PostId="3444" Score="1" Text="I mean no single question in that there's just a jumbled mass of unrelated questions (could you mark a single answer as &quot;accepted&quot; for the question and have it make sense?), not that a single portion of it couldn't be answered." CreationDate="2010-09-01T20:59:15.847" UserId="51" />
  <row Id="3579" PostId="3454" Score="3" Text="Have you tested using these 'inefficient' methods and seeing if they are, in fact, a bottleneck? If they work, run with them, and change things later if you really need to optimize." CreationDate="2010-09-01T21:09:54.107" UserId="1970" />
  <row Id="3580" PostId="3426" Text="It's also worth noting that Noel Llopis (the author of that article) is very much a TDD practitioner." CreationDate="2010-09-01T21:12:12.040" UserId="1780" />
  <row Id="3581" PostId="3457" Score="2" Text="The biggest hit in these kinds of systems is usually parsing the scripts, so make sure to frontload that at startup." CreationDate="2010-09-01T21:20:52.067" UserId="395" />
  <row Id="3582" PostId="3442" Text="@Joe Right, but: In the Dead Rising case, the visionary on the project said, &quot;We need 120 zombies onscreen at all times!&quot; And then it became a technical requirement to meet. I highly doubt it would have become the same game if the designer had said, &quot;How many zombies can I get?&quot; and a programmer replied, &quot;Oh, I don't know.. 10? 20?&quot;" CreationDate="2010-09-01T21:35:46.990" UserId="1970" />
  <row Id="3583" PostId="3457" Text="This is a good point. I actually compile my Lua into bytecode before packaging for release, which may reduce loading time even more, though I haven't done any measurements." CreationDate="2010-09-01T21:37:53.280" UserId="1720" />
  <row Id="3584" PostId="3435" Score="1" Text="@Wight Usually prototyping finds (or finds ways around) limits, and not the other way around." CreationDate="2010-09-01T21:38:35.893" UserId="1970" />
  <row Id="3585" PostId="3433" Text="Ask yourself: What kind of resources do you need to make this game awesome? Then shoot for that, and rub _hard_ against your limits. Otherwise your game will never become what you want it to become." CreationDate="2010-09-01T21:39:33.380" UserId="1970" />
  <row Id="3586" PostId="1051" Text="I'd say that's true for level designers, not necessarily for systems designers or story writers. I mean, I'm great at technical and systems design but I've never designed a level before, and if that's not a skill needed for a particular job I'd really wonder about why I was being asked to do something that's both outside my experience and also outside the bounds of the job I was interviewing for." CreationDate="2010-09-01T22:26:01.150" UserId="458" />
  <row Id="3587" PostId="3404" Text="&quot;Else each object would have to...cannot find word activate? the shader.&quot;&#xA;I believe the word you're looking for is &quot;bind&quot;." CreationDate="2010-09-01T22:33:12.980" UserId="1232" />
  <row Id="3588" PostId="3460" Score="6" Text="I might argue that &quot;user experience&quot; and &quot;security&quot; are opposites when talking about a &quot;best&quot; solution. But I'm interested to see what technologies are mentioned." CreationDate="2010-09-01T22:46:57.910" UserId="189" />
  <row Id="3589" PostId="3460" Text="Good point. :) I guess it's all about finding the right balance." CreationDate="2010-09-01T22:59:01.240" UserId="667" />
  <row Id="3590" PostId="3447" Score="1" Text="Compared to the code that most game programmers write that is highly coupled to the entire rest of the codebase.  TDD &quot;fixes&quot; this by making it very hard to write in the first place." CreationDate="2010-09-01T22:59:11.847" UserId="1780" />
  <row Id="3591" PostId="3444" Text="@Tetrad, why not either close it or wiki it, then?" CreationDate="2010-09-02T00:23:22.507" UserId="165" />
  <row Id="3592" PostId="3406" Score="1" Text="@tenpn that's exactly what I was thinking about.  It's a great model to follow and doesn't even require too much mad template skills." CreationDate="2010-09-02T00:31:54.127" UserId="1780" />
  <row Id="3593" PostId="3460" Text="I would say that this has no right answer. But yeah, there has to be one non-garbage solution." CreationDate="2010-09-02T00:38:48.233" UserId="14" />
  <row Id="3595" PostId="3426" Text="The issues of mvc and tdd aren't really related. They probably should be separate questions. " CreationDate="2010-09-02T01:30:01.793" UserId="51" />
  <row Id="3596" PostId="3464" Text="Actually I already do those things now but do feel theres a better way of doing it rather than gut feel butI guess it has served me well enough in the past." CreationDate="2010-09-02T01:34:18.263" UserId="919" />
  <row Id="3598" PostId="3409" Text="Ok, I'll check that out @gary comtois" CreationDate="2010-09-02T03:22:18.677" UserId="1960" />
  <row Id="3599" PostId="3434" Text="Took some adapting as expected but is working now. Thanks for the help. Diagram was awesome." CreationDate="2010-09-02T03:22:57.740" UserId="1204" />
  <row Id="3600" PostId="3434" Text="You're welcome. I don't know java so I had to go to semi-pseudo code. Glad you got it." CreationDate="2010-09-02T04:36:20.483" UserId="1923" />
  <row Id="3601" PostId="3432" Text="Yes :) Many people complained, so they added it. (at least, raycast...)&#xA;&#xA;Also they added a way that allow you do delete a object from inside a collision (something that before crashed the game)" CreationDate="2010-09-02T05:30:57.570" UserId="469" />
  <row Id="3602" PostId="3435" Text="If you didn't get the drift I know about prototyping and it's uses. I want to speed things up cause I think there is room for improvement. " CreationDate="2010-09-02T05:31:19.803" UserId="919" />
  <row Id="3603" PostId="3459" Score="1" Text="If you're using that technique, you should really sort using *allEntities.sortOn(&quot;distance&quot;, Array.NUMERIC)*. Otherwise the sorting will be string based (eg. 100 &lt; 9)" CreationDate="2010-09-02T05:38:16.783" UserId="20" />
  <row Id="3604" PostId="3330" Text="But they *do* two render passes and not one - they dont do one render pass and magically a 3D image pops out. They do render two full passes.&#xA;&#xA;@AttackingHobo: A brick wall has six/eight sides, so which one is not visible? How do you know if that brick side is not visible?&#xA;&#xA;There are some information from GDC, the best video describing and seeing this is here: http://www.golem.de/1008/77241.html - but its german..." CreationDate="2010-09-02T05:45:18.460" UserId="1936" />
  <row Id="3605" PostId="3465" Score="1" Text="So say we all.&#xA;&#xA;:)&#xA;&#xA;I believe the same, I am making my game &quot;shareware&quot; (you can actually download it for free and play all you want) with a order info button on the screen.&#xA;&#xA;Why? Well, it is because we are in a age where you CANNOT prevent information from flowing, thus bothering with it is not good idea." CreationDate="2010-09-02T06:42:53.407" UserId="469" />
  <row Id="3606" PostId="3330" Text="Your description confused me, it sounded like you said they get the original image and use the depth data to make two images from that." CreationDate="2010-09-02T07:08:38.603" UserId="962" />
  <row Id="3607" PostId="3460" Score="1" Text="Honestly? I will only put up with Steam, any other drm platform, and my interest in said game drops to 0." CreationDate="2010-09-02T07:13:04.053" UserId="962" />
  <row Id="3608" PostId="3465" Score="5" Text="&quot;There is no such thing as good DRM.&quot; - -&#xA;&#xA;&#xA;Words of truth. Upvote for that." CreationDate="2010-09-02T07:13:50.760" UserId="962" />
  <row Id="3609" PostId="3447" Text="What dash-tom-bang said. Since your tests are testing small independent components (sometimes functions, sometimes just single lines within functions), you *have* to write decoupled code. There's just no other way to do it. There's no &quot;proof&quot; because it's implicit in the definition of TDD." CreationDate="2010-09-02T07:35:10.583" UserId="259" />
  <row Id="3610" PostId="3436" Score="3" Text="The &quot;games are fun and there's no tests for fun&quot; argument really gets me. My A* implementation doesn't have to be fun. The save game system doesn't have to be fun. The events queue doesn't have to be fun. Break the game down and you can write unit tests (before or after) for every bit. It's how you put them together (which isn't the remit of unit tests, but rather functional tests) that makes the fun." CreationDate="2010-09-02T07:39:12.133" UserId="259" />
  <row Id="3611" PostId="3461" Text="Excellent link." CreationDate="2010-09-02T07:47:27.437" UserId="259" />
  <row Id="3612" PostId="3404" Text="That's the one, thank you." CreationDate="2010-09-02T08:13:10.003" UserId="1156" />
  <row Id="3613" PostId="3447" Score="1" Text="You're missing the point. Even if the TDD method does force you to write good code (which I don't agree with - it's often good black box code but can be poor white box code), there's no indication that you couldn't or wouldn't write code equally good if you approached it a different way - for example, using the time you would spend writing these tests and mock objects and fixtures on more adequate design, or even just on a &quot;test last&quot; approach that requires less refactoring." CreationDate="2010-09-02T09:29:11.973" UserId="1101" />
  <row Id="3614" PostId="3426" Score="2" Text="@Nate Bross - automated testing is old (and good) but the idea of writing your tests first and then writing code to fit it is pretty new. I am very sceptical of it being &quot;proven&quot; to produce anything better and faster." CreationDate="2010-09-02T09:33:57.783" UserId="1101" />
  <row Id="3615" PostId="3462" Score="2" Text="That sets a bit of a dangerous precedent though. We risk entering a world where only people who manage to catch the eye of Valve are able to make a decent profit on single-player PC games. I've bought a lot of good stuff on Steam but I know of several good indie developers who'd love to be on there but get ignored by Valve. So it's worrying if the choice becomes Steam vs. Easily-pirated-archive. :(" CreationDate="2010-09-02T09:37:25.097" UserId="1101" />
  <row Id="3617" PostId="3442" Text="I'm not sure what way either of the comments are aiming here, but in the case of Dead Rising, the designer just needs to prioritize the 120 zombies on screen in their feature list. Assuming your budgets are immovable can detract from a potentially great idea, and programmers can't tell you exactly how many polys you can have until they know about most of the other uses of the machine's resources. It's always a trade-off, and usually one that a non-programmer can't reason about with any accuracy." CreationDate="2010-09-02T09:47:20.053" UserId="1742" />
  <row Id="3618" PostId="3436" Score="2" Text="If you write the tests after, that's not TDD, and no one is arguing some automated tests are impossible/bad. There's no strong evidence that time spent writing extensive unit tests is better than time spent writing more of the game and traditional debugging. Also, your functional tests effectively test an awful lot of the things you would end up writing unit tests for. And finally, the number of bugs that occur in e.g. the A* code or event system for a game is dwarfed by the number of bugs in the much harder to test things, e.g. an artist put a tree in the path by mistake." CreationDate="2010-09-02T10:05:37.310" UserId="744" />
  <row Id="3619" PostId="3378" Text="&quot;You might not be so concerned about big-O when...&quot; processing input keys. I inherited an input system that went to lengths to resolve key-&gt;action mappings in constant time, using a lookup table. Switching it to a linear search of an array of (key, action) pairs saved memory and had no performance impact, since users rarely press more than a few keys a frame, and the array is usually only 20-30 items long. It also let us add (key, key, action) for chords." CreationDate="2010-09-02T10:16:18.417" UserId="744" />
  <row Id="3620" PostId="3460" Score="2" Text="Most the comments and responses are not relevant to the question. The question is not &quot;Is DRM bad?&quot; If a person has decided to implement technical DRM solution then that's their choice." CreationDate="2010-09-02T10:23:22.067" UserId="465" />
  <row Id="3621" PostId="3436" Score="1" Text="Joe is correct, most bugs in a video game are not algorithmic bugs; they are asset, or gameplay related bugs that you can only really test for with excessive Q&amp;A and playtesting. Nobody (except for the graphics programmer) is going to be particularly bothered by the pixelated shadow edges, but people are going to be frustrated when the evil monster at the end of level 3 is unbeatable because it's not vulnerable to the magic spell you collected two levels earlier and there isn't another way to defeat it." CreationDate="2010-09-02T10:27:15.923" UserId="1750" />
  <row Id="3622" PostId="466" Text="Wow, that book looks absolutely brilliant." CreationDate="2010-09-02T10:28:07.413" UserId="315" />
  <row Id="3623" PostId="3442" Score="1" Text="@Ipsquiggle: If the designer says &quot;We need 120 zombies onscreen at all times!&quot; that designer is thinking about numbers. Richard's claim that &quot;design isn't about numbers, it's about ideas&quot; is sometimes true, but sometimes not. Such a game would've been flat-out impossible on the Atari 2600, NES, SNES, etc. Realities of budgets close off certain game designs a priori. Designers need to be aware of this." CreationDate="2010-09-02T10:28:11.843" UserId="744" />
  <row Id="3624" PostId="1576" Text="@lathomas64: yes, I forgot to mention that. Clarified, thanks" CreationDate="2010-09-02T11:00:04.027" UserId="252" />
  <row Id="3625" PostId="3461" Text="TDD guarantees that your program passes your tests. If you're lucky, those tests guarantee that you meet some kind of minimum functional specification. Nothing about it guarantees good design or architecture. Bad architects will make bad choices of tests. Good architects will make good choices without tests." CreationDate="2010-09-02T11:11:57.650" UserId="744" />
  <row Id="3626" PostId="3442" Text="&quot;Realities of budgets close off certain game designs a priori&quot; but the only way to really know is to thrash it out with a programmer. katamari damacy might seem impossible to do at first glance, but a mindset of levels of detail provided the technical trickery to afford a solution to the apparently insoluble." CreationDate="2010-09-02T11:14:54.740" UserId="1742" />
  <row Id="3627" PostId="3436" Score="1" Text="Another consideration: Your A* implementation doesn't have to be fun, but your pathfinding implementation does. Players may complain if the AI takes &quot;too optimal&quot; paths, because it looks unnatural (e.g. jump over a banister rather than walk two more feet and turn to walk up the stairs). Every system in the engine at some point has to serve the goal of making a good game." CreationDate="2010-09-02T11:15:43.743" UserId="744" />
  <row Id="3628" PostId="1576" Score="1" Text="@Martin (and @Tobias) you can't make standalone games with this code, because the license requires that you require that the original game is installed on the player's computer." CreationDate="2010-09-02T11:45:49.060" UserId="769" />
  <row Id="3629" PostId="3204" Score="1" Text=":D I'm currently developing a sci-fi game where I've essentially based the entire concept on every keyword I can associate with sci-fi's 'epicness'." CreationDate="2010-09-02T13:12:24.547" UserId="1628" />
  <row Id="3630" PostId="3417" Text="The trouble then isn't capturing the GL_DEPTH_STENCIL component in a texture, but the fact that all depth information is lost in the FBO whenever you do so. The FBO becomes useless for then rendering the scene to the draw buffer. Hence I was using a Renderbuffer in the hopes of bypassing this issue. I think for now I have no option but to make two passes to grab the depth + draw information separately =( expensive-as-hell until I can find a way around it." CreationDate="2010-09-02T13:14:20.860" UserId="1628" />
  <row Id="3631" PostId="3467" Score="1" Text="It's amazing how often people forget this - and end up with really dull games." CreationDate="2010-09-02T13:21:04.570" UserId="1628" />
  <row Id="3632" PostId="3435" Text="The best approach to resource management in game design isn't to do it before you even write your prototypes... it's a flawed question." CreationDate="2010-09-02T13:23:24.373" UserId="1628" />
  <row Id="3633" PostId="3436" Score="1" Text="My issue is with the part of the answer that states &quot;there's hardly any point writing tests up-front.&quot; The argunment seems to be that because unit tests can't capture some possible problems (&quot;fun&quot;, art bugs), it's pointless. But of course it can capture other problems, some that may directly affect that mythical untestable fun factor. For instance, of course you can use TDD to extend your A* code so it returns &quot;realistic&quot; paths. That's not fun, though, it's a tool to create fun. " CreationDate="2010-09-02T13:28:17.753" UserId="259" />
  <row Id="3634" PostId="3447" Text="@Kylotan I'm missing the point? The discussion whas not whether TDD is the *only* way to produce decoupled code. I don't think anyone's said that. Just that if you do use TDD, you get decoupled code as a side-effect. Of course there are different ways to produce the same code." CreationDate="2010-09-02T13:35:15.503" UserId="259" />
  <row Id="3635" PostId="3436" Text="My point wasn't that &quot;your A* needs to do this&quot;, it's &quot;even apparently straightforward and testable units need designer-driven loosely-defined changes&quot;. And again, I don't want to sound as brash as dash-tom-bang did when he said I have no interest in becoming a better programmer, but if you can't write a working A* much faster than you can write working A* + comprehensive tests, maybe you need to re-evaluate your skills. The things you can test in a game are usually the things not worth testing." CreationDate="2010-09-02T13:39:46.757" UserId="744" />
  <row Id="3636" PostId="3447" Score="1" Text="I'd still like to see evidence that using TDD inherently produces decoupled code. As I said below, if you write decoupled tests, you get decoupled code. But you need someone skilled enough to write decoupled tests. And that person can probably write decoupled code without tests, as well." CreationDate="2010-09-02T13:42:02.197" UserId="744" />
  <row Id="3637" PostId="3436" Text="(Just to be clear, in the above comment, s/testing/automated unit testing/. The importance of QA departments and integration tests cannot be overstated.)" CreationDate="2010-09-02T13:46:34.963" UserId="744" />
  <row Id="3638" PostId="3461" Text="Replace TDD with unit tests in your comment, and I'd agree with you, Joe. But since TDD requires a red-&gt;minimum code-&gt;green-&gt;refactor process, you can't write functionality without a red test. Your tests *are* your functional specification. Even a bad programmer couldn't continue with TDD for too long, because his tests would be laboursome to write. At that point, he can refactor to a better architecture with the tests to support him. Of course, he still has to know what to refactor *to*, but that's the programmer's job with or without TDD." CreationDate="2010-09-02T13:49:34.760" UserId="259" />
  <row Id="3639" PostId="3447" Text="@tenpn - I'm just following the thread here. I said &quot;there's a dearth of any proof that this is a better approach&quot;, you said &quot;There's no &quot;proof&quot; because it's implicit in the definition of TDD&quot;, but the definition of TDD doesn't prove or imply it is 'better'. Just one route to a goal." CreationDate="2010-09-02T13:53:32.610" UserId="1101" />
  <row Id="3640" PostId="3461" Text="Of course, dash-tom-bang's &quot;excellent link&quot; is how about that rigid working cycle kills joy and productivity. At best, it supports that TDD can, over time, turn bad designers into acceptable ones. And the sign of that success is (ironically) that they do not need TDD anymore." CreationDate="2010-09-02T13:54:54.797" UserId="744" />
  <row Id="3641" PostId="3461" Text="Anecdotally, I have seen bad programmers continue with horrible designs using TDD, despite the tests being incredibly laborsome to write. Sometimes they are even happy about it, because writing the bad tests (thereby delaying real failure) doesn't make you feel nearly as bad as writing bad production code." CreationDate="2010-09-02T13:58:34.877" UserId="744" />
  <row Id="3643" PostId="3447" Text="@Kylotan yes you're right. I wouldn't say it produces code that's better than the best most-carefully designed manual approach. However the OP contended it was awkward to use in games with large aomunts of shared state, and I think that you wouldn't end up in that situation with TDD. You also wouldn't end up in that situation if you had the perfect game design before-hand." CreationDate="2010-09-02T14:23:10.790" UserId="259" />
  <row Id="3644" PostId="3461" Text="I think we're going around in circles, and this definitely isn't the best medium for the discussion. Can you use TDD in games? Yes. Is it a good idea? We both have our opinions. Let's high-five and call it a day." CreationDate="2010-09-02T14:26:40.057" UserId="259" />
  <row Id="3645" PostId="3406" Text="@tenpn, I actually have that one implemented somewhere :P" CreationDate="2010-09-02T14:45:43.053" UserId="1943" />
  <row Id="3646" PostId="3438" Text="The model needs a reference to a view, but doesn't need to depend on it. You can make an interface &quot;HitBoxSupplier&quot;, depended on by the model and implemented by the view." CreationDate="2010-09-02T15:00:47.207" UserId="769" />
  <row Id="3647" PostId="3438" Text="Bart - that would still break the classic MVC pattern" CreationDate="2010-09-02T15:56:25.210" UserId="119" />
  <row Id="3648" PostId="3489" Score="7" Text="It is really really bad practice to even attempt to change the exe. First off you run into the problem of not being able to modify files that are open.&#xA;&#xA;Secondly after you have worked around that problem, if you are saving to exe and there is an error, or something crashes, you are going to have a corrupt game exe and users will be comfused." CreationDate="2010-09-02T16:20:08.607" UserId="962" />
  <row Id="3649" PostId="3488" Text="Is it even possible to modify you own exe for game saves?  I'm primarily a Linux/Mac guy so I don't know what Windows allows in this area." CreationDate="2010-09-02T16:21:55.687" UserId="370" />
  <row Id="3650" PostId="3488" Text="caspin, yes it is possible! Check out LockNote (http://www.steganos.com/us/products/for-free/locknote/overview/) for an incredibly useful example of saving data into an executable." CreationDate="2010-09-02T16:47:38.283" UserId="189" />
  <row Id="3651" PostId="3459" Text="Aah, thanks. :) It was from memory, so a catch like that is appreciated." CreationDate="2010-09-02T17:01:55.743" UserId="1970" />
  <row Id="3652" PostId="3461" Score="1" Text="@Joe- taken to an extreme even seeing the running game doesn't mean it's going to keep working tomorrow.  Looking for a &quot;proof&quot; that any program is correct is foolish.  It is true that TDD isn't a guarantee that someone will become a better programmer, but if one desires to become a better programmer, TDD will help.  You can't force the horse to drink and stories are numerous describing people who embrace TDD as a team finding the quality of their code going up.  On the flip side: so TDD &quot;guarantees&quot; that the code passes the tests.  Without tests you don't even have that.  Which is preferable?" CreationDate="2010-09-02T17:03:35.410" UserId="1780" />
  <row Id="3653" PostId="3461" Score="1" Text="Further- too many programmers are apt to gold plate their code.  Just because something is written and appears to work today should not automatically make it untouchable.  Folks have to embrace the idea that software should be easy to change.  Of course, making changes is much riskier without tests..." CreationDate="2010-09-02T17:05:08.073" UserId="1780" />
  <row Id="3654" PostId="3488" Text="@Ricket - that's bolting an executable onto existing data, sort of like self extracting archives.  I suspect that they're not actually modifying the file itself, rather recreating it on &quot;save&quot;." CreationDate="2010-09-02T17:10:15.543" UserId="1780" />
  <row Id="3655" PostId="3462" Text="Fair enough, although the question was &quot;which DRM is 'best'&quot;, not &quot;should I use DRM&quot; or &quot;which DRM should I use.&quot;" CreationDate="2010-09-02T17:27:05.577" UserId="1780" />
  <row Id="3656" PostId="3492" Text="Technically in Pokemon it's possible to get an infinite supply of Master Balls, if you can strike lucky at the lottery corner (in some of the games)." CreationDate="2010-09-02T17:42:50.703" UserId="1156" />
  <row Id="3657" PostId="3489" Score="2" Text="And if it wants to communicates with the internet, some desktop firewalls will constantly ask again for permission because the checksum does not match." CreationDate="2010-09-02T17:52:25.760" UserId="450" />
  <row Id="3658" PostId="3460" Score="3" Text="Kimau, if someone asks a question about something with the intentions of doing X, and the methods the person wants use are really bad for achieving X, would it be bad to suggest a better answer that better achieves X.&#xA;&#xA;In this case, rrhoover want his game not not be pirated. A lot of people agree that for every 1000 copies pirated, you make one sale. http://www.gamasutra.com/php-bin/news_index.php?story=17350&#xA;&#xA;So blocking pirates doesn't mean a great increase in sales. In fact it can put off legitimate buyers who don't want to be treated as a criminal. With no drm, his goal is better achieved." CreationDate="2010-09-02T18:15:12.310" UserId="962" />
  <row Id="3660" PostId="3487" Score="1" Text="Have to second this recommendation Slick is the best option I've come across. I've written several games with Slick and one with XNA and I would actually favor Slick for 2D projects." CreationDate="2010-09-02T18:48:55.193" UserId="539" />
  <row Id="3661" PostId="3488" Text="You may want to be careful it's not picked up as a virus." CreationDate="2010-09-02T19:56:49.950" UserId="1156" />
  <row Id="3662" PostId="3381" Text="Absolutely. Almost any database would suit this scenario." CreationDate="2010-09-02T20:05:14.170" UserId="1955" />
  <row Id="3663" PostId="204" Text="you should probably mention servers somewhere in your title" CreationDate="2010-09-02T20:05:37.207" UserId="1477" />
  <row Id="3664" PostId="3462" Text="@dash-tom-bang, to the question - &quot;which DRM is 'best'&quot; - *none* is certainly a valid answer. Whether it's the *best* answer can be debated, and for checkmark purposes, is certainly up to you." CreationDate="2010-09-02T20:55:38.453" UserId="165" />
  <row Id="3665" PostId="3497" Text="Good point about play-length" CreationDate="2010-09-02T20:55:43.947" UserId="47" />
  <row Id="3666" PostId="3487" Text="Slick is amazing for 2D projects.  I highly recommend it." CreationDate="2010-09-02T21:05:31.380" UserId="47" />
  <row Id="3667" PostId="3499" Text="Ah, yes. Cinematics are especially key since games still don't provide proper pause/play/ffwd/rewd controls on these sequences. " CreationDate="2010-09-02T21:36:13.823" UserId="1970" />
  <row Id="3668" PostId="3462" Text="None is not a valid answer in this case, because some are clearly worse than others.  I suspect most would prefer to not have their machine rootkitted by software when they install it.  Since some are worse than others we can see that some therefore must be better." CreationDate="2010-09-02T21:57:44.507" UserId="1780" />
  <row Id="3669" PostId="3489" Text="I don't have data to back this up, but a self-editing .exe might even be interfered with by antivirus software. That said, Window's shadow copy service allows you to do some cool, somewhat non-intuitive things with locked files. http://en.wikipedia.org/wiki/Shadow_Copy" CreationDate="2010-09-02T22:10:24.157" UserId="2015" />
  <row Id="3670" PostId="2917" Score="2" Text="I like this argument *so* much better than &quot;so designers can program.&quot; It's a very bad idea to dismiss the value of rapid development and being able to experiment with changes without recompiling everything." CreationDate="2010-09-02T22:16:49.590" UserId="2015" />
  <row Id="3671" PostId="3408" Score="3" Text="+1 See also http://realtimecollisiondetection.net/blog/?p=86" CreationDate="2010-09-02T22:37:31.663" UserId="831" />
  <row Id="3672" PostId="3484" Text="And the tag line &quot;Suck it down&quot;. What a fail. (http://en.wikipedia.org/wiki/John_Romero)" CreationDate="2010-09-02T23:17:20.470" UserId="831" />
  <row Id="3673" PostId="3488" Score="4" Text="I would suggest downloading [Process Monitor](http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx) to verify that the program in question is in fact writing to it's own executable. I think you will find that it is writing to other files or the registry." CreationDate="2010-09-03T00:01:45.133" UserId="2016" />
  <row Id="3674" PostId="3465" Text="I technically agree with some commenters that this is not really an answer to the question, but sometimes it's good to look beyond the question and see the motivation for asking it, and responding to that." CreationDate="2010-09-03T00:33:18.983" UserId="769" />
  <row Id="3675" PostId="456" Text="Or even better than hiding objects behind walls (which can still be hacked), not giving the client information about that player's location at all (or only that which is needed for e.g. a good sounding 3d sound effect)" CreationDate="2010-09-03T00:36:46.807" UserId="769" />
  <row Id="3676" PostId="3506" Text="You're asking about premade engines, but they're pretty specific things.  What kind of game are you thinking of building?" CreationDate="2010-09-03T02:49:32.500" UserId="818" />
  <row Id="3678" PostId="3457" Text="I tend to disagree. Whereas in a normal game game logic is a minor part of the execution time (rendering is a beast), in an MMO server it's a much larger part, so the impact would be far more substantial. I have experience with LUAJit and C++ and while LUAJit is substantionally faster than LUA it's still a lot slower than C++ (assuming you code C++ properly). I admit the workflow with LUAJit is awesome but speedwise it does take a hit. No matter how you twist it, variables in tables with string lookups, dynamic types and garbage collection come at a price. LUAJit is slower than .NET, nuff said" CreationDate="2010-09-03T06:25:22.850" UserId="865" />
  <row Id="3679" PostId="279" Score="4" Text="Mike is all about data.  Looking at the data suggests the best method for transforming the data.  Apply it on a large scale and you have programming.  In this context his criticism makes a lot of sense.  STL (and design patterns) suggest that rather than examining the data to come up with a solution, we examine the solutions in our bag of tricks to find one that works with the data.  I don't mean to speak for Mike, but I believe he would suggest that this way of approaching the problem is backwards, and can potentially lead to inefficient or bloated solutions." CreationDate="2010-09-03T06:47:29.950" UserId="1443" />
  <row Id="3680" PostId="279" Score="1" Text="How can he justify saying that with regards to linked lists / arrays (vectors)? They're both quite simple classes and do exactly what they say on the tin. What's the point in re-inventing the wheel?" CreationDate="2010-09-03T07:34:47.037" UserId="1990" />
  <row Id="3681" PostId="3505" Text="If we're talking C++, you'll need to specify a size for your child array or create it at runtime with a memory allocation. " CreationDate="2010-09-03T07:47:38.803" UserId="259" />
  <row Id="3682" PostId="3505" Text="The official C99-approved way is to leave the array size specification empty." CreationDate="2010-09-03T07:56:46.793" UserId="744" />
  <row Id="3683" PostId="3511" Text="you have to sort every frame. The only alternative is to sort everytime something moves, which will actually mean more sorts if you have any significant number of objects" CreationDate="2010-09-03T09:17:06.793" UserId="119" />
  <row Id="3684" PostId="575" Text="Oh, and you can easily solve #2 by introducing artifical lag that's equal to the average of the other players' lag. Well, if you can call &quot;making it bad for everybody&quot; a solution, that is." CreationDate="2010-09-03T09:41:08.813" UserId="769" />
  <row Id="3685" PostId="3506" Text="Really needs more information about type of game being built, otherwise this is just going to turn into another list of game engines." CreationDate="2010-09-03T09:42:46.860" UserId="741" />
  <row Id="3686" PostId="3404" Score="2" Text="Pointer weight is really not much of a consideration here. One pointer per renderable object will run out of rendering capacity far earlier than it would run out of any processing or memory capacity by adding 4(8) bytes of pointer to each object. And in fact having the renderer's list of items be a nice flat array of pointers is far easier to traverse than, say, having the renderer iterate from the root of your actual object hierarchy and find renderable objects based on some check." CreationDate="2010-09-03T09:48:12.733" UserId="741" />
  <row Id="3688" PostId="3512" Score="5" Text="Really this question doesn't make sense without a specific case. All games have differing ways of implementing AI, depending on the game mechanics involved, and 'how to improve them' will vary massively. At the very least this should be Community Wiki, as there's no 'right' answer here." CreationDate="2010-09-03T09:55:49.710" UserId="741" />
  <row Id="3689" PostId="1576" Text="@Bart, I believe introversion said they were willing to be a bit flexible with creations from the source, if you create a standalone game, demo it to the IV guys to prove that it's not just a Darwinia rip off, I'd imagine they may well let you release it." CreationDate="2010-09-03T10:33:40.583" UserId="1687" />
  <row Id="3690" PostId="2586" Text="I would advise against multithreading your game like that. I've found the best way to do these things is to work in a task based fashion (issue a task which may be executed concurrently to the main thread, wait on the task when results are needed). A friend of mine wrote a task library for XNA which we use in all our games and it makes things a lot easier, it also outperforms the Microsoft Task Parallel Library in some tests! http://paralleltasks.codeplex.com/" CreationDate="2010-09-03T10:39:26.437" UserId="1687" />
  <row Id="3691" PostId="3519" Score="3" Text="Get hubris much, mr &quot;a Game programmer is worth 3 Application Programmers&quot;?" CreationDate="2010-09-03T12:38:10.790" UserId="678" />
  <row Id="3692" PostId="3512" Score="1" Text="Further to the former: Consider that Chess is a strategy game." CreationDate="2010-09-03T13:21:46.660" UserId="1628" />
  <row Id="3693" PostId="3511" Text="Nope. You have to have a sorted list at the end of each frame to hand to the renderere, there's a subtle difference. Sorting for every moving object would indeed be silly. But you *know* the order of static objects never changes, so resorting those would be a waste of time. If you have a presorted list of static objects and a list of dynamic objects the sorting only consists of finding the right insertion spot for the dynamic objects, which can be (depending on the number of dynamic objects vs the number of static ones) significantly cheaper." CreationDate="2010-09-03T14:15:18.783" UserId="865" />
  <row Id="3695" PostId="3498" Text="I always thought this was Sid too, but Tetrad has a reference saying otherwise." CreationDate="2010-09-03T14:41:31.997" UserId="259" />
  <row Id="3696" PostId="3506" Text="Community Wiki, shurely?" CreationDate="2010-09-03T14:50:24.047" UserId="1628" />
  <row Id="3697" PostId="3519" Text="Not that there's any difference..." CreationDate="2010-09-03T14:51:12.057" UserId="1628" />
  <row Id="3698" PostId="3512" Score="1" Text="Why would you want to? Making a perfect AI for the game of Pong is absolutely trivial, and absolutely no fun to play against. The goal of game AI is not to beat the player, since it is the player (not the computer) who is supposed to be having fun." CreationDate="2010-09-03T15:16:15.123" UserId="458" />
  <row Id="3699" PostId="3512" Text="Ian: The OP is talking about something very different from Pong. It's easy to make an unbeatable Pong AI, or a Tic-Tac-Toe AI. Chess can be taken to an AI that only the very, very, very best can defeat. But RTS is a different ballgame." CreationDate="2010-09-03T15:51:19.303" UserId="1156" />
  <row Id="3700" PostId="3511" Text="I believe the default sort for Flash is insert-sort, which is extremely efficient on a mostly-sorted array. In any case, I've previously worked with an array with 10,000 elements, sorted every frame, and it was definitely not a bottleneck." CreationDate="2010-09-03T16:03:31.237" UserId="1970" />
  <row Id="3701" PostId="3505" Text="@tenpn- the idea is that you have a purpose built buffer.  The whole point is to *avoid* extra allocations; you can't specify the array size because you don't know how big it'll be.  After you write num children, you write into your child array, but then the next Transform starts after the child array ends.  (This is why you need to use byte offsets and not indices for this structure; you don't know how big each entry is, but it is still efficient to traverse and is self contained so it can move as a unit.)" CreationDate="2010-09-03T17:00:57.587" UserId="1780" />
  <row Id="3702" PostId="3511" Text="Which is what rule #1 refers to, optimization should only happen once it's needed. I only said that you shouldn't sort what you don't have to sort if you want to speed it up. A native sort routine is likely faster than any implementation in AS would be unless it's a HUGE array with very little objects that are moving." CreationDate="2010-09-03T17:13:59.103" UserId="865" />
  <row Id="3703" PostId="3516" Text="I agree about compile times. Any significant compile time *doubles* the amount of lost work; e.g. if the compile lasts 5 minutes, you will spend 10 minutes getting coffee each time. ;)" CreationDate="2010-09-03T17:27:29.530" UserId="1970" />
  <row Id="3704" PostId="3524" Text="+1 for starting with remakes of old games. Learning how to make a game is a challenge wholly apart from designing a game, it's overwhelming to tackle both at once. So the easy solution is to make a game that's already been designed." CreationDate="2010-09-03T17:31:12.223" UserId="1970" />
  <row Id="3705" PostId="3498" Score="2" Text="The source referenced is from 1999, while the article Tetrad referenced is from 2003. Not to mention, in the context of the article Shelley which in context attributes the principle to Sid." CreationDate="2010-09-03T18:20:07.743" UserId="187" />
  <row Id="3706" PostId="3527" Text="If a shader implements a material, then how were materials implemented before shaders came along (roughly before the year 2002)?" CreationDate="2010-09-03T19:08:15.177" UserId="1989" />
  <row Id="3707" PostId="3528" Score="1" Text="What do you mean by 'transfer to text'? All you would get is a list of model vertices, and then potentially animation data, etc. If you want to change it, why not use a modelling program? And you won't get more experience than by writing a loader." CreationDate="2010-09-03T19:42:57.137" UserId="1156" />
  <row Id="3709" PostId="3528" Text="Searching for the solution, I've found that the commonly used term is 'encoding'." CreationDate="2010-09-03T20:22:01.723" UserId="2027" />
  <row Id="3710" PostId="3528" Text="I have to convert all the data to text encoding, which is understandable and try to make some changes with F#. This is a straight-forward solution. Thanks." CreationDate="2010-09-03T20:24:31.193" UserId="2027" />
  <row Id="3712" PostId="3505" Text="This is called the &quot;struct hack.&quot; See also: http://www.informit.com/guides/content.aspx?g=cplusplus&amp;seqNum=288" CreationDate="2010-09-03T20:39:26.463" UserId="101" />
  <row Id="3713" PostId="3460" Text="@AttackingHobo: Of course you only tell half the story of your link, the other half being that a first-pass low-cost piracy blocking effort resulted in a 70% increase in sales. No, you won't convert 999 of those people, but piracy rates may be high enough that 1/1000 can justify it." CreationDate="2010-09-03T20:41:45.440" UserId="744" />
  <row Id="3714" PostId="3527" Text="&gt;&quot;then how were materials implemented before shaders came along?&quot;&#xA;&#xA;...with register combiners, blending, texture modulation modes and fixed functions. See glMaterial/glFog/glLight for OpenGL equivalents, and DirectX APIs before DX9." CreationDate="2010-09-03T20:48:55.437" UserId="1232" />
  <row Id="3715" PostId="3452" Text="That was true back in 2007 when that thread was started, but Silverlight at present does support hardware acceleration to some degree. Mentioned at the bottom of said thread is a library called Balder - you should check that out." CreationDate="2010-09-03T20:49:56.393" UserId="1926" />
  <row Id="3718" PostId="3489" Score="1" Text="On Windows Vista or 7, elevated privileges are needed in order to modify files in the Program Files directory. It is reasonable to run an installer as admin, but running the executable as a normal user will not allow this type of modification. (Just strengthening AttackingHobo's comment.)" CreationDate="2010-09-03T21:25:45.523" UserId="144" />
  <row Id="3719" PostId="3505" Text="Thanks Neverender." CreationDate="2010-09-03T21:36:12.163" UserId="1780" />
  <row Id="3720" PostId="3506" Text="Converted to CW." CreationDate="2010-09-03T21:55:26.780" UserId="51" />
  <row Id="3721" PostId="3480" Text="Sometimes it's true, but not always. You can also have a basic plot but tell it really well (like Uncharted 2) or just have a game that is all about the story (MGS4) " CreationDate="2010-09-03T22:27:41.540" UserId="769" />
  <row Id="3723" PostId="3531" Text="Are the days of D3DMATERIAL9 virtually gone?  That is, does &quot;everyone&quot; use the programmable pipeline for &quot;materials&quot; in modern games?  And since the def of &quot;material&quot; is varied, can you give the top most-common meanings / contexts?" CreationDate="2010-09-03T23:53:50.807" UserId="1989" />
  <row Id="3724" PostId="3539" Score="1" Text="I want the movement to be smooth on the sub-pixel level. Blitting can only draw to whole pixels. So if I shrink it, it should give me less choppy movement." CreationDate="2010-09-03T23:55:07.263" UserId="962" />
  <row Id="3725" PostId="3539" Text="This is effectively what subsampling does anyways (only less naively). 0.5 will give you 2x AA, 0.25 will give you 4x, etc." CreationDate="2010-09-04T00:08:36.687" UserId="1970" />
  <row Id="3726" PostId="3535" Score="2" Text="...and to make them." CreationDate="2010-09-04T00:50:59.923" UserId="962" />
  <row Id="3727" PostId="3532" Score="1" Text="Thank you! All the other examples sorted everything all the time. I never knew about bucket sort. And it seems with this I can have buckets of presorted objects that do not need to be sorted each tick." CreationDate="2010-09-04T00:57:34.087" UserId="962" />
  <row Id="3728" PostId="3469" Text="Most of them..." CreationDate="2010-09-04T01:32:38.080" UserId="1443" />
  <row Id="3729" PostId="3480" Score="1" Text="Obviously a good story is important to drive the narrative; however if at *any* point during game development the priority of the story (or any other aspect of the game such as graphics) supersedes **FUN**, then you're in trouble... This is just my preference, but I find games that intermingle and drip-feed story elements into gameplay (such as Portal) are far more immersive than games that pull control away from the player for 30-minute cutscenes (such as MGS4).  :D" CreationDate="2010-09-04T01:59:02.463" UserId="1882" />
  <row Id="3730" PostId="3447" Text="MVC is new???  It was 'invented' by the SmallTalk crowd in 1979." CreationDate="2010-09-04T02:08:00.197" UserId="1294" />
  <row Id="3731" PostId="119" Score="7" Text="Don't forget how incredibly expensive it would be to even gather enough users; an MMO without tens or hundreds of players in your level range isn't exactly multiplayer, so you have to get a lot of people before everyone decides your game is a ghost town." CreationDate="2010-09-04T03:56:44.863" UserId="2015" />
  <row Id="3732" PostId="3519" Text="@ranieri :what do you mean by &quot;get hubris much&quot;." CreationDate="2010-09-04T05:10:35.757" UserId="1251" />
  <row Id="3733" PostId="3541" Score="2" Text="Wow, that's a broad scope. Models of what? Hi quality models? Low poly? Animated? Textured? There's 1000's of sites our there with free Maya models, but what are you looking for? Prototyping models for a platformer? Cars? Characters? And for what? Architectural visualization? A MMO? Just trying to get a model on screen? Research in high poly rendering techniques? Animation tests? If you want a useful answer you might want to consider posing a bit more detailed question." CreationDate="2010-09-04T06:16:17.443" UserId="865" />
  <row Id="3735" PostId="3543" Text="Subjective question without a lot of specific detail, converted to CW." CreationDate="2010-09-04T08:22:17.383" UserId="51" />
  <row Id="3736" PostId="3543" Score="1" Text="Surely this is a dupe of: http://gamedev.stackexchange.com/questions/3506/what-technology-is-best-for-building-my-first-game/" CreationDate="2010-09-04T09:06:32.417" UserId="539" />
  <row Id="3737" PostId="3547" Text="Nice catch, Tetrad ;)" CreationDate="2010-09-04T10:09:32.167" UserId="288" />
  <row Id="3739" PostId="3402" Text="I have just moved from BlackBerry to Android game dev and I want to throw my hat in with Firas: the Canvas class offers more than enough performance for a 2D game. There is no need to add the extra complexity of OpenGL when you start." CreationDate="2010-09-04T12:25:18.387" UserId="1684" />
  <row Id="3740" PostId="3488" Text="@dash-tom-bang What's the difference? Sounds like the same thing to me." CreationDate="2010-09-04T15:46:51.517" UserId="189" />
  <row Id="3741" PostId="3488" Text="@Benjamin Manns Your comment may apply to the original question, but no, LockNote does indeed save into itself. You can have multiple locknotes by saving them as different names, and they're 100% portable because indeed the text is encrypted and saved into the exe." CreationDate="2010-09-04T15:48:00.937" UserId="189" />
  <row Id="3742" PostId="3540" Text="Processor vs. Memory, the perennial struggle." CreationDate="2010-09-04T16:39:52.530" UserId="1970" />
  <row Id="3743" PostId="3543" Score="1" Text="@Alex, they're similar, but I would consider this question, as *slightly* less technology-specific, making it sufficiently different to be worth keeping. Note that some of the answers are about engines (technology), and some are about process and learning methods." CreationDate="2010-09-04T18:14:59.963" UserId="165" />
  <row Id="3744" PostId="3547" Text="This is really good, but I'm not sure it gets me 100% of the way there. It looks like coroutines let you yield up to the calling method, but I want a way to yield from a Lua script, all the way up the stack to the C# code without writing while (walk_to() != done) { yield }." CreationDate="2010-09-04T18:34:46.400" UserId="2015" />
  <row Id="3745" PostId="3548" Text="I like what you're going for, but I actually feel strongly about the value of actor.walk_to([another actor, a fixed position, or even a function that returns a position]). My goal is to provide simple, understandable tools and handle all the complexity away from the content creation part of the game.&#xA;&#xA;You also helped me realize that all I really want is a way to treat each script as a finite state machine." CreationDate="2010-09-04T18:39:20.657" UserId="2015" />
  <row Id="3746" PostId="3550" Score="2" Text="XNA is wonderful if you want to make the engine yourself. That said, if you just want to sit down, import some models and start creating game content, you may be annoyed with how much programming you'll have to do." CreationDate="2010-09-04T18:41:43.980" UserId="2015" />
  <row Id="3747" PostId="3546" Text="Another +1 for Java/C++ (or C#): a strongly typed object oriented language is a good place to start, because dynamic languages are easy to learn if you are used to stricter languages. Going the opposite direction can feel like you're programming with your hands tied behind your back." CreationDate="2010-09-04T18:44:55.937" UserId="2015" />
  <row Id="3749" PostId="3545" Score="1" Text="+1 for the question but especially for &quot;Python (aka pseudocode)&quot; :)" CreationDate="2010-09-04T19:00:07.517" UserId="189" />
  <row Id="3750" PostId="3557" Score="1" Text="You are being a little vague on what you mean by &quot;game logic&quot;." CreationDate="2010-09-04T19:41:47.230" UserId="962" />
  <row Id="3751" PostId="3558" Text="If I understood, you are suggesting 3 common ways this is done?  And one of those three is vertex shaders?  If yes, then for a vertex-shader approach, is it indeed a time-based function (or time-based + impact vector)?" CreationDate="2010-09-04T19:46:15.337" UserId="1989" />
  <row Id="3752" PostId="3556" Text="It works enough for a +1, I just think it's wrong for designing content. I'm willing to do some extra work on my end so that the scripts look simple and clear." CreationDate="2010-09-04T19:58:57.750" UserId="2015" />
  <row Id="3753" PostId="3545" Text="Python is like having a superpower." CreationDate="2010-09-04T19:59:30.667" UserId="2015" />
  <row Id="3754" PostId="3548" Text="glad I could help! I felt like my response was a little off topic :) definitely agree with the value of an actor.walk_to function for accomplishing your goals, I'm looking forward to hearing about your implementation." CreationDate="2010-09-04T20:19:40.467" UserId="1931" />
  <row Id="3755" PostId="3558" Text="I am not entirely sure what you mean by &quot;time-based function (or time-based + impact vector)&quot; but here is a nice example and explanation of ripple simulation with a 2d java application. It is the pretty much the same kind of simulation that is used in 3d. http://www.neilwallis.com/java/water.html" CreationDate="2010-09-04T20:31:26.097" UserId="962" />
  <row Id="3756" PostId="3556" Score="1" Text="@ojrac: Actually this way is better, because here in the same script you can tell multiple actors to start walking at the same time." CreationDate="2010-09-04T20:48:00.817" UserId="769" />
  <row Id="3757" PostId="3540" Text="I think I could use 4 different versions for each sprite. One for each half pixel in each direction. So it will use 4 times the data and not 16 times." CreationDate="2010-09-04T20:54:40.840" UserId="962" />
  <row Id="3758" PostId="3546" Text="I'd say going from dynamic to strict typing makes you actually value the fact that you're working in a lower-level, or if not, the language isn't for you (yet). I would never recommend a total newbie to start out with a strictly typed language and worry about float or double, int or long, signed or unsigned, byte or char. Let alone other complexities. &#xA;&#xA;We don't learn our driver's licenses on a truck because going back to a car from that is so much easier." CreationDate="2010-09-04T21:35:23.507" UserId="490" />
  <row Id="3759" PostId="3556" Text="Ugh, good point." CreationDate="2010-09-04T21:36:23.723" UserId="2015" />
  <row Id="3760" PostId="3560" Score="2" Text="And different, but related: It's nice if the AI sometimes does things that aren't technically their best option, but add a little fun to the game, such as using unusual units or moves (e.g. airdropping troops in the back of the player's base)" CreationDate="2010-09-04T21:44:22.127" UserId="769" />
  <row Id="3762" PostId="3480" Text="that's my all-time favorite game dev quote! :)" CreationDate="2010-09-04T22:00:06.260" UserId="490" />
  <row Id="3763" PostId="1951" Text="@Noctrine&#xA;You realize that you can edit posts here after you submit them, don't you? Some people prefer to annotate their changes rather than make an invisible edit." CreationDate="2010-09-04T22:00:21.543" UserId="140" />
  <row Id="3764" PostId="3556" Text="To improve readability however, the callback definition could be nested inside the walk_to() call, or put after it (for both goes: if the language supports) so that code that gets called later is seen later in the source." CreationDate="2010-09-04T22:31:23.050" UserId="769" />
  <row Id="3765" PostId="3556" Text="Yeah, Python isn't really great for this kind of syntax unfortunately. It looks a lot nicer in JavaScript (see above, can't use code formatting here).&#xA;&#xA;    " CreationDate="2010-09-04T23:22:32.717" UserId="395" />
  <row Id="3767" PostId="3547" Text="@ojrac: I don't know about Lua, but if you're using Nick Gravelyn's C# method you could return a delegate (or an object containing one) that holds the conditional for your script manager to check (Nick's code just returns a time which is implicitly a conditional). You could even have the latent functions themselves return the delegate, so you could write: `yield return walk_to();` in your script." CreationDate="2010-09-05T00:55:13.360" UserId="288" />
  <row Id="3768" PostId="3565" Text="Just out of interest, why do you need a scripting engine? C# itself already solves almost all of the problems a scripting engine is used to solve. And XNA is already a &quot;very small game engine&quot; that can load models." CreationDate="2010-09-05T01:09:01.487" UserId="288" />
  <row Id="3769" PostId="279" Text="Have you ever had to debug, say, a memory stomp where you had to trace through an STL template? It'll cure you forever." CreationDate="2010-09-05T01:09:10.350" UserId="865" />
  <row Id="3770" PostId="3565" Text="The guy who I'm working with said he wants a scripting engine so he doesn't have to recompile the game whenever something in the story changes." CreationDate="2010-09-05T02:27:46.393" UserId="1516" />
  <row Id="3771" PostId="3556" Text="Yeah, inline functions are one of the few things I don't like about Python. But Lua and JavaScript are both good. " CreationDate="2010-09-05T03:03:11.260" UserId="2015" />
  <row Id="3772" PostId="3547" Text="Yield in C# is awesome, but I'm optimizing my solution for simple, hard-to-mess-up scripting. I'll have an easier time explaining callbacks than yield, so I'll accept the other answer. I'd +2 if I could." CreationDate="2010-09-05T03:06:55.707" UserId="2015" />
  <row Id="3773" PostId="3548" Text="It looks like I'll go with a jQuery-style mix of callbacks and chained functions. See accepted answer ;)" CreationDate="2010-09-05T03:08:40.600" UserId="2015" />
  <row Id="3774" PostId="3565" Text="Just so you know, there are pure C# solutions to that problem: http://stackoverflow.com/questions/1353456/recompile-c-while-running-without-appdomains (the C# compiler is part of the runtime)." CreationDate="2010-09-05T03:21:56.083" UserId="288" />
  <row Id="3775" PostId="3224" Text="Must mention the Nintendo's Genre Innovation Strategy article, an all time great:&#xA;http://www.lostgarden.com/2005/09/nintendos-genre-innovation-strategy.html" CreationDate="2010-09-05T03:37:10.143" UserId="1588" />
  <row Id="3776" PostId="3563" Text="Are you using the Flash display stack and vector objects, or are you bitmap blitting?  What sort of scenes are we talking about that are running slowly?" CreationDate="2010-09-05T03:38:35.090" UserId="953" />
  <row Id="3777" PostId="2740" Text="Indeed, it doesn't invalidate the question. It's still time versus (virtual) distance travelled. Whether you move the player forward or the background backward is merely a conceptual layer. Besides, decoupling them to make the math easier can make other things much harder, such as putting enemies in the background (turrets), having them avoid background objects, or having collidables in the background." CreationDate="2010-09-05T05:18:27.597" UserId="865" />
  <row Id="3778" PostId="696" Text="&quot;It's going to be about as practically fast as the platform can allow&quot;. This is a definitive untruth, as many compiler vendors can't be bothered to rewrite the STL so that it would indeed squeeze the most performance out of the particular architecture. STL has no guarantee whatsoever about performance characteristics except for big O. O however might be as efficient or inefficient as the compiler vendor wants to make it." CreationDate="2010-09-05T06:09:52.133" UserId="865" />
  <row Id="3779" PostId="1951" Text="@Mike Yeah, but it seemed like it was a, hah! type thing. But re-reading it, it does seem like I didn't read the answer correctly probably the cause of me reading/commenting early in the morning :p Removed that bit." CreationDate="2010-09-05T08:55:18.303" UserId="14" />
  <row Id="3780" PostId="3460" Text="All I'm saying is this is not the place to view your views on DRM. They seem to be seeking technical advice, not business or ethics advice." CreationDate="2010-09-05T08:57:46.193" UserId="465" />
  <row Id="3781" PostId="3563" Text="I'm using various scaled Bitmap objects and a few vector gradient overlays, no blitting. I'll see if I can post a screenshot later. Either way, I know my scene isn't really complex and that a GPU would use 1% of its power for it." CreationDate="2010-09-05T11:47:40.423" UserId="769" />
  <row Id="3782" PostId="3566" Score="1" Text="+1 for the book." CreationDate="2010-09-05T13:10:25.793" UserId="1681" />
  <row Id="3783" PostId="3502" Text="Thanks for the answer Danik. I am already taking into consideration the ball's rotational inertia (by adding it to the new rotation) and also the friction of the surface as a coefficient to be multiplied by the total rotation speed. The more the friction, the higher the speed of rotation, right?" CreationDate="2010-09-05T15:04:31.443" UserId="1179" />
  <row Id="3784" PostId="3579" Score="1" Text="... or www.pygame.org" CreationDate="2010-09-05T17:39:28.437" UserId="458" />
  <row Id="3785" PostId="3522" Text="Yes, i know it. But i'm searching a full packaging as OpenFeint, ScoreLoop. these solutions have great success on mobile platform so why is there anything on Desktop platform?" CreationDate="2010-09-05T19:05:30.233" UserId="721" />
  <row Id="3786" PostId="3579" Score="3" Text="This is nonsense. Ruby is no less of a language &quot;for games&quot; than Python." CreationDate="2010-09-05T19:44:15.083" UserId="189" />
  <row Id="3787" PostId="3572" Text="Exactly what I was looking for, thanks! Out of curiosity; did you ever end up refining parts of an old game due to having reiterated/tuned up a small part of it in a different, newer game?" CreationDate="2010-09-05T19:56:41.250" UserId="488" />
  <row Id="3788" PostId="3587" Text="Wow, never noticed the E when I hovered over the variable, thanks haha" CreationDate="2010-09-05T20:57:51.413" UserId="2039" />
  <row Id="3789" PostId="3451" Text="Regarding the last answer, I think he meant &quot;or can't we come up with gameplay that is complex enough to even require optimisation&quot; (which I think we definitely can and do)" CreationDate="2010-09-05T21:37:32.897" UserId="769" />
  <row Id="3790" PostId="3572" Text="Absolutely! For example, our 2009 title got some of the guts of our 2010 title (for audio, I think it was). But we don't do it as much as we should." CreationDate="2010-09-05T21:41:46.463" UserId="1288" />
  <row Id="3791" PostId="3579" Score="1" Text="... nonsense. You might as well say that Lua is not for games." CreationDate="2010-09-05T23:07:22.233" UserId="1943" />
  <row Id="3792" PostId="239" Text="I love this answer :D" CreationDate="2010-09-05T23:13:00.147" UserId="1943" />
  <row Id="3793" PostId="3579" Score="1" Text="Is there a ruby equivalent to pygame?  I wouldn't say one language is more suited than the other.  But it might be reasonable to say that python has better game libraries and gamedev community." CreationDate="2010-09-05T23:50:31.407" UserId="370" />
  <row Id="3795" PostId="3590" Text="I know, I know, but I could also paste pictures of Subversion, and it doesn't use textures at all (AFAIK)" CreationDate="2010-09-06T02:25:05.507" UserId="1943" />
  <row Id="3796" PostId="3587" Text="You're welcome, glad to help. I've made that mistake many times. Hey, it looks like your understanding of matrices has grown alot in this last week. good going.  " CreationDate="2010-09-06T02:38:02.037" UserId="1923" />
  <row Id="3797" PostId="3593" Score="1" Text="C++ is a nice language, but it's not really for games to be honest. If you don't want to use assembly but want something like C++ check out C. For a good C framework you should check out something like http://www.libsdl.org/. (okay it doesn't quite work because C++ is backwards compatible but you get the point)" CreationDate="2010-09-06T03:20:57.350" UserId="189" />
  <row Id="3798" PostId="3592" Text="Very informative! Can a Ruby expert comment on whether this is still applicable today? The article is dated January 2009 and I wouldn't be surprised if a lot has happened since then. *edit* Okay, I just found an article dated September 3 2010 which hints that indeed this is still the case today, saying &quot;the Ruby garbage collector was not meant to be run&quot; - interesting! http://jabberwocky.eu/2010/09/03/ruby-garbage-collection" CreationDate="2010-09-06T03:24:25.680" UserId="189" />
  <row Id="3799" PostId="3593" Text="Lol no I don't get your point. Honestly I don't really care what you're saying so don't bother replying to me. I'm just trying to help someone out, not argue about the legitimacy of a programming language.  " CreationDate="2010-09-06T04:21:08.547" UserId="2037" />
  <row Id="3800" PostId="3593" Score="4" Text="His point is that your original answer had absolutely no substance with regard to the question asked. You assert that Ruby is &quot;not really for games,&quot; but that's ALL you say. There's little value in that. As for why OP would want to use Ruby, it's quite clear: it's &quot;the only language he knows really well.&quot; That's not at all the same as &quot;just because it's possible.&quot;" CreationDate="2010-09-06T04:45:07.237" UserId="101" />
  <row Id="3801" PostId="3598" Text="Thanks Ricket! That's exactly what I was looking for" CreationDate="2010-09-06T05:08:16.660" UserId="1994" />
  <row Id="3802" PostId="3589" Score="2" Text="I know about these optimisations and it's not what I'm talking about. What I mean is that these things, in this day and age, are trivial to render on a GPU. A scaled bitmap can be displayed as 1 polygon with 1 texture, no lighting and no shaders or effects." CreationDate="2010-09-06T07:36:17.760" UserId="769" />
  <row Id="3803" PostId="3531" Text="Often, engines will define &quot;physical materials&quot; for surfaces that determine things like friction coefficients, as well as collision/footstep sounds, impact particles, bullet decals, etc. Or UT3, where &quot;material&quot; represents a huge bundle of configuration properties, as well as a node graph-based visual shader editor that compiles down to HLSL behind the scenes. See here: http://udk.com/features-shaders" CreationDate="2010-09-06T08:15:11.920" UserId="101" />
  <row Id="3804" PostId="3522" Text="A mobile device usually has one language, one transport mechanism, one rendering library, one hardware setup, etc. Desktops don't have that luxury. Besides, to write such a package would take very little time - probably less time than writing the UI for it!" CreationDate="2010-09-06T08:24:32.930" UserId="1628" />
  <row Id="3805" PostId="3522" Text="Also, mobile environments sometimes don't have cURL and suchlike to give you full power to access those APIs easily. There's nothing 'limited' about them at all, not sure where you got that idea from. What do you think those frameworks use?" CreationDate="2010-09-06T08:26:30.943" UserId="1628" />
  <row Id="3806" PostId="3550" Text="@ojrac I concur. XNA has a very.. um.. fussy way of handling stuff. Older versions of OpenGL are very, if you'll excuse the pun, Immediate." CreationDate="2010-09-06T08:37:50.650" UserId="1628" />
  <row Id="3807" PostId="3550" Text="Pimpin' a blog post of mine on using managed languages for indie development: http://rushyo.com/42bit/?p=16" CreationDate="2010-09-06T08:40:04.200" UserId="1628" />
  <row Id="3808" PostId="3605" Text="There's no fundamental difference between Monster Hunter and a &quot;real&quot; MMO, so I don't see why MH's systems wouldn't work. That being said, in line with my comments above, I have often heard Monster Hunter described as a grinding game by people who don't like loot-based games or action RPGs." CreationDate="2010-09-06T09:53:46.713" UserId="744" />
  <row Id="3809" PostId="3592" Text="Ruby's garbage collector is mark-and-sweep, but in the case of cycles, so are Python and Lua (in fact on a Python game I worked on we had to delay GC for exactly that reason). I have not done benchmarks, but perhaps Ruby's is just incidentally slow rather than fundamentally slow. I don't see that as a hugely compelling reason to avoid Ruby, especially if you are talking about building games entirely in Ruby as the questioner is. Just disable GC until some appropriate time." CreationDate="2010-09-06T10:03:39.490" UserId="744" />
  <row Id="3810" PostId="3549" Text="Unity3D seems pretty cool, but there's a cost-factor associated with the language. You can't really develop anything for long (30 days trial) unless you're committing hundreds of dollars to the program." CreationDate="2010-09-06T13:20:14.350" UserId="1845" />
  <row Id="3811" PostId="3447" Text="Yes, you're completely right Jacques. I didn't word it very well - what I meant was that its popularity is new. Only in recent years have we seen so many people trying to use MVC in most apps, mostly due to the popularity in some web development frameworks." CreationDate="2010-09-06T14:02:31.457" UserId="1101" />
  <row Id="3812" PostId="3613" Text="multiply the terrain normal by a 3x3 matrix, different for each cube face?" CreationDate="2010-09-06T14:06:08.010" UserId="179" />
  <row Id="3813" PostId="3608" Score="1" Text="+1 because grinding is in the eye of the beholder. I still think it kills MMOs for a lot of people though" CreationDate="2010-09-06T14:11:35.507" UserId="119" />
  <row Id="3814" PostId="3505" Text="ah interesting - thanks!" CreationDate="2010-09-06T14:22:27.213" UserId="259" />
  <row Id="3815" PostId="3547" Score="1" Text="You don't normally have to explain the yield call - you can wrap that in the &quot;walk_to&quot; function, for example." CreationDate="2010-09-06T14:24:25.683" UserId="1101" />
  <row Id="3816" PostId="3612" Score="5" Text="&quot;Square grids are a bit faster (4 connections per node instead of 6)&quot; - unless you can travel along diagonals, in which case it's 8 connections vs 6." CreationDate="2010-09-06T14:40:18.560" UserId="458" />
  <row Id="3817" PostId="3517" Text="To clarify, making an AI that can beat any human is not that hard since the AI can control its units with better granularity than any human could hope for (due to UI constraints). A human takes seconds to react to events, select and command units, whereas the AI can update the orders for every unit individually every 'game turn' in response to any event. But in practice, this isn't done since it would make the game tedious. The really hard part is making the AI dumb enough to beat." CreationDate="2010-09-06T14:52:23.603" UserId="1143" />
  <row Id="3818" PostId="3610" Score="2" Text="Methinks you should use whatever suits your gameplay ;)" CreationDate="2010-09-06T14:53:16.337" UserId="288" />
  <row Id="3819" PostId="3608" Text="&quot;MMOs&quot; is another poorly-defined term; as soon as you remove loot-based mechanics, many players will refuse to call a game an MMO. If you mean loot-based online games are not fun for a lot of people, sure (me included). But it also makes the game for many. Every design decision you make is going to attract some people and discourage others." CreationDate="2010-09-06T14:53:19.610" UserId="744" />
  <row Id="3820" PostId="3517" Text="To clarify the clarification - making unbeatable AI is not that hard; making beatable, challenging and engaging AI is far, far more difficult." CreationDate="2010-09-06T14:56:14.923" UserId="1143" />
  <row Id="3821" PostId="3615" Score="3" Text="+1. This is a design decision, not an AI decision. If you do want hexagonal grids, an offset-square grid like http://www-cs-students.stanford.edu/~amitp/game-programming/grids/square-to-hexagon-1.png may be less intimidating to casual players, and it's mathematically equivalent to hexagons. Also, it's a convenient in-memory representation as well." CreationDate="2010-09-06T14:58:16.800" UserId="744" />
  <row Id="3822" PostId="3614" Score="1" Text="Outside of games GAs have been immensely successful at coming up with esoteric solutions to engineering problems, e.g. Dr. Adrian Thompson's early work on genetic circuits resulting in &quot;useless&quot; subcircuits that affected the flux in such a way to make the rest work. The problem is that effective esoteric solutions are not valuable in games as in engineering. The really hard problem of game AI is to make the AI have a comprehensible strategy, not merely play well." CreationDate="2010-09-06T15:05:44.750" UserId="744" />
  <row Id="3823" PostId="3612" Text="Touche.  You're totally right; of course diagonal connections would be likely." CreationDate="2010-09-06T15:29:26.317" UserId="953" />
  <row Id="3824" PostId="3547" Text="I don't think that's how it works. If I yield inside walk_to, it would continue to the next line of the script. Unless I'm reading it wrong, there's no way to yield up the stack more than one frame." CreationDate="2010-09-06T15:31:30.753" UserId="2015" />
  <row Id="3825" PostId="3615" Text="+1 for the sentence &quot;Square grids are more accessible to the mass market (hex boards tend to look &quot;geeky&quot;)&quot; :D" CreationDate="2010-09-06T15:32:48.040" UserId="1943" />
  <row Id="3826" PostId="3601" Text="+1 will look into them, seems that is what I wanted :P" CreationDate="2010-09-06T15:33:33.640" UserId="1943" />
  <row Id="3827" PostId="3594" Text="+1 : it would be easier though if I'd find a way to generate the textures somehow. Can't use glPolygonMode due to later OpenGL ES targeting ( iStuff )." CreationDate="2010-09-06T15:35:38.487" UserId="1943" />
  <row Id="3828" PostId="3595" Text="+1: I knew the article, but thanks for reminding -- it is a good article indeed (and helps with the second problem I had -- glow)." CreationDate="2010-09-06T15:36:26.520" UserId="1943" />
  <row Id="3829" PostId="3549" Score="2" Text="The Pro version, yes, @JFW - but there's a totally-free version that does *most* of what Pro does. And the features that are Pro-only, while nice - are *not* required to make an excellent game." CreationDate="2010-09-06T16:12:48.443" UserId="165" />
  <row Id="3830" PostId="3438" Text="I've been thinking about MVVM, and perhaps it would go like: Model represents game logic object (eg hp, mp, etc), ModelView would represent an abstraction of the Model in the environment (eg x, y, rotX, rotY, width, height, etc), then the view itself which visualises the Model + ModelView in whatever environment you are using (eg opengl mesh, flash sprite, etc)?" CreationDate="2010-09-06T17:07:04.583" UserId="1799" />
  <row Id="3831" PostId="3438" Text="In my mind, the game should be able to operate a purely abstract manner, with no view whatsoever. This is to facilitate testing. If you can't run your game without the view (and providing appropriate inputs), you haven't decoupled your view/game logic enough." CreationDate="2010-09-06T17:15:33.780" UserId="1799" />
  <row Id="3832" PostId="3438" Text="Regarding things like collision detection, hitboxes, etc, that should operate in the layer below the view, eg in some kind of abstract environment. You might use the view to generate events that are passed back up and handled by the abstract environment." CreationDate="2010-09-06T17:21:34.897" UserId="1799" />
  <row Id="3833" PostId="3603" Score="1" Text="Do you mean AI?" CreationDate="2010-09-06T17:50:46.300" UserId="1156" />
  <row Id="3834" PostId="3615" Text="Edwin is not asking what is better on a grid based game. He is asking what is better for the AI to use square or hexagons. The world and gameplay itself does not have to be constrained to those, only what nodes the AI is searching on." CreationDate="2010-09-06T19:30:41.483" UserId="962" />
  <row Id="3835" PostId="3617" Text="OpenGL uses a GUI by default since when? :L" CreationDate="2010-09-06T19:54:42.933" UserId="1156" />
  <row Id="3836" PostId="3617" Text="Meant to say the library i was using, aka FreeGLUT." CreationDate="2010-09-06T20:00:19.987" UserId="1312" />
  <row Id="3837" PostId="3484" Score="1" Text="For those that managed to miss this (and trust me, it was for the best), this was part of the marketing push for [Daikatana](http://en.wikipedia.org/wiki/Daikatana), which is basically likely Duke Nukem Forever except it did get released and was terrible." CreationDate="2010-09-06T20:49:47.240" UserId="395" />
  <row Id="3838" PostId="3614" Score="4" Text="I've used GA to tune AI driver variables. But as you mentioned this was done offline with a tool to generate the tuning data. The game didn't ship with active GA, just the numbers that had been derived during development." CreationDate="2010-09-06T20:58:55.687" UserId="154" />
  <row Id="3839" PostId="3608" Score="3" Text="Grinding is repeating boring tasks in order to pass an obstacle.  So yes, fighting the same mobs over and over for XP is grinding, repeating the same quests for XP/reputation is grinding, fighting the raid boss with the same attack combo for half an hour is grinding, etc." CreationDate="2010-09-06T21:05:05.003" UserId="1120" />
  <row Id="3840" PostId="3608" Score="2" Text="@gray: Is the problem that the tasks are repeated, or that they are boring? If the problem is that they are repeated - plenty of people like that kind of game. Ask a shmup player how many times they played exactly the same level; ask them if they thought that was grinding. Some games, like go, only have one action. So the problem must be that they are boring. But a boring thing you do once is still boring. So the problem isn't &quot;grinding&quot;, it's plain-old boring game mechanics. Now define &quot;boring&quot;, and maybe we'll have a useful design metric." CreationDate="2010-09-06T21:37:45.987" UserId="744" />
  <row Id="3841" PostId="3623" Text="Actually, I would say time to port is one thing an independent developer/group is more likely to have than a large publisher-driven studio." CreationDate="2010-09-06T21:47:08.717" UserId="744" />
  <row Id="3842" PostId="3623" Text="There are plenty of game designs that make sense on all platforms - turn-based virtual board games, for example, are consistently a hit on all platforms. So are many falling / matching block puzzle games. These can't even be &quot;ported&quot; in the traditional sense anymore - moving a game from e.g. XBLIG to the iPhone is a guaranteed rewrite of all the code." CreationDate="2010-09-06T21:49:36.153" UserId="744" />
  <row Id="3843" PostId="3622" Text="This is kind of silly... If you are providing tools so that people don't have to play your game, then what exactly did you bother making a game for?" CreationDate="2010-09-06T22:15:17.033" UserId="1970" />
  <row Id="3844" PostId="3547" Text="I think you're right, ojrac. Although I do think the explanation of yield is pretty simple: &quot;Put `yield return` in front of any function you want the script to wait to finish before continuing.&quot; You can still hide the rest of the magic in your script manager and in functions like `walk_to`." CreationDate="2010-09-07T00:40:09.337" UserId="288" />
  <row Id="3845" PostId="3605" Text="Yeah MH does still have item grinding as they still use a RNG in the mix." CreationDate="2010-09-07T01:14:14.123" UserId="919" />
  <row Id="3846" PostId="3608" Text="Another definition of grinding is drawing out the time of doing something repeatedly artificially. I.e. EXP grinding is good for difficulty balancing but sometimes it introduces a nuance if EXP is too low therefore becomes an unnecessary grind. But I do agree that it is more in the eye of the player in  most circumstances." CreationDate="2010-09-07T01:17:06.787" UserId="919" />
  <row Id="3847" PostId="3510" Text="Does this library support HaXe?" CreationDate="2010-09-07T01:19:07.057" UserId="1004" />
  <row Id="3848" PostId="3519" Text="@Raineri: it's true, making games is *incredibly hard*. I wouldn't say you could have a direct translation between 3 application programmers and 1 game programmer, but he makes a good point." CreationDate="2010-09-07T01:21:35.633" UserId="1004" />
  <row Id="3849" PostId="3622" Text="Tool-assisted gameplay has the potential to be more interesting than unassisted gameplay, especially in strategy games.  It's like advances in automation in programming or other fields.  You're spending less energy/thought on moving bytes around, which means you can devote more attention to more complex things.  Of course you can design a game such that low-level tasks don't exist, so that the player is working in high-level strategy from the start, but that's a different experience than a game built from basic low-level elements, with complexity emerging from the interaction of the parts." CreationDate="2010-09-07T02:26:01.680" UserId="1120" />
  <row Id="3850" PostId="3622" Text="That's fair, but it's not really what you said in your answer. ;)" CreationDate="2010-09-07T02:43:25.480" UserId="1970" />
  <row Id="3851" PostId="3622" Text="XP multiplier cheat codes also do the same thing in a console games. IMHO sometimes their better than using BOTS as they still allow for the player to learn while BOTS allow player to progress in power but most of the time not in skill. " CreationDate="2010-09-07T03:26:38.480" UserId="919" />
  <row Id="3852" PostId="3629" Text="What kinds of problems do you need to solve? Are you looking for a game engine? General AS3 libraries?" CreationDate="2010-09-07T08:56:38.370" UserId="119" />
  <row Id="3853" PostId="3585" Text="One bit of advice to give, if you're just starting out in debugging this sort of thing: always test with non-zero co-ordinates (both for input and expected outputs). There's a lot of times when the math effectively cancels out with zero co-ordinates, and it looks like it's working when in fact it's not. E.g. (0,0,5) can be rotated about the z axis without affecting the output, but (3, 4, 5) will always be affected. In general, once you're beyond simple maths, use visual representations of co-ordinates and co-ordinate frames to debug how things are changing and where things are going wrong." CreationDate="2010-09-07T09:01:18.130" UserId="741" />
  <row Id="3854" PostId="3629" Text="@Iain Yes, I'm looking for advices on usable frameworks and libraries too, but what I really need is flash social game developer ecosystem as a whole. I meen, if I'm .NET coder, then I'd buy VS, and I'm done. Architecture defining-&gt;coding-&gt;documenting-&gt;testing/debugging-&gt;deploying, all-inclusive. So, what should I use to organize work process in Flash?" CreationDate="2010-09-07T09:39:53.753" UserId="1979" />
  <row Id="3855" PostId="1279" Text="+1. Some parts could be handled better but overall an excellent learning resource. Very informative, packed full of interesting information." CreationDate="2010-09-07T11:00:01.160" UserId="1628" />
  <row Id="3856" PostId="3621" Score="1" Text="Section 3.3.2 of the iPhone Developer Program License Agreement allows for game scripting now, though it is still a bit convoluted. - &quot;Notwithstanding the foregoing, with Apple’s prior written consent, an Application may use embedded interpreted code in a limited way if such use is solely for providing minor features or functionality that are consistent with the intended and advertised purpose of the Application.&quot; " CreationDate="2010-09-07T11:34:50.787" UserId="639" />
  <row Id="3857" PostId="3527" Text="Basically because the shader implementations were set in stone, hence the name fixed pipeline. If we go in the details, we had a few high level operations (as jpaver said) and that was it." CreationDate="2010-09-07T11:39:00.097" UserId="950" />
  <row Id="3858" PostId="3608" Text="What's &quot;artificial&quot; in a game? Games are entirely artificial. Rules may be more or less boring, but they cannot be more or less real." CreationDate="2010-09-07T11:44:27.687" UserId="744" />
  <row Id="3859" PostId="3641" Text="NOTE: This *still* doesn't point me at a decent tutorial/walkthrough, which is what I originally asked so, if someone points me to a brilliant one of those, I'll mark that as the correct answer." CreationDate="2010-09-07T14:55:07.817" UserId="240" />
  <row Id="3861" PostId="3645" Text="GA is also used in the creatures series: http://en.wikipedia.org/wiki/Creatures_(artificial_life_program) but not as successfull as the previously mentioned black and white or Oblivion" CreationDate="2010-09-07T16:17:52.047" UserId="1477" />
  <row Id="3862" PostId="3462" Text="@Cyclops I didn't say that but it's pointless to argue against logical fallacies." CreationDate="2010-09-07T16:50:30.340" UserId="1780" />
  <row Id="3863" PostId="3510" Text="@RCIX I really can't say having not used HaXe. My understanding is that it should be possible to create an interface to a native library for HaXe. Depending on the library that could be a lot of work, though." CreationDate="2010-09-07T17:35:26.750" UserId="539" />
  <row Id="3864" PostId="3648" Text="Thanks for the answer, I have experience in C++ and would like to get into the gritty stuff so I'd have experience in it.  I would love for this hobby to eventually lead to a career in the Video Game Industry once I get some work experience." CreationDate="2010-09-07T17:39:54.603" UserId="2056" />
  <row Id="3865" PostId="1075" Text="GameJolt supports silverlight???" CreationDate="2010-09-07T18:06:58.567" UserId="469" />
  <row Id="3866" PostId="1055" Text="GameJolt supports unity?" CreationDate="2010-09-07T18:07:32.480" UserId="469" />
  <row Id="3867" PostId="3579" Text="I have a feeling that there's an SFML port to ruby." CreationDate="2010-09-07T18:54:04.237" UserId="1156" />
  <row Id="3868" PostId="3614" Text="Fantastic answer, thanks!" CreationDate="2010-09-07T18:58:58.653" UserId="1882" />
  <row Id="3869" PostId="3645" Text="Thanks for the answer.. It's interesting as you mentioned how balance in Game AI is crucial, as with pretty much every aspect of game development, it must be fun before it's realistic/believable. An AI that is too 'clever' is no fun at all, no one likes a smart-alec :)" CreationDate="2010-09-07T19:02:46.480" UserId="1882" />
  <row Id="3870" PostId="2411" Text="Just to note:  the Galaxy editor requires no programming experience, and generates scripts for you.  The scripts themselves are written in a custom C-based scripting language called Galaxy; I don't know of any examples of something that *needs* to be written in Galaxy (ie. which can't be done from the editor), but it *is* possible to write Galaxy scripts if you wanted." CreationDate="2010-09-07T19:21:17.997" UserId="2061" />
  <row Id="3871" PostId="2398" Text="@Justboo: Many game engines - including Tribes', Quakes', and the Torque engine - use a custom scripting language.  Usually it's just for AI, but in case of Torque and Starcraft 2, it's for the entire game.  This is done to make the engine more flexible (entire separate games can be created as Starcraft 2 maps!)" CreationDate="2010-09-07T19:24:40.157" UserId="2061" />
  <row Id="3872" PostId="2912" Text="Indeed, nothing wrong with Java 2D. Just cast g to Graphics2D though, or you'll throw away all the things that make it good." CreationDate="2010-09-07T20:01:30.677" UserId="769" />
  <row Id="3873" PostId="3651" Score="1" Text="This isn't about settings information, it's about tweaking runtime variables for debugging or gameplay purposes." CreationDate="2010-09-07T20:10:22.253" UserId="744" />
  <row Id="3874" PostId="3651" Text="Many types of runtime variables for debugging and gameplay purposes make sense to store in some sort of persistent back end. This allows the changing of them across an entire system when you deploy. SQL is just an example of a back end, you could patch the information to a file on disk or any number of other methods." CreationDate="2010-09-07T20:16:37.573" UserId="162" />
  <row Id="3876" PostId="3480" Score="2" Text="Right, that's why Serious Sam did better than Mass Effect -_-" CreationDate="2010-09-07T20:57:54.333" UserId="2061" />
  <row Id="3878" PostId="3608" Text="I'd argue that shmups can also succumb to grinding.  There are many shmups where the bulk of the gameplay time is spent shooting the same enemies in the same patterns.  Good shmups vary it more, and most shmups don't really last that long.  If you extend a repetitive shmup pattern out to half an hour or so like an MMO, then nobody will play it.  DDR is an easier example.  A 30-minute song with just alternating UD/LR patterns would be a grind." CreationDate="2010-09-07T22:33:04.290" UserId="1120" />
  <row Id="3879" PostId="3608" Text="Repeated play of the same shmup is not quite the same as a grind, because shmups have an element of precision/timing to it that keeps  your mind engaged.  Even expert players can sometimes screw up and crash.  MMO/RPG grinds are pretty difficult to screw up.  I see MMO/RPG players grinding as a background task while they're chatting or doing something else.  That doesn't happen with a shmup." CreationDate="2010-09-07T22:38:05.387" UserId="1120" />
  <row Id="3880" PostId="3532" Text="Exactly right. Just keep your bucket collection around. Whenever a entity moves, have it update its position and the bucket storing it. Then you don't need to doing any sorting at all." CreationDate="2010-09-08T00:35:15.103" UserId="160" />
  <row Id="3881" PostId="2729" Text="Great tool but it will only generate bitmaps from your system fonts.  I have a particular TTF file I'd like to use." CreationDate="2010-09-08T05:49:55.787" UserId="370" />
  <row Id="3882" PostId="3655" Text="&quot;Game oriented gui libraries&quot; is pretty broad. Can you narrow it down a bit? World of Warcraft has a very different GUI to the original Doom." CreationDate="2010-09-08T05:59:16.507" UserId="288" />
  <row Id="3885" PostId="3642" Text="I'd never heard of that - looks way more appropriate than cinder for games! nice." CreationDate="2010-09-08T08:34:46.640" UserId="119" />
  <row Id="3886" PostId="3633" Text="although that sounds great, it's not a solution; it's a useful tool to make a solution." CreationDate="2010-09-08T09:37:56.977" UserId="1742" />
  <row Id="3888" PostId="3608" Text="Re. &quot;shooting the same enemies in the same patterns&quot; - is Space Invaders grinding? Re. &quot;element of precision/timing&quot; - Exactly my point. Killing even one enemy is uninteresting in an MMO (in fact optimizing kill rate, i.e. grinding, is where most MMO players say the interesting strategy is). Re. &quot;while they're chatting&quot; - Exactly! MMOs need downtime for social interaction; at the same time, you need to keep &quot;doing something&quot; or it's just a chat room. A good analogy is a sport like golf." CreationDate="2010-09-08T14:26:41.983" UserId="744" />
  <row Id="3889" PostId="3673" Text="Are you sure? Could you, please, quote the source." CreationDate="2010-09-08T14:50:31.133" UserId="1629" />
  <row Id="3890" PostId="3673" Text="Still, as this is the only low-level API available, it is very unlikely high level APIs would be able to provide you more. The low-level API is complete in the sense it can handle all features present in the default OGG file. You might be able to insert some custom meta data containing your own index, but I guess this is obvious and not what you ask for." CreationDate="2010-09-08T14:52:05.953" UserId="1629" />
  <row Id="3893" PostId="3673" Score="1" Text="Scratch that. I was wrong. ov_pcm_seek is a linear search; ov_pcm_seek_page is a binary search. However, it still effectively decodes the file up to that point, which is what the asker wishes to avoid." CreationDate="2010-09-08T15:41:56.777" UserId="744" />
  <row Id="3894" PostId="3673" Score="1" Text="Source is at http://svn.xiph.org/trunk/vorbis/lib/vorbisfile.c, for those interested in playing along at home. I think Sean's analysis is a lot more fun however, and more relevant to this since JOrbis is not libvorbis-derived." CreationDate="2010-09-08T15:43:48.753" UserId="744" />
  <row Id="3895" PostId="3661" Score="1" Text="agreed complexity != depth" CreationDate="2010-09-08T15:44:25.233" UserId="1477" />
  <row Id="3896" PostId="3675" Score="3" Text="I've found this as well. A 120Hz physics loop with a near-60Hz frame update makes interpolation nearly worthless. Unfortunately this only works for the set of games that can afford a 120Hz physics loop." CreationDate="2010-09-08T15:49:48.323" UserId="744" />
  <row Id="3897" PostId="1449" Text="So BananaRaffle: Would you say this is an accurate summary of your answer: &quot;All 3 of the solutions you posted have their uses, as do others. Don't look for the one perfect solution, just use what you need where it makes sense.&quot;" CreationDate="2010-09-08T16:19:03.150" UserId="1970" />
  <row Id="3898" PostId="3661" Text="And for that matter depth != better, depending on who your players are. Candyland is not a deep game, but try teaching chess to a two year old." CreationDate="2010-09-08T16:25:41.387" UserId="744" />
  <row Id="3899" PostId="3670" Text="Have you tried it and observed the results?" CreationDate="2010-09-08T16:30:14.893" UserId="1970" />
  <row Id="3900" PostId="3670" Score="2" Text="You can use the &lt;sub&gt; tag to write subscripts." CreationDate="2010-09-08T16:42:50.157" UserId="233" />
  <row Id="3901" PostId="1449" Text="That's usually good advice in general.  In this case, the question was &quot;How do entities in commercial game engines communicate?&quot; and I was trying to relay my specific experience." CreationDate="2010-09-08T17:21:03.090" UserId="430" />
  <row Id="3902" PostId="2844" Text="Strongly agree with that last point; in pretty much **all** games, input should 'slow down' when the framerate drops. Even though this isn't possible in some games (i.e. multiplayer), it would still be better if it were possible. :P It simply feels better than having a long frame and then having the game world 'jump' to the 'correct' state." CreationDate="2010-09-08T17:44:30.390" UserId="1970" />
  <row Id="3903" PostId="3674" Text="Thanks for the links, it's very useful! I'll try to build a lookup table like you said. JOrbis is a &quot;low-level&quot; library, so it provides the granulepos. As I don't need a sample-precision, I think going 1 page before and then drop the useless data, it will avoid decoding to much." CreationDate="2010-09-08T18:47:30.880" UserId="1286" />
  <row Id="3904" PostId="3673" Text="JOrbis doesn't provide this function, mainly it convert binary data to pages, pages to frames and frames to PCM, and don't have a lot of utility functions. So I'll have to seek in the file by myself." CreationDate="2010-09-08T18:55:09.170" UserId="1286" />
  <row Id="3905" PostId="273" Text="@BananaRaffle: Any linear array of a fixxed size. I've seen people force STL onto a ton of problems that really did not need it at all. The STL-hash-map is also something that you most likely don't need to use or can solve in a cheaper/more efficient way (like when it comes to memory overhead)." CreationDate="2010-09-08T19:46:27.553" UserId="1580" />
  <row Id="3906" PostId="3674" Text="You may not need sample precision, but a good-sounding audio loop will need more than the 1/4 second precision page-level seeking alone provides. Good luck." CreationDate="2010-09-08T19:48:40.710" UserId="744" />
  <row Id="3907" PostId="3670" Text="you may have to take masses into account here. Two balls of different masses spinning at the same rate will react differently when hitting a static wall - the lighter ball will be more affected by the spin. In your example, conservation of energy should hold, this includes energy from moment of inertia." CreationDate="2010-09-08T20:28:24.087" UserId="144" />
  <row Id="3908" PostId="3679" Text="If your going to downvote a question at least explain why? According to the faq I have a legitimate answerable question." CreationDate="2010-09-08T20:46:14.763" UserId="2075" />
  <row Id="3910" PostId="3681" Score="1" Text="It's worth noting that some studios adopt another step on a process like this, which is to evaluate each feature request for how well it helps achieve the core goal of the game.  If it doesn't *directly* support the core goal, then it is cut." CreationDate="2010-09-08T20:47:22.633" UserId="1780" />
  <row Id="3911" PostId="3679" Text="my guess would be that it is vague, multiple questions in one, and/or some of the questions are duplicates. But yes I agree with the sentiment that they should explain why they downvoted" CreationDate="2010-09-08T20:58:55.060" UserId="1477" />
  <row Id="3912" PostId="3681" Text="This is really great advice thanks for sharing. I think starting with some higher level, strategic goals and then letting them drive you towards a MVP is a great strategy. Too often I find myself approaching the problem backwards: take a good gameplay idea and try to figure out how it fits into strategy after the fact." CreationDate="2010-09-08T20:59:02.567" UserId="539" />
  <row Id="3913" PostId="3679" Score="3" Text="You have four questions, all of which are only answerable by Community Wiki, and all of which have been answered here already." CreationDate="2010-09-08T21:53:07.743" UserId="744" />
  <row Id="3914" PostId="3661" Text="An action is fun when your performance affects the outcome of it.The more the player feels in control, the better. &quot;Depth&quot; could be described as the amount of factors leading to either success or failure. If a player feels one of these factors are unfair, things are less fun. Comlexity might increase actual factors that determine the outcome, but not the amount perceived by the player." CreationDate="2010-09-08T22:39:04.787" UserId="1352" />
  <row Id="3915" PostId="3670" Text="I assume you mean rotational velocity? As rotation without rotational velocity wouldn't make any difference in the calculation." CreationDate="2010-09-08T22:41:16.013" UserId="865" />
  <row Id="3916" PostId="3579" Text="@The Communist Duck: There apparently is; it's in the languages list here: http://www.sfml-dev.org/features.php" CreationDate="2010-09-08T22:44:36.473" UserId="189" />
  <row Id="3917" PostId="3679" Text="I think he is asking what do i need to make a game like Plants vs Zombie, not how to make a game in general. His question is valid." CreationDate="2010-09-08T22:45:20.037" UserId="1312" />
  <row Id="3918" PostId="3661" Text="+1 for the general greatness of the answer, except for &quot;Your feature list should change whenever you feel the current gameplay isn't fun&quot;. If the gameplay isn't fun your core mechanic is wrong and no feature will save it. Imo you should add a feature if it deepens the experience without taking away the fun. On the other hand, adding too many features is like cluttering a designer home. The core aesthetics will get muddied and it is basically stating 'we don't know what makes this game great, but we sure tried'. Minimalism is an art - your core should shine, the rest is polish." CreationDate="2010-09-08T22:45:33.583" UserId="865" />
  <row Id="3919" PostId="3670" Text="+1 to mmyers's comment; I just edited in subscripts to make it look nicer." CreationDate="2010-09-08T22:48:18.743" UserId="189" />
  <row Id="3920" PostId="3679" Score="2" Text="The answer to &quot;How do I make a game like PvZ?&quot; is not actually different than &quot;How do I make a game?&quot; in general, at the level he asked." CreationDate="2010-09-08T22:53:58.300" UserId="744" />
  <row Id="3921" PostId="3679" Text="I'm going to have to agree with Joe Wreschnig; these four questions have been very well answered elsewhere, and there's nothing specific enough to distinguish this question from the others available. John, you are treating the site like a forum when it's actually a Q&amp;A/reference type site." CreationDate="2010-09-08T22:58:20.440" UserId="189" />
  <row Id="3922" PostId="3679" Text="Also, the answer to this question - how do I make a 2d game (the PvZ is just a specialization) are answered in MANY tutorial sites, and can't really be isolated in a concise answer. Some research before asking a question would seem only polite and render this question 75% unnecessary. The other 25% (book recommendations) has been asked quite literally on here already." CreationDate="2010-09-09T00:44:52.037" UserId="865" />
  <row Id="3923" PostId="3294" Text="Experimented a bit and Snorlax and Blissey can act as a tank/deflector but at the same time serve a different purpose." CreationDate="2010-09-09T01:17:28.113" UserId="919" />
  <row Id="3924" PostId="3685" Score="1" Text="Thanks Muttley, that was what I needed. A point in the right direction. BTW, you are awesome; even took the time to provide links. Thank you. " CreationDate="2010-09-09T01:19:08.693" UserId="2075" />
  <row Id="3925" PostId="3688" Text="Also Google and &quot;tutorial game programming&quot; should give &quot;some&quot; hits. Hmmm, just checked, 495.000." CreationDate="2010-09-09T04:06:27.617" UserId="865" />
  <row Id="3926" PostId="3675" Text="I just tried switching to a 120Hz update loop. This seems to have the double benefit of making my physics more stable and making my game look smooth at not-quite-60Hz frame rates. The downside is that it breaks all my carefully tuned gameplay physics - so this is definitely an option that needs to be chosen early on in a project." CreationDate="2010-09-09T04:08:52.053" UserId="288" />
  <row Id="3927" PostId="3679" Text="Boy we're welcoming here. The least we could do is to try and be nicer to newbies who make an effort to ask a question in a well-formatted way, unless we want to go the way of the linux RTFM community...." CreationDate="2010-09-09T04:11:20.520" UserId="1004" />
  <row Id="3928" PostId="3675" Text="Also: I don't actually understand your explanation of your interpolation system. It sounds a bit like extrapolation, actually?" CreationDate="2010-09-09T04:14:02.483" UserId="288" />
  <row Id="3929" PostId="3671" Text="It is an interesting structure indeed. However I am not sure it would work well for a game - as the general case is a fairly flat tree of objects that each change exactly once per frame. Also because dynamic memory allocation is a big no-no." CreationDate="2010-09-09T04:25:08.390" UserId="288" />
  <row Id="3930" PostId="3675" Text="Good call.  I actually described an extrapolation system.  Given the position, velocity, and how long since the last physics update, I extrapolate where the object would be if the physics engine hadn't stalled." CreationDate="2010-09-09T05:25:45.677" UserId="370" />
  <row Id="3931" PostId="3605" Text="Another example of the 2nd was Valkyrie Profile 2(where you get drops by severing) but since the battle was so chaotic you could never tell which part you were severing making it somewaht mot point" CreationDate="2010-09-09T05:31:31.787" UserId="919" />
  <row Id="3932" PostId="3690" Text="This question would probably be better titled &quot;Cross Platform .NET Game/Graphics Library&quot;." CreationDate="2010-09-09T05:49:56.953" UserId="288" />
  <row Id="3933" PostId="2721" Text="Great tool but it will only generate bitmaps from your system fonts. I have a particular TTF file I'd like to use.  Further it doesn't like wine very much." CreationDate="2010-09-09T06:07:49.980" UserId="370" />
  <row Id="3934" PostId="3673" Text="What about ov_sec_seek?" CreationDate="2010-09-09T06:39:15.547" UserId="647" />
  <row Id="3935" PostId="3691" Text="I'd take a look on it, thanks!" CreationDate="2010-09-09T07:08:34.643" UserId="1979" />
  <row Id="3936" PostId="3671" Text="Dynamic allocation in a case like this is very easy to do efficiently. You can use a circular buffer, grow from one side, relase from the second one." CreationDate="2010-09-09T07:50:06.753" UserId="1629" />
  <row Id="3937" PostId="3676" Score="1" Text="It seems at least Quake 3 was using this approach, with default &quot;tick&quot; being 20 fps (50 ms)." CreationDate="2010-09-09T07:51:01.543" UserId="1629" />
  <row Id="3938" PostId="3679" Text="Closing a question is not rude. Downvoting a bad question is not rude. Not using the search bar is rude." CreationDate="2010-09-09T08:39:07.227" UserId="744" />
  <row Id="3939" PostId="3673" Text="ov_sec_seek doesn't exist. If you mean ov_time_seek, that is just a wrapper around ov_pcm_seek, and suffers the same problems. And again, JOrbis is not a wrapper around libvorbisfile nor libvorbis." CreationDate="2010-09-09T08:41:49.270" UserId="744" />
  <row Id="3940" PostId="3661" Text="I guess it shouldn't say &quot;Should change&quot; but &quot;could change&quot;. But yeah, tweaking the existing gameplay until it's fun is a safer approach. " CreationDate="2010-09-09T08:43:21.557" UserId="1352" />
  <row Id="3941" PostId="2844" Text="Without fixed hardware like an arcade machine, having arcade games slow the simulation when the hardware can't keep up makes playing on a slower machine cheating." CreationDate="2010-09-09T09:11:48.000" UserId="744" />
  <row Id="3942" PostId="3676" Text="Interesting. I suppose it does have it's advantages for highly-competitive multiplayer PC games, to ensure that faster PCs/higher framerates don't get too much of an advantage (more responsive controls, or small-but-exploitable differences in physics/collision behavior)?" CreationDate="2010-09-09T09:26:46.080" UserId="659" />
  <row Id="3943" PostId="2844" Text="Joe that only matters if we care about &quot;cheating&quot;. Most modern games aren't really about competition between players, just making a fun experience." CreationDate="2010-09-09T09:36:57.670" UserId="119" />
  <row Id="3944" PostId="3614" Text="@Joe - yeah, I love GAs myself. I think they're quite an effective way of exploring a problem space in a way that is quite intuitive to the person tweaking the algorithm. I have also used them for real-time decision making but it's hard to argue that they were more efficient or more effective than the alternatives." CreationDate="2010-09-09T10:38:13.227" UserId="1101" />
  <row Id="3945" PostId="3687" Text="They used telnet for the tweak variables on MotoGP too: http://blogs.msdn.com/b/shawnhar/archive/2009/05/01/motogp-tweakables.aspx" CreationDate="2010-09-09T11:17:55.643" UserId="1101" />
  <row Id="3946" PostId="3692" Text="code example - http://laurent.le-brun.eu/fsharp/opengl.fs" CreationDate="2010-09-09T11:19:29.760" UserId="1505" />
  <row Id="3948" PostId="3651" Score="1" Text="The problem is getting them to change in real time. That probably involves setting up some sort of trigger on the DB, and something in the game that can handle that trigger and re-read the values asynchronously while the game continues running. Not unsurmountable, but not terribly simple either." CreationDate="2010-09-09T11:23:38.750" UserId="1101" />
  <row Id="3949" PostId="3661" Text="@Nailer: I don't see a lot of support for that definition. An action is _skill-based_ when your performance affects the outcome of it (in a predictable way). But randomness and fixed paths can also be also fun. Reading is fun, my reading performance doesn't affect the outcome of a book and I don't feel like I control it either. Koster says, fun is learning in a safe environment - an action, by that definition, may be fun if you learn something from it and don't get hurt. Skill-based actions are only one way to achieve that." CreationDate="2010-09-09T11:36:35.183" UserId="744" />
  <row Id="3950" PostId="3667" Score="1" Text="@Kylotan: You are missing the point. You are modifying the actual source code, which gets parsed at run-time. The persistence is through the modified sources." CreationDate="2010-09-09T11:55:40.250" UserId="1887" />
  <row Id="3951" PostId="3661" Score="1" Text="Ok, let me rephrase. It's fun when your action provides an expected reaction. If you do something that is clearly random, like playing a slots machine,  the excitement is obviously not from skill and feeling in control. You expect the result to be random. However, getting shot in the head by a sniper that is 100 meters behind you is not fun. Neither is jumping into a spike pit that appears out of nowhere ." CreationDate="2010-09-09T12:03:22.713" UserId="1352" />
  <row Id="3953" PostId="3661" Score="1" Text="To continue: This article has a good part that describes the thrill of randomness.&#xA;http://lsvp.wordpress.com/2008/01/07/what-makes-games-fun/&#xA;&#xA;" CreationDate="2010-09-09T12:08:18.583" UserId="1352" />
  <row Id="3954" PostId="3679" Text="@Joe down-voting is rude when you don't explain why and the &quot;we have a search use it&quot; is at the bottom of the page in FAQ, to prevent such question we should bring that a bit up so that it will make the less experienced users see that &quot;yes these sites have good search functions&quot;. People don't quite trust the search functionality, forum mentality so to speak." CreationDate="2010-09-09T13:31:46.700" UserId="1312" />
  <row Id="3955" PostId="3679" Score="1" Text="@RCIX, it's a tricky line between welcoming, and being a doormat :) Trying to build a community is difficult, especially when it's only a (relatively) small group of people. For instance, the Unity3D site (SE 1.0), UnityAnswers, is basically flooded with questions like, &quot;How do I make an MMO/How do I add a gun/knife/laser to a character/How do I make a menu&quot;, repeated over and over. Plus the ever-popular, &quot;What's wrong with this script&quot;, where there is a **trivial** syntax error (for example, http://answers.unity3d.com/questions/20123/c-error-with-if-statement)." CreationDate="2010-09-09T13:40:58.960" UserId="165" />
  <row Id="3956" PostId="3695" Score="13" Text="You're last paragraph reads about right, its true for business apps, and its true for games, **always** treat the client as hostle." CreationDate="2010-09-09T14:48:20.100" UserId="1198" />
  <row Id="3957" PostId="3667" Text="Yeah, somehow I missed that in skimming the article. I'll delete my comment and re-read!" CreationDate="2010-09-09T14:51:26.040" UserId="1101" />
  <row Id="3958" PostId="3547" Text="When you yield inside walk_to, the entire script halts, because you yielded. When you reach the destination, you then opt to resume the script, which picks up where you yielded. walk_to will then presumably return and you're exactly where you need to be in the script. This works in Lua and anywhere with working coroutines. It doesn't work with Python generators." CreationDate="2010-09-09T14:54:43.620" UserId="1101" />
  <row Id="3959" PostId="3613" Text="Wouldn't you just extend your center-to-surface vector until it hits the cube, just like in other kinds of cube-mapping? Or am I missing something here?" CreationDate="2010-09-09T15:06:37.353" UserId="678" />
  <row Id="3960" PostId="3698" Score="3" Text="There are probably a fair amount of users of the 3G still out there. Not all users are geeks and upgrade every year at full cost. I think most people keep their phone until it dies." CreationDate="2010-09-09T15:31:35.593" UserId="1198" />
  <row Id="3961" PostId="3699" Text="Obviously there can't really be a certifying body, nor are some of the TCRs from major platform holders relevant, but this is a really interesting idea. Do you know if anyone's done work on something like this? " CreationDate="2010-09-09T16:06:41.277" UserId="744" />
  <row Id="3966" PostId="3699" Score="2" Text="There is the [evil checklist](http://creators.xna.com/en-US/help/peerreview_evilchecklist) for XBLIG games (and a corresponding not so evil checklist)." CreationDate="2010-09-09T16:33:51.057" UserId="395" />
  <row Id="3969" PostId="2032" Text="I think you've got `Boolean` and `binary` mixed up. Not sure they're absolutely necessary for game programming." CreationDate="2010-09-09T17:22:32.527" UserId="1143" />
  <row Id="3970" PostId="3485" Text="Blizzard being mentioned as a positive example, reminds me of this quote by the CEO Kotick: &quot;The goal that I had [...] about 10 years ago was to take all the fun out of making video games.&quot; Creating a corporate culture of &quot;skepticism, pessimism, and fear&quot;. (Source: http://www.gamespot.com/news/6226758.html?sid=6226758 )" CreationDate="2010-09-09T17:25:14.863" UserId="450" />
  <row Id="3971" PostId="2045" Text="@Mason: No Trig needed for the arc, just use `s=u.t + a.t.t/2`. You need trig to get the initial velocity though (u)." CreationDate="2010-09-09T17:26:00.303" UserId="1143" />
  <row Id="3972" PostId="2068" Score="2" Text="For the 1% of game programmers that write low level animation code in the rendering engine, quaternions are a useful tool. For the other 99% of game programmers, they're not really needed." CreationDate="2010-09-09T17:29:57.497" UserId="1143" />
  <row Id="3974" PostId="2069" Score="3" Text="It amazes me just how often quaternions are linked to gimble lock. I've written 3D games with no quaternions whatsoever and never had a gimble lock problem. If you really understand 3D maths and know what a gimble lock actually is, then you won't have that problem." CreationDate="2010-09-09T17:34:16.270" UserId="1143" />
  <row Id="3975" PostId="2721" Score="1" Text="Couldn't you add the TTF as a system font?" CreationDate="2010-09-09T17:37:58.340" UserId="865" />
  <row Id="3976" PostId="2031" Score="1" Text="I wouldn't say that `this one is a must` considering that polygon based games account for a small percentage of all games made (most games are written in Flash after all)." CreationDate="2010-09-09T17:40:07.343" UserId="1143" />
  <row Id="3977" PostId="3705" Score="1" Text="I'm a bit confused to be honest, is this a 3d modeling question or an export question?" CreationDate="2010-09-09T17:47:02.673" UserId="1312" />
  <row Id="3982" PostId="3697" Score="3" Text="Depending on the coding practices, all of the content on the server can be compromised as well. To minify the code and obfuscate only deters those that do not want to take the time and logically map out what it is doing. Bottom line is, if your worried about the intellectual property rights of your code; don't put it on the web." CreationDate="2010-09-09T18:24:25.483" UserId="2075" />
  <row Id="3983" PostId="3697" Score="1" Text="That does not mean you should not minify, that deters the lazy people. You can also try processing your game logic on the server and return json objects through ajax, but the return can still be viewed with firebug. Obfuscate  your production version but keep a heavily comment version for yourself (this makes it harder to maintain). You can do things to deter people, but it is never 100% safe." CreationDate="2010-09-09T18:31:41.253" UserId="2075" />
  <row Id="3984" PostId="3705" Text="I guess that's where I can see the confusion, it's really kinda either or both.  I just need the result to be a model in solidworks that is a continuous surface and hollow with a thickness." CreationDate="2010-09-09T18:39:03.170" UserId="2083" />
  <row Id="3985" PostId="3707" Text="I don't know XNA, but maybe you'll have to seed that random generator to get different values?" CreationDate="2010-09-09T18:42:00.050" UserId="20" />
  <row Id="3986" PostId="3687" Text="+1 I love this idea. Great for small screen platforms." CreationDate="2010-09-09T18:45:49.777" UserId="831" />
  <row Id="3987" PostId="3705" Text="Ok so it's a 3D Modeling question, now provide more details about where do you want it to be hollow. Sorry but it's still really vague to pin down an answer." CreationDate="2010-09-09T18:46:34.047" UserId="1312" />
  <row Id="3988" PostId="3709" Score="1" Text="And by the way, this would be a lot easier to read if instead of conditionals you just had a = random.Next(2); b = a ^ 1; d = random.Next(2); spd = new Vector(-d * a * 2, -d * b * 2)." CreationDate="2010-09-09T18:48:43.193" UserId="744" />
  <row Id="3989" PostId="3707" Text="XNA seeds random number generators based on the clock by default, so you do need to seed them if you instantiate many generators at once. But assuming different values across invocations, or at disparate times in the program, is safe enough for games." CreationDate="2010-09-09T18:49:58.073" UserId="744" />
  <row Id="3990" PostId="3708" Text="are you using this enum to decide which view is presented to the player? like in sim-city when you are adding plumbing you see the water-flow instead of seeing the buildings?" CreationDate="2010-09-09T18:50:20.693" UserId="1477" />
  <row Id="3993" PostId="3710" Text="I don't think the OP means states such as menu, gameplay, options. I think he means something in-game, such as 'overworld map', 'road view', 'underground view', et al. SimCity-esque." CreationDate="2010-09-09T19:00:23.287" UserId="1156" />
  <row Id="3994" PostId="3700" Text="You skipped the 3GS model. I don't think anyone is seriously considering dropping the 3GS yet. Dropping the 3G has immediate tangible benefits like guaranteed OpenGL ES 2 support." CreationDate="2010-09-09T19:00:24.990" UserId="744" />
  <row Id="3995" PostId="3710" Text="My point is that such things are not necessarily different in a system using state-sets." CreationDate="2010-09-09T19:01:38.263" UserId="744" />
  <row Id="3996" PostId="3700" Text="Ah, I apologise." CreationDate="2010-09-09T19:01:41.897" UserId="1156" />
  <row Id="3998" PostId="3710" Text="I think about in games mini-states. They aren't big states like GameScreen , MenuScreen etc, I think they are to small, to making classes for each other." CreationDate="2010-09-09T19:10:42.120" />
  <row Id="3999" PostId="3710" Text="In a state-set system a state is just an enumeration mapping to a single function or set of functions. When it comes time to do the thing that varies per state (or mini-state), you just call all active state functions. It doesn't really get simpler than that, except by making it all explicit with a switch statement; but that is what you asked to get away from." CreationDate="2010-09-09T19:13:18.500" UserId="744" />
  <row Id="4000" PostId="3709" Text="@Joe: Thanks! I actually hadn't thought if the probability was different for each direction. Since the pattern looked as if it repeated, I thought the RNG was to blame. I'll work out a better algorithm and&#xA;@Joe again: I'll work in your code if I can!" CreationDate="2010-09-09T19:13:58.423" UserId="89" />
  <row Id="4002" PostId="3541" Score="2" Text="This would seem to be a duplicate of http://gamedev.stackexchange.com/questions/2400/ among some others." CreationDate="2010-09-09T19:28:16.280" UserId="744" />
  <row Id="4003" PostId="3667" Score="2" Text="I might be just me but this technique feels ... icky.  I think it's because I've spent so much time hating magic numbers and this will only work for magic numbers.  I'd rather see the clear color be part of a config or script file.  The magic the comes with the ability to hot load resources." CreationDate="2010-09-09T19:32:15.647" UserId="370" />
  <row Id="4004" PostId="3699" Text="The not-so-evil checklist (http://creators.xna.com/en-us/help/peerreview_notsoevilchecklist) looks much more useful outside the world of XBLIG." CreationDate="2010-09-09T19:35:09.917" UserId="744" />
  <row Id="4007" PostId="3712" Score="1" Text="J2ME? Do I smell a school project? :P" CreationDate="2010-09-09T19:52:44.613" UserId="769" />
  <row Id="4008" PostId="3710" Text="Hm...Ok :) But I have for example something like that:&#xA;pseudocode :&#xA;class Game &lt;&gt;---- class Map (Game has Map)&#xA;map&lt;State, pFunc&gt; states;&#xA;state = construct&#xA;states[state]();&#xA;&#xA;I click somewhere on screen, where I want to build something, and how to make this building process in extern func ?" CreationDate="2010-09-09T19:53:01.727" />
  <row Id="4009" PostId="3708" Text="I write for example SimCity, I writing something more simple." CreationDate="2010-09-09T19:54:37.723" />
  <row Id="4010" PostId="3712" Score="1" Text="I would suggest looking at the XNA's Platformer Starter Kit (C#, I know)...but it appears to be taken down." CreationDate="2010-09-09T19:54:54.230" UserId="1156" />
  <row Id="4011" PostId="3711" Text="See also http://gamedev.stackexchange.com/questions/3563/hardware-acceleration-for-the-flash-player" CreationDate="2010-09-09T19:55:05.197" UserId="769" />
  <row Id="4013" PostId="3712" Score="2" Text="http://gamedev.stackexchange.com/questions/3431/ covers 2D physics, http://gamedev.stackexchange.com/questions/2799/ specifically in a platformer context. http://gamedev.stackexchange.com/questions/3107/ covers 2D map editing." CreationDate="2010-09-09T19:56:13.123" UserId="744" />
  <row Id="4014" PostId="2031" Text="Not sure why you think a Flash game doesn't use polygons. Perhaps you are thinking that this is related to 3D programming, which is isn't (at least not directly). This is more generally used for things like collision detection." CreationDate="2010-09-09T19:57:26.087" UserId="395" />
  <row Id="4015" PostId="3698" Score="2" Text="Release your game first and see how it does. If there is a high demand for it, then port it to the 3G with reduced audio or whatever." CreationDate="2010-09-09T19:59:10.393" UserId="656" />
  <row Id="4017" PostId="3705" Text="Solidworks is an engineering CAD tool, you might have better luck asking about Blender." CreationDate="2010-09-09T20:01:04.577" UserId="395" />
  <row Id="4018" PostId="3707" Score="2" Text="In case you are curious, the original AIs were not (entirely) random: http://home.comcast.net/~jpittman2/pacman/pacmandossier.html#Chapter 4" CreationDate="2010-09-09T20:04:31.927" UserId="395" />
  <row Id="4022" PostId="3707" Text="@coderanger: Thank you for the link! Yes, I know that each ghost has quite a sophisticated algorithm to use, but this is a test-run. I just want them to navigate the bloody squares without getting stuck before getting on with the real problem of pathfinding and AI. *bookmarks link* That shall be a great help though, when that time comes ^^" CreationDate="2010-09-09T20:36:41.850" UserId="89" />
  <row Id="4023" PostId="3712" Text="@Bart, no school project here. I am thinking of making some money :-D @Joe, thank you very, very, *very* much!" CreationDate="2010-09-09T20:41:38.850" UserId="2051" />
  <row Id="4024" PostId="3713" Text="Thanks a lot! Looks really helpful! Just the kind of guide I wanted." CreationDate="2010-09-09T20:43:56.487" UserId="2051" />
  <row Id="4025" PostId="3713" Text="Nice, I wasn't aware of that link :o) If you have more of such technical indepth analysis, please share!" CreationDate="2010-09-09T21:01:08.810" UserId="865" />
  <row Id="4026" PostId="2032" Text="@Skizz, good point - fixed. (And another minor point, it is a *wiki* - nothing stopping you from changing it. :)" CreationDate="2010-09-09T21:23:46.460" UserId="165" />
  <row Id="4027" PostId="3716" Text="That isn't actually a problem, though it might be a tiny performance hit. Not really something to worry about while you are still getting your sea legs." CreationDate="2010-09-09T21:41:59.163" UserId="395" />
  <row Id="4028" PostId="2045" Text="Why isn't this higher? Half the programmers I've worked with can't use sines and cosines for the life of them." CreationDate="2010-09-09T22:00:03.747" UserId="452" />
  <row Id="4029" PostId="3713" Text="+1 Indeed, very nice link." CreationDate="2010-09-09T22:10:34.593" UserId="685" />
  <row Id="4030" PostId="3716" Text="Ah ok.  I don't know C# and guessed that maybe the Random object was being initialized to the same thing each time it was brought up." CreationDate="2010-09-09T22:13:00.280" UserId="1780" />
  <row Id="4031" PostId="3716" Text="This _is_ a problem if you are making many Random instances in a short period of time, because they are clock-seeded. It is not the main problem in this case, and it can't explain non-random behavior across program invocations." CreationDate="2010-09-09T22:15:16.940" UserId="744" />
  <row Id="4032" PostId="3673" Text="@Joe, correct, that's what I meant." CreationDate="2010-09-09T23:05:38.117" UserId="647" />
  <row Id="4033" PostId="3702" Text="Wow, you can buy apps that won't work on your device?  +1 for Android Market..." CreationDate="2010-09-10T00:05:13.857" UserId="1780" />
  <row Id="4034" PostId="3547" Text="@Kylotan C#'s iterators (ie: methods containing `yield`) are more like Python's generators than real coroutines." CreationDate="2010-09-10T00:12:56.313" UserId="288" />
  <row Id="4035" PostId="3676" Score="1" Text="Have you in 10 years not ran into any game that ran the physics not in lockstep with the simulation and renderer? Because the moment you do that you'll pretty much have to interpolate or accept perceived jerkiness in your animations." CreationDate="2010-09-10T01:00:05.837" UserId="865" />
  <row Id="4036" PostId="3671" Text="...that wouldn't be dynamic allocation, just dynamic use of preallocated memory ;)" CreationDate="2010-09-10T01:05:32.587" UserId="865" />
  <row Id="4037" PostId="3702" Text="You can buy apps for anything in iTunes itself.  When you're buying through the on-device store it limits it to apps your device can run." CreationDate="2010-09-10T01:34:47.990" UserId="51" />
  <row Id="4038" PostId="2045" Text="@Skizz: Yeah.  You need trig to turn an angle and a power into an initial vector.  After that you just need an animation loop and a gravitic constant." CreationDate="2010-09-10T04:43:45.497" UserId="818" />
  <row Id="4039" PostId="3697" Score="2" Text="Indeed. Expanding minified code doesn't even take much effort. http://jsbeautifier.org/" CreationDate="2010-09-10T04:46:05.690" UserId="1317" />
  <row Id="4040" PostId="3721" Text="I don't know if the polymorphic solution is for &quot;OOP languages&quot; or just some of them. It's what I'd do in C++, but in Python or another language with convenient higher-order functions I would just use callbacks again, and in new C++ compilers I might use functors, if I was only managing a single function." CreationDate="2010-09-10T06:13:42.460" UserId="744" />
  <row Id="4041" PostId="2844" Text="Iain, we are talking specifically about arcade-style games here, which are traditionally high-score-list / leaderboard driven. I play a ton of shmups, and I know if I found someone was posting scores with artificial slowdown to leaderboards I'd want their scores wiped." CreationDate="2010-09-10T06:17:57.077" UserId="744" />
  <row Id="4042" PostId="3621" Score="3" Text="Apple changed the license agreement again yesterday, and game scripting is now totally a-okay. - &quot;Interpreted code may only be used in an Application if all scripts, code and interpreters are packaged in the Application and not downloaded. The only exception to the foregoing is scripts and code downloaded and run by Apple's built-in WebKit framework.&quot;" CreationDate="2010-09-10T07:03:02.617" UserId="639" />
  <row Id="4043" PostId="3687" Score="3" Text="Why Telnet? HTTP/HTML, dude! HTTP is a very simple protocol and can be easily embedded in a game - I've done it before, it was well under a thousand lines of code." CreationDate="2010-09-10T07:23:12.440" UserId="323" />
  <row Id="4044" PostId="3712" Text="Hmmm, but if you want to make money, is J2ME the best platform? Do people seriously game with that?" CreationDate="2010-09-10T09:19:04.247" UserId="769" />
  <row Id="4045" PostId="3702" Text="Check out Apple's own iMovie app for example. It only runs on the iPhone 4, but looking at the reviews plenty of people without iPhone 4s bought it :) AFAIK, the Android store is only accessible from the phone itself so I guess that cuts out the confusion." CreationDate="2010-09-10T09:38:10.147" UserId="93" />
  <row Id="4046" PostId="3677" Text="Cheers.. I was already looking at Slick, and for the prototyping its spot on.. Very rapid prototyping." CreationDate="2010-09-10T10:28:40.480" UserId="2069" />
  <row Id="4047" PostId="2033" Text="Statistics are wonderful when you're developing an AI, or just generally developing a management/tycoon game. On the other hand, I have no familiarity with calculus at all. I'd argue statistics and probability are essentially the same thing  for learning purposes as the field of statistics stems from work on probability. It's very subjective." CreationDate="2010-09-10T11:34:58.010" UserId="1628" />
  <row Id="4048" PostId="3679" Text="I concur that the question just isn't relevant - and I would feel it is fully reasonable to offer efficient but useful suggestions - like 'use the search'. It is not rude to avoid pointless etiquette when you're helping people." CreationDate="2010-09-10T11:38:38.273" UserId="1628" />
  <row Id="4049" PostId="3706" Score="3" Text="Security by obscurity obscures potential for security. :)" CreationDate="2010-09-10T11:42:35.507" UserId="1628" />
  <row Id="4050" PostId="3690" Score="2" Text="I'm usually all for directness but I think a little bit of politeness wouldn't kill... anyway: I fully support using OpenTK." CreationDate="2010-09-10T11:44:37.547" UserId="1628" />
  <row Id="4051" PostId="3692" Text="You can use OpenTK alongside various windowing methods - such as Windows Form or GTK. WinForms is pretty mature on Mono." CreationDate="2010-09-10T11:45:42.200" UserId="1628" />
  <row Id="4052" PostId="2059" Text="Pure software distribution is a sorely under-loved area of open source software. I'd gladly dedicate my time to a project such as this. It's something an entire sector of the industry would appreciate. I know some of the guys at Mozilla have been looking at doing something very similar for 'web apps'.&#xA;&#xA;@Joe That just made me think of Sony LaunchPad @.@ urgh... nasty thing. Launchpad looks quite broad... handling development + bug tracking + hosting. Not just distribution." CreationDate="2010-09-10T12:07:13.187" UserId="1628" />
  <row Id="4053" PostId="3605" Text="@Joe Agreed. I found MH grind-tastic. Which is actually why I chose it. I wanted something 'low-attention' as you put it." CreationDate="2010-09-10T12:29:52.023" UserId="1628" />
  <row Id="4054" PostId="3698" Text="Also note that Game Center isn't going to work on the 3G." CreationDate="2010-09-10T12:55:53.033" UserId="1021" />
  <row Id="4055" PostId="3640" Score="1" Text="I watched the 3DBuzz tutorial videos that came with Unreal 3 and they mentioned that designers usually cover the brush geometry with imported meshes. So it's almost like the system exists to provide 2 layers of geometry - a rough layer that's used for visibility calcs and a detailed layer consisting of imported models that are occluded by the world's brush geometry, but don't occlude anything themselves." CreationDate="2010-09-10T13:31:46.390" UserId="93" />
  <row Id="4056" PostId="2057" Score="1" Text="Not a real question." CreationDate="2010-09-10T13:43:06.533" UserId="1283" />
  <row Id="4058" PostId="3547" Text="Fair enough, but the original question doesn't specify C# as the scripting language." CreationDate="2010-09-10T14:42:18.810" UserId="1101" />
  <row Id="4059" PostId="3687" Score="3" Text="I would say that Telnet does the job pretty well and is much less complex. You could do it in 100 lines of code rather than 1000. And it also allows for the pushing of updates rather than having to poll and pull them. But if you need HTTP for any other purpose in your game, I'd agree that it's worth using it here too." CreationDate="2010-09-10T14:46:11.833" UserId="1101" />
  <row Id="4062" PostId="3726" Score="2" Text="Why is it so important for Linux to have open source drivers, if the proprietary drivers are usable? Putting the ideology aside, what relevance does it have to games?" CreationDate="2010-09-10T15:44:46.023" UserId="1101" />
  <row Id="4064" PostId="2057" Score="2" Text="@FreshCode: Hence the &quot;Community Wiki&quot; flag. While this site doesn't have exact guidelines for community wikis yet, this falls well within the boundaries of the flag on other SE sites, e.g. MathOverflow (http://mathoverflow.net/faq#communitywiki)." CreationDate="2010-09-10T16:10:28.510" UserId="744" />
  <row Id="4066" PostId="3724" Text="Don't forget game center is iOS4 only, which doesn't run on older devices. " CreationDate="2010-09-10T16:57:02.643" UserId="656" />
  <row Id="4069" PostId="245" Text="@Tchalvak - how do you propose synchronizing the backup system with the version control system?  What backup systems do you know of that allow for multiple people to sequentially revise large binary files, and go back to any version in the past along with the appropriate version of all of the other files in the project?  (Sounds like the requirements of a source control system to me.)" CreationDate="2010-09-10T18:55:35.887" UserId="1780" />
  <row Id="4070" PostId="3726" Text="@Kylotan: not all GPUs have proprietary drivers available. Intel is one of them, and their hardware, while not very fast, is fast enough to play many games. Gamers would enjoy faster/less buggy drivers. Reporting bugs is not enough, Mesa/Intel need more developers. To get them, they need better documentation." CreationDate="2010-09-10T19:02:31.773" UserId="999" />
  <row Id="4072" PostId="2059" Text="what is wrong with actually using steam/steamworks?" CreationDate="2010-09-10T19:55:44.317" UserId="1477" />
  <row Id="4073" PostId="3542" Score="1" Text="&quot;the suggestion above&quot; doesn't apply to the Stack Exchange system, especially since your answer is now the most upvoted." CreationDate="2010-09-10T20:00:10.353" UserId="189" />
  <row Id="4075" PostId="2059" Text="Not available to everyone, can't be rebranded, bad support for large updates unless you use their file archives." CreationDate="2010-09-10T20:09:57.837" UserId="395" />
  <row Id="4076" PostId="3542" Text="Thanks, yeah, that was kinda dumb of me. Edited." CreationDate="2010-09-10T20:47:42.377" UserId="865" />
  <row Id="4077" PostId="3193" Text="Which API call is producing the exception in question? What are the permissions attached to the path that you aren't being allowed to access?" CreationDate="2010-09-10T21:27:40.083" UserId="448" />
  <row Id="4078" PostId="571" Score="1" Text="Regardless of bigfile support, if two people edit, say, a Maya file at once, one will check in and the other will have to redo the work.  With Perforce, at least, you can know that someone else is editing the file (and also automatically have a lock on that file)." CreationDate="2010-09-10T22:06:51.453" UserId="1780" />
  <row Id="4079" PostId="3310" Score="1" Text="My experience with AlienBrain is that the authors do not get game development.  It is not a robust source control solution.  Some of the features are nice for some of the team, but some of the coolest advertised features aren't implemented in such a way as to be useful (e.g. the staging interface, where someone can check in their assets &quot;for review.&quot;  Unfortunately there's no way to know what is for review and what isn't, and when you sync you get it anyway).  Plus it caches nothing, so a sync requires testing every single file.  This is slow with many gigs of assets.  :)" CreationDate="2010-09-10T22:12:56.083" UserId="1780" />
  <row Id="4080" PostId="483" Text="If I had to choose *one* VCS for (large scale) game development, it would be Perforce.  If I *could* choose multiple, I would add a DVCS for text assets (code, scripts, and other miscellaneous data files) but keep Perforce for binary assets." CreationDate="2010-09-10T22:14:40.617" UserId="1780" />
  <row Id="4081" PostId="3721" Text="Definitely this: I do it all the time and twinge with pain every time I cross code using switch for state handling...  The advantage of this is also that you can have each state &quot;store state&quot;, initialize, deinitialize, etc, when it transitions in and out." CreationDate="2010-09-10T22:33:39.067" UserId="1970" />
  <row Id="4082" PostId="3737" Score="4" Text="I honestly don't think people mean an action RPG when they say 'sinple game'." CreationDate="2010-09-10T23:00:48.300" UserId="865" />
  <row Id="4083" PostId="3721" Score="1" Text="Callbacks work in an OOP language too, but these &quot;states&quot; are likely to have some state of their own, which makes polymorphic classes a good fit (unless you're more comfortable with closures than most OOP programmers are)." CreationDate="2010-09-11T00:02:01.970" UserId="160" />
  <row Id="4084" PostId="3712" Text="Well, @Bart, you have a point there. But there are some external factors to consider as well." CreationDate="2010-09-11T08:05:33.817" UserId="2051" />
  <row Id="4085" PostId="2542" Text="I really like your answer. With all of the programming languages having similar structures (objects, control structures ect...) I think you should learn the concepts of what you want to do with what you are comfortable with. The main differences at that point moving from language to language should be syntax, core components, and api's." CreationDate="2010-09-11T08:06:46.250" UserId="2075" />
  <row Id="4089" PostId="3744" Text="Tetris is simple, an action or rpg game is not." CreationDate="2010-09-11T11:31:49.110" UserId="1156" />
  <row Id="4090" PostId="3741" Text="I'm not sure any real-world implementation of state stacks is nearly equivalent to a pushdown automaton. As mentioned in other answers, practical implementations invariably end up with commands like &quot;pop two states&quot;, &quot;swap these states&quot;, or &quot;pass this data onto the next state outside of the stack&quot;. And an automaton is an automaton - a computer - not a data structure. Both state stacks and pushdown automata use a stack as a data structure." CreationDate="2010-09-11T12:16:36.603" UserId="744" />
  <row Id="4092" PostId="3721" Score="1" Text="In Python there is no significant difference between a method and a function, so you can pass a bound method to a callback system and keep it unaware of your instance's state. C++0x also takes some steps in this direction with lambdas and functors; I have not played with it enough to know if it's a good idea to do that yet (which means it's not; compiler support for them is bad). I would only use a polymorphic type if my interface consisted of more than one function." CreationDate="2010-09-11T12:30:42.047" UserId="744" />
  <row Id="4093" PostId="2334" Text="Agreed that a graphics tablet can make a big difference, if you've got access to the right software (anyone got suggestions for free/cheap alternative for those without access to Photoshop?). Learn how to use brushes properly (setting them so pressure modifies opacity, etc), and you'll be surprised by the difference that pressure sensitivity makes.  The Bamboo is entry-level, but is fairly decent - a good starting point to help decide if tablets are for you" CreationDate="2010-09-11T12:45:14.397" UserId="659" />
  <row Id="4094" PostId="3744" Text="@The Communist Duck: He specifically asked for &quot;simple&quot; games (albeit, simple action/rpg games). Tetris is simple, but it does contain most of the elements needed for all games (except a story line etc.). Any game, no matter how simple requires quite a bit of effort to truly finish. Doing that last 10% to finish off a game is an important part of the process. So start simple..." CreationDate="2010-09-11T13:05:02.383" UserId="2065" />
  <row Id="4095" PostId="3740" Score="1" Text="Just wondering, why? The basic approach of EASTL is detailed more than enough in the paper to copy the parts you need; the particular implementation details of EASTL are now several years old and there are probably better ways to do it on newer C++ compilers; and many of the extensions they talk about are available in Boost (e.g. boost::intrusive::list) or tr1 (e.g. standard unordered_map). There are a few useful things left in it, but I'd never say it's the _most_ needed open source project." CreationDate="2010-09-11T14:01:55.930" UserId="744" />
  <row Id="4096" PostId="3737" Text="I wasn't trying to imply they did, I was just trying to apply that advice to specifically an attempt to make a game of those types and trying to come up with what would be examples of a simple game of that type." CreationDate="2010-09-11T15:20:15.507" UserId="1477" />
  <row Id="4097" PostId="3743" Text="great that is a perfect link!" CreationDate="2010-09-11T15:21:34.257" UserId="2102" />
  <row Id="4098" PostId="3744" Text="ditto to what the duck said. Was looking for example specifically with action/action rpg. I.E. games in the union of simple games and (action game or action rpg)" CreationDate="2010-09-11T15:37:23.407" UserId="1477" />
  <row Id="4099" PostId="2334" Text="Well there is GIMP, the popular open-source, free alternative to Photoshop, but it doesn't feature pressure sensitivity which is really a letdown. But every Wacom tablet includes some software; the Bamboo Fun, for example, includes &quot;Adobe® Photoshop® Elements 7.0 Win/6.0 Mac, Corel® Painter™ Essentials 4.0, Nik® Color Efex Pro™ 3.0 WE3&quot; (http://www.wacom.com/bamboo/bamboo_fun.php). None of these are time-limited, and I have used Photoshop Elements in the past and found it to be quite functional." CreationDate="2010-09-11T17:37:30.853" UserId="189" />
  <row Id="4100" PostId="2334" Text="Oh wow, GIMP does support pressure sensitivity! I'll have to try it next time I'm with my tablet! It's just not enabled by default, which is why I assumed it didn't exist: https://bugs.launchpad.net/ubuntu/+source/gimp/+bug/117751 - so in that case, I can highly recommend GIMP as a free alternative to Photoshop. :)" CreationDate="2010-09-11T17:44:25.580" UserId="189" />
  <row Id="4102" PostId="3754" Text="Thanks for your feedback. I searched Game Development for existing questions of this type but not Stack Overflow." CreationDate="2010-09-11T19:20:55.893" UserId="2077" />
  <row Id="4103" PostId="3751" Text="This might be a better question for regular StackOverflow; it's strictly about a software development platform, and you're more likely to get someone who has dealt with something like it." CreationDate="2010-09-11T19:41:22.037" UserId="744" />
  <row Id="4104" PostId="3754" Text="Apparently, you can't vote to close with a reference to a post on another SE site, so approving this answer is probably the best possible outcome for the question." CreationDate="2010-09-11T19:44:29.020" UserId="744" />
  <row Id="4105" PostId="3392" Text="That's better. Still, Android, like iOS now, targets several devices, so you will definitely need to specify a hardware device for somebody else to comment on it. In general an algorithm where you put your polygons perpendicular to the camera, disable the depth buffer and trying to use triangle stripes to reduce vertex overhead should be a winner. Another trick could be scaling texture coordinates to use bytes instead of floats, which improves bandwidth." CreationDate="2010-09-11T19:59:35.950" UserId="1279" />
  <row Id="4106" PostId="3754" Score="3" Text="And regardless, it doesn't necessarily need to be closed. Some people might support Tetrad's choice of FMOD, for example, which was not mentioned in the SO question. I only posed the question to build upon it, not to suggest it's an exact duplicate, since the game development audience isn't an exact duplicate of the SO audience. :)" CreationDate="2010-09-11T20:03:35.030" UserId="189" />
  <row Id="4107" PostId="2935" Text="@Kylotan that's probably more a symptom of improper design/poor test design. Refactor and make use of mocks to make clean tests, don't hack your code into a worse state; that's the opposite of what's supposed to happen." CreationDate="2010-09-11T20:10:53.723" UserId="1799" />
  <row Id="4108" PostId="3586" Text="+1 but you should add something about the limitations of usage on some languages on proprietary platforms like consoles... (hardware and constructor-policy limitations) If the home-made games are done for training for getting a job in the industry, then using Ruby for the game itself will not really help on this side. For desktop games however, &quot;why not???&quot;" CreationDate="2010-09-11T21:00:07.810" UserId="364" />
  <row Id="4109" PostId="3753" Score="1" Text="&quot;good&quot; is subjective. It would help if you had some specific requirements so answers can be a bit more geared towards your particular needs. " CreationDate="2010-09-11T22:00:09.460" UserId="51" />
  <row Id="4110" PostId="2057" Score="5" Text="If you are starting a list question it would be better if your answers are in an answer instead of the question so they can be voted on separately. " CreationDate="2010-09-11T22:04:59.577" UserId="51" />
  <row Id="4111" PostId="3586" Text="@Klaim I would argue that it is becoming less relevant, and I will be interested to know the language used for consoles of the next generation or perhaps the one after that. It's possible that they will continue to be developed with C++, but I personally believe it highly likely that they will progress towards higher-level languages. Android development, for example, is in Java; not that Android is a game console at all. But perhaps a hybrid language like Go will rise to be the new popular language in a console generation or two." CreationDate="2010-09-11T22:09:14.920" UserId="189" />
  <row Id="4112" PostId="3740" Text="Why duplicate the effort? Why not benefit from peer review? Boost and TR1 do nothing to improve the brain-damaged allocator design, for one. Many of the proposed changes could be adopted by the STL and the STL would be better for it. But that will never happen." CreationDate="2010-09-11T22:18:05.953" UserId="101" />
  <row Id="4113" PostId="3698" Text="Update - I've been doing some research regarding hardware distribution, and have found that while the 3G is a dwindling market, they constitute anywhere from 10-20% of the active iPhones.  Still a big chunk of the market to ignore.  SO, I've gone back to the drawing board (literally and figuratively) and have done a ton more optimization.  I'm finally able to run the app on a 3G as well as a 2G iPhone with intermittent low memory crashes.  Thanks for all of your input." CreationDate="2010-09-11T23:01:31.723" UserId="316" />
  <row Id="4114" PostId="3744" Score="1" Text="Well I'd say Tetris is just as much of an &quot;action&quot; game as Pac-man (minus the AI and a much better simple game to start with), but whatever. To each his own. Good luck either way." CreationDate="2010-09-12T04:34:14.660" UserId="2065" />
  <row Id="4115" PostId="2308" Text="These videos are great fun! Thanks!" CreationDate="2010-09-12T06:30:09.820" UserId="2051" />
  <row Id="4116" PostId="3754" Text="I disagree; it should be closed and redirected to the SO question. Otherwise we split future answers between two places. And it is the exact same question - this is &quot;Cross-Platform Audio API Suggestions [for game development]', and the other is &quot;Cross-platform sound API for games?&quot;" CreationDate="2010-09-12T08:44:12.703" UserId="744" />
  <row Id="4117" PostId="3392" Text="Well, after seeing this: http://www.youtube.com/watch?v=U4Bk5rmIpic &#xA;&#xA;I have decided to use the DrawTexture call for all my Ui bits, and VBO's for the rest.&#xA;&#xA;He does some benchmarking, and what he finds is that up to 50 sprites the built in android.graphics library is just as fast as open gl. This might have changed in the newer versions of android though." CreationDate="2010-09-12T10:55:40.020" UserId="1352" />
  <row Id="4118" PostId="3743" Text="LOGD is still going strong. I was writing modules for it a year back, proliferated over a lot of sites. Very strong community." CreationDate="2010-09-12T15:56:35.127" UserId="1628" />
  <row Id="4119" PostId="3763" Score="2" Text="I'd argue when learning, nothing is better than initiative..." CreationDate="2010-09-12T16:06:09.753" UserId="1628" />
  <row Id="4120" PostId="3763" Text="Are you trying to learn how to write 3D applications or write a game using an existing 3D engine?  If it's the former, check this out: http://gamedev.stackexchange.com/questions/1128/what-is-the-best-way-to-learn-open-gl" CreationDate="2010-09-12T16:34:11.027" UserId="51" />
  <row Id="4121" PostId="3764" Text="Minecraft doesn't really teach you anything about 3D game development. But I agree, if you want to learn by modding, try the Source engine; if you want to start from scratch, stand on the shoulders of the Unity giant." CreationDate="2010-09-12T17:23:43.057" UserId="189" />
  <row Id="4122" PostId="3763" Text="@tetrad little bit of both actually. I think that beginning to write my own 3D engine might be some start from me, but as a matter of fact, since I like the quote &quot;keep it simple stupid&quot;, I might do something very limited, without using 3d files... but still, that satisfies me. I like doing step by step, but only step I likes, even if it means taking more time." CreationDate="2010-09-12T17:40:49.063" UserId="1829" />
  <row Id="4123" PostId="3764" Text="I prefer something more DIY, and about blender, why not, but I want to program something... I'm lazy, but I want to do it myself, somewhat I'm contradicting myself, but whatever I'm a stubborn mozfkr." CreationDate="2010-09-12T17:44:11.693" UserId="1829" />
  <row Id="4124" PostId="3763" Text="thanks for the link btw, I found some interesting article about opengl (I already have the red book, but it's a little too exhaustive)" CreationDate="2010-09-12T17:47:42.757" UserId="1829" />
  <row Id="4125" PostId="1166" Text="Make it a static variable inside a function though. If it's a global static Visual studio might not be able to show its value. " CreationDate="2010-09-12T17:52:09.010" UserId="865" />
  <row Id="4126" PostId="3737" Score="1" Text="There aren't really simple games of the action RPG type, as they pretty much need all aspects of a game in place. My advise would be take any you like and break it down in the seperate components needed, and build them one by one, starting with the ones that give you the most bang for your buck so you'll see progress. Otherwise you'll be mulling away on support systems and lose interest before you got anything satisfying." CreationDate="2010-09-12T17:54:55.507" UserId="865" />
  <row Id="4127" PostId="3764" Score="1" Text="Programming your own 3D modelling environment is reinventing the wheel.  Use Blender or another modelling program to make your models, and save your programming hours for the actual game." CreationDate="2010-09-12T18:00:10.607" UserId="953" />
  <row Id="4128" PostId="3764" Text="I didn't mean to invent my own 3d modeling environment, I just have to learn how an 3D model file is made... I just meant that I should make an application that doesn't use models at all, just plain stupid cubes or spheres instead of monster and characters. Since I'm learning, why bother ? I just want to jump to the essential, the look doesn't matter at all, since it's usable." CreationDate="2010-09-12T18:08:24.203" UserId="1829" />
  <row Id="4129" PostId="3767" Text="Ah, Blender, right!  We go back a little ways.  Kinda surprised I didn't think of that right off the bat.  Thanks for the reminder!  Has anyone had success loading .blend files?  How is the pipeline as far as memory/CPU usage?" CreationDate="2010-09-12T19:23:23.997" UserId="1400" />
  <row Id="4130" PostId="3770" Text="Great question, all I know is it's used for rendering shadows... But I'll be interested to hear a full explanation of it!" CreationDate="2010-09-12T21:41:24.520" UserId="189" />
  <row Id="4131" PostId="3769" Text="mmmrgbl I have a mac :/ Still can use windows but meh. I don't really know if the Source engine scales well to any game type, looking at alien swarm I would say yes, but I'm not really sure... About unity, the platform seems too directed, I don't like it :x I still wonder about a UDK vs OGRE3d vs irrlicht vs Unity vs panda3d..." CreationDate="2010-09-12T21:45:16.343" UserId="1829" />
  <row Id="4132" PostId="3741" Text="&quot;I'm not sure any real-world implementation of state stacks is nearly equivalent to a pushdown automaton.&quot; What's the difference? Both have a finite set of states, a history of states, and primitive operations to push and pop states. None of the other operations you mention are fundmentally different from that. &quot;Pop two states&quot; is just popping twice. &quot;swap&quot; is a pop and a push. Passing data is outside of the core idea, but every game that uses an &quot;FSM&quot; also tacks on additional data without feeling like the name no longer applies." CreationDate="2010-09-12T22:17:26.830" UserId="160" />
  <row Id="4133" PostId="630" Text="Not sure I would count Golemizer as much of anything, its rather terrible." CreationDate="2010-09-12T23:16:10.310" UserId="395" />
  <row Id="4134" PostId="3737" Text="Define action game, action RPG? Is it like Zelda (action RPG) or like Castlevania Symphony of the Night (action game with RPG elements)? Either way it involves lots of inter related systems in terms of design or programming it will not be an easy task." CreationDate="2010-09-13T02:14:25.293" UserId="919" />
  <row Id="4135" PostId="3764" Text="Then Unity would be great, as it can do stupid cubes and spheres out of the box." CreationDate="2010-09-13T03:02:56.373" UserId="953" />
  <row Id="4136" PostId="3768" Score="2" Text="It's feasible. And it exists. It's called 3ds Max (or XSI, or Blender, or...)." CreationDate="2010-09-13T04:47:49.610" UserId="101" />
  <row Id="4137" PostId="3769" Text="Well, with UDK you won't be coding in C++, as far as I'm aware? As for Ogre vs Unity, it depends what you want to achieve. Unity will allow you to focus on game mechanics (but if you're so inclined you can still do low level things, you can render your models manually, create shaders, read models yourself) where as Ogre will need more work on support systems. So it depends, what do you want to learn/experiment with? In the end, programming is programming and the language is a mere detail, the mindset and knowledge are universal." CreationDate="2010-09-13T05:29:11.753" UserId="865" />
  <row Id="4138" PostId="3769" Text="If you have a MAC then the same applies, just take any XCode sample and start modifying it. Also, in game dev, the right attitude is, &quot;I'll crack it&quot;, and the 'meh I don't know.....' is where many people get stranded. I think you're kinda hitting this bump as we speak and I advise you to put doubts aside and just do something, *anything* is better than being indecisive. Even using the wrong engine will teach you something." CreationDate="2010-09-13T05:32:13.337" UserId="865" />
  <row Id="4139" PostId="3772" Score="3" Text="In other words, it basically has the same function as a real life stencil, masking out parts when applying ink. " CreationDate="2010-09-13T05:34:49.167" UserId="865" />
  <row Id="4140" PostId="3739" Text="Thanks! Really great book. Has a lot to say about game design." CreationDate="2010-09-13T05:52:45.887" UserId="2051" />
  <row Id="4141" PostId="3767" Text="There are lots of exporters/importers for blender. I'm pretty sure you'll find something that fits your need. If not, you can write your own thanks to the python API." CreationDate="2010-09-13T07:04:24.937" UserId="20" />
  <row Id="4142" PostId="308" Text="+1 for XML. Much better than embedding in the code itself, allows for changes without recompiling the code, and is a standard format that can be read by some powerful editors." CreationDate="2010-09-13T08:17:12.657" UserId="962" />
  <row Id="4143" PostId="65" Score="1" Text="I prefer this to straight XML as you can add logic. But I would say the text itself should probably be in XML rather than in the code. (easier to edit, localise to other languages etc)." CreationDate="2010-09-13T09:21:27.373" UserId="119" />
  <row Id="4144" PostId="2935" Text="@secoif - How does the mock get into the containing object in the first place? If the interface doesn't allow for that, you need to change it, at least in C++ and similar languages. Whether the test or the tested-object comes first, if you want to be able to mock the contents you break encapsulation and widen the interface to do so." CreationDate="2010-09-13T09:33:50.647" UserId="1101" />
  <row Id="4145" PostId="3755" Score="1" Text="Re: &quot;It is a bit overkill for the simple &quot;play back this sound&quot; requirement&quot; - I think it's high time that developers moved beyond just &quot;play back this sound&quot;! Few people settle for a graphics API that just allows 2D sprites and I think we need to start demanding more from our audio also." CreationDate="2010-09-13T09:40:56.160" UserId="1101" />
  <row Id="4146" PostId="3004" Score="1" Text="Sadly it's decompilable now via a certain decompiler. So it's bad for reasons of game integrity. " CreationDate="2010-09-13T09:44:41.373" UserId="919" />
  <row Id="4147" PostId="3768" Text="Those are 3D modellers, not game content editors. They have been, shall I say, abused for editing some games but other than throwing something together real quick they are a pain to make actual game levels/worlds with." CreationDate="2010-09-13T10:25:04.493" UserId="490" />
  <row Id="4149" PostId="308" Text="+1 for the link to the excellent SO question that I hadn't seen before. I love the example in that question!" CreationDate="2010-09-13T14:17:36.793" UserId="189" />
  <row Id="4150" PostId="65" Text="if you need localization/easier edit you can wrap the text in a function that writes the enclosed text to a separate file like the tr(QString) function/macro in Qt. http://pepper.troll.no/s60prereleases/doc/linguist-hellotr.html " CreationDate="2010-09-13T15:14:39.807" UserId="1352" />
  <row Id="4151" PostId="3651" Text="The code that manages that DB trigger would be the code Richard is looking for, and is the interesting/reusable part. Moving the constants to a DB rather than the filesystem or another tool doesn't make that code magically appear, and probably just makes it more complicated." CreationDate="2010-09-13T15:20:17.947" UserId="744" />
  <row Id="4152" PostId="65" Text="whats to stop you from using attributes or extra tags in the xml to simulate the logic here?" CreationDate="2010-09-13T15:55:10.137" UserId="1477" />
  <row Id="4153" PostId="3780" Text="I made a few corrections, the most notable replacing &quot;graphs&quot; with &quot;graphics&quot; which is what I believe you meant. Your question is still not entirely clear (e.g. regarding your concern with &quot;maintaining physics for later&quot;) and might be answered by the numerous other questions asking for free art such as: http://gamedev.stackexchange.com/questions/20/where-can-i-find-free-sprites-and-images http://gamedev.stackexchange.com/questions/3541/free-maya-3d-model http://gamedev.stackexchange.com/questions/3234/where-can-i-find-free-to-use-assets-for-rapid-prototyping-closed" CreationDate="2010-09-13T16:25:37.560" UserId="189" />
  <row Id="4154" PostId="3004" Text="*Everything's* decompilable with enough work - the only consensus solution is not to include confidential data in the client software." CreationDate="2010-09-13T16:34:05.233" UserId="165" />
  <row Id="4155" PostId="3780" Text="Thanks Ricket, by &quot;maintaining physics&quot; i meant for example if i use a ball to represent a body that will later be replace with the actual body... if it was an fps game i would have to have some sort of &quot;actual body size with that ball that represents it&quot; or something alike i belive... I've added this to the question." CreationDate="2010-09-13T16:40:44.130" UserId="567" />
  <row Id="4156" PostId="308" Score="13" Text="XML is just a format (and, IMO, a bad one). Really what this answer says is, &quot;Create a small domain language that contains basic logic and flows, but primarily consists of your dialogue, and parse it.&quot; In that general way, I agree with this answer." CreationDate="2010-09-13T17:24:59.410" UserId="1970" />
  <row Id="4157" PostId="3780" Text="For whoever negativated the question, drop a comment otherwise negativating it will be of not help other then showing a coward like person that can't make a point out of it." CreationDate="2010-09-13T17:32:26.367" UserId="567" />
  <row Id="4158" PostId="3781" Text="Thanks for the reply, that is what i was thinking of. Like using a box or a sphere to represent a body or something alike but what I am really concerned here is about the later conversion from whatever I used as placeholder to the actual graphics. For example using a box to represent a person's body what will I have to consider later when I convert it to the actual body, etc." CreationDate="2010-09-13T17:33:59.123" UserId="567" />
  <row Id="4159" PostId="3726" Score="1" Text="@Kylotan The proprietary drivers are a huge joke at best. The performance and OpenGL support is terrible and spotty, especially in ATI's drivers. It seems like their Linux drivers were only created because somebody twisted their arm." CreationDate="2010-09-13T17:46:01.590" UserId="263" />
  <row Id="4160" PostId="3772" Score="2" Text="Almost all devices these days support an 8-bit stencil buffer." CreationDate="2010-09-13T18:01:10.417" UserId="1597" />
  <row Id="4161" PostId="3781" Text="I don't think you would have to consider anything, as long as you treat the box as a body rather than a box." CreationDate="2010-09-13T18:19:21.670" UserId="1156" />
  <row Id="4162" PostId="308" Score="3" Text="Exactly, XML is just the container, you can just as well (and definetely more humand-readable and human-editable) implement this using Lua or other scripting languages." CreationDate="2010-09-13T18:22:03.080" UserId="490" />
  <row Id="4163" PostId="958" Text="+1 for putting documentation prominently up front ... that's where many open source game engines fail" CreationDate="2010-09-13T18:40:16.983" UserId="490" />
  <row Id="4164" PostId="3782" Score="1" Text="There's 'Adventure' for the Atari 2600, which might be even easier, although I am not sure how satisfying it would be. I fondly remember playing it :o)" CreationDate="2010-09-13T18:52:42.537" UserId="865" />
  <row Id="4165" PostId="3767" Text="@bummzack: I'm looking at creating an importer for the .blender format, or should I use some other format?  I've been encouraged to look at .fbx, but I'm unsure what the license for that format is and how many tools can export to that format.  Besides, Maya is VERY expensive while Blender is free and open source, so I would prefer a Blender pipeline.  Any insight?" CreationDate="2010-09-13T19:28:48.207" UserId="1400" />
  <row Id="4166" PostId="3780" Text="If you hover over the down symbol it gives you the default reason people vote down questions.  &quot;This question is unclear or not useful&quot;." CreationDate="2010-09-13T20:33:09.323" UserId="51" />
  <row Id="4167" PostId="630" Text="Ditto, KoL is a browser-based RPG with chat and some other limited player interactions, not reeeeeally what I would call an MMO (at least not when standing next to WoW and friends). On the other hand it is awesome and everyone should try it anyway!" CreationDate="2010-09-13T20:42:48.317" UserId="395" />
  <row Id="4168" PostId="3781" Text="@Prix - later you just put in different visuals and update the collision model if it becomes important for some reason.  Don't worry about later, though; software can be changed." CreationDate="2010-09-13T20:48:02.023" UserId="1780" />
  <row Id="4169" PostId="3755" Text="Sadly, FMOD is very buggy and the developers are slow to respond to issues.  For simple &quot;play this sound&quot; it's fine, but once you start really using it the deficiencies really start to show through." CreationDate="2010-09-13T20:57:05.387" UserId="1780" />
  <row Id="4170" PostId="3780" Text="If i hover over it i will think that most people downvote out of bad faith in most cases those who have a reason will most likely say something not leaving you in the dark !" CreationDate="2010-09-13T21:58:28.707" UserId="567" />
  <row Id="4171" PostId="3781" Text="@dash i got the point i just didnt wanted to have to work it all over once it is done..." CreationDate="2010-09-13T21:59:37.003" UserId="567" />
  <row Id="4172" PostId="3772" Text="Thanks, Chris! I learned something new today!" CreationDate="2010-09-13T22:05:33.917" UserId="160" />
  <row Id="4173" PostId="3781" Text="@Prix the point is that you don't have to work it all over once it's done.  If the initial solution looks fine, just keep it.  You don't need to draw the boxes, you can just use them for the physics.  You don't need to rewrite anything if your eventual character uses the same code as the renderer you write for these primitives." CreationDate="2010-09-13T22:30:02.227" UserId="1780" />
  <row Id="4174" PostId="3780" Text="I think that this is a decent question, undeserving of a negative score." CreationDate="2010-09-13T23:47:33.903" UserId="1780" />
  <row Id="4175" PostId="3781" Text="@dash once again thx." CreationDate="2010-09-14T00:36:23.243" UserId="567" />
  <row Id="4177" PostId="3788" Text="A bit subjective/broad I think, what genre of game are you specifically thinking of? (I don't see an fps and racing game sharing a simple ranking method). Perhaps this should be community wiki-ed and made into a list of algorithms/methods/middleware/whatever?" CreationDate="2010-09-14T03:05:46.460" UserId="1272" />
  <row Id="4178" PostId="3789" Score="3" Text="Great question and I hope it will become a great list. Yay Java! :)" CreationDate="2010-09-14T03:14:10.080" UserId="189" />
  <row Id="4179" PostId="3789" Text="Thanks. I was always wondering how competent Java can be when it comes to game development." CreationDate="2010-09-14T03:17:45.270" UserId="2004" />
  <row Id="4180" PostId="3788" Text="Most ranking systems use wins, lose and match ratios. Then make room for game specific conditions so most methods should work with minor tweaking." CreationDate="2010-09-14T03:18:15.310" UserId="919" />
  <row Id="4181" PostId="3793" Score="1" Text="Thanks for this link. I'm gonna check this out." CreationDate="2010-09-14T03:23:02.207" UserId="2004" />
  <row Id="4182" PostId="3795" Text="Could you provide a link for this?" CreationDate="2010-09-14T03:26:37.757" UserId="2004" />
  <row Id="4183" PostId="3794" Score="1" Text="Shouldn't this be community wiki? Also isn't this a bit unrelated to gamedev =p" CreationDate="2010-09-14T03:36:06.260" UserId="919" />
  <row Id="4185" PostId="2564" Text="Here's more:&#xA;00000001 00000001 3100026F 00000001&#xA;30000112 000000C7 BD869270 3F0372D4&#xA;00000000 BD41F15F 3F11A611 3F522E05&#xA;3E40EF5A 3E17CDF8 3E40993C BF504FBD&#xA;3F0CCC2A BF78001B BE654B6A 3DDA7965&#xA;BD80EB99 3F003679 3C0BDAE1 BD3DD880&#xA;3F112A76 3F528732 3E8EFD04 3E185DD8&#xA;3E3984B8 BF48A923 3F180DA9 BF7854DC&#xA;BE6599AE 3DBF7319 BCD7235C 3F041CCC&#xA;00000000 BF52314E 3F12223D 00000000&#xA;3F727B04 3C22FD80 3E29BCD1 3F7C0367&#xA;3D6FCD12 3E70A826 BCE91707 BF78B921&#xA;BCD7235C 3F008C87 3C28E0F6 BF6B36D8&#xA;3BD28E32 3ECA109F 3F4AEA89 3D894EC0&#xA;BE18A98D 3F7CC7A8 3D57AE4B 3E48D2F6&#xA;B46C577B 3F7B0753 BE3DBAC2 3EF41E67" CreationDate="2010-09-14T04:30:45.497" UserId="1504" />
  <row Id="4186" PostId="3794" Text="Hmm, it might be community wiki. I've always been bad at that, and I err on the side of giving reputation to good answers which of course community wiki eliminates. It's maybe not directly concerning game development, but it's a good question for a community of game developers since I'm specifically asking for game development things to think about or read or do..." CreationDate="2010-09-14T04:56:17.300" UserId="189" />
  <row Id="4187" PostId="3789" Score="4" Text="I highly recommend it. Java as a language has a huge userbase and many great tools (Eclipse and NetBeans IDEs, JUnit for unit testing, the Javadoc standard for documentation, etc.) which gives you a great foundation. There are a few good libraries out there for game development too (LWJGL, JOGL, jMonkeyEngine, Java2D, Java3D, JGame, ...). But most of all, **applets**. And of course I love the challenge of writing games in a language which most people see as inferior (especially to C++ and such)." CreationDate="2010-09-14T04:59:50.913" UserId="189" />
  <row Id="4188" PostId="3795" Text="Done. And added logo as I did to the rest of them. :)" CreationDate="2010-09-14T05:02:05.353" UserId="189" />
  <row Id="4189" PostId="3791" Text="Came here to post this. It's been gaining a lot of momentum lately, despite its simple visuals. +1" CreationDate="2010-09-14T05:37:27.390" UserId="734" />
  <row Id="4190" PostId="3789" Text="+1 for &quot;I love the challenge of writing games in a language which most people see as inferior (especially to C++ and such)&quot; :)" CreationDate="2010-09-14T06:27:17.350" UserId="1286" />
  <row Id="4191" PostId="3789" Score="2" Text="Pretty much anything written for Android?" CreationDate="2010-09-14T06:42:37.297" UserId="653" />
  <row Id="4192" PostId="3767" Text="In most of the cases you won't even have to write your own exporter, since there are already lots of them out there. For example FBX: http://wiki.blender.org/index.php/Extensions:2.4/Py/Scripts/Export/FBX" CreationDate="2010-09-14T06:55:04.503" UserId="20" />
  <row Id="4193" PostId="3789" Text="I was thinking of learning C#/XNA to introduce myself to game development. Because of Ricket's post, I think I'm gonna stick with Java since I'm already comfortable with it." CreationDate="2010-09-14T07:01:47.423" UserId="2004" />
  <row Id="4194" PostId="3794" Score="3" Text="You know there's the age old, ancient and forgotten art of reading books? Y'know, the ones made from trees :&gt;" CreationDate="2010-09-14T07:31:00.520" UserId="1943" />
  <row Id="4195" PostId="3586" Text="I agree on the principle, and maybe Go or D an achieve somthing on this side. But I think only system language can be &quot;standard&quot; in this industry. However, I'm talking about the industry, not the indie side of the video-game domain. I think if you go your own way (not a salary of a big established company) then you have the chance to use whatever you want. But you still need to use the tools asked by constructors when you want to do something on anything other than console. Phones use Java but a lot of C++ is used on more performance-needed applications, on those same phones." CreationDate="2010-09-14T11:21:34.197" UserId="364" />
  <row Id="4196" PostId="3586" Text="In fact I think that as the video-game industry is slow to adopt even the current standard C++, theres good chances that you'll have to wait a lot of years before having anywthing other than C++ on consoles. A shift in way constructors and developers work might happen but it's not really easy to imagine from today." CreationDate="2010-09-14T11:23:36.407" UserId="364" />
  <row Id="4197" PostId="239" Score="1" Text="The Communist Duck&gt; Yeah, indies does Not-So-Massive-Multiplayer-Online-Games ... " CreationDate="2010-09-14T11:24:45.873" UserId="364" />
  <row Id="4198" PostId="3803" Text="I have been wondering about using Qt 4.5, to be honest, though I would like to find out if anyone has any experience with skinning it to be like a in-game environment, or running it on top of say, SDL." CreationDate="2010-09-14T11:35:37.207" UserId="2132" />
  <row Id="4199" PostId="239" Score="22" Text="4000 quests, 3950 involve killing 10 creatures" CreationDate="2010-09-14T12:32:20.510" UserId="1367" />
  <row Id="4200" PostId="357" Text="To be noted that UDK, Unity 3D and Torque are game engines, while Ogre3D is more a rendering engine (as written)." CreationDate="2010-09-14T13:03:37.713" UserId="2134" />
  <row Id="4201" PostId="3794" Text="Think outside the box - exactly *how* is attendance checked? Can you hire a gold-farmer (fellow student) to answer for you? :)" CreationDate="2010-09-14T13:07:41.340" UserId="165" />
  <row Id="4202" PostId="3786" Score="4" Text="So... you're not doing any modelling, and you're not doing any programming - just handing a bunch of pictures to the developers and telling them, &quot;make this game&quot;. If I was the Director, the only rights I'd be offering, would be a *demo copy* for your portfolio. Seriously, if his team needs a project, there's a ton of ideas out there. It would be way easier for him to find a project idea, than for you to find a team of free developers." CreationDate="2010-09-14T13:14:01.307" UserId="165" />
  <row Id="4203" PostId="3810" Text="As I mentioned in another UI question, I have never seen IMGUI scale up to multiple windows, combo boxes, and columned list controls. You hit efficiency walls and API design walls fairly quickly. Unity's current GUI library definitely does not scale well, in performance or features." CreationDate="2010-09-14T13:34:22.187" UserId="744" />
  <row Id="4204" PostId="3810" Text="It might be interesting to note that Unity's own GUI is implemented using the IMGUI system they provide." CreationDate="2010-09-14T13:42:11.060" UserId="187" />
  <row Id="4205" PostId="3810" Text="@Jason: That's a half-truth. The Unity editor (http://unity3d.com/support/documentation/ScriptReference/EditorGUILayout.html) provides many more primitive widgets than the normal GUILayout. You'll also see that those widgets are vastly underpowered compared to a normal GUI library. And frankly if a game had a UI that felt like the Unity editor's does -  in terms of responsiveness, focus behavior, activation rules, etc, not referring to the look - I'd hate it." CreationDate="2010-09-14T14:25:50.140" UserId="744" />
  <row Id="4206" PostId="3788" Text="Are there any patent issues with TruSkill?  Microsoft built it and they're not known to be community friendly." CreationDate="2010-09-14T15:06:55.470" UserId="370" />
  <row Id="4207" PostId="3810" Text="@Joe A fair point if you're developing games in Unity; my intention though was only to point out an example of a more complex IMGUI in action. Since Unity is free, it's quite easy to download and evaluate." CreationDate="2010-09-14T15:55:08.497" UserId="187" />
  <row Id="4208" PostId="3817" Text="I like this solution. The only catch with my setup is that people can conquer each other's cities, so using city distance doesn't work as a wilderness metric. I'd have to come up with another measure for it." CreationDate="2010-09-14T16:11:46.607" UserId="141" />
  <row Id="4209" PostId="3788" Score="2" Text="If you avoid algorithms that _might_ be patented, you're not going to be able to do anything practical. If you know something is patented and use it anyway, you can end up owing more damages if you get sued. So let's assume no, it's not patented - it is trademarked, so don't call it &quot;TrueSkill&quot; unless you're on Xbox Live." CreationDate="2010-09-14T17:03:48.933" UserId="744" />
  <row Id="4210" PostId="3812" Text="Does libRocket renders the GUI elements, or just provide a description? Sorry if this is a dumb question, but the feature list doesn't really state if it does actually render." CreationDate="2010-09-14T17:04:19.463" UserId="2132" />
  <row Id="4211" PostId="3810" Text="IMHO Unity3D's GUI has to be augmented with some third party libraries if you wish to do OOP programming, such as GUIX. However, Unity3D has an annoying bug where you can click through UI elements onto colliders attached to entities. This touted to be fixed in the next release. However, I am thinking of 2D at the moment, and doing 2D in Unity3D requires some hoops to jump through. It's otherwise a good rapid engine for 3D stuff." CreationDate="2010-09-14T17:08:10.573" UserId="2132" />
  <row Id="4212" PostId="3820" Score="1" Text="Just scaling up a sprite doesn't give a true outline" CreationDate="2010-09-14T17:58:48.057" UserId="119" />
  <row Id="4213" PostId="3802" Text="Good answer. Even if the lecture has no relation to gaming, not taking your studies seriously nor paying attention to things are negative traits to bring into the workforce. " CreationDate="2010-09-14T18:06:00.413" UserId="656" />
  <row Id="4214" PostId="3822" Score="8" Text="This kind of shader is surprisingly annoying to write, I've heard (we used it in one of our 3D games and kept running into unsightly edge cases). One thing you might want to consider is encoding the outline directly into the sprite texture with a specific color like (0, 255, 255, 0), and just have the shader transform that color when the sprite is selected. Then the shader is a trivial color change, and you have a high level of artist control over the outline and any details you want." CreationDate="2010-09-14T18:24:55.070" UserId="744" />
  <row Id="4215" PostId="3820" Score="1" Text="I don't think it would, but it would be easy. " CreationDate="2010-09-14T18:30:54.443" UserId="1156" />
  <row Id="4216" PostId="3802" Score="8" Text="It also prevents you from becoming a useless derivative designer. Imagine if Ken Levine had skipped his &quot;useless&quot; philosophy classes, or Will Wright his &quot;useless&quot; architecture or biology classes, if Shigeru Miyamoto had never taken up gardening because it wasn't related to a narrow view of &quot;game design&quot;, or Jordan Mechner never studied the animation techniques of rotoscoping. Assuming game development is learnt primarily in classes titled &quot;game development&quot; is to admit to be an uncreative assembly line worker, with the hope of one day being promoted to uncreative assembly line manager." CreationDate="2010-09-14T18:33:50.883" UserId="744" />
  <row Id="4217" PostId="3820" Score="1" Text="Plenty of things are easy but don't solve the problem. For sprites with any kind of interesting silhouette a scale-up will produce absolute garbage." CreationDate="2010-09-14T18:36:39.903" UserId="744" />
  <row Id="4218" PostId="3820" Text="Scaling up will only look good for solid square or circular objects. If the shape is really wide, or tall, or has gaps it will look really bad." CreationDate="2010-09-14T18:40:18.083" UserId="962" />
  <row Id="4219" PostId="3781" Score="1" Text="Quick add to this: if your whatever-game-object has moving parts, go ahead &amp; toss a box/sphere/whatever in there for that, too, so you can code-up the movement.  So, for example, you might make a person with a sphere as head (that rotates to face another direction), 2 box-arms that go up &amp; down, and 2 box legs that move back &amp; forth, or whatever.  Point being, if &quot;make walk motion&quot; or &quot;nod head&quot; are parts of your game, it's good to be able to see representations of that.  Later, you can replace all your models with &quot;nice&quot; ones, and get the desired effect." CreationDate="2010-09-14T18:53:43.043" UserId="240" />
  <row Id="4220" PostId="239" Score="1" Text="So, what then?  You're saying it'll take OP at least a few months to duplicate that effort...?   ;)" CreationDate="2010-09-14T18:57:20.463" UserId="240" />
  <row Id="4221" PostId="3824" Score="2" Text="Why not just draw the outline sprites first and draw the regular sprites over them? " CreationDate="2010-09-14T19:32:43.060" UserId="1597" />
  <row Id="4222" PostId="3823" Text="I think part of the problem is that the OP says each object can be made of multiple sprites. So I guess the outline has to be the outline of the combined object, instead of having a separate outline around each component sprite.  " CreationDate="2010-09-14T19:34:43.743" UserId="1597" />
  <row Id="4223" PostId="3824" Text="One reason not to do this (or Chris's suggestion) is because it uses twice as much texture memory; another reason is that the artist workflow is crap because you need to update two files every time you change a sprite." CreationDate="2010-09-14T19:34:48.710" UserId="744" />
  <row Id="4224" PostId="3823" Score="1" Text="Chris, it does not have to be the outline of the combined object, and it will work fine for an object made out of multiple sprites. Just do exactly what wkerslake said, but make sure you draw the highlighted sprites behind all of the normal sprites for that object. That way no matter how many sprites an object is made of, the highlight will only use slightly more than double the draw time for that object, which should be a lot less than generating the outlines at rendertime with the combined sprites." CreationDate="2010-09-14T19:56:15.373" UserId="962" />
  <row Id="4225" PostId="3824" Score="2" Text="Well yeah, you ideally wouldn't have two actual sprite assets. If you're using alpha-testing for your sprites you could put the outline into the sprite and give it an alpha slightly higher than your transparent areas. Then by controlling the alpha test reference value you can control whether the outline is visible or not. All I was saying is that if you have 2 versions of the sprites (whether its 2 assets or 2 states of the same asset) you should draw the outline version first, and then the normal version. This way you don't require any fancy shaders, masks, or whatever." CreationDate="2010-09-14T19:56:23.407" UserId="1597" />
  <row Id="4226" PostId="3812" Score="1" Text="It uses an abstract rendering backend.  It's up to the user to define their own.  However, the samples directory has a concrete renderer for Ogre3D, DirectX, and OpenGL." CreationDate="2010-09-14T21:05:12.067" UserId="370" />
  <row Id="4227" PostId="3786" Score="2" Text="-1, how is this not a dupe of http://gamedev.stackexchange.com/questions/3114/who-has-ownership-of-publicly-developed-projects" CreationDate="2010-09-14T21:12:02.660" UserId="51" />
  <row Id="4228" PostId="3830" Text="alot of good considerations. Thanks." CreationDate="2010-09-14T21:23:03.047" UserId="1477" />
  <row Id="4229" PostId="630" Score="2" Text="@coderanger, that actually illustrates my point - why does *every* MMO have to be compared to World of Warcraft? And KoL has gone from one person to eight full-time paid employees, which, by any *reasonable* standard, is a success." CreationDate="2010-09-14T21:27:28.063" UserId="165" />
  <row Id="4230" PostId="3778" Text="This would be sweet in an office environment.  Walk over to talk to an artist, and connect to and start fiddling with the neighboring designer's running game while he's trying to set up some encounters..." CreationDate="2010-09-14T21:30:24.617" UserId="1780" />
  <row Id="4231" PostId="3817" Score="1" Text="I would like this best if there is an in-game reasoning for it, like some kind of calming enchantment in the city that gets weaker as you get further away. If you have player controlled cities you could make it an optional upgrade for them and have an unconquerable neutral city where players start that has this effect." CreationDate="2010-09-14T21:36:52.457" UserId="1477" />
  <row Id="4232" PostId="3820" Score="2" Text="Scaling up will give better results than doing nothing and would also be a useful step along the path to &quot;perfection.&quot;  While the graphical results won't be perfect, if this were for an internal tool it may be Good Enough." CreationDate="2010-09-14T21:58:24.483" UserId="1780" />
  <row Id="4233" PostId="3831" Text="Yes, this is what I wanted to suggest as well. Render the masked sprite 1 pixel to the left, right, top and bottom of the original sprite, under the existing sprite. Many games used this method to outline rendered text, or with only 2 of the 4 positions to create a drop shadow." CreationDate="2010-09-14T22:19:29.443" UserId="865" />
  <row Id="4234" PostId="1380" Score="2" Text="Nope. 'restrict' is far more useful than 'const'. See http://gamedev.stackexchange.com/questions/853/c-low-level-optimization-tips/3118#3118 " CreationDate="2010-09-14T22:19:49.567" UserId="831" />
  <row Id="4235" PostId="3824" Score="1" Text="Chris's idea has merit; in addition having the artist update 2 files (or even the same asset) can be avoided if you produce a tool to generate the alpha for the outline sprites that runs as part of your asset/content pipeline. Texture memory may or may not be a problem, but separate outline sprites should be highly DXT compressible; possibly 1/6th the size of the original texture in video memory and with no fidelity loss." CreationDate="2010-09-14T23:57:59.063" UserId="1232" />
  <row Id="4236" PostId="630" Text="I think the question is more about what defines a genre. &quot;Western MMORPG&quot; is a type of game that is fairly well defined in peoples' minds. To discuss if this is good or not (it isn't) is mostly beside the point. All categories have their gray areas, but you can't just slap a label on something and then complain that others don't share your thoughts on the matter (see also: abstract art). In time, a soupcan can become art, but it has to be the will of the public not of the creator. That said, why is it a problem to call it a browser-based RPG with chat?" CreationDate="2010-09-15T01:02:59.313" UserId="395" />
  <row Id="4237" PostId="3804" Text="I was just looking for an alternative that can be tweaked more easily. Like what Starcraft 2 used. But TrueSkill is a good measure it's just harder to include play measures to the variance. " CreationDate="2010-09-15T01:26:08.263" UserId="919" />
  <row Id="4238" PostId="3834" Text="Everything about design is always a balance =)" CreationDate="2010-09-15T01:29:24.870" UserId="919" />
  <row Id="4239" PostId="3786" Text="Wow, I am going to try and bring this to perspective without insulting programmers and modelers, the way you are doing with artists. An Architect will make a design. He will sketch what he wants. Then he hands these over to the CAD jockeys to turn these pictures into electronic files. He will hand them over to the structural guy, who makes all the proper calculations. He will hand them over to the lighting guy, who makes all the proper layouts. He will hand them over to the civil engineer, to the mechanical, to everyone involved. &#xA;" CreationDate="2010-09-15T04:25:32.480" UserId="1779" />
  <row Id="4240" PostId="3786" Text="After everything is said and done, all these people are simply following the Architect’s creative design, his instructions. Without the design, you have NOTHING!&#xA;&#xA;Your mentality is that any idiot has an idea. Usually when an idiot has an idea, it is an idiotic idea, and not worth the time and effort. There are a lot of idiotic ideas out there, true, but it is those good ones that actually work. Without them, you have NOTHING!&#xA;" CreationDate="2010-09-15T04:25:53.353" UserId="1779" />
  <row Id="4241" PostId="3786" Text="Just to clear the air out, I am providing almost 100 detailed images that include character sheets and turn arounds, environment settings, map layouts, weapons details, and vehicle plans. I am also including a Game Design Document that at this date has over 80 pages of detailed explanations on game play, marketing and storyline. " CreationDate="2010-09-15T04:26:41.463" UserId="1779" />
  <row Id="4242" PostId="3825" Text="The interesting point is that it was the students and the professor who came up to me with the idea. Very few programmers and modelers are actually artists or creatives. The same way that very few artists are technically inclined. They (the university) actually suggested I give a couple lectures on artistic conceptualization." CreationDate="2010-09-15T04:29:25.313" UserId="1779" />
  <row Id="4243" PostId="938" Text="Ardor3d worked great for us!" CreationDate="2010-09-15T04:29:50.877" UserId="2139" />
  <row Id="4244" PostId="3833" Score="1" Text="Very true for most part VC only care about possible returns. That's why there that C in there for capitalist =p" CreationDate="2010-09-15T06:17:47.663" UserId="919" />
  <row Id="4245" PostId="3786" Score="3" Text="There are plenty of people on functional game design teams besides programmers and modellers, including concept artists, systems designers, and producers. One thing there is not on functional game design teams is a guy ranting about how those in the other disciplines are not &quot;creatives&quot;." CreationDate="2010-09-15T08:32:46.813" UserId="744" />
  <row Id="4247" PostId="3741" Text="In a pushdown automaton, the only state that can affect your transition is the state on top. Swapping two states in the middle is not allowed; even looking at the states in the middle is not allowed. I feel like the semantic expansion of the term &quot;FSM&quot; is reasonable and has benefits (and we still have the terms &quot;DFA&quot; and &quot;NFA&quot; for the most restricted meaning), but &quot;pushdown automaton&quot; is strictly a computer science term and there is only confusion waiting if we apply it to every single stack-based system out there." CreationDate="2010-09-15T08:49:09.903" UserId="744" />
  <row Id="4248" PostId="3844" Score="2" Text="&quot;Let's put aside all game development technical restrictions regarding HTML5 for this question (suppose for a moment that HTML5 works just as well as Flash for games).&quot;" CreationDate="2010-09-15T09:45:15.313" UserId="769" />
  <row Id="4249" PostId="3796" Text="I don't think &quot;mitigates&quot; means what you think it means." CreationDate="2010-09-15T11:10:09.977" UserId="744" />
  <row Id="4250" PostId="3844" Score="2" Text="Yeah but you can't put aside the technical restrictions of a technology! That's completely illogical." CreationDate="2010-09-15T11:19:37.033" UserId="119" />
  <row Id="4251" PostId="3844" Score="1" Text="What I mean is the question is about the &quot;code security&quot; of Javascript, not about other features that may be missing or bad." CreationDate="2010-09-15T11:46:37.657" UserId="769" />
  <row Id="4252" PostId="3847" Text="That doesn't answer my question. Raycasting is a geometric technique, why it is implemented in Bullet, but not in Ogre? Why should I load Bullet to do raycasting on an Ogre scene? I guess this has to do with how the scene is represented in Bullet, so why this representation is not implemented directly in Ogre?" CreationDate="2010-09-15T11:54:16.623" UserId="192" />
  <row Id="4253" PostId="3847" Text="I mean, the representation could be a BSP, which is also useful in Ogre for back-to-front polygon sorting in order to do polygon-precise transparencies." CreationDate="2010-09-15T11:55:42.330" UserId="192" />
  <row Id="4254" PostId="3847" Score="4" Text="All you are asking is &quot;Why doesn't OGRE include a physics engine?&quot; or maybe &quot;Why doesn't OGRE include a bad physics engine?&quot; The answer is because plenty of physics engines already exist." CreationDate="2010-09-15T12:21:21.363" UserId="744" />
  <row Id="4255" PostId="3844" Text="Maybe I misunderstood, I just thought the question was &quot;Will the same Flash game business model work for HTML5 games?&quot;, which takes in many different issues. There's no point ignoring some issues as they all inter-relate." CreationDate="2010-09-15T12:21:57.600" UserId="119" />
  <row Id="4256" PostId="3844" Score="1" Text="You're right and you have a good list, but what I meant was to assume we're in a future where HTML5 is further developed. Most of these issues should be fixable with a lot of time and effort, but the fact that the code is open won't change. The particular obstacles I want to consider in your list are viewing/copying/modifying source and assets. What I'm wondering is whether these particular obstacles would stop the Flash business model to move over to HTML5." CreationDate="2010-09-15T12:38:22.440" UserId="2138" />
  <row Id="4257" PostId="3844" Score="2" Text="Oh OK - no, I don't think viewable source alone is a real stumbling block - it doesn't stop millions of other web site and apps. AS3 is still stupidly easy to decompile and there aren't millions of stolen Flash games out there." CreationDate="2010-09-15T12:45:41.990" UserId="119" />
  <row Id="4258" PostId="3843" Text="This is an interesting solution, but this would force developers to write part of their code to be run server-side, which is undesirable. Also, I think the caller can be spoofed in js, can't it?" CreationDate="2010-09-15T13:04:37.030" UserId="2138" />
  <row Id="4259" PostId="3833" Text="Well my friend is handling the business/financial side of things/preparing for questions, which is why I specifically ask for what technical questions might be asked. Thats what I need to focus on/prepare for." CreationDate="2010-09-15T13:21:15.010" UserId="1477" />
  <row Id="4260" PostId="3842" Text="Can a Javascript obfuscator obfuscate as well as a decompiled AS3 code? Say I just want to remove the sponsor's logo and link from the main screen. Is it significantly easier (or possible to automatize) or is it the almost same thing comparing obfuscated js and decompiled swf? If it's almost the same, then I guess there shouldn't be much of a problem for HTML5 games." CreationDate="2010-09-15T13:24:39.863" UserId="2138" />
  <row Id="4262" PostId="3842" Text="That depends on the obfuscator. I have never used one, but in theory they can do the same readibility-destroying things the AS3 compiler does." CreationDate="2010-09-15T13:57:15.190" UserId="769" />
  <row Id="4263" PostId="3843" Text="Unless the server will render the entire screen, removing ads will still be easy. You simply can't force anything on the client PC." CreationDate="2010-09-15T13:57:42.443" UserId="769" />
  <row Id="4264" PostId="3853" Score="2" Text="&quot;a particularly bad garbage collection system (mark-and-sweep)&quot; mark-and-sweep does not inherently stop the world - Java has a concurrent mark-and-sweep collector for example, and Lua used a naive one for a long time - and a lot of the length of the pause can be controlled via a careful generational system. That being said, Go's _is_ stop-the-world mark-and-sweep. But the former, not the latter, is the issue for games. (The Ruby thread had some weird claims about this too.)" CreationDate="2010-09-15T15:02:05.107" UserId="744" />
  <row Id="4265" PostId="3849" Text="You still need some of the code for physical properties (&quot;this is one-sided&quot;, &quot;this causes a sound when collided with&quot;) regardless of whether you use a &quot;not physics engine&quot; or a physics engine, unless your game is really boring. As for the physics simulation code, you will need some of that in order to perform stably when resolving collisions, unless the only thing that happens on collision in your game is death." CreationDate="2010-09-15T15:11:53.103" UserId="744" />
  <row Id="4266" PostId="557" Score="2" Text="Was the snowflake bug ever fixed?" CreationDate="2010-09-15T15:13:27.733" UserId="2149" />
  <row Id="4267" PostId="2069" Score="3" Text="Gimbal lock is actually caused by naive rotation with Euler angles (commonly Tait–Bryan angles: Yaw, Pitch, Roll). Alternative representations like Axis-Angle can also be used to prevent its occurrence. Quaternions however have the benefit of easy interpolation, and are generally preferred for that reason." CreationDate="2010-09-15T15:49:52.017" UserId="187" />
  <row Id="4268" PostId="1576" Text="I would suggest an additional edit of the title to How do you compile Darwinia... instead of does Darwinia compile...  that may more accurately reflect what you are trying to do here and encourage answers to come in." CreationDate="2010-09-15T16:20:21.807" UserId="1477" />
  <row Id="4269" PostId="2645" Score="1" Text="Regarding the 'pay what you want' model, so far I've only seen it applied to games that *already* had measurable sales and public awareness. For instance, [Crayon Physics](http://www.crayonphysics.com/) had a sale on their one-year anniversary, after they had been selling at $20 for a year. It might be a good model for when a game's sales begin dropping, but I really doubt it would work for a startup game." CreationDate="2010-09-15T16:28:40.483" UserId="165" />
  <row Id="4270" PostId="3850" Text="I would advise anyone not familiar with GO to actually follow the link before answering as opposed to just responding based on the given &quot;thoughts&quot; that being said if your answer is generic and not specific to this language then i guess it doesn't matter" CreationDate="2010-09-15T16:36:20.067" UserId="1477" />
  <row Id="4271" PostId="297" Text="Community wiki?" CreationDate="2010-09-15T16:46:38.030" UserId="1156" />
  <row Id="4272" PostId="1592" Text="Downvoting because it uses Python 3, which is a horrible language with no support." CreationDate="2010-09-15T16:49:13.003" UserId="744" />
  <row Id="4273" PostId="3817" Text="Not necessarily a brilliant answer, but a create description of one approach, certainly." CreationDate="2010-09-15T18:09:44.140" UserId="1454" />
  <row Id="4274" PostId="3849" Score="2" Text="We used the GPU on the (first) PlayStation to do our raycasts.  Render the scene real quick from the &quot;shooter&quot;, each entity a different color.  Whatever color the center pixel is tells you the thing you hit...  :)" CreationDate="2010-09-15T18:48:05.060" UserId="1780" />
  <row Id="4275" PostId="3851" Score="1" Text="This returns the same data that the OP's test does, it just computes it differently.  (Note the divide-by-2 instead of a variable named 'double...')" CreationDate="2010-09-15T18:52:14.630" UserId="1780" />
  <row Id="4276" PostId="3855" Score="4" Text="I like the last bullet point here! I'd love to be able to do that." CreationDate="2010-09-15T19:55:39.700" UserId="1477" />
  <row Id="4277" PostId="1592" Score="8" Text="You are downvoting not because it's a bad book, but because in your opinion the language is horrible. Am i missing something?" CreationDate="2010-09-15T20:12:41.473" UserId="1312" />
  <row Id="4278" PostId="3847" Text="This is a bold statement, and not true. If you need raycasting and collision testing you need a collision detection engine. If you want the to simulate rigid bodies that respond to collisions you need a physics engine. The only reason people use physics engines for collision testing is that (a)you can have it resolve collisions for you to prevent penetrations and (b) since collision detection is such a huge and important part of any physics simulation the implementation is likely more optimal than something you could whip up yourself." CreationDate="2010-09-15T20:25:38.200" UserId="865" />
  <row Id="4279" PostId="3851" Text="My problem is that when my bigger box (32x32) collides with a smaller one (16x16) it moves on the y for a bit but also on the x, which is incorrect." CreationDate="2010-09-15T21:10:56.913" UserId="662" />
  <row Id="4280" PostId="3853" Text="The current Go GC system seems to be something of a placeholder:  &quot;The current implementation is a plain mark-and-sweep collector but a replacement is in the works&quot; (http://golang.org/doc/go_lang_faq.html#garbage_collection).  Replacement options have been discussed; I'm not aware of any firm decisions on the matter." CreationDate="2010-09-15T21:34:54.683" UserId="369" />
  <row Id="4281" PostId="3853" Score="1" Text="Joe, thanks for clarifying! I wasn't aware of that. And yeah TSomKes, I did see that, so we can keep our hopes up that Go will implement a better garbage collector at some point." CreationDate="2010-09-16T01:50:45.317" UserId="189" />
  <row Id="4282" PostId="3851" Text="@dash-tom-bang Ah, I see it now! Very interesting..." CreationDate="2010-09-16T02:10:45.000" UserId="189" />
  <row Id="4283" PostId="3805" Text="&quot;simplest most effective&quot; is just a cheat to prevent being forced to make this a community wiki." CreationDate="2010-09-16T06:16:46.940" UserId="450" />
  <row Id="4284" PostId="3850" Text="I wonder if you can make games in go (the game) :P" CreationDate="2010-09-16T07:02:05.940" UserId="1004" />
  <row Id="4285" PostId="211" Text="It's Lua, not LUA. :)" CreationDate="2010-09-16T07:27:55.147" UserId="1004" />
  <row Id="4286" PostId="3847" Text="@Kaj: Like I said unless you are making a game where the only response to collision is deletion, here's where the asker's thought process invariably takes you: &quot;I don't need physics, just collisions and raycasts!&quot; -&gt; &quot;But my objects move, so I need something aware of all the objects' motions each frame or I'll get tunnelling&quot; -&gt; &quot;Oh crap I have penetration, now I need the collision code to move objects&quot; -&gt; &quot;Now it's not stable, I need it to manage forces and inertia, not just flat-out move stuff&quot; -&gt; This is a rigid-body physics engine." CreationDate="2010-09-16T09:26:55.440" UserId="744" />
  <row Id="4287" PostId="3869" Text="So which technologies do they use?" CreationDate="2010-09-16T09:35:57.160" UserId="192" />
  <row Id="4288" PostId="3862" Text="This should be marked as Community Wiki, and your own suggestions should be posted as answers, not in the question." CreationDate="2010-09-16T09:41:50.013" UserId="744" />
  <row Id="4289" PostId="1576" Text="@lathomas64 you're right, done" CreationDate="2010-09-16T10:09:58.943" UserId="252" />
  <row Id="4290" PostId="3862" Text="Really? I wasn't sure this would be that subjective." CreationDate="2010-09-16T11:03:06.983" UserId="302" />
  <row Id="4291" PostId="3862" Text="Also, I didn't mean my own points as an actual answer. More of a list of simpler points, when I'm asking for a bigger picture of the issue. If this was a community wiki though, it would of course make sense to have that as an answer. I'm not convinced that's right though." CreationDate="2010-09-16T11:04:58.420" UserId="302" />
  <row Id="4292" PostId="3862" Text="I wanted to note that I may be misusing the term &quot;digital painting&quot;. I'm using it as a catch-all term for various forms of high-res art that you would do with a tool like Photoshop or Gimp. Bitmap images, not edited pixel by pixel." CreationDate="2010-09-16T11:05:57.110" UserId="302" />
  <row Id="4293" PostId="3852" Text="Your last paragraph sums it very well thank you ! I also read that kind of allusion from an interview I can't exactly remember. To say it simply, we need graphic acceleration, just because graphics need a lot of computationnal power. And since most operations in graphics can be simplified because they are linear, unlike unpredictable algorithms, we build special chips !" CreationDate="2010-09-16T11:07:30.213" UserId="1829" />
  <row Id="4294" PostId="3871" Text="I find it interesting that you mention animating digitally painted images would be challenging unless you can match the style in 3D, but then go to mention that animation in 3D is also time-consuming. Is it just that animation is hard and/or time-consuming in general?" CreationDate="2010-09-16T11:07:40.790" UserId="302" />
  <row Id="4295" PostId="3858" Text="Thanks, but what tuts ? I don't really know a tutorial about making an ugly 3d engine..." CreationDate="2010-09-16T11:26:53.043" UserId="1829" />
  <row Id="4296" PostId="3862" Text="It's not subjective, but you are looking for a list of answers, not a single one." CreationDate="2010-09-16T11:35:40.510" UserId="744" />
  <row Id="4297" PostId="1576" Score="2" Text="@Martin, I'm always a little hesitant to follow a license that comes down to &quot;if you pay us money and do a bunch of work, we might permit you to sell your own work, ask us later.&quot;" CreationDate="2010-09-16T11:50:39.633" UserId="323" />
  <row Id="4298" PostId="3869" Text="Joe has mentioned specific types of algorithms used, if that's what you mean by technology." CreationDate="2010-09-16T12:53:01.637" UserId="2022" />
  <row Id="4300" PostId="3858" Text="I hesitate to recommend a particular site or tutorial since I haven't really kept up with them recently.  I notice http://gamedev.stackexchange.com/questions/1128/what-is-the-best-way-to-learn-open-gl was linked in your question, so I would recommend checking that out." CreationDate="2010-09-16T14:34:21.073" UserId="2150" />
  <row Id="4301" PostId="3881" Text="I guess I am more concerned about a CRON job that runs every minutes updating the data of a few hundred users all at one time." CreationDate="2010-09-16T15:57:23.673" UserId="2132" />
  <row Id="4302" PostId="559" Text="For me, RakNet made running a UDP connection for my game engine extremely easy. It has many options for how you want to send your packet ie. how to order them, should the packet be resent if dropped etc." CreationDate="2010-09-16T16:07:14.297" UserId="1700" />
  <row Id="4303" PostId="3847" Text="Hmmm, from his/her question I assumed he was asking 'if I only need raycasting or coldet', say for object picking or some sort of collection game, or heck a shooter where every collision if fatal. In that case no physics are needed at all, although in many instances, if you can't get away with sphere/sphere I'd opt to abuse a physics engine for that anyhow." CreationDate="2010-09-16T16:27:50.273" UserId="865" />
  <row Id="4304" PostId="3862" Text="You're right. I guess in an ideal world there would be a graphics god who could give an all-encompassing answer, but that's probably not actually going to happen." CreationDate="2010-09-16T16:31:11.347" UserId="302" />
  <row Id="4305" PostId="3862" Text="What's more, we already have three great answers but I can't accept one because they all touch on different areas." CreationDate="2010-09-16T16:33:14.743" UserId="302" />
  <row Id="4306" PostId="3888" Text="Definitely the case.  For example, I've come across two Go/SDL projects, one of which seems to have been abandoned.  I've found a bare handful of (relatively small) games that use either of them." CreationDate="2010-09-16T17:11:19.960" UserId="369" />
  <row Id="4307" PostId="3857" Text="You don't handle d1 or d2 equalling zero.  Beyond that, why did you do X math and assign it to Y?  I don't think you're getting the data that you want to get, which could explain why you're seeing behavior you don't want.  -- The &quot;check against the diagonals&quot; idea is clever, now you just need to implement it correctly.  :)" CreationDate="2010-09-16T17:44:10.773" UserId="1780" />
  <row Id="4308" PostId="3881" Score="1" Text="An update to several hundred datasets once in a minute is no problem for a modern Database. I don't know how your queries look like, but a single 'UPDATE' call should still perform nicely even with thousands of affected rows. " CreationDate="2010-09-16T19:01:36.397" UserId="20" />
  <row Id="4309" PostId="3848" Score="1" Text="I like the alternative perspective presented here, viewing the code as an additional salable asset." CreationDate="2010-09-16T19:23:47.953" UserId="37" />
  <row Id="4311" PostId="3786" Text="I agree. Everyone has to be creative to make it work...I am just sick on how programmers or modelers here tend to simplify the work of the artists. &quot;oh, you just make pretty pictures&quot;. It is annoying and I am pretty sick of it. " CreationDate="2010-09-16T21:32:47.093" UserId="1779" />
  <row Id="4312" PostId="3892" Score="1" Text="This seems less of a p2p setup and more of an impromptu server/client." CreationDate="2010-09-16T22:04:10.240" UserId="370" />
  <row Id="4313" PostId="3897" Score="1" Text="I'd say 2 minutes are even too long. 1:00 to 1:30 is more than enough. The other thing is: show the best stuff you've got." CreationDate="2010-09-16T22:05:15.170" UserId="908" />
  <row Id="4314" PostId="2812" Text="I can only discourage from Hiero. It was always a few pixels off when I used it. Tested with several fonts. But I think there's no other OSX solution." CreationDate="2010-09-16T22:15:16.747" UserId="908" />
  <row Id="4315" PostId="3896" Text="Although the question isn't about whether or not player vs mob/player collision is bad game design, I would suggest looking at games like Darkfall Online where everything is solid. It adds a new dimension to gameplay and allows you to do very interesting things with the game. I would not worry about players blocking things like banks in my game because there will always be a small gap where players can see through to open the object." CreationDate="2010-09-17T02:24:50.967" UserId="1700" />
  <row Id="4316" PostId="3908" Text="On the other hand, if you're just going to hardcode stuff on a small indie project to play with a new language, worrying about the &quot;toolchain&quot; is overrated." CreationDate="2010-09-17T09:57:00.843" UserId="744" />
  <row Id="4317" PostId="3899" Score="1" Text="This does actually require some understanding of complex mathematics in some cases. Consider earning interest on money - adding 1% interest once per month is not the same as adding 12% interest once per year. Second example, if the chance of an event happening in a given minute is 10%, the chance of it happening after 10 minutes is not 100%. Interestingly this is just a very slow demonstration of the physics problems people see in other games, and the same method can be used to address them, ie. use a fixed timestep and run it as often as needed to 'catch up'." CreationDate="2010-09-17T10:12:40.920" UserId="1101" />
  <row Id="4319" PostId="3778" Score="1" Text="I don't understand the benefit of having it on your phone rather than on the computer you are actually doing development with." CreationDate="2010-09-17T12:21:50.190" UserId="744" />
  <row Id="4322" PostId="3899" Score="5" Text="Kylotan, I wouldn't class compound interest and multiple probability chances as complex mathematics. :P" CreationDate="2010-09-17T15:43:37.523" UserId="1156" />
  <row Id="4323" PostId="3912" Text="I recommend checking out this offer from Unity. http://unity3d.com/education/" CreationDate="2010-09-17T17:26:08.120" UserId="14" />
  <row Id="4324" PostId="3132" Text="@Ricket - I agree - all 4 dynamics are in use at Stack Exchange." CreationDate="2010-09-17T17:42:17.707" UserId="2179" />
  <row Id="4325" PostId="3131" Text="Great question - I would **love** to know the answer..." CreationDate="2010-09-17T17:44:15.393" UserId="2179" />
  <row Id="4326" PostId="3912" Text="I am going to research the Unity3d platform this weekend... I hadn't even considered mobile development... but that may ever more practical and relevant... compared to PC/Console gaming." CreationDate="2010-09-17T18:30:12.000" UserId="1875" />
  <row Id="4327" PostId="3141" Text="@Ami - I think **evolution** is part of the progress bar and / or influence / status." CreationDate="2010-09-17T20:14:00.823" UserId="2179" />
  <row Id="4328" PostId="3918" Text="Is there any tool that you personally recommend (there are tons of these programs out there). Will I have to start from scratch or can these map editors load a png and then I can just define where my tiles will be?" CreationDate="2010-09-17T20:33:35.343" UserId="2039" />
  <row Id="4329" PostId="3924" Text="The only brick and mortar I found the wireless controller at was BestBuy." CreationDate="2010-09-17T21:49:23.923" UserId="891" />
  <row Id="4330" PostId="3912" Score="1" Text="Unity is not restricted to mobile." CreationDate="2010-09-17T21:58:46.277" UserId="1780" />
  <row Id="4331" PostId="3920" Text="I don't understand exactly what you mean, could you provide a bit more detail on your objective?" CreationDate="2010-09-17T21:59:36.947" UserId="1198" />
  <row Id="4332" PostId="3924" Text="The wireless controller adapters are not widely sold at all.Be aware that they fail easily too. At least they used to, not sure if they've fixed them in subsequent production batches." CreationDate="2010-09-17T22:05:06.830" UserId="1352" />
  <row Id="4333" PostId="3912" Score="4" Text="I would suggest not using an engine what so ever.  If you really want to teach the basics, camera control, input handling, game loop, collision detection, etc.  You should actually have your students implement this stuff!  Unity and even XNA abstract away all the nitty gritty details about these tops.  Real collision detection is not as simple as adding a Capsule Collider component, sigh." CreationDate="2010-09-17T22:19:20.923" UserId="891" />
  <row Id="4334" PostId="3794" Text="Poor you! I usually programmed on my own pet projects during the programming lectures. " CreationDate="2010-09-17T22:55:41.537" UserId="1352" />
  <row Id="4335" PostId="3932" Text="Awesome explanation. Now I picture this as more of a function where you input some vectors and get a new representation of that vector. A scale in my head is &quot;what if I shrunk down those basis vectors in that matrix&quot; so now I would get a shrunken image because those basis vectors are shrunk down as if I did that to the local space's x and y coordinates. So everything is the same in local space and this is more of a representation rather than a change. " CreationDate="2010-09-18T06:16:26.610" UserId="2039" />
  <row Id="4336" PostId="3933" Text="Yup, now I get it. Those basis vectors act as &quot;template&quot; axis for you to mess around with, as if you were actually committing real changes to the local x and y axis. Whatever output you get is what would have occurred in the local x and y axis (whatever you define your basis vectors to be) and the output goes into the world matrix. Thanks." CreationDate="2010-09-18T06:18:11.707" UserId="2039" />
  <row Id="4337" PostId="3937" Score="4" Text="This sounds suitably specific that you might want to invoke a lawyer." CreationDate="2010-09-18T10:44:50.937" UserId="395" />
  <row Id="4338" PostId="3937" Text="Oh. I thought there would be a simple answer, since I'm using an unofficial...copy? of the music, then it could be a simple 'yes, anything to do with it is copyright you can't use', 'it's copyright but it's non-commercial so you just acknowledge them', or 'do what you want'." CreationDate="2010-09-18T10:50:44.123" UserId="1156" />
  <row Id="4339" PostId="3937" Score="2" Text="No one on this site is in a position to offer specific legal advice as far as I know. Someone could make general statements about IP law, fair use, etc etc, but you are asking something very specific that would probably require some decent case law research to answer with any degree of certainty. If you want to be safe, why not just shoot an email to the author? If they give you an okay, you can do whatever you want." CreationDate="2010-09-18T11:13:38.460" UserId="395" />
  <row Id="4340" PostId="3937" Text="Ok, thanks. I think I'll just play it safe." CreationDate="2010-09-18T11:21:15.683" UserId="1156" />
  <row Id="4341" PostId="3919" Text="I think you make a valid point and I am asking for an objective answer on something that is probably subjective.  " CreationDate="2010-09-18T12:23:09.517" UserId="262" />
  <row Id="4342" PostId="3007" Text="C# is also cross-platform (Moonlight, ECMA standard, ...), it's just not as cross-platform as Java... But C# works fine on most Windows, Linux, Mac OS X systems; why would one play games outside that box? See also: http://balder.codeplex.com/ and http://kit3d.codeplex.com/" CreationDate="2010-09-18T13:06:14.957" UserId="158" />
  <row Id="4343" PostId="3183" Text="Gameplay! I want to game, not watch a movie... I hate it when trailers are released that only show story and nothing of the actual gameplay, rather have something that works neat whole the time than is buggy half of the time. If you want story, try to work it into the gameplay... Avoid too much trailers or times that the player has to wait, or allow him to skip those without losing details that are needed to understand and complete the game." CreationDate="2010-09-18T13:19:43.507" UserId="158" />
  <row Id="4344" PostId="3881" Text="And in what world a cron job is considered &quot;simple&quot;? If you're not a sysadmin you'll likely get mad just at looking at its configuration file..." CreationDate="2010-09-18T14:10:23.413" UserId="2188" />
  <row Id="4345" PostId="3912" Score="1" Text="Instead of Visual C# Express Edition, consider using the full Visual Studio Professional 2010 (with XNA 4.0 of course). Students can get it free from Microsoft's Dreamspark site: http://www.dreamspark.com/ [sidenote, I'm getting a security error in Chrome but Firefox is fine; yes it's a real Microsoft site, I promise]" CreationDate="2010-09-18T14:41:30.717" UserId="189" />
  <row Id="4347" PostId="3918" Text="@Ilya, Tiled, which @Christopher recommended, does just that, takes a bitmap and uses it for tiles. Give it a try, it's a nice program." CreationDate="2010-09-18T18:35:20.497" UserId="165" />
  <row Id="4348" PostId="3932" Text="Exactly, there is a transformation function from local to world space and applying these transformations only affects this function, not the object itself." CreationDate="2010-09-18T18:42:31.650" UserId="2187" />
  <row Id="4349" PostId="3936" Text="We had floating point precision issues in some of the large STO zones during development. I don't know what became of them. It may not be top priority, but it does need to be considered early enough to actually make levels." CreationDate="2010-09-18T19:54:36.530" UserId="744" />
  <row Id="4350" PostId="3938" Text="Double precision quickly incurs huge performance and memory benefits. (x, y, z, zone) is 16 bytes; (x, y, z) doubles will be at least 24. You can't do fast math on them, and you can't use them on a graphics card." CreationDate="2010-09-18T19:57:40.377" UserId="744" />
  <row Id="4351" PostId="807" Text="Take a look at a SlashDot article from today on Learning By Playing that might have some good links for you: http://news.slashdot.org/story/10/09/18/1353218/Learning-By-Playing" CreationDate="2010-09-18T20:05:51.703" UserId="290" />
  <row Id="4352" PostId="3943" Text="That seems to be a very goo answer ! Thanks ! I would have wondered if today's game would use limbed numbers like gmp's integers do." CreationDate="2010-09-18T20:24:57.210" UserId="1829" />
  <row Id="4353" PostId="3825" Text="In any case you still have to convince them to give you ownership. It still stands that you are by yourself and the team (5+ people?) is much larger than you." CreationDate="2010-09-18T20:28:18.027" UserId="656" />
  <row Id="4354" PostId="2791" Text="Any luck getting started?  It has been over a month and I was wondering how your project was progressing." CreationDate="2010-09-18T20:56:50.810" UserId="290" />
  <row Id="4355" PostId="3938" Text="Well, Fermi cards can use double precision ;) But yeah, the chunked approach is what the answer suggests anyway." CreationDate="2010-09-18T22:35:28.343" UserId="1352" />
  <row Id="4356" PostId="3007" Score="3" Text="TomWij, please consider adding your own answer instead of trying to attack mine. I'm sure Silverlight has its own pros which should be spelled out in detail. For example, just as I pointed out the Eclipse IDE, Visual Studio is a wonderful IDE too. But your comment is a weak argument; Moonlight greatly lags behind Silverlight (Silverlight 4 released 5 months ago and Moonlight is still working on 3), and the two projects you pointed to are both in alpha status." CreationDate="2010-09-18T23:34:58.033" UserId="189" />
  <row Id="4357" PostId="3881" Text="The world of webhosts, where they don't (usually) give you SSH access so they need to provide an easy interface to Cron. My webhost (Lunarpages) uses Cpanel, and I find it quite easy to use: http://img822.imageshack.us/img822/7022/easycron.png" CreationDate="2010-09-18T23:43:01.600" UserId="189" />
  <row Id="4358" PostId="3944" Score="2" Text="There are languages without capitalisation and almost without punctuation, so if you consider grammar excusable, why not those?" CreationDate="2010-09-19T00:00:19.703" UserId="2188" />
  <row Id="4359" PostId="3813" Score="1" Text="http://gamebalanceconcepts.wordpress.com/ &lt;-- excellent course, not strictly about PvP but you'll find it interesting" CreationDate="2010-09-19T00:01:45.103" UserId="2188" />
  <row Id="4360" PostId="308" Score="1" Text="XML is expensive to parse and takes up A LOT of memory.  It's fine to use it as a storage format, but I'd write utility that converts the dialog trees to a binary format that is used at runtime.  If your on a PC and don't care about your memory usage it might be fine, but on any other platform the memory cost will hose you." CreationDate="2010-09-19T00:44:11.143" UserId="2162" />
  <row Id="4362" PostId="3802" Text="Aren't you assuming Will Wright thought biology and architecture was tedious, but because he sat through it anyway he became a good game designer? I don't buy that. I think Wright thought architecture and biology was interesting, and I think that if he found himself in a tedious class, he'd day dream and sketch, and that's why he's a good game designer." CreationDate="2010-09-19T13:28:45.147" UserId="1525" />
  <row Id="4363" PostId="3951" Score="1" Text="nitpick: MB, not MG" CreationDate="2010-09-19T13:50:18.983" UserId="2188" />
  <row Id="4364" PostId="1360" Score="1" Text="What I think would be neat if there is a repository of examples showing how common data structures and algorithms can be used for game logic. One of the more complicated ones tend to be table-top RPGs and war-games, for example Warhammer 40K. Certain units have the abilities to change dice roll, or change the outcome depending on player's input." CreationDate="2010-09-19T15:10:49.347" UserId="2132" />
  <row Id="4366" PostId="3899" Text="If your understanding of calculus is ok, then sure, it's not complex. But these things don't work with &quot;just multiply the production rate by the elapsed time&quot; and it's important to highlight that." CreationDate="2010-09-19T16:53:48.610" UserId="1101" />
  <row Id="4367" PostId="3949" Text="This is an interesting starting point to explore the concept for a custom solution indeed, thanks for digging it up!" CreationDate="2010-09-19T17:50:12.860" UserId="921" />
  <row Id="4369" PostId="3948" Score="1" Text="WCF supports duplex connections (after the connection is open, either the client or the server can send messages to each other). It can also handle different protocols (TCP + HTTP) at the same time without any extra effort." CreationDate="2010-09-19T20:41:55.153" UserId="2193" />
  <row Id="4370" PostId="3937" Score="1" Text="I'm voting to close because I think this is off-topic and a dangerous precedent. We are not lawyers, this is not legal advice, and you cannot get good legal advice here. Aside from that, it is only peripherally related to game development." CreationDate="2010-09-19T21:44:08.943" UserId="744" />
  <row Id="4372" PostId="3942" Text="It would be nice if whoever downvoted this, also added a comment explaining *why* - is there something *wrong* in the answer? " CreationDate="2010-09-20T00:20:53.823" UserId="165" />
  <row Id="4373" PostId="3899" Text="It's a valid point. But I would hope that anyone implementing non-linear resource production in their games understands how it works ;)" CreationDate="2010-09-20T01:53:48.047" UserId="288" />
  <row Id="4374" PostId="3959" Text="Please read my edit. You must not have noticed it but this is indeed a tutorial!" CreationDate="2010-09-20T02:20:32.833" UserId="189" />
  <row Id="4375" PostId="3608" Text="On my &quot;artificial&quot; comment maybe it's better to say needless or excessive repetition. " CreationDate="2010-09-20T02:57:06.957" UserId="919" />
  <row Id="4376" PostId="3599" Text="This doesn't help much your just punishing or forcing player into another action instead of eliminating the actual problem. But variety comment is usually a good solution i.e. Batman Arkham Asylum did this well." CreationDate="2010-09-20T02:58:08.640" UserId="919" />
  <row Id="4377" PostId="3920" Text="Is this something like a matchmaking outcome prediction mechanism?" CreationDate="2010-09-20T03:08:23.430" UserId="919" />
  <row Id="4378" PostId="3961" Text="possible duplicate of [Where can I find free sounds for my game?](http://gamedev.stackexchange.com/questions/8/where-can-i-find-free-sounds-for-my-game)" CreationDate="2010-09-20T08:39:47.490" UserId="744" />
  <row Id="4379" PostId="3956" Text="Thanks for the last link about scrollRect. This sentence in particular answered my question: &quot;Vector masks are very inefficient in Flash, because the whole DisplayObject is rendered, not just the visible portion.&quot;" CreationDate="2010-09-20T09:52:55.467" UserId="1705" />
  <row Id="4380" PostId="3965" Text="It depends entirely at what the defined actions will be. But the problem is it's hard to define quantifiable social actions." CreationDate="2010-09-20T10:33:58.507" UserId="919" />
  <row Id="4382" PostId="3961" Text="If all you are looking for is a wrong sound exactly like the one in brainbuddies, I'd vote to close as &quot;too localized&quot;." CreationDate="2010-09-20T10:52:29.913" UserId="744" />
  <row Id="4383" PostId="3953" Score="1" Text="I was hoping I wouldn't have to..." CreationDate="2010-09-20T11:01:34.190" UserId="1705" />
  <row Id="4384" PostId="3942" Text="Dunno why you were downvoted, but I've just upvoted you as I can't see anything inaccurate here." CreationDate="2010-09-20T12:34:16.297" UserId="1101" />
  <row Id="4385" PostId="3969" Score="3" Text="There's at least three questions here, and I think the first two are too general / subjective to answer. The third one, &quot;What platforms should educational games target?&quot;, may be appropriate by itself." CreationDate="2010-09-20T12:43:07.420" UserId="744" />
  <row Id="4386" PostId="3942" Text="Thanks, @Kylotan (and others). I suspect it was because my answer was, &quot;no, he can't use the music&quot; :) Hey, I'm trying to *help* the OP by keeping him out of legal trouble - I'm not the one passing draconian copyright laws. :)" CreationDate="2010-09-20T13:07:47.837" UserId="165" />
  <row Id="4387" PostId="3971" Text="IDGA also has a games edu mailing list." CreationDate="2010-09-20T13:42:25.830" UserId="370" />
  <row Id="4388" PostId="3965" Text="I don't see any possible satisfying solution. Even if you gave &quot;prizes&quot; that bear no in-game power, and even if you gave them to selected users such as &quot;you make a *contest* in the forum, who wins gets the prize&quot;, it would still screw the results: people would vote who they want to get the prize instead of voting who did the best work." CreationDate="2010-09-20T14:36:54.087" UserId="2188" />
  <row Id="4389" PostId="3894" Text="What are you using as worldTransform?" CreationDate="2010-09-20T14:49:53.277" UserId="192" />
  <row Id="4390" PostId="3968" Text="'like with like'  has been an issue in game design since DnD (before?).  It's much easier to reward players for killing things than it is to reward players for making the game richer." CreationDate="2010-09-20T14:59:07.737" UserId="370" />
  <row Id="4391" PostId="3968" Text="Whether D&amp;D rewards like with like is entirely up to the quality of your DM. D&amp;D per se only prescribes combat rules and combat rewards; if your DM invented social rules but not social rewards, that's a crappy DM, not D&amp;D's fault." CreationDate="2010-09-20T15:41:51.890" UserId="744" />
  <row Id="4392" PostId="1739" Text="Depending on the size and popularity of the title, a sitelock could easily prevent all actual users from stealing it. Only if the game becomes very popular will this ~DRM be circumvented." CreationDate="2010-09-20T17:06:44.530" UserId="1198" />
  <row Id="4394" PostId="3982" Text="I realize i am finding directional vectors, but what if none of my vectors contain a zero component" CreationDate="2010-09-20T17:26:52.917" UserId="2213" />
  <row Id="4395" PostId="3967" Text="I would also use the x and y speed from the node to affect the player. Example 1: platform moves really fast up and stops, player has upward momentum and is launched. Example 2: platform is moving down slightly slower than the player falling at a deadly speed. The platform should be safe to land on instead of *SPLUT*" CreationDate="2010-09-20T17:46:57.537" UserId="962" />
  <row Id="4396" PostId="1170" Text="libRocket has recently gone fully open source under the MIT license with no licensing fees." CreationDate="2010-09-20T18:12:00.940" UserId="2141" />
  <row Id="4398" PostId="3984" Text="Thanks so much! This is what i was going for." CreationDate="2010-09-20T18:59:25.847" UserId="2213" />
  <row Id="4399" PostId="1733" Score="2" Text="don't forget to check for no &quot;www&quot; and simetimes you might have to check for &quot;https&quot;. You might have to also watch out for other subdomains. This is not a good solution in my opinion." CreationDate="2010-09-20T20:27:22.577" UserId="1163" />
  <row Id="4400" PostId="3988" Text="I know this is really besides the point but in your example would a monster of species 1 with a levle 26+ never use slash?" CreationDate="2010-09-20T20:37:22.130" UserId="1477" />
  <row Id="4401" PostId="3988" Text="Yeah, but by then the player should have a higher defense stat, making Slash an ineffective attack. This is all about Balance, no?" CreationDate="2010-09-20T20:38:30.400" UserId="2216" />
  <row Id="4402" PostId="3988" Text="Rather than using Level 1 and Level 100, couldn't I have a Stat class, do BaseStat and MaxStats, and then have a global monster level cap?" CreationDate="2010-09-20T21:15:02.760" UserId="2216" />
  <row Id="4403" PostId="3965" Score="1" Text="@ Lo'oris If the context is social actions I don't think that is contrary to the overall intended goal if people base who the vote for on social interactions." CreationDate="2010-09-20T21:50:22.463" UserId="1477" />
  <row Id="4404" PostId="3982" Text="The zero component is the edge case for the second part of my post (Switching two components and negating one). The only difference between my answer and the others is that this vector is for sure on the plane already but requires a check that you aren't switching or negating 0s." CreationDate="2010-09-20T22:12:46.200" UserId="2187" />
  <row Id="4405" PostId="3950" Text="Physics.IgnoreCollision works with CharacterControllers, thanks." CreationDate="2010-09-20T22:18:54.270" UserId="452" />
  <row Id="4406" PostId="3613" Text="This question doesn't directly pertain to game development, and you would most likely get better answers at Stack Overflow http://www.stackoverflow.com/" CreationDate="2010-09-20T22:22:01.800" UserId="189" />
  <row Id="4407" PostId="3959" Text="That's correct i am sorry i was in rush when i replied and just gave it a look and didnt noticed the right side menu i was thinking it would be something in the body of the page but there wasnt anything and at the left side all i saw was the book etc, which made me come too fast to a conclusion, thanks for the update and to the upvotes i can now reward you aswell :)" CreationDate="2010-09-21T01:32:31.023" UserId="2168" />
  <row Id="4408" PostId="3978" Text="thankyou, but I found out the solution sometime back." CreationDate="2010-09-21T04:05:32.447" UserId="1251" />
  <row Id="4409" PostId="3997" Text="This is the issue tracker for the Comet support (since I couldn't embed the link in the actual post just yet-- need more reputation points apparently): http://code.google.com/p/googleappengine/issues/detail?id=377" CreationDate="2010-09-21T05:13:30.473" UserId="2220" />
  <row Id="4410" PostId="3613" Text="This pertains to real time graphics which is a large part of game dev, so I think its relevant." CreationDate="2010-09-21T06:29:09.480" UserId="2162" />
  <row Id="4411" PostId="3991" Text="+1 for a good alternate solution." CreationDate="2010-09-21T06:29:54.177" UserId="1198" />
  <row Id="4412" PostId="2524" Score="6" Text="As an update, it looks like Apple updated section 3.1.1 of their aggrement, explicitly allowing platforms such as MonoTouch." CreationDate="2010-09-21T06:40:14.820" UserId="1198" />
  <row Id="4413" PostId="3347" Text="The trouble with this sort of reasoning is that it tends to only be valid on windows.  Some systems have hard memory constraints.  Also, if you care about perf, you probably don't want the memory &quot;automatically&quot; swapped for you when you start using too much." CreationDate="2010-09-21T06:50:46.533" UserId="2162" />
  <row Id="4414" PostId="3965" Text="@lathomas64: if you make a drawing contest and people vote their friend instead of voting the best drawing, it is totally bad." CreationDate="2010-09-21T08:23:20.163" UserId="2188" />
  <row Id="4415" PostId="3998" Text="actually i need a matrix out of the tiled representation, went through both of these and I could'nt get what I wanted." CreationDate="2010-09-21T10:01:06.457" UserId="1251" />
  <row Id="4416" PostId="308" Score="1" Text="-1 for XML. I agree with @Ipsquiggle and @BigSandwich" CreationDate="2010-09-21T10:07:47.853" UserId="2188" />
  <row Id="4417" PostId="3779" Text="If there already isn't a tool to edit it, then it is pointless to use it in the first place: create your own format as well!" CreationDate="2010-09-21T10:09:05.467" UserId="2188" />
  <row Id="4418" PostId="3986" Text="TCP is not really an option if you want realtime." CreationDate="2010-09-21T10:28:22.453" UserId="2188" />
  <row Id="4419" PostId="3970" Text="+1 especially for points 4 and 5" CreationDate="2010-09-21T10:36:37.863" UserId="2188" />
  <row Id="4420" PostId="3972" Score="1" Text="not widespread enough, though. If your target is &quot;make an edu game, then sell it to whoever passes by&quot;, fine, but if it's a commissioned work from a specific school or something like that, I doubt that's an option." CreationDate="2010-09-21T10:37:42.833" UserId="2188" />
  <row Id="4421" PostId="3967" Text="that's a interesting approach but seems quite a full-on change to my engine just to allow moving platorms. Maybe if I create objectOnPlatform as a component that I can to any object that just temporally gives this effect?" CreationDate="2010-09-21T10:54:51.873" UserId="119" />
  <row Id="4422" PostId="3965" Score="1" Text="If the point of the drawing contest was to reward the best artists then I'd agree. If the point of the contest was to encourage social interaction though I don't agree that this is &quot;totally bad&quot; and in fact has achieved exactly what you wanted." CreationDate="2010-09-21T11:14:50.633" UserId="1477" />
  <row Id="4423" PostId="3347" Text="Three cheers for SuperFetch then. ;)" CreationDate="2010-09-21T11:32:23.080" UserId="189" />
  <row Id="4424" PostId="3998" Text="Not sure what you mean by that. Do you mean a matrix with tile-indices? Look at the output generated by OGMO Editor here: http://mattmakesgames.com/OgmoEditor/help/getting_started/index.html#4 looks like a nice matrix to me?" CreationDate="2010-09-21T12:17:39.390" UserId="20" />
  <row Id="4425" PostId="4005" Score="1" Text="Being polite is nice, but for SO-type posts, there are certain preferred conventions - such as *not* putting a greeting and thanks line. Please consider deleting your first and last lines - thanks. :)" CreationDate="2010-09-21T13:37:48.093" UserId="165" />
  <row Id="4427" PostId="862" Score="1" Text="You forgot about tetris: it was the second game I implemented back in hight school :)" CreationDate="2010-09-21T14:33:12.167" UserId="2231" />
  <row Id="4428" PostId="4006" Score="1" Text="Thank you for this deailed and easy to understand explanation. To summarize, if I want to save a game play, I will simply gather the game state (states of all the relevant objects) and save them one by one." CreationDate="2010-09-21T14:43:09.053" UserId="2229" />
  <row Id="4429" PostId="31" Text="The BOUNTY is especially for good ideas on how to handle translations of trigger phrases and NPC text. So that the NPC can understand and speak different languages depending on the player who started the conversation.  Even with the building block approach in http://gamedev.stackexchange.com/questions/31/how-can-i-implement-dialog-trees-into-my-game/3775#3775 it does not seem to be a good idea to have logic inside the text repositories. But splitting them makes it a lot more difficult to understand the code." CreationDate="2010-09-21T17:16:32.380" UserId="450" />
  <row Id="4430" PostId="3991" Text="First thanks for your post , there are games like who has the biggest brain put the ads after finishing the game , the image in the main post , i guess they used HTML code maybe in TextField or they used URLRequest , i don't know :(." CreationDate="2010-09-21T18:07:04.243" UserId="2167" />
  <row Id="4431" PostId="4011" Score="1" Text="possible duplicate of [What are some good resources for getting a beginner started in developing games?](http://gamedev.stackexchange.com/questions/41/what-are-some-good-resources-for-getting-a-beginner-started-in-developing-games)" CreationDate="2010-09-21T20:58:48.930" UserId="744" />
  <row Id="4433" PostId="3965" Text="Such as creating animosity because &quot;you did the best work but you lost because you had less friends&quot;? Nice job." CreationDate="2010-09-21T22:16:13.637" UserId="2188" />
  <row Id="4434" PostId="4006" Text="Have a look at the following question for more alternative definitions: http://gamedev.stackexchange.com/questions/2423/alternative-to-game-state-system" CreationDate="2010-09-21T22:19:09.330" UserId="360" />
  <row Id="4435" PostId="2435" Text="Unfortunately, I only have production code at the moment, but there is a similar concept in the XNA Game State sample: http://creators.xna.com/en-GB/samples/gamestatemanagement" CreationDate="2010-09-21T22:22:44.087" UserId="360" />
  <row Id="4436" PostId="3991" Score="1" Text="Actually, Google AdSense has specific code for embedding in flash, and other games: http://www.google.com/ads/games/publishers.html" CreationDate="2010-09-21T22:26:45.947" UserId="360" />
  <row Id="4437" PostId="3958" Score="1" Text="There are a few XNA samples that deal with heightmap terrain as well: http://creators.xna.com/en-GB/sample/generatedgeometry " CreationDate="2010-09-21T22:33:06.950" UserId="360" />
  <row Id="4438" PostId="4019" Text="Not exactly related to game *development*..." CreationDate="2010-09-21T23:17:13.920" UserId="165" />
  <row Id="4439" PostId="3991" Score="2" Text="@DrDeth huh, never heard of that before. Too bad 99% of all web games don't qualify... &quot;Current Requirements: # Game plays: Minimum 500,000 per day # Traffic source: Must be 80% US &amp; UK Traffic # Distribution: Must be able to report embed destination and have control over where games are distributed&quot; " CreationDate="2010-09-22T00:10:52.340" UserId="48" />
  <row Id="4440" PostId="4017" Score="2" Text="A great way to build up your side projects is through short game jams. The next Ludum Dare is in December, and Global Game Jam should be coming up next spring; if you feel up to it by then, give them a try!" CreationDate="2010-09-22T01:06:42.553" UserId="189" />
  <row Id="4441" PostId="3924" Text="I've found that the receiver is bundled with the &quot;Wireless Xbox 360 controller for PC&quot; which is much easier to find - and it will support up to 4 regular wirelessr Xbox 360 controllers..." CreationDate="2010-09-22T01:30:24.227" UserId="2239" />
  <row Id="4442" PostId="308" Text="The main idea is to separate dialogue data from game code, and using some [DSL](http://en.wikipedia.org/wiki/Domain-specific_language) or XML files are both valid approaches. When I asked that question on SO I wanted to make a GUI dialogue editor, and its easier to generate XML files than code. Additionally, I have a fairly complex dialogue system based on priorities, conditions, perquisite knowledge, and other factors that map nicely to attribute representation, but other games might have much simpler dialogue trees where XML is an overkill. " CreationDate="2010-09-22T01:30:33.377" UserId="18" />
  <row Id="4443" PostId="4019" Score="3" Text="Not necessarily. Everything is related." CreationDate="2010-09-22T01:36:23.420" UserId="1853" />
  <row Id="4444" PostId="187" Score="1" Text="Very good list. Now I have to follow it :)" CreationDate="2010-09-22T02:24:03.913" UserId="1853" />
  <row Id="4445" PostId="3907" Text="+1 for mentioning good sounds ^^ " CreationDate="2010-09-22T02:32:28.930" UserId="2239" />
  <row Id="4446" PostId="3958" Text="@DrDeth thanks but I am not using the 4.0 just yet would that example be easy to convert to 3.1 or it would be complicated considering the changes from 3.1 to 4.0 ?" CreationDate="2010-09-22T03:20:46.057" UserId="2168" />
  <row Id="4447" PostId="4025" Score="1" Text="That is not true, i am using that class on a PONG Clone that i made while learning XNA and what made me think this was because i was going to make several balls to spawn and raise the difficult etc... but just from having 3 sprites on the screen i already saw that i was using that class a lot or should i say relying on it a lot ... So you should have asked me if it was unimplemented or not before anwsering like this i belive, anyway thanks" CreationDate="2010-09-22T03:43:58.537" UserId="2168" />
  <row Id="4448" PostId="4025" Score="3" Text="I think the OP is just having difficulty deciding what bits of functionality go in which class." CreationDate="2010-09-22T04:59:18.043" UserId="1198" />
  <row Id="4449" PostId="4023" Text="Are you somewhat new to OOP concepts? Correct me if I'm wrong, but based on your question, it seems you might be lacking fundemental OOP concepts, which would help you answer your own question If so, let us know and we can refer you to sme good OOP documentation. If you're up on OOP, please try to re-word the question so that the bits you need help with are more clear." CreationDate="2010-09-22T05:00:47.443" UserId="1198" />
  <row Id="4450" PostId="4023" Text="@Nate hi, i do know what OOP is but i am not sure at all if that is the case ... which is why i am asking for advice on how i should go about structuring the code to hold these things ... thanks." CreationDate="2010-09-22T06:27:14.730" UserId="2168" />
  <row Id="4451" PostId="4023" Score="1" Text="Maybe the right approch would be a base class with sub classes inherit from it as for example player class, monster class etc or w/e " CreationDate="2010-09-22T07:02:23.617" UserId="2168" />
  <row Id="4452" PostId="4025" Score="1" Text="Don't do it until you need it might be a nice stock answer, but it doesn't seem helpful on this occasion." CreationDate="2010-09-22T07:40:54.043" UserId="241" />
  <row Id="4453" PostId="4019" Text="Seems a decent enough question relating to the management of a game development project." CreationDate="2010-09-22T08:04:05.380" UserId="659" />
  <row Id="4455" PostId="4028" Score="2" Text="So many good points. The decent PC spec is a point that Jeff Atwood makes over and over. Compared to one dev's hourly salary, just saving a few minutes a day with a fully spec'd PC will earn the investment back very quickly." CreationDate="2010-09-22T09:15:25.300" UserId="259" />
  <row Id="4456" PostId="3969" Score="1" Text="Hey, if you agree with me, don't vote up my comment, vote down / close the question." CreationDate="2010-09-22T10:27:48.537" UserId="744" />
  <row Id="4457" PostId="3941" Text="You assume that players don't need skill to win; in this guy's case, noobs may be getting crushed as a function of their lack of skill as well as low power. " CreationDate="2010-09-22T11:45:46.527" UserId="1004" />
  <row Id="4458" PostId="3941" Text="@RCIX: ?? point 3 takes into account exactly that problem..." CreationDate="2010-09-22T12:46:42.440" UserId="2188" />
  <row Id="4459" PostId="3815" Text="of course not!! There are tons of possible ways of making pvp intresting anyway." CreationDate="2010-09-22T12:48:20.100" UserId="2188" />
  <row Id="4460" PostId="3874" Text="While this seems interesting at first, it still have a huge problem: consider the &quot;group&quot; as an individual. The bigger group wins. I.e. that's the same broken mechanic of &quot;the bigger guy wins&quot;, but applied to the group instead of the single player. Unless the skill counts so much that it allows a single expert player to escape or fight a horde of newbies." CreationDate="2010-09-22T12:53:22.800" UserId="2188" />
  <row Id="4461" PostId="3821" Text="That's **exactly** what he said he did and didn't work. Read more carefull, please." CreationDate="2010-09-22T12:54:44.267" UserId="2188" />
  <row Id="4462" PostId="3899" Text="But they don't need to, if they are using the old periodic update. That's the whole problem I'm getting at - using this method introduces a new potential error that was not a possibility before." CreationDate="2010-09-22T13:25:43.877" UserId="1101" />
  <row Id="4463" PostId="4019" Score="4" Text="&quot;Everything is related&quot; - so, since diet and exercise affect how the brain works, which affects programmer skill - I can ask questions about food and gyms here. :) Sorry - everything in the universe may be *related*, but it's not *relevant*. One test of relevance is the [Boat Test](http://meta.stackoverflow.com/questions/14470/what-is-the-boat-programming-meme-about/14486#14486). For example, if you changed the original question to, &quot;What are the dreams benefits you want from a *spreadsheet development* company?&quot; - the Answers given, all apply - they are **not** game-related Answers." CreationDate="2010-09-22T13:34:53.280" UserId="165" />
  <row Id="4465" PostId="2622" Text="boost::serialization in C++." CreationDate="2010-09-22T14:17:37.943" UserId="1677" />
  <row Id="4466" PostId="4031" Text="I was thinking along the lines of generation using a perlin-noise function of some sort, but am not sure how to get from what is essentially a 2D heightmap, to a set of lines connect all areas at height X." CreationDate="2010-09-22T14:20:44.857" UserId="2233" />
  <row Id="4467" PostId="3991" Text="@DrDeth  as Mr.davr said it's impossible to reach these numbers ,are there any Alternatives solutions as  Mochi ads ?" CreationDate="2010-09-22T14:36:12.033" UserId="2167" />
  <row Id="4468" PostId="4033" Score="1" Text="Oh wow, I used Amit's guide a huge amount to learn A*.  It's like he looks into my head :)  Time to get that &quot;&lt;3 Amit&quot; tattoo..." CreationDate="2010-09-22T15:38:02.830" UserId="2233" />
  <row Id="4469" PostId="4019" Text="For list-type CW questions, adding examples to the question isn't really the best approach.  It usually goes better to break out individual list items into their own *answers* so that they can be voted and commented on individually." CreationDate="2010-09-22T15:45:33.080" UserId="51" />
  <row Id="4470" PostId="3821" Text="No, it is not. He said there was a 25 day protection, time-based. I'm suggesting a XXXX points protection, score based. Therefore you're protected from the crushing. I'm not sure if I phrased it badly." CreationDate="2010-09-22T16:10:00.687" UserId="1156" />
  <row Id="4471" PostId="3986" Score="1" Text="^^^ Common myth" CreationDate="2010-09-22T16:22:19.357" UserId="93" />
  <row Id="4472" PostId="4034" Score="4" Text="There really should only be one question per, um, question." CreationDate="2010-09-22T16:34:19.163" UserId="51" />
  <row Id="4473" PostId="4034" Text="Try to make the question shorter and simpler. Also, I can't seem to find the question part of question 2, I just see a lot of opinions and statements." CreationDate="2010-09-22T17:22:34.420" UserId="962" />
  <row Id="4474" PostId="4030" Score="2" Text="I disagree, I would suggest that your Ball class inherit from your Sprite class, and use all of the Sprite fields in the Ball's Draw method. This gives you the ebst of both worlds with minimal extra code. Obviously if you have 100s of thousands of these, the extra weight of each Ball having a Sprite may have some performance implications." CreationDate="2010-09-22T17:23:08.193" UserId="1198" />
  <row Id="4475" PostId="4023" Score="1" Text="Yes, I think that is exactly the way to go. Your `Sprite` class should do &quot;sprite&quot; things. Location, Velocity, Direction, Texture, etc, and then your `Player` class should inherit from `Sprite` and extend it by having properties like HitPoints, MaxSpeed, AttackPower, etc..." CreationDate="2010-09-22T17:24:39.580" UserId="1198" />
  <row Id="4476" PostId="537" Score="1" Text="Whoa, that looks like a super fun way to learn lua!" CreationDate="2010-09-22T17:25:55.053" UserId="1230" />
  <row Id="4477" PostId="4002" Text="Well, despite you and all other posters stating this pretty uniformly, I'm not fully convinced yet that there are no common grounds here and there (but might need to reconsider of course ;) - maybe this stems from me thinking more about 'older' and/or 'smaller' games like card and board games than full blown commercial 3D enabled titles or so; specifically, regarding your programming language analogy, I've been expecting more approaches via DSLs for example (like the one example [pointed out by @jpbochi](http://gamedev.stackexchange.com/questions/1359#3949)). Anyway, thanks for your insight!" CreationDate="2010-09-22T17:50:05.250" UserId="921" />
  <row Id="4478" PostId="3988" Text="Yeah, I guess it would be more convenient to declare the level cap as some kind of global constant instead of hard-coding it to a fixed number like 100." CreationDate="2010-09-22T20:25:21.813" UserId="1705" />
  <row Id="4479" PostId="4019" Text="I support the opinion that game development consists not only of game design, programming, animation, and sounds. The following answer quite clearly defines the related components of the sphere and team development is included there. http://meta.gamedev.stackexchange.com/questions/3/programming-questions-here-or-belongs-on-stackoverflow/14#14" CreationDate="2010-09-22T21:02:12.180" UserId="1853" />
  <row Id="4480" PostId="4025" Text="I dunno, I guess I read the question differently. I re-read it and this still seems an appropriate answer, no matter how &quot;stock&quot; it may be." CreationDate="2010-09-22T21:07:40.427" UserId="189" />
  <row Id="4481" PostId="4034" Score="1" Text="question 1 tl;dr -&gt; Looking for barebones, easy to use 3D engine without all the gimmicks thrown in.     question 2 tl;dr (i think?) -&gt; New games sacrifice fun for technology, don't you think?" CreationDate="2010-09-22T21:37:15.197" UserId="1413" />
  <row Id="4482" PostId="4037" Text="Good answer and a great reply to the OPs second question/statement." CreationDate="2010-09-22T21:45:59.653" UserId="20" />
  <row Id="4483" PostId="3958" Text="I think the concepts are pretty generic and this particular example was around long before 4.0, so I think it should be quite straightforward to get it working." CreationDate="2010-09-22T21:49:33.023" UserId="360" />
  <row Id="4484" PostId="3991" Text="Ahh... sorry about that. I wasn't aware of the requirements - they seem absolutely ridiculous. A quick google search yields quite a few alternatives: http://www.google.co.uk/search?hl=en&amp;q=in+game+advertising" CreationDate="2010-09-22T21:52:41.397" UserId="360" />
  <row Id="4485" PostId="4019" Text="@Aidas, first, that link was someone's *Answer*, not part of the FAQ. Second, your question really isn't *specific* to the game *industry*. Do you think programmers in *other* fields might like things like paid overtime? I'm sure they would - so what does that have to do with *games*?" CreationDate="2010-09-22T22:04:30.137" UserId="165" />
  <row Id="4486" PostId="1912" Text="you're welcome, i was just doing research on these tools to find something that fits my bill ... unfortunately, i came out empty handed" CreationDate="2010-09-22T22:09:15.853" UserId="490" />
  <row Id="4487" PostId="4030" Text="@Nate - I am going to very much disagree with your disagreement. Performance aside, pretty much every object in your game is likely to draw differently. Some might need multiple sprites, for example. Others might require animation. Others might require particle systems or animation or anything else! -- In my answer I've shown that the `sb.Draw` call is the same as or better than having a `Sprite` member. By inheriting from Sprite you've got all the disadvantages of having a member - and you're limited to just one (plus the other constraints it puts on your hierarchy)." CreationDate="2010-09-22T23:08:51.130" UserId="288" />
  <row Id="4488" PostId="4030" Text="(In terms of what you should *actually* do - `Ball` should implement `IDrawable` or derive from `DrawableGameComponent` or a similar class. Or you could get fancy and implement something like http://cowboyprogramming.com/2007/01/05/evolve-your-heirachy/.)" CreationDate="2010-09-22T23:14:04.737" UserId="288" />
  <row Id="4493" PostId="4042" Text="By what metric do you define best? Multiple questions should be separated into , well, multiple questions." CreationDate="2010-09-23T01:58:34.123" UserId="14" />
  <row Id="4494" PostId="3494" Text="Do you know of any tutorials/examples of how this is done?  I am very unfamiliar with web services/web programming." CreationDate="2010-09-23T05:14:12.723" UserId="2010" />
  <row Id="4495" PostId="4045" Text="very funny but a comment on the question would have been more appropriate." CreationDate="2010-09-23T05:17:16.970" UserId="370" />
  <row Id="4496" PostId="3998" Text="hey thanks, bummzack !" CreationDate="2010-09-23T05:53:55.713" UserId="1251" />
  <row Id="4497" PostId="4022" Text="I have tried FlatRedBall, but haven't heard of Neoforce. Will check it out! On checking out Neofroce: Alas, like many XNA GUI projects, they are not being maintained by their developers. If only Microsoft will make GUI a part of the XNA core." CreationDate="2010-09-23T08:35:29.583" UserId="2132" />
  <row Id="4498" PostId="1393" Text="@Cyclops: true, you would need to completely re-design. Is that a bad thing? No. For a already-completed game is a useless thing, but for future games could be the key point of success." CreationDate="2010-09-23T08:41:14.390" UserId="2188" />
  <row Id="4499" PostId="1132" Score="2" Text="+1 mostly for the cosmetic auctions" CreationDate="2010-09-23T08:42:26.567" UserId="2188" />
  <row Id="4500" PostId="1244" Text="yes, having the &quot;paid&quot; currency separated from the droppable one is vital" CreationDate="2010-09-23T08:48:33.047" UserId="2188" />
  <row Id="4501" PostId="1395" Text="Duplication? There's no duplication in a *real* online game!" CreationDate="2010-09-23T08:50:44.597" UserId="2188" />
  <row Id="4502" PostId="3976" Text="I agree. Also, I think it decreases value of games when there are ads embedded directly into games. UNLESS you have billboard in the game itself and you render Google Ads onto the Billboard ;)" CreationDate="2010-09-23T09:32:14.837" UserId="1890" />
  <row Id="4503" PostId="4022" Text="Neoforce doesn't have a developer anymore but it's free for anyone to pick up and maintain ;p " CreationDate="2010-09-23T09:42:37.213" UserId="2239" />
  <row Id="4504" PostId="4051" Text="That is wonderful! While looking around, I also found ScanFont to turn images into vector fonts: http://www.fontlab.com/font-converter/scanfont/" CreationDate="2010-09-23T09:43:50.547" UserId="490" />
  <row Id="4505" PostId="4051" Text="I was also thinking about drawing just the lines, then turning them into quads by adding two more points along the normal vector and half the angle between connected lines. That way you'd easily turn a series of lines into a series of quads which aren't regular on the inside but that doesn't really matter. Only need to be careful about the direction of line-drawing, but that needs to be done CCW anyway for physics engines." CreationDate="2010-09-23T09:48:20.150" UserId="490" />
  <row Id="4506" PostId="4027" Text="@Oskar thanks for your input that is how i might go for it. I would appreciate very much if you know of any open source codes that i could take a look at aswell... i did saw some stuff from FlatRed that was available but not everything is open." CreationDate="2010-09-23T10:01:19.293" UserId="2168" />
  <row Id="4508" PostId="4025" Text="@Ricket no matter how i read your answer i can't find where it helps at all, the question was not about the code displayed on it as it was just an example of some online tutorial i used, specially when you assume about things without knowing... but at any rate thanks for the input." CreationDate="2010-09-23T10:05:41.520" UserId="2168" />
  <row Id="4509" PostId="4023" Text="@Nate thanks for the input, i guess i got the general idea of how it should be, but was still looking forward to find a nice example code to look at ... if you are aware of any well-written code about this let me know please ;)" CreationDate="2010-09-23T10:08:46.173" UserId="2168" />
  <row Id="4510" PostId="3958" Text="@DrDeth i see, thanks i will take a look at it once i finish playing around with the 2D stuff." CreationDate="2010-09-23T10:09:56.747" UserId="2168" />
  <row Id="4511" PostId="4002" Text="You can certainly find common ground across the more abstract games, as in jpbochi's answer. But for computer games in general, which are often more like simulations than puzzles, the systems are far more arbitrary and are often based on continuous measures of state rather than discrete ones." CreationDate="2010-09-23T10:11:34.800" UserId="1101" />
  <row Id="4512" PostId="4037" Text="It's a good answer, but SDL is no more a 3D engine than the Win32 API is." CreationDate="2010-09-23T10:14:44.547" UserId="1101" />
  <row Id="4513" PostId="4042" Text="1- revenue . 2- Western Union supported . 3- licence .4- when they pay ." CreationDate="2010-09-23T10:26:18.980" UserId="2167" />
  <row Id="4514" PostId="4047" Text="great stuff! FRP sounds interesting, never heard of that before. Probably a fancy name for something I've been using before but not knowing that people decided to call it FRP. :)" CreationDate="2010-09-23T10:43:33.170" UserId="490" />
  <row Id="4515" PostId="4038" Text="To hell with UIs tools, I forgot to mention these are really not necessary, and often they either don't do their job as I would need or either eats engine's features to allows better editor features. Horde3d is still in beta but it seems to be what I'm looking for..." CreationDate="2010-09-23T10:56:10.433" UserId="1829" />
  <row Id="4516" PostId="4034" Text="I think your opinions would be fun to discuss in the gamedev chatroom. http://chat.meta.stackoverflow.com/rooms/73/game-development - it's not your traditional real-time chatroom; if nobody is there, leave a message and then come back later and read the replies." CreationDate="2010-09-23T12:47:55.610" UserId="189" />
  <row Id="4517" PostId="4054" Score="2" Text="This is at best 1/3 of an answer. It does not cover how to handle large numbers of balloons via a quadtree or BSP, nor does it cover how to handle the collision stably and realistically." CreationDate="2010-09-23T13:51:18.523" UserId="744" />
  <row Id="4518" PostId="1754" Score="3" Text="I imagine this would cause a huge player backlash as player complain that their money simply dissapeared." CreationDate="2010-09-23T14:14:21.170" UserId="1477" />
  <row Id="4520" PostId="1393" Text="To continue with the WoW comparison, Quest Gold rewards could be averaged out with the gear repair bill as well as the cost of regants for special buffs etc. There is a way to make sure that the amount of money entering the system is roughly equal to the amount leaving the system." CreationDate="2010-09-23T15:37:04.630" UserId="1198" />
  <row Id="4521" PostId="4042" Text="Reaching the biggest audience&#xA;" CreationDate="2010-09-23T15:37:29.557" UserId="2167" />
  <row Id="4522" PostId="4042" Text="Other features/benefits of the site (eg integration APIs for high scores, micro payments, etc)&#xA;" CreationDate="2010-09-23T15:37:56.077" UserId="2167" />
  <row Id="4523" PostId="4054" Score="3" Text="Wow, that's a bit harsh. A 2D radius check is a very good starting point, and the need to handle large numbers of balloons was not specified. Whilst a perfectly stable/correct implementation is non-trivial, just pushing colliding circles away from each other may give satisfactory results." CreationDate="2010-09-23T16:30:38.910" UserId="659" />
  <row Id="4524" PostId="3874" Text="Recruit more players to help you out if you're having trouble getting jumped by swarms :) Eve is a *very* multiplayer game, and it's strongly intended for you to do things in groups. Yes, more players tends to win, but at least that means the majority of your playerbase is having fun." CreationDate="2010-09-23T16:40:42.980" UserId="323" />
  <row Id="4526" PostId="4057" Text="possible duplicate of [Easy to use cross-platform 3D engines for C++ game development?](http://gamedev.stackexchange.com/questions/21/easy-to-use-cross-platform-3d-engines-for-c-game-development)" CreationDate="2010-09-23T17:10:10.683" UserId="744" />
  <row Id="4527" PostId="4058" Score="4" Text="If the question is a duplicate, don't post the duplicate, vote to close as a duplicate." CreationDate="2010-09-23T17:10:39.887" UserId="744" />
  <row Id="4528" PostId="4054" Score="1" Text="Ricket's answer does not even explain how to push circles away from each other. It's just an overlap check. Saying 1/3 of an answer is 1/3 of an answer is harsh? I guess next time I'll just downvote bad answers silently." CreationDate="2010-09-23T17:14:54.077" UserId="744" />
  <row Id="4529" PostId="4060" Text="sorry he's supposed to be in front of a vertical wall there. terrible drawing" CreationDate="2010-09-23T17:49:13.410" UserId="119" />
  <row Id="4530" PostId="4060" Score="1" Text="I'm a bit confused about dot product. Isn't dot product a scalar?" CreationDate="2010-09-23T17:54:38.080" UserId="119" />
  <row Id="4531" PostId="4058" Text="If you agree with me that the question is a duplicate, don't vote me up, vote to close or vote down!" CreationDate="2010-09-23T18:17:06.123" UserId="744" />
  <row Id="4532" PostId="4060" Score="1" Text="Yes, but you multiply it by the normal (a vector) to get the vector of your undesired motion. A vector (x,y,z) multiplied by the scalar s gets you the vector (sx,sy,sz)." CreationDate="2010-09-23T18:37:10.660" UserId="1597" />
  <row Id="4533" PostId="4058" Score="1" Text="Well it's sort of like a 95% duplicate. There's not an /exact/ match. And I posted only to point out all the possible duplicates in a nicer format than a long comment of URLs." CreationDate="2010-09-23T18:41:22.493" UserId="189" />
  <row Id="4534" PostId="4062" Text="Right.  These are all valid ideas for making a CAPTCHA *more* user friendly, and of course I would implement concepts such as these if I go the CAPTCHA route.  What I'm looking for are good alternatives, if there are any." CreationDate="2010-09-23T18:42:18.163" UserId="2260" />
  <row Id="4536" PostId="4064" Text="Very good insight!  *turns-per-day* is misleading, and that was my fault.  I'll update the question to elaborate." CreationDate="2010-09-23T19:30:41.283" UserId="2260" />
  <row Id="4537" PostId="4064" Text="The more I think about this, the more I like it.  I'll have to give it a little more thought, and let it the question brew on here a bit." CreationDate="2010-09-23T19:41:13.410" UserId="2260" />
  <row Id="4538" PostId="4066" Text="I never thought about a variable recharge rate based on usage.  That sounds genius at first glance.  I'll have to think about it.  TBH, it sort of rewards the casual player and punishes the hardcore/die hard player, so I dunno." CreationDate="2010-09-23T19:59:45.893" UserId="2260" />
  <row Id="4539" PostId="211" Score="1" Text="I did it just for you, man. ;)" CreationDate="2010-09-23T20:04:05.927" UserId="55" />
  <row Id="4540" PostId="4060" Text="Done, changed the variables to hopefully match the diagram. :) " CreationDate="2010-09-23T20:11:18.700" UserId="1597" />
  <row Id="4541" PostId="4065" Text="Nice. But if you scale by a fudge factor does that make you bump along the wall vs sliding along it, or is it just a case of tweaking it?" CreationDate="2010-09-23T20:14:20.570" UserId="1597" />
  <row Id="4542" PostId="3986" Text="* For different values of realtime." CreationDate="2010-09-23T20:16:08.260" UserId="666" />
  <row Id="4543" PostId="3821" Text="This won't help if points can go up to infinite: people will be crushed anyway by people with so much more points. Very very very slightly better than the time-based one, fine, but so slightly it hardly matters." CreationDate="2010-09-23T20:16:54.220" UserId="2188" />
  <row Id="4545" PostId="4050" Text="One piece of this paper still stuck out to me:  &quot;Ideally, the application would not even know there is a scene graph at all, it should only be aware of a view component it has to inform of changes to the data model&quot;.  This inspired in me a new way of thinking about it:  I don't need to triple buffer the entire scene, only what's visible through the current camera.  I can move culling from the render thread to the scene graph thread (when it encounters a camera), and at any given time, one of these three buffers can be written to by it, and another read by the renderer." CreationDate="2010-09-23T20:48:22.787" UserId="2253" />
  <row Id="4546" PostId="4054" Text="Yes, this solves at best 1/3 of the problem. Collision detection is the easy part, but what to do when the balloons collide? If I just move the 2 balloons away I could be just causing more collissions. It's not that easy." CreationDate="2010-09-23T21:13:56.993" UserId="2248" />
  <row Id="4548" PostId="4065" Text="My thought is that you tweak it to look ok; certainly if it is too big it'll look like you're bouncing but if it's subtle enough it'll just keep you from getting hung up on slight bends in the surface." CreationDate="2010-09-23T21:44:18.923" UserId="1780" />
  <row Id="4549" PostId="2701" Text="Btw: All of that was in immediate mode (that is the only thing that I know how to code, and I learned the name yesterday...)" CreationDate="2010-09-23T21:49:07.680" UserId="469" />
  <row Id="4550" PostId="2487" Text="I see, I asked a too hard question, noone know any study, only &quot;guessing&quot; :(" CreationDate="2010-09-23T21:50:11.123" UserId="469" />
  <row Id="4551" PostId="4062" Text="Write your game in Flash or Silverlight such that a bot will have a harder time remote-controlling your application?" CreationDate="2010-09-23T22:02:07.627" UserId="1198" />
  <row Id="4552" PostId="4062" Text="I don't know much about it, but KingsOfChaos.com has a very similar system as yours (points/turns every minute) you could see how they implement it." CreationDate="2010-09-23T22:03:33.287" UserId="1198" />
  <row Id="4555" PostId="3897" Text="Thanks for the good tips guys!" CreationDate="2010-09-23T22:18:19.377" UserId="2164" />
  <row Id="4556" PostId="3907" Text="Appreciate the input!" CreationDate="2010-09-23T22:18:58.487" UserId="2164" />
  <row Id="4557" PostId="4025" Score="1" Text="I'm agreed with Ricket, which is unfortunate since it doesn't help the OP.  I'm not really sure how to phrase &quot;the class is as useful as you make it&quot; better, though.  For the OP, what do you need your Sprite to do?  Do you need it to move?  Then set up a situation that needs it moving, and add the functionality that makes sense for that situation.  Later it may seem like that functionality needs to move to some other class, and that's no problem!" CreationDate="2010-09-23T22:22:47.090" UserId="1780" />
  <row Id="4558" PostId="1102" Score="3" Text="-1 This is about preventing inflation. Suggesting to ban all trade to solve that is like suggesting to avoid sex to prevent STDs..." CreationDate="2010-09-23T22:40:24.643" UserId="2188" />
  <row Id="4562" PostId="4048" Text="That refresher is kinda what I was looking for thanks.  I guess I wasn't sure how fast the combinations were added." CreationDate="2010-09-23T23:13:05.900" UserId="284" />
  <row Id="4565" PostId="4050" Score="1" Text="You might also check out the article &quot;Camera-Centric Engine Design for Multithreaded Rendering&quot; in Game Engine Gems 1, and the related &quot;Practical Parallel Rendering with DirectX 9 and DirectX 10&quot; - http://www.microsoft.com/downloads/en/details.aspx?FamilyID=EE4C7B70-1606-45E8-8027-50AB9A2F646F" CreationDate="2010-09-24T01:14:48.450" UserId="101" />
  <row Id="4567" PostId="4050" Score="1" Text="Looks like Game Engine Gems 1 is available free online:  http://books.google.com/books?id=WNfD2u8nIlIC&amp;pg=PA149&amp;lpg=PA149&amp;dq=Camera-Centric+Engine+Design+for+Multithreaded+Rendering&amp;source=bl&amp;ots=eLrHSCohLU&amp;sig=JxNKouz5erPQA_-5Zj7yhmzSmyo&amp;hl=en&amp;ei=rv-bTJmvIYHGlQem9IX2CQ&amp;sa=X&amp;oi=book_result&amp;ct=result&amp;resnum=1&amp;ved=0CBQQ6AEwAA#v=onepage&amp;q&amp;f=false" CreationDate="2010-09-24T01:34:37.117" UserId="2253" />
  <row Id="4571" PostId="4064" Text="As an example, KolMafia's automated combat systems were so genuinely useful that they actually integrated a combat macro system into the real game." CreationDate="2010-09-24T02:24:30.960" UserId="395" />
  <row Id="4572" PostId="4072" Text="I've also uploaded a video demo here: http://bit.ly/dnCkar" CreationDate="2010-09-24T03:26:12.587" UserId="2156" />
  <row Id="4574" PostId="3972" Text="@looris Check out this recent /. article ;) http://apple.slashdot.org/story/10/09/22/0440253/Australian-Schools-Go-iPad-Crazy?from=rss" CreationDate="2010-09-24T05:57:51.443" UserId="262" />
  <row Id="4575" PostId="3972" Text="@looris the word you are looking for is touché :P" CreationDate="2010-09-24T05:58:43.297" UserId="262" />
  <row Id="4576" PostId="1754" Text="@lathomas64: You explicitly need to point out that money doesn't last forever then :) That, and provide a zone where the money is too worn to use but exchangeable for new money." CreationDate="2010-09-24T07:47:31.973" UserId="1004" />
  <row Id="4577" PostId="4073" Score="1" Text="I'm voting to close as &quot;too localized&quot; - whether this is possible or not depends entirely on the contract you had, which is probably under NDA, and even if it wasn't, IMO this is a legal question and not a game development one." CreationDate="2010-09-24T07:50:45.060" UserId="744" />
  <row Id="4578" PostId="3972" Text="So you are going to sell &quot;just to some Australian school&quot; instead of &quot;the whole world&quot;? Doesn't look like a great business plan. Unless, as I said, you happen to already have a signed contract with such a school." CreationDate="2010-09-24T08:46:09.490" UserId="2188" />
  <row Id="4579" PostId="4073" Text="Agree @Joe. Still, if you kept your code and the library well separated, you could very likely open source at least your code - but I guess that's not the case." CreationDate="2010-09-24T08:51:59.467" UserId="2188" />
  <row Id="4580" PostId="4073" Score="1" Text="Like I said I'm not sure if it was an appropriate question. I guess I should've ask the owner to review his license agreement rather than asking here =p. " CreationDate="2010-09-24T09:17:22.813" UserId="919" />
  <row Id="4581" PostId="3991" Text="please check this http://gamedev.stackexchange.com/questions/4042/different-ways-to-earn-money-through-a-flash-game" CreationDate="2010-09-24T11:04:59.870" UserId="2167" />
  <row Id="4585" PostId="4047" Text="Thanks Ricket! That was very helpful." CreationDate="2010-09-24T11:56:28.460" UserId="360" />
  <row Id="4589" PostId="3972" Text="I guess my point is that the iPad is becoming &quot;widespread enough&quot;.  Seems like a matter of time to me.  " CreationDate="2010-09-24T14:22:45.180" UserId="262" />
  <row Id="4590" PostId="3803" Text="CEGUI can also be used directly in OpenGL and other rendering engines..." CreationDate="2010-09-24T16:14:59.630" UserId="364" />
  <row Id="4591" PostId="2379" Text="could whoever down-voted this give an explanation?" CreationDate="2010-09-24T16:17:38.950" UserId="1477" />
  <row Id="4592" PostId="2379" Score="1" Text="Nothing game-specific. Useless to 70% of game developers (non-programmers), and poorly-targeted targeted for the remaining 30%." CreationDate="2010-09-24T16:40:32.100" UserId="744" />
  <row Id="4593" PostId="4076" Score="1" Text="I had a teacher that made the game Alien Anarchy. He cannot re-release or open source the game, because of licensing issues." CreationDate="2010-09-24T16:45:48.130" UserId="469" />
  <row Id="4594" PostId="4078" Text="Great set of links - thanks!" CreationDate="2010-09-24T19:38:00.237" UserId="360" />
  <row Id="4596" PostId="4034" Text="duh. need 20 rep, but in meta.stackoverflow" CreationDate="2010-09-24T21:43:23.743" UserId="1829" />
  <row Id="4597" PostId="4011" Text="Like totally. There are 2 programming world. The programming world, and the web programming world." CreationDate="2010-09-24T21:45:31.040" UserId="1829" />
  <row Id="4598" PostId="3970" Text="Yes, I'd go with the DS, but if for schools, it should be for PCs too." CreationDate="2010-09-24T22:04:02.267" UserId="1829" />
  <row Id="4599" PostId="3887" Text="What could be very interesting in a p2p game, is managing to make a netcode that suits a MMO, to enable better social aspects: servers would only be needed for cities and parties with more that 5 players. I don't know what is feasible and what is not, but currently that is the only thing more interesting that photorealistic graphics..." CreationDate="2010-09-24T22:11:03.703" UserId="1829" />
  <row Id="4600" PostId="3207" Text="@Ian - I quite agree with &quot;set collection&quot;. The phrase *Collect them all!* appears very often in marketing and look at Stack Overflow with its badge list." CreationDate="2010-09-25T09:15:47.600" UserId="2179" />
  <row Id="4601" PostId="3970" Text="I didn't mean that his target should be the DS though. Just that they're used to quality entertainment from an early age. " CreationDate="2010-09-25T11:46:26.327" UserId="1352" />
  <row Id="4603" PostId="4084" Text="All those features depend on what the game is planned to be, of course sound and collision are necessary, but even for a game that requires a lot of stuff, OGRE does a big part of the job: aren't graphics the heaviest work charge for a developper ? that's what I meant..." CreationDate="2010-09-25T12:48:58.727" UserId="1829" />
  <row Id="4604" PostId="4083" Score="2" Text="It worked well for a number of published games, including Torchlight. Most ended up modifying the engine in some non-trivial ways through, so don't be afraid to get your hands dirty." CreationDate="2010-09-25T18:20:03.547" UserId="678" />
  <row Id="4605" PostId="1079" Text="make the game simulate totalitarian communism. that will deflate prices !" CreationDate="2010-09-25T22:51:06.233" UserId="1829" />
  <row Id="4606" PostId="2379" Text="I agree, I just posted it as an option. It might be worth keeping an eye on, especially in an area with a lot of game dev companies, but I don't even see it getting off the ground, despite the effort and money that Microsoft is probably throwing into it." CreationDate="2010-09-25T23:03:57.227" UserId="189" />
  <row Id="4607" PostId="4090" Score="3" Text="[Mathematics Beta](http://math.stackexchange.com/)" CreationDate="2010-09-26T02:25:15.287" UserId="165" />
  <row Id="4608" PostId="405" Text="@Rushyo, sorry about the delay in replying, yes WebGL is very cool and I am def interested in it, but it's going to be a long time before its feasible to create commercial games in it for clients who expect cross browser support including IE9. That's where pluggins like Unity3D fill the gap. If it wasn't for the browser wars, and the fact that JS 2.0 was dumped I would probably like HTML5 :S" CreationDate="2010-09-26T03:32:18.530" UserId="560" />
  <row Id="4609" PostId="3607" Text="cool, they would be crazy not to be working on GPU acceleration :)" CreationDate="2010-09-26T03:50:29.063" UserId="560" />
  <row Id="4610" PostId="4090" Text="http://mathoverflow.net" CreationDate="2010-09-26T11:19:44.437" UserId="2239" />
  <row Id="4611" PostId="40" Text="Ogre is a good piece of software, and very well documented." CreationDate="2010-09-26T12:38:06.143" UserId="192" />
  <row Id="4612" PostId="4084" Score="2" Text=" Don't think graphics are hardest part of game development any more. At one time it was,  It now the hardest part is pulling all the aspects (graphocs, sound, networking, pgysics, etc) together in an elegant and pleasant way that makes your game stable and fun.." CreationDate="2010-09-26T13:28:38.897" UserId="1198" />
  <row Id="4613" PostId="40" Score="2" Text="@Fire OGRE: Object-oriented Graphics Rendering Engine. It's an engine. It has singletons all over the place. Definitely an engine." CreationDate="2010-09-26T14:43:04.423" UserId="189" />
  <row Id="4614" PostId="4042" Text="@Maged: I edited the title of the post to fix bad grammar, and because questions of the form &quot;What's the best X?&quot; are too subjective and unanswerable. Don't change it back again please." CreationDate="2010-09-26T21:18:17.580" UserId="744" />
  <row Id="4616" PostId="4042" Text="thanks for editing ." CreationDate="2010-09-26T21:43:03.720" UserId="2167" />
  <row Id="4617" PostId="4093" Text="At first glance I don't see anything obvious. My first check would be that order of operations matter with Matrix multiplication and simply re-ordering the operations could be a starting point to try. I'd try moving the Scale first. Also I think you can just use the scalar Scale * Matrix.Identity rather than needing CreateScale. On the other hand, you could probably just use the CreateScale entirely instead of Matrix.Identity." CreationDate="2010-09-27T02:15:46.337" UserId="2220" />
  <row Id="4618" PostId="4096" Text="@WorldMaker For target platform, I'm planning a Win7-only release (the screen size needs to be pretty large, so mobile devices are out). I don't know any DirectX, but I wouldn't mind learning it if it's what is needed for the task. I thought Windows 7 had built-in multitouch support, though? I'm surprised that XNA doesn't leverage that, and I hadn't heard that XNA touch capabilities were limited to Windows Phone 7 and Zune HD. If anything, the multitouch support is of primo importance; without it, I literally cannot create this game." CreationDate="2010-09-27T05:48:13.613" UserId="2289" />
  <row Id="4619" PostId="4098" Text="But that's for 3D." CreationDate="2010-09-27T06:16:43.010" UserId="2156" />
  <row Id="4620" PostId="4098" Text="Well, nothing is stopping you from not working in the third dimension." CreationDate="2010-09-27T07:12:46.333" UserId="1352" />
  <row Id="4621" PostId="4098" Text="I agree with Nailer, but sure, a &quot;pure 2D&quot; library might be easier to work with. I haven't worked enough on embedded systems to give you any other recommendations though." CreationDate="2010-09-27T07:38:38.470" UserId="2196" />
  <row Id="4622" PostId="483" Text="re offline work: p4v recently introduced &quot;Reconcile offline work&quot; which will scan for changes to files that have been edited but not checked out, or not added to the depot. Very handy." CreationDate="2010-09-27T09:12:20.203" UserId="259" />
  <row Id="4623" PostId="3310" Text="The only useful thing about AlienBrain is the preview window that works with Max files. Everything else is utter rubbish." CreationDate="2010-09-27T09:14:21.980" UserId="259" />
  <row Id="4624" PostId="4096" Text="The explanation I have heard that XNA Touch API doesn't support Windows is that Windows Multitouch API works quite differently than Zune/WinPhone 7 (fewer HW differences, simpler APIs), and Zune/WP7 was the priority for XNA. The Windows 7 Touch API is linked in my answer and will be equally hard to work with in XNA and SlimDX, so you may want to pick the one you prefer to work with or know better. Here's an example I found in Google for using XNA with Windows 7 multitouch: http://xna-uk.net/blogs/randomchaos/archive/2010/02/10/xna-and-windows-7-multi-touch.aspx" CreationDate="2010-09-27T09:16:44.227" UserId="2220" />
  <row Id="4625" PostId="4093" Text="At the end of the transition, everything is correctly scaled and positioned, so I'd be very surprised if it's an order of operations issue.  That was the first thing that came to mind, but I believe I have ruled it out (always possible that I screwed up the math when trying to rule it out)." CreationDate="2010-09-27T09:22:59.387" UserId="2288" />
  <row Id="4626" PostId="4096" Score="1" Text="Also some searching turned up this library: http://multitouchvista.codeplex.com/ It sounds like it may be the most useful managed, multitouch library out there. It is focused on WPF, and I do still think that WPF may be the best solution that you aren't considering for your game, from your requirements." CreationDate="2010-09-27T09:23:24.153" UserId="2220" />
  <row Id="4627" PostId="4095" Text="Thank you, this looks like it will be perfect." CreationDate="2010-09-27T09:43:17.883" UserId="1248" />
  <row Id="4628" PostId="4101" Text="doom3 uses ogg files, and I guess idtech 4 does the same..." CreationDate="2010-09-27T10:57:08.123" UserId="1829" />
  <row Id="4629" PostId="4105" Text="Wow, that was easy.  Thanks! Lost about three hours to this problem, and the fix was literally to take the inverse of all of my variables with &quot;scale&quot; in the name, and then take the inverse of that final value before assigning it to Scale." CreationDate="2010-09-27T12:51:21.533" UserId="2288" />
  <row Id="4630" PostId="4094" Score="4" Text="XML is not the answer to everything. Actually, it's rarely the correct answer whatever the question is." CreationDate="2010-09-27T13:39:34.370" UserId="2188" />
  <row Id="4631" PostId="4106" Score="1" Text="That's objective-c. Right?" CreationDate="2010-09-27T14:01:48.527" UserId="2156" />
  <row Id="4632" PostId="206" Score="7" Text="I think I need to make a wallpaper with this answer." CreationDate="2010-09-27T14:09:16.543" UserId="364" />
  <row Id="4633" PostId="4102" Text="That's interesting. Thanks." CreationDate="2010-09-27T14:27:48.010" UserId="2156" />
  <row Id="4634" PostId="2279" Score="1" Text="@jacmoe: you forgot &quot;Etc.&quot;, so that would be &quot;Shadowy Night Chronicles of the Legendary Dragon Powered Super Ninja etc.&quot;" CreationDate="2010-09-27T14:57:15.133" UserId="2188" />
  <row Id="4635" PostId="4096" Text="Hmmm, it does indeed look like I should be giving WPF a second look. I had discounted it because I wasn't sure if it was snappy enough to create a game like this (essentially what I'm trying to emulate): http://www.youtube.com/watch?v=TAiNNpA3wwg But I suppose I could experiment." CreationDate="2010-09-27T15:38:09.253" UserId="2289" />
  <row Id="4636" PostId="4023" Text="By the looks of it I am pretty sure he wants a sprite manager class. not actually a sprite class.  Correct me if I am wrong Guapo. You would like a class to handle all your sprites so you don't have to specifically add them to your main class. " CreationDate="2010-09-27T16:21:24.267" UserId="2301" />
  <row Id="4637" PostId="4094" Score="2" Text="XML is like violence: if it doesn't work, use more.  :)" CreationDate="2010-09-27T19:27:50.493" UserId="1780" />
  <row Id="4638" PostId="4111" Text="Due to a corporate firewall, I was unable to get to those links. Sorry." CreationDate="2010-09-27T19:28:58.077" UserId="1934" />
  <row Id="4639" PostId="4095" Text="The thing with this is that it's super easy to parse, so it's easy to write code to read it.  It's also easy to change settings, you don't need to match tags or anything like that." CreationDate="2010-09-27T19:29:09.060" UserId="1780" />
  <row Id="4640" PostId="4098" Text="As soon as you want one sprite in front of another sprite, you're doing 3D." CreationDate="2010-09-27T19:29:54.177" UserId="1780" />
  <row Id="4641" PostId="4112" Text="I'm reading about it here (http://www.parashift.com/c++-faq-lite/serialization.html) and it looks very interesting. I've never really dealt with serialization, so it'll be a good learning experience for me. Thank you!" CreationDate="2010-09-27T19:29:58.230" UserId="1934" />
  <row Id="4642" PostId="4107" Score="1" Text="Actually, after looking at it, it might be better for me to stick with Python for this project. I'm using Panda3D as a game engine, and the python version is more polished. That, and I could probably develop faster in python. Plus, python has a built-in serialization class called pickle, which saves me the trouble of coding one." CreationDate="2010-09-27T19:45:40.710" UserId="1934" />
  <row Id="4643" PostId="4112" Text="No prob! I'm working with serialization as well (albeit in C#) for my game. Good luck!" CreationDate="2010-09-27T19:54:45.827" UserId="2289" />
  <row Id="4644" PostId="4101" Text="From the wiki and from this page http://www.vialicensing.com/aac_faq.aspx it looks like you can distribute freely but only pay to encode or decode. However wondering that VLC can play it i looked at #5 and it appears you only pay when you SELL something. So a free demo/game would be allowed. So for developers it appears you can encode all you want (automated build, manual or even on a website backend for users to upload) but you need to pay for an encoder unless its offered free. It only affects you if you are decoding or encoding inside of a bin being sold." CreationDate="2010-09-27T20:13:47.370" UserId="1047" />
  <row Id="4645" PostId="3615" Text="I've implemented turn-based strategy games with both hex and square grids, and there is absolutely no necessary difference in terms of pathfinding complexity.  I even switched one game from a hex map to a square map, and (apart from the rendering) the only change I had to make was to a MapLocation::GetDistance() method which computed the distance between two sectors.  I simply had to adjust the calculations to deal with every other row being offset slightly.  In both cases, you can use the same in-memory representation.  So, as the others have said, it's really a design issue." CreationDate="2010-09-27T20:34:33.420" UserId="136" />
  <row Id="4646" PostId="4114" Text="possible duplicate of [Component-Based System Information](http://gamedev.stackexchange.com/questions/4046/component-based-system-information)" CreationDate="2010-09-27T21:10:31.663" UserId="744" />
  <row Id="4647" PostId="206" Score="2" Text="Done and available there: http://klaimsden.net/den/Home_Project_Motivator.bmp&#xA;&#xA;I'll try variants later. If you do some, please make them available :)" CreationDate="2010-09-27T21:38:44.163" UserId="364" />
  <row Id="4648" PostId="4114" Score="1" Text="There is an actual question here, though, as opposed to the &quot;question&quot; at the link that Joe gives." CreationDate="2010-09-27T22:12:57.037" UserId="1780" />
  <row Id="4649" PostId="4114" Score="1" Text="don't see the dupe, the question is about how to design a specific game's requirements in code, using a component system (@Christopher: mentioning which one would help though, are you using Unity? Torque? Proprietary?)" CreationDate="2010-09-27T22:14:04.573" UserId="490" />
  <row Id="4650" PostId="4112" Score="3" Text="keep in mind: if you serialize always store a version number first, and read that back in first. That way you can handle breaking changes to the savegame format gracefully by providing (some) backwards compatibility." CreationDate="2010-09-27T22:15:37.037" UserId="490" />
  <row Id="4651" PostId="483" Text="Perforce is well worth the money - if you can spend it. I've worked with other version systems like Git and Subversion, and especially the latter feels like it carries the &quot;Sub&quot; in its name for a reason." CreationDate="2010-09-27T22:19:11.757" UserId="490" />
  <row Id="4652" PostId="4119" Text="Yeah, Ogre already supports loading in resources via zip file. Someone mentioned in a chat room just passwording the zip file, but with the amount of tools around to crack them, it really isn't my first choice. I would really like to do something similar to the .gcf files that Valve uses, but I don't even know what to search for as far as getting started." CreationDate="2010-09-28T01:57:26.823" UserId="1248" />
  <row Id="4653" PostId="4121" Text="I agree completely. Problem is, I won't be able to release a demo without some form of protection in place. ZIP is too well known, PAK is about the same. Atleast with a custom format (Valve requires a CTX key which is hardcoded into the game engine to access GCF files) the average joe won't just be able to run an extraction tool on it and get in." CreationDate="2010-09-28T02:49:34.530" UserId="1248" />
  <row Id="4654" PostId="4121" Text="Woops, didn't realize enter wouldn't go down a line. Anyways, I found this http://nemesis.thewavelength.net/index.php?p=35 which seems to be an open source Lib that provides GCF functionality independent of Valve games. Problem I see here is that it is much too robust, and I was looking for something a bit more simple just to create a basic version to expand upon later. (To be honest, the way he codes makes my head hurt)" CreationDate="2010-09-28T02:51:24.513" UserId="1248" />
  <row Id="4655" PostId="4121" Score="2" Text="Out of curiousity, does this contract mention *how* you are supposed to protect their content?" CreationDate="2010-09-28T04:53:53.217" UserId="211" />
  <row Id="4656" PostId="4112" Score="2" Text="During development I also strongly encourage you to write the files to a human readable format. Maybe something like JSON or XML. Much easier to see if everything you need was saved and also much easier to tweak data in an already written file (for testing or to fix stuff after writing a file to disk)." CreationDate="2010-09-28T06:25:49.110" UserId="20" />
  <row Id="4657" PostId="4110" Text="This is the closest I can find. Thanks." CreationDate="2010-09-28T06:47:05.177" UserId="2156" />
  <row Id="4658" PostId="4096" Text="**Update**: I've stumbled upon Shawn Hargreaves' blog, which had this article: http://blogs.msdn.com/b/shawnhar/archive/2010/09/09/touch-input-on-windows-in-xna-game-studio-4-0.aspx This looks like it might be the ticket to multitouch in XNA on Windows 7!" CreationDate="2010-09-28T07:22:26.150" UserId="2289" />
  <row Id="4659" PostId="4123" Score="1" Text="What features, *specifically*, of a scripting engine do you actually need? The vast majority of things a scripting engine gives you are already available in C#." CreationDate="2010-09-28T07:31:36.053" UserId="288" />
  <row Id="4660" PostId="4123" Text="Basically, I'm thinking to make something like a GUI base XNA game maker. So you use this game maker and access my C# classes and functions from script to implement game play." CreationDate="2010-09-28T08:06:51.067" UserId="2156" />
  <row Id="4661" PostId="4111" Score="2" Text="If your corporation prevents you from reading stuff you need to work they are idiots at best." CreationDate="2010-09-28T10:44:44.290" UserId="2188" />
  <row Id="4662" PostId="4083" Text="What did they change ? The structure of the engine ?" CreationDate="2010-09-28T11:15:34.167" UserId="1829" />
  <row Id="4663" PostId="496" Text="I wanted to ask the question some time ago, great I find it already has been asked :)" CreationDate="2010-09-28T11:32:47.320" UserId="1829" />
  <row Id="4664" PostId="4114" Score="1" Text="I like your gameplay idea by the way =) " CreationDate="2010-09-28T12:26:58.050" UserId="1352" />
  <row Id="4665" PostId="4123" Score="1" Text="Who's the end user? Is this something like Klik &amp; Play (children, hobbyists)? Or is it more like Unreal Kismet (artists and designers)? Or something different?" CreationDate="2010-09-28T13:00:55.053" UserId="288" />
  <row Id="4666" PostId="4132" Text="Interesting answer, thank you. I have PHP background, too, so you just hit the bull's eye. :)" CreationDate="2010-09-28T14:07:07.983" UserId="1677" />
  <row Id="4667" PostId="4105" Text="Richard, doesn't this go away if you treat the centre of the screen as the camera position? That will move linearly and the pixel at the point will not be altered by the scale. I'm finding it hard to picture this problem in the first place and sadly I'm no wiser having read this answer!" CreationDate="2010-09-28T14:35:47.467" UserId="1101" />
  <row Id="4668" PostId="4125" Text="Obscurity isn't pointless because most users don't have &quot;enough skill and determination&quot;. The same goes for securing your home: anybody who really wants to get in can do so, but it's still considered worthwhile making it awkward for them." CreationDate="2010-09-28T14:37:27.090" UserId="1101" />
  <row Id="4669" PostId="4134" Score="1" Text="This is not CW; even if it was, I expect CW questions to have at least a question mark somewhere in them." CreationDate="2010-09-28T14:52:47.140" UserId="744" />
  <row Id="4670" PostId="4128" Score="1" Text="24 FPS is acceptable for films because motion is blurry on film, not because they are consistent." CreationDate="2010-09-28T14:53:53.490" UserId="744" />
  <row Id="4671" PostId="4116" Text="This question is either too localized (&quot;Where can I find the magic constants for the helicopter game?&quot;) or too general (&quot;Where can I find magic constants for all games ever?&quot;)." CreationDate="2010-09-28T14:57:21.567" UserId="744" />
  <row Id="4672" PostId="4134" Text="You downvoted because there is no &quot;?&quot; mark? Joking, right? I'm sure it is very interesting and important question." CreationDate="2010-09-28T15:00:24.363" UserId="1677" />
  <row Id="4673" PostId="4136" Text="I can't downvote Ricket's longwinded defense of global variables or upvote this answer enough." CreationDate="2010-09-28T15:02:02.623" UserId="744" />
  <row Id="4674" PostId="4134" Score="2" Text="This is a question and answer site. You didn't ask a question. I'm not joking." CreationDate="2010-09-28T15:06:54.213" UserId="744" />
  <row Id="4675" PostId="4125" Text="Counterpoint: Obscurity is pointless because unlike breaking into your home, once someone has broken into your game they can make it trivial for anyone else to do so. (On the other hand - Obscurity is not pointless, because Brett needs the models. I just don't think the analogy holds up well.)" CreationDate="2010-09-28T15:09:17.087" UserId="744" />
  <row Id="4677" PostId="4125" Text="If someone steals a piece of gold from your home, he has your piece of gold. If someone grabs your precious model from your datafile, he can do as many copies as he wishes. So, no, this example doesn't work since here it totally doesn't matter how many people crack through your worthless protection: one is enough." CreationDate="2010-09-28T15:12:53.947" UserId="2188" />
  <row Id="4678" PostId="4136" Text="Thank you, sounds radically, but interesting. Stack of active states can be used to render all states and update only the topmost. PauseState on the top of the stack lets you render GamePlayState, too, but to stop updating it. GUI doesn't allow this. Hierarchy of states lets you share data between game states without having global variables." CreationDate="2010-09-28T15:13:59.533" UserId="1677" />
  <row Id="4679" PostId="4121" Text="@Blair: that's the point! Since you **can't** really secure it, it is mandatory for you (if you are not stupid) to exactly know what these incompetents want you to do. Otherwise whatever you do, since it won't work, you can be held liable (of not doing something that couldn't be done in the first place)." CreationDate="2010-09-28T15:15:13.940" UserId="2188" />
  <row Id="4680" PostId="4136" Text="So your Location object contains scene graph and you mount somehow shared objects (hero, inventory etc.) into it?" CreationDate="2010-09-28T15:15:40.453" UserId="1677" />
  <row Id="4681" PostId="4134" Text="My question is well-formulated. I can ask it in another way: which scene graph classification do you know / would you propose?" CreationDate="2010-09-28T15:20:21.010" UserId="1677" />
  <row Id="4682" PostId="4127" Score="2" Text="Are you *sure* that faster framerates drains the battery any significant amount? I mean, did you actually try or you just assumed it? Remember that on most mobile phones the huge battery drain is the display itself." CreationDate="2010-09-28T15:21:15.077" UserId="2188" />
  <row Id="4683" PostId="4125" Text="One is enough, assuming the others care enough to stop looking at their local files and go online to look, and providing someone went to the effort of posting the stuff online (which is illegal, whereas viewing your local copy is not), or posting instructions, which assume you have the patience to go through with them. Every little helps." CreationDate="2010-09-28T15:44:51.900" UserId="1101" />
  <row Id="4685" PostId="4136" Score="1" Text="@Pavel: you can do that sort of thing with a single game loop, an 'is_paused' flag, and a GUI. eg. bind the Escape key to { pauseGame(); showMenu(); } and when you close the menu, call { unpauseGame(); hideMenu(); } There are no more globals needed in this case than the state stack case - you essentially just have 1 game state instead of several." CreationDate="2010-09-28T15:50:50.033" UserId="1101" />
  <row Id="4686" PostId="4136" Text="@Pavel: As for rendering, scene graph' can mean a variety of things but it doesn't have to live within a Location at all. You build the scene graph out of the data in the current location, maybe at load time, maybe dynamically. (Personally I'm not convinced traditional scene graphs are a great idea anyway but it's up to you.)" CreationDate="2010-09-28T15:53:18.347" UserId="1101" />
  <row Id="4687" PostId="4135" Text="Someone recommended physfs to me the other night. Nice little library." CreationDate="2010-09-28T16:25:47.923" UserId="613" />
  <row Id="4688" PostId="425" Text="I've implemented a scripting language for my current game project, and the primary advantage is total control over language primitives. Prebuilt scripting solutions are generic, and you may not need all of the features that they provide. You absolutely should *not* think about rolling your own language unless you're *certain* that you can make something that's better for your game than an existing solution." CreationDate="2010-09-28T16:29:35.027" UserId="2081" />
  <row Id="4689" PostId="4134" Text="Please edit your posting to be a question. Are you looking for a list of ways to implement a scene graph?" CreationDate="2010-09-28T17:53:17.110" UserId="14" />
  <row Id="4690" PostId="4134" Text="It's pretty clear, that I ask about concepts, not about implementations." CreationDate="2010-09-28T18:07:06.533" UserId="1677" />
  <row Id="4691" PostId="3807" Text="Please edit your posting to be a question." CreationDate="2010-09-28T18:08:13.660" UserId="1677" />
  <row Id="4692" PostId="4134" Score="2" Text="@ Joe Wreschnig, your question (http://gamedev.stackexchange.com/questions/3807/parallel-worlds-in-box2d) does not look like a question either. Downvoted for double standards." CreationDate="2010-09-28T18:09:06.793" UserId="1677" />
  <row Id="4693" PostId="4143" Text="I used a trie for a [game I wrote in Actionscript 3](http://playadlib.com) with good results. My dictionary had about 80,000 words and I scanned the board for all possible words in real time. The advantage of a trie over a dictionary is better space efficiency and the ability to find all prefixed words in a string. i.e. the string &quot;catchers&quot; contains the words &quot;cat&quot;, &quot;catcher&quot;, and &quot;catchers&quot;." CreationDate="2010-09-28T18:19:55.250" UserId="539" />
  <row Id="4694" PostId="4125" Text="Every little helps **for what**? Preventing users from watching your data and doing nothing about it is so utterly pointless that makes me sad. This idiotic requirement most certainly exists to prevent other people from re-using those data, so you only have to care about determined people who *will* try hard and succeed (because, as I said, in the long run they just *can't* fail)." CreationDate="2010-09-28T18:24:40.703" UserId="2188" />
  <row Id="4695" PostId="4140" Text="Please bear with me but I really do not understand: what's the point on using a middleware such as Unity, if it doesn't handle this kind of problem? **It's his job** FFS!" CreationDate="2010-09-28T18:28:23.257" UserId="2188" />
  <row Id="4696" PostId="4137" Text="Shouldn't this question be moved to http://gaming.stackexchange.com/ ?" CreationDate="2010-09-28T18:40:01.497" UserId="2193" />
  <row Id="4697" PostId="2841" Score="1" Text="This is an amazing link. Thank you." CreationDate="2010-09-28T18:41:09.590" UserId="2100" />
  <row Id="4698" PostId="4137" Score="4" Text="@jpbochi According to [your meta](http://meta.gamedev.stackexchange.com/questions/58/do-mod-and-map-making-questions-belong-here/59#59) it belongs here.  Questions about how to play a mod go on [Gaming](http://gaming.stackexchange.com/)." CreationDate="2010-09-28T18:44:31.517" UserId="2319" />
  <row Id="4699" PostId="4136" Score="1" Text="@Kylotan: How do you implement mini-games without states? Different modes of gameplay (exploring, combat etc.)? If you have many hierarchical submenus, it is not enough to have a showMenu() function. May be I'm wrong, but I think your code will become spaghetti code, if you do not use Game States in these cases." CreationDate="2010-09-28T19:13:35.250" UserId="1677" />
  <row Id="4700" PostId="4144" Text="Weird, it looks like it's using the same software/theme as a similar game site, http://gamejobhunter.com/" CreationDate="2010-09-28T19:42:05.583" UserId="51" />
  <row Id="4701" PostId="3807" Score="2" Text="@Pavel He actually does ask a question even though he is lacking a question mark." CreationDate="2010-09-28T19:52:19.097" UserId="14" />
  <row Id="4702" PostId="4134" Text="@Pavel So you are looking for a list of concepts then, according to site policy list questions should be CW. And I asked, because atleast to me it *wasn't* clear what you were asking for." CreationDate="2010-09-28T19:53:33.557" UserId="14" />
  <row Id="4703" PostId="4134" Text="@Noctrine, If classification == list, that's right. I will be grateful for a link (FAQ doesn't contain info about CW). If a question should be CW, that's no problem." CreationDate="2010-09-28T20:02:39.527" UserId="1677" />
  <row Id="4704" PostId="4128" Text="Ah good point, I didn't think about that. But it still helps that it's consistent." CreationDate="2010-09-28T20:03:48.700" UserId="189" />
  <row Id="4705" PostId="3807" Text="At least to me it wasn't clear what he was asking for." CreationDate="2010-09-28T20:05:05.180" UserId="1677" />
  <row Id="4706" PostId="4134" Text="Well, because you say that you are looking for one per answer. Which implies a list. Going by current consensus, lists should be CW. And I think that if you want this to become a valuable source of information. For an example see (http://gamedev.stackexchange.com/questions/480/version-control-for-game-development-issues-and-solutions) for consensus see (http://meta.gamedev.stackexchange.com/questions/139/questions-that-are-list-of-x) " CreationDate="2010-09-28T20:05:19.417" UserId="14" />
  <row Id="4707" PostId="4134" Text="The onsite FAQ still needs to be updated. It still only contains the default text, and unlike other SE sites it hasn't been customized yet. We have a meta topic on what our Faq should contain." CreationDate="2010-09-28T20:06:06.953" UserId="14" />
  <row Id="4708" PostId="4127" Text="More time that the processor is sleeping means less power used. Assuming the app is running at a slower rendering speed and sleeping that other part of the time, it will definitely save power. But you are definitely right in questioning just how much power that might be, if it's negligible compared to the display or something else." CreationDate="2010-09-28T20:07:46.717" UserId="189" />
  <row Id="4709" PostId="3807" Text="&quot;if someone has already written this code&quot; Someone can answer &quot;Yes&quot; to the wondering of Joe Wreschnig and it will be legal answer. But I suppose he doesn't going to appreciated that." CreationDate="2010-09-28T20:09:02.877" UserId="1677" />
  <row Id="4710" PostId="4144" Text="Interesting, I did not knew this one..." CreationDate="2010-09-28T20:21:48.450" UserId="469" />
  <row Id="4711" PostId="4144" Text="I forgot pressing &quot;enter&quot; on comments submits them... Anyway, I know that game industry grunts was made by a Ubisoft employee (that is obviously fan of Warcraft... actually the logo previously was a Orc Grunt head)" CreationDate="2010-09-28T20:22:55.113" UserId="469" />
  <row Id="4712" PostId="4134" Text="@Noctrine, Thank you for links. In the provided meaning my question is not of type &quot;list of X&quot;. I ask about classification (http://en.wikipedia.org/wiki/Taxonomy). Basis of classification can be very successful and precise. Finding it require some analytical work. Classification can be complete or not (despite of typical and broad list questions). So it can be objectively assessed. So I think it's not a list question." CreationDate="2010-09-28T20:23:02.390" UserId="1677" />
  <row Id="4713" PostId="4134" Text="@Pavel No problem. Sorry to say but the CW-conversion is a permanent one. You would at this point need to recreate the question for it to not be CW. Also, while I agree that it can be objectively assessed, it doesn't seem like you are asking for an objective assessment. It appears as though you are asking people to answer with the classifications that they know about and/or like, hence, a list and my decision. I may have interpreted your meaning incorrectly, but from how it is written that is what I see." CreationDate="2010-09-28T21:14:19.933" UserId="14" />
  <row Id="4714" PostId="3807" Score="2" Text="@Pavel Yes, I am sure he expected someone to explain what made it a workable design or not even if he didn't ask for it explicitly. As an answer of &quot;Yes&quot; would be downvoted more than likely. Also, being petty helps no one." CreationDate="2010-09-28T21:20:58.233" UserId="14" />
  <row Id="4715" PostId="4137" Text="@CRoss - while that may be the case (and I feel only a subset of questions related to modding are really appropriate here), gaming is where you would have an audience that may be able to answer your question." CreationDate="2010-09-28T21:21:57.203" UserId="1780" />
  <row Id="4716" PostId="4137" Text="Actually creating mods is more related to game developement than to gaming in general." CreationDate="2010-09-28T21:27:17.050" UserId="2188" />
  <row Id="4717" PostId="4134" Text="@Noctrine, No problem, let it be CW. I'm sure you are good and reasonable moderator. I just wanted to make my question more clear." CreationDate="2010-09-28T21:28:24.837" UserId="1677" />
  <row Id="4718" PostId="2281" Text="@TandemAdam: it *won't* become popular if you can't google it in the first place" CreationDate="2010-09-28T21:29:51.523" UserId="2188" />
  <row Id="4719" PostId="4105" Text="Kylotan, I have updated the question with two YouTube videos to help with visualization.  I should have done this from the start." CreationDate="2010-09-28T21:31:18.950" UserId="2288" />
  <row Id="4720" PostId="4146" Text="They actually use this in the gameplay also. IIRC Guybrush still doesn't know the &quot;Secret of Monkey Island&quot;" CreationDate="2010-09-28T21:43:27.683" UserId="14" />
  <row Id="4721" PostId="4136" Score="1" Text="Wow.  The games I've worked on with state stacks were the ones with the fewest (i.e. *zero*) state transition bugs.  I'm not sure how Joe W thinks that this post isn't about global variables, either." CreationDate="2010-09-28T21:53:28.267" UserId="1780" />
  <row Id="4722" PostId="4085" Text="Downvoted because?" CreationDate="2010-09-28T22:02:41.557" UserId="1780" />
  <row Id="4723" PostId="4134" Score="2" Text="Wow what a bunch of babies.  Gotta love it when folks stoop to revenge downvoting.  */me grows wearier and wearier of this site.*  This is a terrible question because the answers are too broad, vague, and useless, not because there (wasn't|isn't) a question mark in it." CreationDate="2010-09-28T22:12:27.413" UserId="1780" />
  <row Id="4724" PostId="4134" Score="1" Text="(In case it wasn't obvious, the &quot;at least have a question mark&quot; was a rhetorical flourish. Plenty of shitty non-questions on this site have plenty of question marks.)" CreationDate="2010-09-28T22:56:10.610" UserId="744" />
  <row Id="4725" PostId="4137" Score="2" Text="@dash I'll tell you right now this question will get closed to gaming.  It specifically [prohibits](http://meta.gaming.stackexchange.com/questions/544/do-map-editor-questions-belong-here/545#545 &quot;maps&quot;) [discussion](http://meta.gaming.stackexchange.com/questions/562/do-mod-development-questions-belong-here/566#566 &quot;mods&quot;) on the creation of mods.  For reference on [what is allowed](http://meta.gaming.stackexchange.com/questions/1130/are-questions-about-prominent-mods-on-topic &quot;spoiler: questions about play&quot;) on gaming" CreationDate="2010-09-28T23:05:08.983" UserId="2324" />
  <row Id="4726" PostId="4136" Text="@dash-tom-bang: I'd encourage you to weigh in at http://gamedev.stackexchange.com/questions/1783/ - while I do still agree with everything I wrote there, I think there is a lot more to be said in defense of state systems that is also not there. In terms of sharing data, I strongly prefer to think about resource ownership and object lifetimes, and not global state variables. In that sense, I agree with Kylotan's answer - sharing data should be managed through zero states. Some systems must manage state _within that system_ - that's not for data sharing, but their own encapsulated computation." CreationDate="2010-09-28T23:06:20.480" UserId="744" />
  <row Id="4727" PostId="4140" Score="2" Text="I think you've misunderstood my question. Unity 3 and UDK *do* include static PVS in their engines. I'm asking how best to implement it myself." CreationDate="2010-09-28T23:08:48.987" UserId="93" />
  <row Id="4728" PostId="4137" Text="This question does not seem to ask about creating mods, but about whether or not they are enabled by the software.  The OP does not specify if he intends to create a mod or just desires to one day download one.  I would find it hard to believe that they would prohibit discussion of mods from a player's perspective." CreationDate="2010-09-28T23:25:20.313" UserId="1780" />
  <row Id="4729" PostId="1829" Text="Using a stack does not preclude the use of explicit state transitions." CreationDate="2010-09-28T23:50:40.370" UserId="1780" />
  <row Id="4730" PostId="4137" Score="2" Text="@dash the question could be asked in a manner that's on-topic for either community TBQH. &quot;What tools are available to mod Civilization V&quot; would make more sense here. &quot;Are there any/will there be any mods for Civilization V&quot; would fit in more at Gaming.SE. While this question as phrased is admittedly, slightly ambiguous between those two." CreationDate="2010-09-28T23:51:56.420" UserId="2206" />
  <row Id="4731" PostId="1999" Text="That's a great doc and explains it almost exactly how I've implemented it in the past, short of the needless object hierarchy that they use in the examples." CreationDate="2010-09-28T23:52:57.010" UserId="1780" />
  <row Id="4732" PostId="3741" Text="I prefer those implementations where the only state that can affect anything is the state that's on top, although in some cases it is handy to be able to filter the state input and pass processing to a &quot;lower&quot; state.  (E.g. controller input processing maps to this method, the top state takes the bits it cares about and possibly clears them then passes control to the next state on the stack.)" CreationDate="2010-09-28T23:56:59.133" UserId="1780" />
  <row Id="4733" PostId="4136" Text="@Joe- have done, thanks.  Spent way too much time but waiting for a build so I can rationalize..." CreationDate="2010-09-29T00:30:06.233" UserId="1780" />
  <row Id="4734" PostId="4137" Text="@LessPop- given the OP's reference of what I presume to be someone else's mod, it seems *to me* to be from a player's perspective rather than a developer's." CreationDate="2010-09-29T00:33:22.817" UserId="1780" />
  <row Id="4735" PostId="4127" Text="When I look at what's been consuming the battery on my Android device, it's usually around 90% display and 10% app execution." CreationDate="2010-09-29T00:34:39.903" UserId="1780" />
  <row Id="4736" PostId="4128" Score="2" Text="I've shipped highly-regarded action games that ran between 18 and 20 fps.  People universally thought it ran faster than that (and our geometry was resilient in the face of tearing).  The key is consistency and &quot;fast enough for what the game is trying to do.&quot;  PixelJunk games would be very different if they were 30 instead of 60." CreationDate="2010-09-29T00:36:39.070" UserId="1780" />
  <row Id="4737" PostId="4138" Text="This is how the excellent SciTE editor does its configuration, and while documentation on the settings could be better it's pretty convenient to be able to edit in such a &quot;computer friendly&quot; format." CreationDate="2010-09-29T00:38:55.933" UserId="1780" />
  <row Id="4738" PostId="4123" Text="Let's say like Game Maker. While it allows to implement any game mechanic, it still OK to Klik and Play. It doesn't need to have visual script editor like Kismet." CreationDate="2010-09-29T02:39:05.633" UserId="2156" />
  <row Id="4739" PostId="4119" Text="If someone cracks your zip file, how is that your problem? Really. They can crack anything you can throw at them. You tried. Where do you draw the line for what these licensors can hold you responsible for?" CreationDate="2010-09-29T05:39:28.787" UserId="101" />
  <row Id="4740" PostId="4123" Text="That is very different to the question that you have asked. Perhaps try asking another one that better explains your requirements. Or take my short answer, which is: use C# delegates as the basis of a system that can treat functions like objects. Use those objects to build a GUI system, or expose the system to advanced end users via C# as described in my answer." CreationDate="2010-09-29T06:00:52.070" UserId="288" />
  <row Id="4741" PostId="4092" Score="2" Text="Just a quick note: you can fairly easily render arbitrary text (characters or full strings) to a texture (XNA or otherwise) using one of the Windows APIs (the XNA content pipeline uses GDI+ internally)." CreationDate="2010-09-29T06:03:17.663" UserId="288" />
  <row Id="4742" PostId="4098" Text="No you're not. You can do that by sorting the rendering order and stay in 2D." CreationDate="2010-09-29T06:22:04.257" UserId="908" />
  <row Id="4743" PostId="4092" Text="@Andrew Oh, that sounds like it'd be really useful! How would I go about it though, is there anyway to render to a Texture2D via the Windows API?" CreationDate="2010-09-29T07:11:12.317" UserId="2289" />
  <row Id="4744" PostId="1115" Text="@Tetrad: It's very easy to implement widget groups with auto-layouts, relative positions or absolute positions (Nvidia widgets does this.) It lets you very easily contain widgets inside windows or panels. For the &quot;disabled&quot; state, I can't see why this would not be trivially implemented. For &quot;gamey things&quot;, I think the immediate mode concepts are actually more suitable than retained mode, since the widgets are updated every frame." CreationDate="2010-09-29T08:29:57.307" UserId="1887" />
  <row Id="4745" PostId="4127" Text="Ha! Yes, great point - I realised that sleeping the thread as much as possible would save power, but had totally assumed the amount saved would actually be significant. As you say, the amount saved might not even be noticeable. True, it's normally the display that takes the lion's share of the power, but when apps appear on the list too [on Android, at least], it tends to be games that appear highest. If I can stretch the battery life by 10%, it'll totally be worth it. @Lo'oris is right though - measuring the actual benefit will be interesting." CreationDate="2010-09-29T08:58:25.943" UserId="2314" />
  <row Id="4746" PostId="4140" Text="Oooh, thanks :)" CreationDate="2010-09-29T09:15:43.380" UserId="2188" />
  <row Id="4747" PostId="4136" Text="@Pavel: it's not that I don't think you'd ever have states at all, but that rather than having this vague concept of a State which can mean anything from loading to menus to different gameplay types, you limit it to the stuff that really matters, and use it where needed, not as containers for the whole game. If you have different gameplay at some point, then maybe you have 2 different objects that encapsulate gameplay state and switch between them - but they don't own substates, or live on a stack, or any of that." CreationDate="2010-09-29T10:00:11.203" UserId="1101" />
  <row Id="4748" PostId="4136" Text="@dash-tom-bang: I can't help but feel that the stack is just a hack that people use with game states once they realise that certain things must outlive individual states - so they push it up the stack. However I'm not completely against the use of states, as long as they refer to homogeneous objects, reflect truly different types of interaction, and aren't just dumping grounds for pseudo-globals." CreationDate="2010-09-29T10:04:49.887" UserId="1101" />
  <row Id="4749" PostId="4136" Text="@Pavel: oh, and on the menus - that's a property of the menu object. You don't need to store anything outside the menu to remember which part of the menu you're on, if your GUI is adequate. Ideally you should be able to pop up any menu at any time, without necessarily pausing the game (think about multiplayer)." CreationDate="2010-09-29T10:08:27.713" UserId="1101" />
  <row Id="4750" PostId="4092" Score="1" Text="Not directly. The basic process involves rendering text to a surface, and then copying that surface into a texture. (DirectWrite in SlimDX *might* give you a more direct route - I haven't used it, so I don't know for sure). Suggest you ask for the details in a new question." CreationDate="2010-09-29T10:10:24.103" UserId="288" />
  <row Id="4751" PostId="4154" Text="Should be CW, please split out each API you list into a separate answer." CreationDate="2010-09-29T10:20:05.430" UserId="744" />
  <row Id="4752" PostId="4137" Score="2" Text="@dash-tom-bang, I think it's kind of unimportant what perspective the question was written from, while more important what the question actually asks. As a game developer I want to know the answer to this question, and so I think it's perfectly suited for right here." CreationDate="2010-09-29T12:01:31.463" UserId="323" />
  <row Id="4753" PostId="4154" Text="How is this different from http://gamedev.stackexchange.com/questions/3753/cross-platform-audio-api-suggestions ?" CreationDate="2010-09-29T12:09:46.970" UserId="189" />
  <row Id="4754" PostId="4105" Text="Thanks Alex and Richard for elaborating on the problem and the solution." CreationDate="2010-09-29T12:26:18.433" UserId="1101" />
  <row Id="4755" PostId="4154" Text="It isn't, but I'd say both should be CW." CreationDate="2010-09-29T13:14:54.763" UserId="1101" />
  <row Id="4757" PostId="4159" Text="Could you possibly name one or two design patterns that you've used frequently in your game development, and for what reason?  As a beginner with respect to design patterns, &quot;all of them&quot; is not a particularly helpful response.  Thank you for responding, though." CreationDate="2010-09-29T13:24:47.020" UserId="825" />
  <row Id="4758" PostId="4157" Text="&quot;Perhaps there are other, more game-programming-specific design patterns that I am not even aware of?&quot; - no, these patterns are generic, and apply more to extending the capabilities of the language you're using. They have nothing to do with the subject matter of your application." CreationDate="2010-09-29T13:25:23.527" UserId="1101" />
  <row Id="4760" PostId="4157" Score="1" Text="@Kylotan It seems from my limited point of view that since each design pattern is meant to address a particular problem in an effective manner, by their nature some design patterns would be more useful than others given a specific problem set, namely in this case, those problem sets unique to game development. Surely there are some guidelines, or based on your experience, particular design patterns that you find yourself using more frequently than others?" CreationDate="2010-09-29T13:38:20.900" UserId="825" />
  <row Id="4762" PostId="4161" Text="Thanks, Kylotan, this is super helpful!" CreationDate="2010-09-29T13:47:24.723" UserId="825" />
  <row Id="4763" PostId="4157" Text="@Kylotan Thanks for your detailed answer below!" CreationDate="2010-09-29T13:48:39.737" UserId="825" />
  <row Id="4764" PostId="4111" Text="Well, this isn't my job yet. :P (and maybe &quot;corporate&quot; wasn't the best word... it's a firewall at my school)" CreationDate="2010-09-29T13:59:03.040" UserId="1934" />
  <row Id="4765" PostId="4159" Score="2" Text="Asking &quot;what patterns have you used?&quot; is like asking &quot;what variable names have you used?&quot; It comes down to personal style and requirements and domain. At some point, you will probably use any pattern that's ever been named. You will probably use many more that have not been named, and maybe even invent some new ones." CreationDate="2010-09-29T14:07:08.340" UserId="744" />
  <row Id="4766" PostId="4162" Score="3" Text="Yes, one of the things made clear in the original book (but often overlooked) is that if it were written for C rather than C++/Smalltalk, they might have had included an &quot;Inheritance&quot; pattern, and by the same token, some languages might contain some of the GoF patterns already built in." CreationDate="2010-09-29T14:14:05.353" UserId="1101" />
  <row Id="4767" PostId="4159" Text="@jcurrie33: sorry, I just couldn't resist having a dig at singletons first. ;)" CreationDate="2010-09-29T14:16:36.847" UserId="1101" />
  <row Id="4768" PostId="4162" Score="8" Text="The other thing often overlooked in the original book (the original original book by Alexander, not GoF) was that patterns are a tool for _communication_, not _implementation_. They let designers communicate about implementation at a higher level, and are identified because they are recurring, not necessarily because they should be used when possible." CreationDate="2010-09-29T14:19:17.407" UserId="744" />
  <row Id="4769" PostId="4162" Text="However, merely having the terminology can help you reason about the problem and recognise when such an approach is a good solution. The best patterns have typically been refined over time by skilled and experienced workers, and less skilled workers would not discover the same patterns themselves without there being these codified examples." CreationDate="2010-09-29T14:31:40.347" UserId="1101" />
  <row Id="4770" PostId="4162" Text="I agree that having the terminology is great, and part of the definition of a pattern is that it is a good recurring solution for some problem. Unfortunately the less skilled workers tend to find mostly Singleton, and apply it to _every_ problem, even when there is not yet a problem." CreationDate="2010-09-29T14:36:57.720" UserId="744" />
  <row Id="4771" PostId="4165" Text="Thanks for the input! I was not aware of that book, but will look into it now as a result of your post. Thanks again!" CreationDate="2010-09-29T15:02:08.297" UserId="825" />
  <row Id="4773" PostId="4165" Score="2" Text="Singleton for the keyboard reader is exactly the situation where I have to ask - Can you really not just make it a global pointer set early in your main function? Have you ever actually accidentally instantiated two keyboard readers?" CreationDate="2010-09-29T15:09:57.930" UserId="744" />
  <row Id="4777" PostId="4070" Score="1" Text="&quot;ideally a game should give no advantage to a stupid bot,&quot; good advice +1" CreationDate="2010-09-29T16:01:18.713" UserId="2260" />
  <row Id="4778" PostId="4078" Text="The first two links are fantastic! However, that thesis is a little rough with all the &quot;deadwood&quot; text. It's just not in a form that I can view as helpful to its content." CreationDate="2010-09-29T16:02:50.410" UserId="2100" />
  <row Id="4780" PostId="4092" Text="@Andrew I'll do that, thanks for the tip!" CreationDate="2010-09-29T16:49:04.447" UserId="2289" />
  <row Id="4781" PostId="4137" Text="&quot;Does game X have feature Y?&quot;" CreationDate="2010-09-29T18:14:59.250" UserId="1780" />
  <row Id="4782" PostId="4153" Text="Wow, thanks for the excellent answer. Plenty of reading meterial there." CreationDate="2010-09-29T18:21:33.600" UserId="93" />
  <row Id="4783" PostId="4167" Text="And the question is...?" CreationDate="2010-09-29T18:28:22.650" UserId="2188" />
  <row Id="4784" PostId="4143" Text="Thanks, I will take a look at trie. Never heard of them to be honest." CreationDate="2010-09-29T19:03:22.500" UserId="2219" />
  <row Id="4785" PostId="3667" Text="@caspin: You can use plain variables and instead have `H(int, myvar, 5)` and when file changes you replace the `myvar` in memory. See https://mollyrocket.com/forums/viewtopic.php?p=5395#5395" CreationDate="2010-09-29T19:11:31.050" UserId="1887" />
  <row Id="4786" PostId="4167" Text="The title &quot;How to make a score charts analysis&quot; or any methods to do it ." CreationDate="2010-09-29T19:12:21.303" UserId="2167" />
  <row Id="4787" PostId="4169" Score="1" Text="Would you like to have a sketch/drawing of &quot;how I meant&quot; this thing?" CreationDate="2010-09-29T20:17:57.677" UserId="2063" />
  <row Id="4788" PostId="4167" Text="or any flash plugins help to do it ." CreationDate="2010-09-29T20:58:11.727" UserId="2167" />
  <row Id="4789" PostId="3772" Text="I don't really get your example, it's like there is a second frustrum ? does it rasterizes another part of the scene ? Can you give an example with shadows ?" CreationDate="2010-09-29T21:04:18.677" UserId="1829" />
  <row Id="4790" PostId="3754" Score="2" Text="We're getting the game developer answer here (which, in this case, happens to be the same). No one came to this site to get Stack Overflow answers, they wanted opinions from professionals specifically interested in supporting a game developer community. If they're the same, so be it, because that certainly won't always be the case, and that's part of the reason this site is useful. See http://meta.gamedev.stackexchange.com/questions/3/programming-questions-here-or-belongs-on-stackoverflow/14#14 for more explanation." CreationDate="2010-09-29T21:13:32.250" UserId="2100" />
  <row Id="4791" PostId="4171" Text="I mean the second case ." CreationDate="2010-09-29T21:19:35.170" UserId="2167" />
  <row Id="4792" PostId="4169" Text="You might try posting this at http://www.stackoverflow.com since it isn't directly game development related; perhaps there are more graphics experts over there that could help you." CreationDate="2010-09-29T21:35:35.153" UserId="189" />
  <row Id="4793" PostId="4150" Text="Not a classification." CreationDate="2010-09-29T22:05:03.667" UserId="1677" />
  <row Id="4794" PostId="4167" Score="1" Text="why not just create your own chart? They are not that hard to make." CreationDate="2010-09-29T23:57:15.280" UserId="560" />
  <row Id="4795" PostId="4170" Score="3" Text="That's the issue, I know about the CharaterRegions section. The problem is I'd need about 6000 characters, which is infeasible at compile time, seeing as it takes about 20 minutes to generate all those bitmaps." CreationDate="2010-09-30T00:40:41.030" UserId="2289" />
  <row Id="4796" PostId="4161" Text="A very enlightening discussion on singletons can be found here: http://misko.hevery.com/2008/08/25/root-cause-of-singletons/" CreationDate="2010-09-30T07:01:22.677" UserId="2272" />
  <row Id="4797" PostId="4083" Text="For Torchlight only very little was changed. See here: http://www.ogre3d.org/forums/viewtopic.php?f=11&amp;t=49496&amp;p=345027#p345027" CreationDate="2010-09-30T09:30:23.333" UserId="685" />
  <row Id="4798" PostId="386" Score="2" Text="People, what you *believe* is irrelevant: either you **know** or you **don't know**." CreationDate="2010-09-30T09:54:23.960" UserId="2188" />
  <row Id="4799" PostId="4106" Text="yup, except for box2d/chipmunk of course" CreationDate="2010-09-30T11:01:46.993" UserId="490" />
  <row Id="4800" PostId="4137" Text="@LessPop_MoreFizz good point, I think you're right. Still, even what @ZorbaTHut said makes sense." CreationDate="2010-09-30T11:44:57.073" UserId="2188" />
  <row Id="4801" PostId="4170" Score="1" Text="This answer doesn't really address the question, which was how do you render text on the fly using the Windows API." CreationDate="2010-09-30T13:36:26.277" UserId="1597" />
  <row Id="4802" PostId="4181" Text="I had this exact same question regarding iPhone games using the same technique to create a global highscore table." CreationDate="2010-09-30T14:53:16.773" UserId="370" />
  <row Id="4803" PostId="4178" Text="That link is exactly what I was looking for. I can't thank you enough; this is extremely helpful." CreationDate="2010-09-30T15:17:12.393" UserId="2100" />
  <row Id="4804" PostId="4115" Text="I'm marking this as the answer because it truly answers &quot;How should I design...&quot;. Thanks for this, it definitely put me on the right path." CreationDate="2010-09-30T15:20:30.597" UserId="2100" />
  <row Id="4805" PostId="4129" Text="Thank you for your input. I really appreciate the visuals, and this really got me thinking about how the mechanic could work behind the scenes." CreationDate="2010-09-30T15:21:07.570" UserId="2100" />
  <row Id="4807" PostId="4161" Text="+1 for the Strategy pattern.  I've used it for the exact purpose stated above (plugging in different A* heuristics)." CreationDate="2010-09-30T16:32:24.727" UserId="136" />
  <row Id="4808" PostId="4176" Text="Components as used in game design are more like a stateful strategy pattern - which is naturally expressed as closures outside of C/C++/Java/C#, and as component objects inside them. The decorator pattern is more like a proxy; its ownership and data flow are opposite those we normally mean when we talk about component systems in games." CreationDate="2010-09-30T19:01:34.880" UserId="744" />
  <row Id="4809" PostId="4186" Score="1" Text="&quot;It's not exactly a design pattern since it's not strickly[sic] OOP.&quot; Design patterns have nothing to do with OOP; if anything, OOP itself is a design pattern. Design patterns appear not just outside of OOP, but outside software development entirely." CreationDate="2010-09-30T19:05:22.127" UserId="744" />
  <row Id="4810" PostId="4136" Text="@Kytolan I agree with the overengineering worry; in C and C++ I implement states as enum values and switch statements; turning these into &quot;rich objects&quot; definitely has a negative impact on browsability, comprehensibility, and execution speed.  On the other hand, in Python I implemented them as modules/objects that I threw on the stack, and it worked out well enough since enums and switches are *ahem* less convenient in Python.  :)" CreationDate="2010-09-30T19:10:40.567" UserId="1780" />
  <row Id="4811" PostId="4132" Text="Globally available, globally mutable state is almost always the wrong solution." CreationDate="2010-09-30T19:11:28.583" UserId="1780" />
  <row Id="4812" PostId="4173" Score="2" Text="An alternative, if you have more memory than render time, is to simply reflect your world geometry through the mirror in your 3D editor, then you can modify it to look however you want (enforce lower mip levels, etc.).  We did this on the PS1, where stuff sitting on a shiny floor was duplicated/inverted underground, and the floor itself was rendered semitransparent." CreationDate="2010-09-30T19:15:08.547" UserId="1780" />
  <row Id="4813" PostId="4132" Text="Okay then let's say you write a multiplayer game. The main menu establishes a network connection, stored in some sort of network connection variable, and then starts the game state. How does the game state get access to that network connection without shared data?" CreationDate="2010-09-30T20:36:16.863" UserId="189" />
  <row Id="4814" PostId="4136" Text="Game states are a logical refactoring of this answer's proposed &quot;big messy loop with lots of flags and switch statements&quot;. I'd like to know some concrete examples of games that shove everything into a single game loop method with no concept of state objects. And as for &quot;global variables&quot;, there's no difference, can't you see? - my suggestion is to have some variables shared by several states; this answer suggests all the states together in one loop, with shared variables. Absolutely no difference right? Or you can use Singletons (AKA global variables)." CreationDate="2010-09-30T20:46:40.767" UserId="189" />
  <row Id="4815" PostId="4192" Text="Certainly is. Looks like a salted hash is a good way to go. I hadn't considered that they'd resend the same valid score many times. A GUID and a timestamp included in the packet (and in the hash) should put paid to that - I can check for dupes on the server. Thank you." CreationDate="2010-09-30T21:25:16.043" UserId="2314" />
  <row Id="4816" PostId="4182" Text="I'd go even one further. Generate a hash from the code by hashing the exe file (or part of it). When sending scores send the version number and the server can validate using a table that has simple constants version number-&gt;hash code. Then you get the added bonus that if someone cheats by modifying the program, his high score wouldn't count." CreationDate="2010-09-30T21:31:12.957" UserId="1821" />
  <row Id="4817" PostId="4182" Score="4" Text="If someone is modifying the program, they can already send whatever key they want." CreationDate="2010-09-30T22:06:47.410" UserId="744" />
  <row Id="4818" PostId="4163" Score="1" Text="&quot;Figuring out max population&quot; doesn't scale, and that is bad. If players &quot;closing their accounts&quot; suddenly lose their money, rest assured they won't &quot;open&quot; them again - you should want for them to come back instead!" CreationDate="2010-09-30T23:30:52.253" UserId="2188" />
  <row Id="4819" PostId="4193" Score="2" Text="That you are on Android really does not matter. I feel like everything high-level about game state is adequately covered by http://gamedev.stackexchange.com/questions/1783/game-state-stack and http://gamedev.stackexchange.com/questions/4131/game-state-sharing-data." CreationDate="2010-10-01T00:03:48.043" UserId="744" />
  <row Id="4820" PostId="4132" Score="2" Text="Shared data does not mean global data. Pass what you need, don't pass what you don't, and don't access anything you aren't passed. (That's the ideal at least.)" CreationDate="2010-10-01T00:07:09.550" UserId="744" />
  <row Id="4821" PostId="4195" Score="1" Text="Usually the playback, not the recording, is the part that is infeasible for the server. If the client's been playing the game for a couple hours, the server-side resimulation could take many CPU-minutes or worse. That's not really acceptable if you have a lot of people submitting scores." CreationDate="2010-10-01T00:11:41.413" UserId="744" />
  <row Id="4822" PostId="4193" Text="This question doesn't need the &quot;android&quot; bit, nor &quot;java&quot;, but afaik we haven't discussed the toplevel game loop here yet." CreationDate="2010-10-01T00:18:16.557" UserId="1780" />
  <row Id="4823" PostId="4194" Text="Without polymorphism in the entity (your &quot;Character&quot;), this can also be accomplished with an abstract AI base class and derivations, PlayerAi, NpcAi, LuaAi, etc.  Even better perhaps would be for it *all* to be Lua controlled, and the Lua could do the controller &quot;AI&quot; processing." CreationDate="2010-10-01T00:26:15.723" UserId="1780" />
  <row Id="4824" PostId="4194" Text="This is basically how it worked in the one game I worked on using Lua.  Each thing that wanted Lua control had a LuaComponent, and that component had its own Lua VM which got a single 'tick' per frame.  I can't say that it worked great, but it did result in a shipping game." CreationDate="2010-10-01T00:27:32.870" UserId="1780" />
  <row Id="4825" PostId="4187" Score="1" Text="I just want to point out that you can also get the window handle for xna and tell it to render to something like a win32 panel instead. Then you can use any method you want to render on top of the game since you are simply drawing the backbuffer  to a win32 control. This is very dirty but it worked well for me when I merged the Tablet PC input panel with XNA. The result was what appeared to be a standard XNA window but with invisible handwriting recognition. I simply displayed strokes on top of xna. Of course text/labels/buttons will work too. However, I have not tried this with WPF." CreationDate="2010-10-01T00:58:04.767" UserId="2345" />
  <row Id="4826" PostId="4194" Text="True. Thank you for an addition to my answer about components. I'm really a fan of component-based approach." CreationDate="2010-10-01T01:53:00.290" UserId="1677" />
  <row Id="4830" PostId="4129" Text="Heh, no prob. I know it didn't answer your exact question, but some problems require specialized solutions. Good luck!" CreationDate="2010-10-01T07:51:07.130" UserId="1352" />
  <row Id="4831" PostId="4195" Score="2" Text="The size of the data packet would become an issue for mobile games - especially if the player pays for their bandwidth by the byte." CreationDate="2010-10-01T08:13:36.670" UserId="2314" />
  <row Id="4832" PostId="4193" Score="1" Text="Yes we have. http://gamedev.stackexchange.com/questions/651/tips-for-writing-the-main-game-loop" CreationDate="2010-10-01T09:01:02.080" UserId="744" />
  <row Id="4833" PostId="4195" Text="Oh, what both of you say is true. Still, there's no other &quot;real&quot; solution." CreationDate="2010-10-01T09:31:11.717" UserId="2188" />
  <row Id="4834" PostId="4201" Text="Slower *where*? You can't talk about speed if that's not tied to a particular architecture." CreationDate="2010-10-01T09:33:32.597" UserId="2188" />
  <row Id="4836" PostId="4136" Text="@Ricket, why are you quoting &quot;big messy loop&quot; when nobody else has said that? The loop doesn't have to be big, but neither does it have to be completely devoid of any sort of stateful objects. However, I would argue that these objects should not be abstract 'gamestates' which attempt to cover menus, loading, different levels, etc. Most of that can be covered by more specific state (eg. menu should be part of the GUI, locations are a property of the world or the current map, etc.)" CreationDate="2010-10-01T10:13:21.410" UserId="1101" />
  <row Id="4838" PostId="4203" Text="This makes sense, and I really like the teleporter analogy, that definitely helps comprehend it lol. Using serialization for networking makes perfect sense to me, but using it elsewhere, such as the Bullet Physics engine and there .bullet format, I don't understand where it is used there." CreationDate="2010-10-01T10:31:07.070" UserId="1248" />
  <row Id="4839" PostId="4185" Score="2" Text="I'm quite dubious that reverse engineering to find your magic string would be all that difficult." CreationDate="2010-10-01T10:46:33.090" UserId="1101" />
  <row Id="4840" PostId="4203" Text="To further clarify my confusion, I found this simple tutorial http://www.codeproject.com/KB/cpp/serialization_primer1.aspx and on Step 3, it shows serializing data to a file. I don't understand how that is any different from just writing text to a file using fopen/fwrite, etc." CreationDate="2010-10-01T10:47:49.930" UserId="1248" />
  <row Id="4841" PostId="4203" Text="Serialization is the process of turning objects in your software into text that you can pass to fwrite (or whatever other bytestream-oriented reader/writer you need)." CreationDate="2010-10-01T11:00:55.230" UserId="744" />
  <row Id="4842" PostId="2777" Text="GCC (via \_\_attribute\_\_(warn_unused_result)) and MSVC (via \_\_checkReturn) both provide ways to force the caller to check a return value, if the appropriate compiler options are set." CreationDate="2010-10-01T11:04:01.573" UserId="744" />
  <row Id="4843" PostId="4201" Score="1" Text="@Lo'oris: I don't know any architecture where double is faster than float." CreationDate="2010-10-01T11:06:06.703" UserId="744" />
  <row Id="4844" PostId="4191" Text="&quot;it is really easy with other technologies&quot; - which other ones have you used?" CreationDate="2010-10-01T11:13:18.233" UserId="1101" />
  <row Id="4846" PostId="4201" Text="Rather than writing your own vector class, consider using Sony's (http://www.bulletphysics.org/Bullet/phpBB3/viewtopic.php?p=4884&amp;f=&amp;t=). It is an easy drop-in header-only &quot;library&quot; that has already been micro-optimized, and all vector libraries are basically the same external interface anyway." CreationDate="2010-10-01T11:32:08.990" UserId="744" />
  <row Id="4848" PostId="4204" Text="Someone sure is fast on the downvote button...&#xA;I tried to offer a nudge for sth to go back and look again. In War3 there was a pr. player setting for all of the upgrades. I hardly think this has changed." CreationDate="2010-10-01T11:39:30.423" UserId="1352" />
  <row Id="4850" PostId="4201" Text="@Joe: 2 doubles instead of 4 floats?" CreationDate="2010-10-01T11:41:33.933" UserId="2188" />
  <row Id="4852" PostId="4201" Text="@Lo'oris: The question is worded a little weird, I don't know if the questioner is confused or just you - you use two doubles &quot;instead of&quot; four floats when dealing with SIMD, because the register is 128 bits wide. You still need to process an equal number of numbers, and you're doing it at half-speed." CreationDate="2010-10-01T12:00:58.013" UserId="744" />
  <row Id="4853" PostId="4210" Score="1" Text="From the SO question: &quot;On x86 processors, at least, float and double will each be converted to a 10-byte real by the FPU for processing.&quot; While this is true, it neglects both SIMD instructions and the additional memory (= worse cache coherency, more memory bandwidth) requirements of doubles, both of which continue to make it slower than float in real-world tests." CreationDate="2010-10-01T12:02:57.260" UserId="744" />
  <row Id="4854" PostId="4204" Score="4" Text="&quot;I think there's something in a menu somewhere because I saw it in a semi-related game&quot; is a bad answer, even if you are trying to be helpful." CreationDate="2010-10-01T12:05:33.697" UserId="744" />
  <row Id="4855" PostId="4136" Text="I was (mis)using them for emphasis I guess, sorry. But quotation marks do not always mean a direct quote from someone else, there are other uses for quotation marks. At this point we are arguing about abstract things and it's going nowhere. Again I would like to see some actual game source code which does this, as I could clearly learn from it. Your description doesn't give me a clear sense of it though." CreationDate="2010-10-01T12:12:15.587" UserId="189" />
  <row Id="4856" PostId="4204" Text="Semi related game? It's still made by the same people, on the base of the war3 editor. It's not like I'm comparing UnrealEd with the Crysis editor." CreationDate="2010-10-01T12:22:42.163" UserId="1352" />
  <row Id="4859" PostId="4204" Score="1" Text="That the same company made two games from the same codebase (eight years separated) does not make your answer good. It just makes it more likely that your _guess_ is correct. It's still not useful, and it's still a guess." CreationDate="2010-10-01T12:36:33.697" UserId="744" />
  <row Id="4862" PostId="4204" Text="Put yourself in the guy who asks the question's shoes.&#xA;&#xA;You write a question.&#xA;Nobody answers for 10 hrs.&#xA;Somebody gives a half assed answer(me) that makes you go into your editor and look again.&#xA;You find the damn thing.&#xA;" CreationDate="2010-10-01T12:52:08.380" UserId="1352" />
  <row Id="4865" PostId="4191" Text="For instance: PHP, .NET, Java... But, ok, if I have to think only of game development, it is not so easy." CreationDate="2010-10-01T13:17:14.697" UserId="802" />
  <row Id="4866" PostId="4199" Text="This is a good answer, but I can not upvote because I am a new user :( I will accept your answer if there isn't anything better soon." CreationDate="2010-10-01T13:18:21.987" UserId="802" />
  <row Id="4868" PostId="4216" Text="You should try to get your questions into the title so people know what to answer in some respect before they click on the question." CreationDate="2010-10-01T15:12:29.137" UserId="2100" />
  <row Id="4869" PostId="4216" Text="Edited to what I think it's asking." CreationDate="2010-10-01T15:19:48.210" UserId="14" />
  <row Id="4870" PostId="4216" Text="There are to much questions of different variety to have any of it into a title for an overall view. My title Wanting to start Android game development, is the main subject to all my questions in the post that everything relates to." CreationDate="2010-10-01T15:22:51.023" UserId="2365" />
  <row Id="4872" PostId="4216" Text="Noctrine, thats only one question. I want to know if I should start with java, and about the tooklits, and about the articles too." CreationDate="2010-10-01T15:24:44.157" UserId="2365" />
  <row Id="4873" PostId="4216" Score="1" Text="It seemed like the main thing you were asking for (&quot;But really I want help getting&quot;) . In that case, separate questions should be asked in separate question threads." CreationDate="2010-10-01T15:25:53.673" UserId="14" />
  <row Id="4874" PostId="4132" Text="Static variables in the local compilation unit or package-private singletons in Java are still &quot;globals&quot; when it comes to reasoning about program execution. You're accessing stuff you aren't passed; you're forced to reason about a much larger part of the program." CreationDate="2010-10-01T15:26:15.103" UserId="744" />
  <row Id="4875" PostId="4116" Text="This is rather a nonsensical question, as Joe points out. Magic numbers make no sense outside of the simulation algorithm you plug them into. Either you have the whole algorithm, including the constant 'tweak' factors that form part of it, or you have nothing. There are questions to be asked along this line (e.g. &quot;is gaussian distribution a good way of placing randomly generated obstacles&quot;, &quot;how do I tune gameplay mechanics&quot;), but this question is not usefully answerable in its current form. Vote to close." CreationDate="2010-10-01T15:28:04.820" UserId="741" />
  <row Id="4876" PostId="4204" Score="1" Text="Then I come back to my question, write a good answer explaining where it is, and accept my own answer." CreationDate="2010-10-01T15:28:22.293" UserId="744" />
  <row Id="4880" PostId="4197" Score="3" Text="@sth by the way, if you find the answer, I encourage you to add an answer here (to your own question) since the two answers as of right now are not really answers, and it would help other people like yourself in the future." CreationDate="2010-10-01T16:19:55.557" UserId="189" />
  <row Id="4881" PostId="4210" Text="I figured there was a catch. You should comment that onto the SO answer, I'd upvote it." CreationDate="2010-10-01T16:23:35.943" UserId="189" />
  <row Id="4882" PostId="4219" Score="2" Text="Can you describe FlatSpace 2's control scheme?" CreationDate="2010-10-01T16:24:08.380" UserId="744" />
  <row Id="4883" PostId="4222" Text="With a title like this, no one asking questions about save games will ever find it again." CreationDate="2010-10-01T16:26:22.400" UserId="744" />
  <row Id="4884" PostId="4216" Score="1" Text="There is actually an Ubuntu Stack Exchange (http://ubuntu.stackexchange.com/) which would probably help you better and in more detail with setting up the Android SDK in Ubuntu. As far as I know, Eclipse in Ubuntu is as easy as just finding and installing it from the Ubuntu Software Center (or Synaptic) since it is now actually up-to-date in the repository." CreationDate="2010-10-01T16:26:53.260" UserId="189" />
  <row Id="4885" PostId="4220" Text="Emphasis on **&quot;[Swing] is stripped out of the Android specific Java that runs on the Dalvik VM&quot;**!" CreationDate="2010-10-01T16:27:50.563" UserId="189" />
  <row Id="4886" PostId="4223" Text="Second idea is interesting." CreationDate="2010-10-01T16:28:59.463" UserId="1677" />
  <row Id="4887" PostId="4222" Text="Title was updated." CreationDate="2010-10-01T16:32:18.963" UserId="1677" />
  <row Id="4888" PostId="4210" Text="It is already there as a comment." CreationDate="2010-10-01T16:38:31.163" UserId="744" />
  <row Id="4889" PostId="1980" Score="1" Text="At first glance, this would appear to penalise newer players who haven't had the time to hoard their resources to pay for the now-inflated goods." CreationDate="2010-10-01T16:38:41.273" UserId="2361" />
  <row Id="4890" PostId="4045" Text="@caspin - there's a semi-serious suggestion here.  Many MUDs of yore had a &quot;rent&quot; system whereby the game essentially charged you an amount of money proportional to your personal wealth for going offline (or you lose your equipment until you can afford to pay)." CreationDate="2010-10-01T16:40:25.637" UserId="2361" />
  <row Id="4891" PostId="389" Text="Very nice answer, too." CreationDate="2010-10-01T16:46:05.987" UserId="1677" />
  <row Id="4892" PostId="301" Score="1" Text="Russians say &quot;Один в поле не воин&quot; :)" CreationDate="2010-10-01T16:46:41.947" UserId="1677" />
  <row Id="4893" PostId="4220" Text="Thank you Nailer! Remember I am new at this so several things you were saying weren't very comprehendible to me but god I wish they were. Like everything you said about the noobie mistakes you made when you first started idk what you are talking about, but I haven't even opened anything up yet so I might catch on to what you're saying and will definitely refer back to your comment(: " CreationDate="2010-10-01T17:06:45.357" UserId="2365" />
  <row Id="4894" PostId="4220" Text="Also thanks for telling me about the swing incorporated with the toolkit, I think I'll make something small out of Java and hopefully that will help to make some very simple android game that runs great. " CreationDate="2010-10-01T17:08:49.067" UserId="2365" />
  <row Id="4895" PostId="4224" Text="Thanks!! I will definitely look into your post more in depth with the links you gave me! Yes I want to start making games but thats just like me in school having to learn all the adobe software before building dummy websites and designing from photoshop/illustrator/InDesign ect. Learning is tough but I will have to do it and I like the idea of telling a friend to go pay my game from the market and a lot of other people playing it and commenting it.&#xA;I  never said java was a waste of time, just asking others if it is IF the guides out there can help just dive into the android gaming development." CreationDate="2010-10-01T17:14:17.853" UserId="2365" />
  <row Id="4896" PostId="4224" Text="But I agree with you and will probably make little projects with java and see how that goes. Is things you do in Java like coding and structure ect the same with android? I'm trying to get a basic understanding of everything. And thank you a LOT for the SIMPLE instructions on the Ubuntu stuff, I'll try what you said out and hopefully it works out right! " CreationDate="2010-10-01T17:16:37.193" UserId="2365" />
  <row Id="4897" PostId="4225" Text="If the guy above your posts instructions don't work for me I will try yours out thanks!(:" CreationDate="2010-10-01T17:22:06.543" UserId="2365" />
  <row Id="4898" PostId="4225" Text="And judging by the comments the book is real good but pretty irrelevant. But all books are when technology updates and books don't. " CreationDate="2010-10-01T17:23:34.090" UserId="2365" />
  <row Id="4899" PostId="4219" Score="4" Text="Newtonian, after Isaac Newton." CreationDate="2010-10-01T17:31:01.017" UserId="953" />
  <row Id="4900" PostId="3242" Score="1" Text="Flyweight pattern, do you mean?" CreationDate="2010-10-01T17:58:31.410" UserId="1677" />
  <row Id="4901" PostId="4220" Text="Ok =) Get yourself an instructive book. The way I learned programming, although not very necessary, was to copy all the examples in the 14 first chapters of a large java book." CreationDate="2010-10-01T18:04:04.073" UserId="1352" />
  <row Id="4902" PostId="4187" Score="1" Text="I would think there would be &quot;airspace&quot; issues with your method, Arriu.  Were you able to render content on top of an XNA window with the alpha channel intact?  The general rule is that a pixel can only be &quot;owned&quot; by one graphics API, which causes problems with transparent or translucent content.  If this holds true for your method as well, then it would be problematic for rendering text atop anything other than a solid color background." CreationDate="2010-10-01T18:14:35.283" UserId="136" />
  <row Id="4903" PostId="4185" Score="1" Text="This is an Android Application in native C++. There is no symbol, nor good debugger available. So you can read the ARM code, but not trace it easily. The key is composed by multiple operations so find all strings is not sufficient. That is not perfect but quite painful." CreationDate="2010-10-01T18:18:35.780" UserId="721" />
  <row Id="4904" PostId="4196" Text="ah my mistake. I just looked back at my code. It's a view handling all the game logic. The code you posted looks a lot like my loop, except my loop runs in a thread started by the view, which is set as the cotent view in main." CreationDate="2010-10-01T18:23:53.597" UserId="2343" />
  <row Id="4907" PostId="4196" Text="Here is the tutorial I used:&#xA;http://www.droidnova.com/playing-with-graphics-in-android-part-i,147.html&#xA;&#xA;By step five, he has all logic running on his View. I guess my question is how to expand this out to include multiple states. If I were to take a crack at it right now, I would create a root view in main, which has a subview for each game state, which would each run its own loop when active. I doubt, however that this is the best answer. &#xA;Sorry, I have done games mostly in Flash before, where switching states was as easy as switching frames." CreationDate="2010-10-01T18:34:37.550" UserId="2343" />
  <row Id="4908" PostId="4230" Text="thank you, I basically want to prototype a game without actually using the WP7 (can't get my hands on it where I live, but I could get a zune HD) " CreationDate="2010-10-01T18:46:35.547" UserId="2301" />
  <row Id="4909" PostId="373" Score="3" Text="@Josh: Easier to debug!?  C-programs are notoriously *difficult* to debug, largely due to pointers and memory management.  C++ programs *(when using true C++ programming idioms, which tend to avoid pointers and memory-management whenever possible)* are several orders of magnitude *easier* to debug." CreationDate="2010-10-01T18:55:59.257" UserId="2061" />
  <row Id="4910" PostId="4231" Text="The problem I am having right now is feeling good about the code I am writing.  You want an accounting backend for your business, no problem...  You want me to code a battle engine for monster encounters, BOOM!   I have re-written my engine at least three times this week and I never feel good about it.  I mean, the math works, but when I try it out it just feels wonky.  Does that make sense?" CreationDate="2010-10-01T19:09:29.643" UserId="2367" />
  <row Id="4911" PostId="4232" Score="3" Text="This nearly killed one of my FB games. It's packed with features, but the whole thing feels half-assed overall." CreationDate="2010-10-01T19:14:26.110" UserId="141" />
  <row Id="4912" PostId="4210" Score="1" Text="Since you brought up XNA, I may as well point out that Direct2D also uses single-precision floats." CreationDate="2010-10-01T19:23:18.017" UserId="136" />
  <row Id="4915" PostId="3131" Text="I agree, this sounds like a very interesting question (and answer, hopefully)!" CreationDate="2010-10-01T20:08:14.597" UserId="2289" />
  <row Id="4917" PostId="4233" Text="That is a great...  I am going to have to take a look at that article.  Just from the excerpt you posted it sounds like I may be looking at prototyping incorrectly, but it also sounds like it may be a common mistake." CreationDate="2010-10-01T20:14:39.167" UserId="2367" />
  <row Id="4919" PostId="4233" Text="the mistake you quoted has been naguing me for quite a while now." CreationDate="2010-10-01T21:17:05.047" UserId="1829" />
  <row Id="4920" PostId="4230" Score="4" Text="But ZuneHD and WP7 are not the same like iPhone and iPod Touch are. ZuneHD's APIs are a subset of XNA 3. XNA 4 is used for programming WP7 and XNA 4 doesn't even support Zune programming any more. Probably in the future they'll release a Zune that runs the same software as WP7, but right now I wouldn't touch the thing." CreationDate="2010-10-01T21:17:46.437" UserId="93" />
  <row Id="4921" PostId="4236" Text="+1 That's my understanding as well, personally I like using cg whenever I can, but it does add an extra dependency beyond the render system itself; and I seem to recall having some strange issues with OpenGL, cg and ATI drivers with some more complex effects..." CreationDate="2010-10-01T21:20:47.673" UserId="1272" />
  <row Id="4922" PostId="4161" Score="1" Text="thanks for this answer, those sound more like design pattern than the usual &quot;singleton&quot; i'm hearing everywhere..." CreationDate="2010-10-01T21:27:42.537" UserId="1829" />
  <row Id="4923" PostId="4162" Text="Thanks for this response; I feel relieved to read that design pattern are made to resolve problems created by the software's design. I think that the structure of a whole big software should be thought throught from start to end before actually starting to code anything. You can't always implement functionalities once at a time, sometime you have to think about each particular feature, and check if it won't mess with the global structure of the software or just get in the way on how the software is suposed to behave. Dividing tasks to several programmers can sometime create contradictions..." CreationDate="2010-10-01T21:36:07.180" UserId="1829" />
  <row Id="4924" PostId="4231" Text="why rewrite the engine? you could implement game specific code in a scripting language like lua.  Change variables or how the math is calculated and never need to recompile just to check things out.  http://www.gamedev.net/reference/articles/article1932.asp" CreationDate="2010-10-01T21:36:43.827" UserId="891" />
  <row Id="4925" PostId="3741" Text="@Joe &quot;but &quot;pushdown automaton&quot; is strictly a computer science term &quot;: Well, I first learned it EA, so it may have already escaped the ivory tower. I don't generally like the way games dilute CS terms (especially &quot;AI), but it seems to be the way things go." CreationDate="2010-10-01T21:49:19.447" UserId="160" />
  <row Id="4926" PostId="3772" Text="It's just a second frame buffer. You could always change the frustum before you render to it (which is what I think shadow systems do), but that isn't part of the core concept." CreationDate="2010-10-01T21:50:17.190" UserId="160" />
  <row Id="4927" PostId="4236" Text="I'm using Ogre and thus have all three available to me, but if I want to have both DirectX and OpenGL I have to either write the shaders in both HLSL and GLSL or just cg? Is that right?" CreationDate="2010-10-01T21:53:10.447" UserId="320" />
  <row Id="4928" PostId="4236" Text="Yes, Cg compiles down to both systems. Testing on both can get very time consuming though, so this might not be the best thing to spend resources on." CreationDate="2010-10-01T21:56:35.793" UserId="395" />
  <row Id="4929" PostId="4236" Text="My understanding is that HLSL and GLSL are very closely related in the first place." CreationDate="2010-10-01T22:24:37.660" UserId="613" />
  <row Id="4932" PostId="4237" Text="The advise I am getting here is great, and I can see I have been taking the wrong approach to a lot of this.  The reason, though, that I have rewritten the engine is that I think I am making it too complicated.  My latest version of the battle engine is a class with (at the moment) a single public function and several supports.  The main function 'fight' is not only calculting the basic attack vs defense but also determining first strike, checking rolls to determine if your tactical skill gives you a second strike, etc, etc, etc.  I think I have just made it too damn difficult!" CreationDate="2010-10-02T00:35:11.510" UserId="2367" />
  <row Id="4933" PostId="4186" Text="There are `OOP design patterns` that typically show relationships and interactions between classes/objects. And there are many other design patterns. OOP is a set of concepts, not a pattern really. `Design pattern` is a concept, too." CreationDate="2010-10-02T00:42:46.940" UserId="1677" />
  <row Id="4934" PostId="944" Text="Wau, very thought-provoking, thanks!" CreationDate="2010-10-02T00:54:51.480" UserId="1677" />
  <row Id="4935" PostId="956" Text="Also, depending on the game in question, the graph might not be acyclic: consider, for instance, if the player makes a mistake that prevents him from moving on, but has a chance to rectify it by revisiting an earlier series of nodes." CreationDate="2010-10-02T02:58:50.163" UserId="2081" />
  <row Id="4936" PostId="4229" Score="1" Text="This is a somewhat related and interesting read that I have found helpful: http://makegames.tumblr.com/post/1136623767/finishing-a-game" CreationDate="2010-10-02T03:35:44.833" UserId="2345" />
  <row Id="4937" PostId="1395" Text="Why the downvote? And many games have duping problems." CreationDate="2010-10-02T14:26:14.563" UserId="358" />
  <row Id="4939" PostId="4242" Score="2" Text="I agree with this. Unity is an alternative to UDK, though I think it's a bit harder to figure out. See if you can get him to mess with some UnrealScript (the scripting language of the Unreal Development Kit). XNA is definitely the first true from-scratch game programming language that he should use, though; it's the easiest (relatively speaking; not for absolute beginners) and I love it for prototyping because you can pretty quickly start drawing things on screen." CreationDate="2010-10-02T15:11:48.847" UserId="189" />
  <row Id="4940" PostId="4245" Score="8" Text="By the time a 15 year old is ready to be professionally employed (eight years from now), I see no reason to assume everyone will be using C++. Eight years ago, C++ was just starting to enter use in games and getting its first really practical standard, and most everyone was shipping with C. Eight years before that C++ was in a laughably bad state for game development, and the order of the day was C and asm. Eight years from now, most game programming will probably look a lot more like XNA than the C++03 it does now. (cont.)" CreationDate="2010-10-02T17:26:42.777" UserId="744" />
  <row Id="4941" PostId="4245" Score="5" Text="The key element is to _become a good programmer_, which is independent of any individual language. For new programmers, C# is going to get them more motivated more quickly. They'll go back and learn the more detailed stuff if they want to be any good, but you need to hook them long enough to get to that stage." CreationDate="2010-10-02T17:27:58.053" UserId="744" />
  <row Id="4942" PostId="3357" Text="I don't understand your argument very well. And by the way why haven't languages implemented fixed point yet ? Of course that seems to be a reason to be drawn to use floats, but that doesn't explain why fixed point has not been implemented everywhere." CreationDate="2010-10-02T18:13:12.460" UserId="1829" />
  <row Id="4943" PostId="4244" Score="1" Text="+1 for mindstorms, but I would use ROBOCODE (http://robocode.sourceforge.net) instead of P-Robots." CreationDate="2010-10-02T18:35:20.797" UserId="2383" />
  <row Id="4944" PostId="4248" Text="I would suggest making this CW. There is no &quot;best&quot; answer and you're probably just going to get a lot of anecdotes." CreationDate="2010-10-02T20:38:43.323" UserId="744" />
  <row Id="4945" PostId="4244" Text="@Callum: brilliant, will update the answer =)" CreationDate="2010-10-02T20:56:13.273" UserId="1134" />
  <row Id="4947" PostId="4242" Text="Oops, I forgot unity. I'll add that into my answer." CreationDate="2010-10-02T21:17:15.537" UserId="1687" />
  <row Id="4948" PostId="4245" Score="1" Text="Eight years before he's professionally hired? I think that's pretty subjective since I'm younger then that and I do professioanl games development. I don't agree with your method of learning since it disregards the &quot;detailed&quot; stuff, which is the most important as a foundation for a programmer." CreationDate="2010-10-02T21:18:35.443" UserId="2037" />
  <row Id="4950" PostId="4249" Text="I see you argument against Lua (or any full language).  However, comparing YAML to protobuf is like comparing JSON to XML:schema.  Protobuf syntax is only a schema the actual data is highly efficient binary blobs.  The proto files are compiled into your language of choice to provide access to the content of those binary blobs." CreationDate="2010-10-02T21:26:02.880" UserId="370" />
  <row Id="4951" PostId="4249" Text="gzipped YAML is not very efficient binary blobs, but I bet it's more than compact enough to use for anything a game needs." CreationDate="2010-10-02T22:08:14.770" UserId="744" />
  <row Id="4952" PostId="4245" Score="4" Text="The important details in game programming are SIMD, not SSE; cache lines, not the C++ standard layout; hashing, not std::unordered_map; polymorphism, not virtual functions. Those latter things are _minutea_, and are incidental, not fundamental. When you know the former, the latter tends to trivially follow." CreationDate="2010-10-02T22:13:43.553" UserId="744" />
  <row Id="4953" PostId="4252" Score="1" Text="caspin's not asking how to write cross-platform tools, but how (and if it's possible to) to prevent duplicate work when your tools and your game are necessarily different codebases." CreationDate="2010-10-02T22:16:23.937" UserId="744" />
  <row Id="4954" PostId="4210" Text="And for completeness, OpenGL has float and double versions of its methods, so it's neutral in this sense." CreationDate="2010-10-02T22:24:03.453" UserId="189" />
  <row Id="4955" PostId="4254" Score="1" Text="You say as a curved surface and that sounds logical in my head but once I try to think of it in terms of code things get fuzzy fast. How could I even declare that in code as a variable or something. " CreationDate="2010-10-02T22:46:18.300" />
  <row Id="4956" PostId="4255" Text="That effect is what I'm going for; the faster speed as it hits the edges of the bar. Thanks a bunch for taking the time to write this out. I'm having some trouble understanding a few things though; for example, in the first snipper, what is 'intersectY'? Also, 'paddle1Y' is the height of the bar correct?" CreationDate="2010-10-02T22:57:12.430" />
  <row Id="4957" PostId="4255" Text="intersectY is the position of the ball where it intersects the paddle. I do an overcomplicated calculation which I honestly don't even understand right now, but essentially it is the Y value of the ball at the time it collides. paddle1Y is the Y value of the paddle, from the top of the screen; PADDLEHEIGHT is the height of the paddle (&quot;bar&quot;)." CreationDate="2010-10-02T22:59:56.823" UserId="189" />
  <row Id="4958" PostId="4254" Text="Something like `angle = 1 - 2 * (ball.x - paddle.left) / paddle.width` will give you a number between 1 and -1; this (times some value tweaked for your game mechanics) is the slope of the tangent line at the point the ball collided. Reflect off that line rather than the strictly horizontal one." CreationDate="2010-10-02T23:00:18.247" UserId="744" />
  <row Id="4959" PostId="3357" Text="@jokoon I thought my answer was quite clear. As to why fixed point isn't implemented everywhere? Just look to Wikipedia: &quot;Very few computer languages include built-in support for fixed point values, because for most applications, binary or decimal **floating-point representations are usually simpler to use and accurate enough**.&quot; A good designer knows what to omit - and something that duplicates functionality in a way that makes it really easy for a programmer to shoot themselves in the foot is a good candidate." CreationDate="2010-10-03T03:47:43.297" UserId="288" />
  <row Id="4960" PostId="4245" Text="@Joe Wreschnig: I agree with you, re: C++, but I must respectfully disagree with your implication that C++ will fall very far out of favor. C++11 might see some revival." CreationDate="2010-10-03T05:42:07.300" UserId="613" />
  <row Id="4962" PostId="4245" Text="Starting with C++ is a bad idea, generally. It's a difficult language, and moreso as a first." CreationDate="2010-10-03T10:23:54.687" UserId="1156" />
  <row Id="4963" PostId="4196" Text="I haven't done enough Android development to say for sure, but I would suggest that you do not want your Views to be doing any logic.  Views are for viewing, they should only be drawing whatever the data model says that they should draw.  Likely it's the Activity that should be updating all of this stuff.  (Put 'View' in place of 'Renderer' in my example above.)" CreationDate="2010-10-03T10:58:49.410" UserId="1780" />
  <row Id="4964" PostId="4260" Score="3" Text="Python and Pygame was a breath of fresh air to me after writing games in C for many years.  I figured I could get the same thing done in about 10% of the time in Python because of the higher level aspect to everything." CreationDate="2010-10-03T11:02:35.707" UserId="1780" />
  <row Id="4965" PostId="4251" Text="Thanks for the link. Yeah, I will use cg." CreationDate="2010-10-03T11:10:25.297" UserId="320" />
  <row Id="4966" PostId="4260" Text="I know, I'm feeling the same (and I've been doing C++ for a year)." CreationDate="2010-10-03T11:26:55.963" UserId="1156" />
  <row Id="4967" PostId="4242" Score="1" Text="+1 for the XNA suggestion. If he strives to learn it well and has good ideas he can easily make some spending money selling games for the Zune/WP7/XBOX 360." CreationDate="2010-10-03T14:24:55.897" />
  <row Id="4969" PostId="4266" Text="Take a look at the answers found here:&#xA;http://gamedev.stackexchange.com/questions/3935/in-what-kind-of-variable-type-is-the-player-position-stored-on-a-mmorpg-such-as-w" CreationDate="2010-10-03T16:16:59.570" UserId="1352" />
  <row Id="4970" PostId="4265" Text="This way would be slower than just doing what the OP said with a loop and subtracting. Assuming you're doing a for loop except instead of a subtraction you're doing a table lookup within it (n*logn instead of just n). Were you thinking of some other way?" CreationDate="2010-10-03T16:23:56.643" UserId="27" />
  <row Id="4971" PostId="4266" Text="In fact, I asked this question." CreationDate="2010-10-03T16:26:51.053" UserId="1829" />
  <row Id="4972" PostId="4246" Text="+1 Very easy documentation how to, seems very easy to deal with indeed." CreationDate="2010-10-03T16:27:29.710" UserId="567" />
  <row Id="4974" PostId="4245" Text="I started C++ at 15, and while I'm happy with where I am now, starting with something easier would probably have been a lot less painful, and allowed me to focus on actual game dev, rather than pointers and segfaults..." CreationDate="2010-10-03T17:49:17.807" UserId="1272" />
  <row Id="4975" PostId="4183" Text="You can also flag a user (possibly by IP) if they submit a score that doesn't match the metadata. Then if they try and submit a score again that DOES have correct metadata, you can scrutinise it, and possibly just ban them altogether. You could also send a cheeky message back from there submit score request :)" CreationDate="2010-10-03T19:27:25.857" UserId="1163" />
  <row Id="4976" PostId="4268" Score="1" Text="+1 Assuming the stats are correct, then it would seem that there is no precision problem." CreationDate="2010-10-03T19:38:47.233" UserId="656" />
  <row Id="4977" PostId="4274" Score="1" Text="Hardcoding pointer offsets is bad practice, especially in example code handed to novice programmers. Use sizeof please. :)" CreationDate="2010-10-03T19:46:31.897" UserId="744" />
  <row Id="4978" PostId="4273" Text="The Dungeon Siege paper is good reading, but may be overkill. The grid-based system jokoon proposed is still an absolute coordinate space; Dungeon Siege had no absolute coordinates. This lets you do much cooler things, but is also a lot less straightforward to think about." CreationDate="2010-10-03T19:53:01.810" UserId="744" />
  <row Id="4979" PostId="4274" Score="1" Text="I would have, but that's an implementation detail, and bloats the example, distracting the reader from its purpose." CreationDate="2010-10-03T19:55:58.080" UserId="2390" />
  <row Id="4980" PostId="4274" Score="3" Text="You could also argue that this should be in its own function, and the levels should have their own class etc. etc. -- I just want to show people how to use the function; good coding practice can be left for another question :-)" CreationDate="2010-10-03T19:57:37.487" UserId="2390" />
  <row Id="4981" PostId="4263" Text="Related, possibly a duplicate: http://gamedev.stackexchange.com/questions/974/how-to-determine-the-amount-of-experience-needed-for-leveling-up" CreationDate="2010-10-03T20:25:45.307" UserId="395" />
  <row Id="4982" PostId="4266" Text="@jokoon: Haha. Oops =D Didn't notice that ;)" CreationDate="2010-10-03T21:07:08.397" UserId="1352" />
  <row Id="4983" PostId="4263" Text="Any particular language?" CreationDate="2010-10-03T21:24:05.457" UserId="165" />
  <row Id="4984" PostId="4273" Score="1" Text="yes, but the implementation is a little more sophisticated. I like the kiss principle :)" CreationDate="2010-10-03T21:32:49.280" UserId="1829" />
  <row Id="4986" PostId="4262" Score="1" Text="As a sidenote, I wonder why they chose to call it &quot;Reach&quot;... I just got done playing some Halo: Reach so that came to mind immediately. But I suspect it's more because of the symbolism of &quot;reaching&quot; more devices?" CreationDate="2010-10-04T04:47:09.743" UserId="189" />
  <row Id="4987" PostId="4263" Text="@coderanger, the link you have provided is a design issue. My question is programming related." CreationDate="2010-10-04T05:34:00.693" UserId="2132" />
  <row Id="4988" PostId="4283" Text="Heh I used feet as a placeholder, the character I have just has a wheel so it's not as much of a pain. But I still can't figure out, even though you have designated walking tiles, how people can use this designation in order to create their walking path for the player." CreationDate="2010-10-04T06:15:32.733" UserId="2039" />
  <row Id="4989" PostId="4280" Score="2" Text="Using different languages for different tasks is exactly what different languages were invented for. Python is perfect for tiny batch programs like this." CreationDate="2010-10-04T07:29:27.223" UserId="259" />
  <row Id="4991" PostId="4263" Text="PHP. Made an edit to reflect this in the question" CreationDate="2010-10-04T07:55:48.777" UserId="2132" />
  <row Id="4992" PostId="4279" Score="2" Text="There's lot of truth in your comment." CreationDate="2010-10-04T07:58:15.783" UserId="2132" />
  <row Id="4993" PostId="4219" Text="@Gregory - Of course, how silly of me. Thanks" CreationDate="2010-10-04T08:11:50.890" UserId="1217" />
  <row Id="4994" PostId="4219" Text="@Joe - Added explanation and link." CreationDate="2010-10-04T08:12:26.193" UserId="1217" />
  <row Id="4995" PostId="4274" Score="3" Text="If you want to avoid implementation details, don't give answers in C++. ;)" CreationDate="2010-10-04T08:26:41.833" UserId="744" />
  <row Id="4996" PostId="4279" Text="+1 because it's true, but makes me sad that I once did find a &quot;get the current level&quot; function in our engine that took about 3% of our frame time. Mostly because it did a deep copy of every item the player had." CreationDate="2010-10-04T08:30:30.327" UserId="744" />
  <row Id="4997" PostId="4186" Score="3" Text="Instead of talking about semantic, shouldn't you rate the usefullness of the response I gave?" CreationDate="2010-10-04T09:56:09.940" UserId="2134" />
  <row Id="4998" PostId="4279" Text="On the other hand, this is on a PHP server; In the end only profiling will shed light on where the bottleneck is." CreationDate="2010-10-04T12:12:10.463" UserId="2132" />
  <row Id="4999" PostId="4284" Text="What's your question?" CreationDate="2010-10-04T13:40:08.437" />
  <row Id="5000" PostId="4284" Score="3" Text="It's also in the title" CreationDate="2010-10-04T14:45:31.253" UserId="1829" />
  <row Id="5001" PostId="4279" Text="totally +1: KISS. One single bug will be much worse for you then the good that will come from all these micro-optimizations. And if you micro-optimize everything like that, you'll most certainly generate at the very least one single bug, won't you?" CreationDate="2010-10-04T14:58:42.900" UserId="2188" />
  <row Id="5002" PostId="4265" Text="The performance hit is negligible. He should be focusing on clean code that is understandable at a moments view for something this trivial." CreationDate="2010-10-04T16:13:40.060" />
  <row Id="5003" PostId="4166" Text="Any chance of you accepting an answer?" CreationDate="2010-10-04T18:40:27.020" UserId="136" />
  <row Id="5004" PostId="4286" Text=":The syntax is quite low-level because the hardware it is aimed at is also quite low-level. It's a compromise.&quot;: earlier on I also wanted to ask something about that: since the shader languages are low-level, don't you think it would be an idea to create a shader++ language, so we could use some kind of programming language dedicated to 3D programming. We could think shaders are like C, don't we some equivalent of C++ but for shaders ? I really don't know how shaders work, but maybe a high level shader language is not possible at all... ? is it ?" CreationDate="2010-10-04T21:42:16.520" UserId="1829" />
  <row Id="5005" PostId="4286" Text="Originally when shaders were introduced, you had to write them in their own ASM language. Todays version of shaders (HLSL, GLSL, CG) are already very high level, providing a C-like syntax." CreationDate="2010-10-04T23:24:29.943" UserId="656" />
  <row Id="5006" PostId="4295" Text="Without knowing what city you are in, this would be asking for a list. We ask that list-questions are made CW as a minimum." CreationDate="2010-10-05T01:40:32.517" UserId="14" />
  <row Id="5007" PostId="4295" Text="If anyone knows anyone in Bolivia send me an email!" CreationDate="2010-10-05T02:21:09.480" />
  <row Id="5008" PostId="4296" Score="5" Text="I must be an anomaly then. I wake up, spend all day coding, then go to bed :)" CreationDate="2010-10-05T04:41:13.553" UserId="1248" />
  <row Id="5009" PostId="4302" Text="So, I'd can set my player on my choice of a walkable tile to the very left of a scene. Then, I can simulate my player moving to the right. To the lower-right of this move might be a walkable tile and to the right might be just thin air which are mapped to my xml. Could I just then get the first max x-position in the lower right walkable tile and set my player's foot to there. In terms of the curve thing, thanks, I'll take a look." CreationDate="2010-10-05T11:12:44.113" UserId="2039" />
  <row Id="5010" PostId="4302" Text="Another way I was thinking is to just set a visible (or invisible) stroke with specific RGB combination as a line on the top of my path, calculate the points before rendering the scene and then just use these points as my path. What do you think about this and my above comment?" CreationDate="2010-10-05T11:20:00.620" UserId="2039" />
  <row Id="5011" PostId="4242" Score="1" Text="Unity works on the iPhone and in browser, so is a good way of distributing the game for people to test, and getting use to being flamed early on" CreationDate="2010-10-05T11:26:58.780" UserId="1367" />
  <row Id="5012" PostId="4273" Text="It's also worth noting that the author now recommends people take a different approach. See the notes at http://scottbilas.com/games/dungeon-siege/" CreationDate="2010-10-05T13:01:50.743" UserId="1101" />
  <row Id="5013" PostId="4273" Text="What does he mean by &quot;the 'giant bricks' model of world subdivision&quot;? (if it's in the paper just say so, I haven't read it yet)" CreationDate="2010-10-05T13:14:55.610" UserId="189" />
  <row Id="5014" PostId="4242" Text="Someone voted this answer down. It's nice to comment on *why* you voted something down if you do :(" CreationDate="2010-10-05T14:00:20.233" UserId="1687" />
  <row Id="5015" PostId="4291" Text="I saw that keynote too, his point was that this was a design decision not a math decision: &quot;angle of incidence = angle of reflection&quot; would be correct but make for weak gameplay. Additionally in the original Pong and Breakout, speed was a function of how many ball/paddle collisions there were (so it speeds up over time). They also reduced paddle size after a certain number of hits, too. I would avoid allowing the ball to go straight up though, then you could leave the paddle there indefinitely." CreationDate="2010-10-05T15:18:47.157" UserId="458" />
  <row Id="5016" PostId="4286" Score="1" Text="As 5ound pointed out we already have high-level shading languages, but some people also build higher-level systems on top of that for artist driven shader creation. See the material editor in UE3 for example, or RenderMonkey." CreationDate="2010-10-05T15:41:40.103" UserId="1597" />
  <row Id="5017" PostId="4069" Score="2" Text="Great article on making money with Flash games (written by one of the other guys who worked on Steambirds):&#xA;http://www.lostgarden.com/2009/07/flash-love-letter-2009-part-1.html" CreationDate="2010-10-05T15:57:13.540" UserId="458" />
  <row Id="5018" PostId="4183" Text="I think this answer is better than the accepted answer. Just figure out which number is the maximum your players can achieve. Anything higher, just discard." CreationDate="2010-10-05T16:16:29.157" />
  <row Id="5019" PostId="1075" Text="Sure. GameJolt supports Flash, Silverlight, Unity3D and Java Applet." CreationDate="2010-10-05T17:07:42.940" UserId="587" />
  <row Id="5020" PostId="4260" Text="+1.  I have to say, despite only being a little familiar with Python, it's my first recommendation for beginning programmers.  Now we just need a python-robots!  Also good suggestions for e.g. hangman.  =)" CreationDate="2010-10-05T17:20:57.673" UserId="1134" />
  <row Id="5021" PostId="4321" Text="Dang, loading audio and video at runtime are going to be critical in my app down the road, so this is bad news." CreationDate="2010-10-05T17:36:54.527" UserId="2289" />
  <row Id="5022" PostId="4321" Score="1" Text="Not all hope is lost though! Look at the second answer to the linked question; looks like you can compile and run a video or audio at runtime, with XNA 3.1. http://stackoverflow.com/questions/1949264/how-to-load-a-video-from-file-in-xna-pc-only/2008784#2008784" CreationDate="2010-10-05T18:27:03.387" UserId="189" />
  <row Id="5023" PostId="4320" Score="1" Text="No actually I think its a good idea. I believe buying/stealing/trading a crafted and enchanted wands from a strong mage (player) be funnier then looting it from a NPC." CreationDate="2010-10-05T18:43:21.140" UserId="2413" />
  <row Id="5024" PostId="4292" Text="I don't know why you're assuming I would do 2d graphics." CreationDate="2010-10-05T19:03:26.893" UserId="1829" />
  <row Id="5025" PostId="4163" Text="If you exceed this number of people, A) you're already doing very well and B) you could go back and add new mineral veins to the world. While it is under you have low incentive for players to set up mining and can decrease how much NPCs mine as well." CreationDate="2010-10-05T19:28:02.367" UserId="1477" />
  <row Id="5026" PostId="4253" Text="Write pong before breakout, you could then export the ball, wall and paddle classes and extend them such that they work with the different types of bricks and powerups. Plus, I would consider pong simpler than breakout." CreationDate="2010-10-05T19:53:53.997" UserId="2416" />
  <row Id="5027" PostId="4314" Score="1" Text="I've been on many muds, the only ones with a solid and stable community are ones that have a community which embraces roll playing over all else. Which wasn't a lot of fun for me, as my interests were writing MPI and MUF code for MUCKs. I basically sat alone on a server writing code." CreationDate="2010-10-05T19:56:43.330" UserId="2416" />
  <row Id="5028" PostId="4183" Score="2" Text="So if one player who goes to a university cheats, everyone on the network is now a &quot;cheater&quot;" CreationDate="2010-10-05T20:54:24.987" UserId="962" />
  <row Id="5029" PostId="4182" Text="@Joe Wreschnig, they can send any key they want, but the server should be set to only accept valid keys." CreationDate="2010-10-05T20:55:58.183" UserId="962" />
  <row Id="5030" PostId="4260" Text="Dude you should learn a .net language (i like C#, F# not so much, vb.net is ok. boo isnt support in visual studios :(). The languages are less error prone then C++ and you get exceptions when you do something wrong (a very good thing. C++ should do more of that). And you can learn how to use the call stack, watch variables, breakpoints (i assume breakpoints work in a python IDE?) and you'll be able to debug quickly. Which is great when you write unstable beginner code." CreationDate="2010-10-05T21:39:52.950" UserId="1047" />
  <row Id="5031" PostId="4292" Text="I'm not assuming that you would do 2d graphics. I just wanted to add that shaders are probably less relevant for 2d graphics in general." CreationDate="2010-10-05T21:58:34.227" UserId="20" />
  <row Id="5032" PostId="4324" Text="Actually my MUD engine is working differently. There is no turn-based or &quot;cycle&quot;. Everyone is in a different thread and while fighting, the speed may vary but there is no background calculating / waiting like all the MUD I used to play. I like your 3rd ideas though. And indeed a MUD is not fun without RP. Edit: I also dont know if each client it's own thread is very efficient." CreationDate="2010-10-05T22:41:34.260" UserId="2413" />
  <row Id="5033" PostId="4322" Text="If only it didn't require installing XNA GS on the user's computer, this would have been perfect." CreationDate="2010-10-06T04:07:41.147" UserId="2289" />
  <row Id="5034" PostId="4324" Text="Indeed, each client in its own thread won't scale well at all. You should ask that question in a new question here and I'd be happy to give a very detailed answer." CreationDate="2010-10-06T04:37:11.137" UserId="189" />
  <row Id="5035" PostId="4280" Text="@tenpn: True, but you have to be careful with overuse. A project that uses 12 different languages for 12 different segments is going to be nearly unmaintanable for other programmers. Each language is a significant amount of extra complexity, and you need to carefully weigh whether that complexity is worth what you gain. In my experience, in games, it's rare that you want more than C++ and (choose your favorite scripting language)." CreationDate="2010-10-06T06:30:59.127" UserId="323" />
  <row Id="5036" PostId="2962" Text="Note this was used for years on EVE before PLEXes, it was just more cumbersome, but still encouraged and supported by the publisher.  (They also charge slightly more cash per play time, so they actually get *more* money for brokering the transaction.)  Also, you might *not* have gotten Frank's money anyway: he might've become frustrated and quit." CreationDate="2010-10-06T06:33:40.137" />
  <row Id="5037" PostId="4329" Text="Certainly have!  And I do intend to play with Unity a bit more.  However I just wanted to learn more about writing games in plain Cocoa for the mac." CreationDate="2010-10-06T07:14:28.293" UserId="1012" />
  <row Id="5038" PostId="4302" Text="I would just edit my answer for a specific color like you mentioned but you're faster :). But I like things automated more. If you have performance issues stroking the curves with a specific color will save you edge detection calculation times for a cost of stroking every walkable curve and a thin curve line. But this will prevent you from generating random things and random things add much more fun to the game." CreationDate="2010-10-06T07:21:00.190" UserId="2360" />
  <row Id="5039" PostId="4195" Score="4" Text="You don't have to validate every recording submitted, you just have to validate the ones that make it to the top 10.  There's not much point cheating to become #11.  And you don't have to do it in realtime.  Periodic batch process would be fine." CreationDate="2010-10-06T07:21:11.750" UserId="1120" />
  <row Id="5040" PostId="4302" Text=" For the xposition you may again use edge detection. If your thin air colors are light enough by thresholding along with edge detection you may calculate the foot position will be zero meaning there are no edges. So you may block your character to move forward anymore. You may let it jump or fly or other. I would preffer falling myself :) " CreationDate="2010-10-06T07:21:20.643" UserId="2360" />
  <row Id="5041" PostId="4182" Score="1" Text="I think Joe's point was that they don't have to use the hash of the newly modified program, but can just send whatever the previous hash was." CreationDate="2010-10-06T10:26:09.627" UserId="1101" />
  <row Id="5042" PostId="4316" Text="I've seen something similar on shipped games, except the data is usually read in from an Excel spreadsheet, one language per column." CreationDate="2010-10-06T10:31:23.580" UserId="1101" />
  <row Id="5043" PostId="4312" Text="Dear Bahbar, Thank you for the answer. So basically, there is nothing else different in ES2.0, just manually creating glOrtho() matrix replacement." CreationDate="2010-10-06T11:10:29.570" UserId="2229" />
  <row Id="5044" PostId="4326" Text="Hello Ellis, this is excellent and complete answer. Thank you very much. Regards." CreationDate="2010-10-06T11:11:30.707" UserId="2229" />
  <row Id="5045" PostId="4332" Text="Can someone with enough rep please add the iPhone tag?" CreationDate="2010-10-06T12:12:44.903" />
  <row Id="5046" PostId="4286" Text="So it is potentially doable to craft a 3d engine using only shaders ?" CreationDate="2010-10-06T12:30:31.607" UserId="1829" />
  <row Id="5047" PostId="3791" Score="6" Text="Can't be more of a poster child. This game has single handedly made a single programmer MILLIONS of dollars in sales." CreationDate="2010-10-06T12:42:46.923" />
  <row Id="5048" PostId="4185" Text="A standard undergraduate exercise, at least in US universities, is to reverse-engineer passwords constructed as you describe, by reading y86 (http://cgi2.cs.rpi.edu/~hollingd/comporg-spring2007/notes/Y86/y86ref.html) assembly code." CreationDate="2010-10-06T12:49:28.333" UserId="744" />
  <row Id="5049" PostId="4321" Text="@Ricket Yeah, I can't have users be forced to download GS just to be able to compile these, so I'm still stuck. I'm trying to look into the DirectShow VideoPlayer, but it's old and finicky." CreationDate="2010-10-06T12:55:00.457" UserId="2289" />
  <row Id="5050" PostId="4311" Text="Thanks, I'll try this out ASAP." CreationDate="2010-10-06T13:25:32.777" UserId="1217" />
  <row Id="5051" PostId="4321" Text="But... they need to have XNA installed whether it's 3.1 or 2.0, right? What's the difference?" CreationDate="2010-10-06T14:45:32.260" UserId="189" />
  <row Id="5052" PostId="4321" Text="The XNA Runtime is always needed, yes (if I recall correctly). However, that MSBuild method requires the **entire** Game Studio to be downloaded on the user's computer (and GS 4.0 is about a 400 MB ISO)." CreationDate="2010-10-06T14:50:42.283" UserId="2289" />
  <row Id="5053" PostId="4322" Text="It's certainly unfortunate.  I remember seeing rumblings some time ago (years) about the XNA Team wanting to get the Content Pipeline stuff into the redist, but it hasn't happened in the last few versions and it seems unlikely to happen soon given their current focus on non-PC platforms where the pipeline won't run anyway." CreationDate="2010-10-06T15:11:01.600" UserId="2150" />
  <row Id="5054" PostId="4312" Text="@Bunkai.Satori: Well, there is a little bit more in that typically, GL uploads a composite of modelview and projection to a uniform." CreationDate="2010-10-06T16:04:05.670" UserId="1374" />
  <row Id="5055" PostId="4311" Text="I tried to port it to code but couldn't get it to work.. I'm sure the problem is that I can't really get my head around your solution. The part after the input is where you lost me. " CreationDate="2010-10-06T16:16:57.443" UserId="1217" />
  <row Id="5056" PostId="4185" Text="Yes, i know it. In france, we do the same in few engineering schools. It is the same problem as copy protection. It it not the perfect solution. But in many cases, it is sufficient. My opinion because i made just little games." CreationDate="2010-10-06T17:06:02.653" UserId="721" />
  <row Id="5057" PostId="4327" Score="1" Text="OS X doesn't (yet?) support OpenGL &gt;2.1." CreationDate="2010-10-06T17:21:48.117" UserId="613" />
  <row Id="5058" PostId="3706" Score="1" Text="Oh please. I hear this quote all the time but it's absolutely not true. Truth be told obscuring the JS would at least deter some people." CreationDate="2010-10-06T17:24:14.813" />
  <row Id="5059" PostId="4311" Text="I suggest you search for videos on YouTube about Kinematics.&#xA;&#xA;Here's an example of the math behind: &#xA;directionVector = Vector2( cos( shipRotationAngle ), sin ( shipRotationAngle ) )&#xA;&#xA;http://www.youtube.com/watch?v=rGFaVoz2Jig&amp;feature=related " CreationDate="2010-10-06T17:39:16.703" UserId="1352" />
  <row Id="5060" PostId="4306" Text="http://torque.oncloud8.com/archives/000473.html and http://avi.alkalay.net/2007/08/svg-games.html" CreationDate="2010-10-06T18:08:50.073" UserId="2416" />
  <row Id="5061" PostId="1021" Text="yeah initially the author didn't specify which type he wanted so I assumed non dynamic." CreationDate="2010-10-06T18:13:38.047" UserId="542" />
  <row Id="5062" PostId="4342" Text="I agree entirely, that looks amazing." CreationDate="2010-10-06T18:24:22.190" UserId="1156" />
  <row Id="5063" PostId="4339" Score="1" Text="+1,  highly recommended.  This book is &quot;anchoring&quot; a lot of the fundamental concepts in ways they never were before." CreationDate="2010-10-06T18:55:52.660" UserId="1134" />
  <row Id="5064" PostId="3892" Text="@caspin This is most if not all p2p games are run. One player is designated the host, and the rest connect to him." CreationDate="2010-10-06T21:08:43.697" UserId="962" />
  <row Id="5065" PostId="4327" Text="It looks like 10.6.3 supports the majority of OpenGL 3" CreationDate="2010-10-06T22:52:32.183" UserId="1012" />
  <row Id="5066" PostId="4322" Text="@RetMon Makes sense, although yeah, it kinda sucks for PC-only XNA games." CreationDate="2010-10-06T23:47:04.937" UserId="2289" />
  <row Id="5067" PostId="4288" Score="4" Text="For what it's worth, Android applications are typically written in Java.  The difference between the two is that &quot;Android&quot; is an operating system and &quot;Java&quot; is a programming language.  They serve different (non-overlapping) purposes." CreationDate="2010-10-07T00:10:44.320" UserId="1780" />
  <row Id="5068" PostId="4279" Text="Also it's not like you need to determine the current level all of the time.  Just check to see if the current XP is more than the threshold for the NEXT level, starting from the current level that you've stored somewhere.  I.e. I'm level 5.  If my XP is greater than or equal to xpTable[6], then I'm level 6.  Keep looping until you find your new current level." CreationDate="2010-10-07T00:17:22.407" UserId="1780" />
  <row Id="5069" PostId="557" Text="Heh, nope. :) Probably could satisfy that tester with some PS3 fractal tech." CreationDate="2010-10-07T04:43:01.953" UserId="325" />
  <row Id="5070" PostId="4292" Text="I'm so eager to learn 3D theories in my school :x" CreationDate="2010-10-07T06:41:01.570" UserId="1829" />
  <row Id="5071" PostId="4349" Score="1" Text="I can't vouch for the Java bindings/ports, but I can say that Bullet is a great library." CreationDate="2010-10-07T07:48:16.187" UserId="678" />
  <row Id="5072" PostId="4298" Score="1" Text="It would help if you specify if you intend to sell this game, since Havok is free for non-commercial use." CreationDate="2010-10-07T08:49:10.283" UserId="891" />
  <row Id="5073" PostId="4286" Text="Shaders don't handle input, audio, networking, so no." CreationDate="2010-10-07T10:20:30.553" UserId="1101" />
  <row Id="5074" PostId="4321" Text="On top of that, I believe the full game studio requires the full .net framework insted of the client profile which the redist requires." CreationDate="2010-10-07T10:27:18.197" UserId="1687" />
  <row Id="5075" PostId="4346" Text="@DFectuoso any recommendations on Sprite tools? (for creating sprites, as I can never get the center just right or even to manage them XNA/C# related would be awesome)" CreationDate="2010-10-07T12:41:19.047" UserId="2301" />
  <row Id="5076" PostId="4311" Text="Also: http://gamedev.stackexchange.com/questions/4336/what-is-a-good-linear-algebra-book-for-game-programmres " CreationDate="2010-10-07T15:08:36.337" UserId="1352" />
  <row Id="5077" PostId="4346" Score="1" Text="@Spooks, i am not a good  artis so I have little experience with sprite creation, I try to get all my sprites from the Creative Commons world(great link: http://gamedev.stackexchange.com/questions/20/where-can-i-find-free-sprites-and-images) but when I need something really specific I use pixen. It has layers, and that for me is REALLY important, it makes it easier for me to have a layer for each part and be able to turn it on/off really easy. It is a mix between paint and gimp, exactly where I need it to be." CreationDate="2010-10-07T16:13:38.290" UserId="666" />
  <row Id="5078" PostId="4255" Text="What would you have to add in order to allow &quot;curve&quot; balls? For example, when the ball is about to hit the paddle you move the paddle in order to make the ball curve. Something like this: http://en.wikipedia.org/wiki/Curve_ball" CreationDate="2010-10-07T17:59:01.710" UserId="1199" />
  <row Id="5079" PostId="4359" Text="If you've got multicore machines I would recommend more than one network thread (up to one per core); while each socket is network-limited, reading the client requests and constructing the game-state / RPC-response packets to shove back into the sockets is almost perfectly parallelizable." CreationDate="2010-10-07T17:59:36.673" UserId="744" />
  <row Id="5080" PostId="4351" Text="Awesome question, I really needed to learn this but I didn't know what to ask." CreationDate="2010-10-07T18:41:05.917" UserId="666" />
  <row Id="5082" PostId="4362" Text="ScreenPointToRay look handy, thanks! what dows the out keyword do ?" CreationDate="2010-10-07T19:55:19.053" UserId="1130" />
  <row Id="5083" PostId="4255" Text="See the edit, and let me know what you think (if you need more info about something, don't get something, etc.)" CreationDate="2010-10-07T23:26:29.370" UserId="189" />
  <row Id="5084" PostId="4362" Text="http://msdn.microsoft.com/en-us/library/t3c3bfhx(VS.80).aspx" CreationDate="2010-10-08T00:35:18.287" UserId="51" />
  <row Id="5085" PostId="4357" Text="Exactly what this person said :)" CreationDate="2010-10-08T00:38:58.653" UserId="469" />
  <row Id="5086" PostId="4357" Score="1" Text=" Damn enter thing... Anyway, I saw once a MUD without cycle, and it sucked, because some players would make some wierd macros on their client, and when you went to PvP with them, they would easily pummel you do death by sheer command flooding, even if they were weaker, they sometimes would hit you several times before you had the chance to even read what was going on." CreationDate="2010-10-08T00:40:05.687" UserId="469" />
  <row Id="5087" PostId="2935" Text="@Kylotan Sometimes I make a trade-off: methods/members that i want to be testable, promote them to protected, extend the class in your tests with a dummy that further exposes them as public specifically for the testing harness. Bit of mucking about, but it works.  If you're working in C++ you could also make use of friend classes, though I don't think this is what they were designed for and creates wrong way round coupling between your class and the tests. That friends advice could be very misguided. :/" CreationDate="2010-10-08T00:59:13.723" UserId="1799" />
  <row Id="5088" PostId="4367" Text="What is the standard format?" CreationDate="2010-10-08T04:46:30.317" UserId="370" />
  <row Id="5089" PostId="4368" Text="Very interesting application thank you." CreationDate="2010-10-08T05:05:03.713" UserId="2168" />
  <row Id="5090" PostId="4367" Text="@caspin not really sure if that is relevant to the end of what it should do... see bellow answer." CreationDate="2010-10-08T05:05:37.283" UserId="2168" />
  <row Id="5091" PostId="4367" Text="Can you be more specific as to what you are trying to do? In most cases you are going to get some image degradation from this due to format changes. If, for example you did jpeg-&gt;video memory-&gt;jpeg, you would likely not end up with the exact same image you started with." CreationDate="2010-10-08T07:30:24.940" UserId="142" />
  <row Id="5092" PostId="4367" Text="@Jason and how exactly do you figure out what format it is ? Before reverbb's reply i didnt even know how to get it dumped or readed ..." CreationDate="2010-10-08T10:38:04.150" UserId="2168" />
  <row Id="5093" PostId="2271" Text="I'm using it and it's easy if you can automate the code generation in your build system. Although a really excellent advantage is that it allow you to transfer data on remote machnies without regarding the platform used, and it's optimized for that so the generated objects are not big." CreationDate="2010-10-08T12:22:10.557" UserId="364" />
  <row Id="5094" PostId="4342" Text="Thank you for adding the link to Khan Academy,It is going to be very useful to me. +1 for this reply." CreationDate="2010-10-08T13:00:50.900" UserId="1251" />
  <row Id="5095" PostId="4346" Text="@DFectuoso pixen looks great, except im not running a Mac:( thanks for the link tho!" CreationDate="2010-10-08T13:56:33.853" UserId="2301" />
  <row Id="5096" PostId="4242" Text="+1 for XNA.  In learning XNA, you will necessarily learn a good bit about general C#/.NET development too, so even if you decide that game development isn't for you, you'll have gained some valuable experience that you can carry with you to other development careers.  Granted, that could be said for any platform, but .NET has a very healthy market, and I'm admittedly biased ;).  Oh, and you can target Xbox360 and Windows Phone 7 with XNA too." CreationDate="2010-10-08T14:07:03.640" UserId="136" />
  <row Id="5098" PostId="4311" Text="Thanks, I'll check it out!" CreationDate="2010-10-08T15:52:12.093" UserId="1217" />
  <row Id="5099" PostId="4366" Score="1" Text="you have to be careful with player driven economies. Shattered World had a player driven economy and they drove it...into the ground." CreationDate="2010-10-08T15:59:36.823" UserId="1477" />
  <row Id="5100" PostId="4378" Text="Sonic does not have a curve formula for the tiles. It uses a 2d height-map for each pixel." CreationDate="2010-10-08T16:18:51.160" UserId="962" />
  <row Id="5101" PostId="4371" Score="1" Text="Are you interested in collision avoidance of large crowds, or giving each crowd member a purpose and a destination?" CreationDate="2010-10-08T16:29:50.033" UserId="259" />
  <row Id="5102" PostId="4373" Text="Steering behaviours are perfect for this, as long as you don't mind a lot of feet-sliding." CreationDate="2010-10-08T16:33:21.227" UserId="259" />
  <row Id="5104" PostId="4370" Text="Thank you. I actually figured that I could turn off filtering, and it fixed." CreationDate="2010-10-08T16:49:50.850" UserId="469" />
  <row Id="5105" PostId="4370" Text="But I am still wondering, how I add half a texel... or stuff like that." CreationDate="2010-10-08T16:50:14.763" UserId="469" />
  <row Id="5106" PostId="4384" Text="DX Sample for Video Memory is great -- should have found that before asking ;)" CreationDate="2010-10-08T17:38:30.580" UserId="111" />
  <row Id="5107" PostId="4376" Text="Do you have any recommendations and/or links to examples? It seems like the only media type I'm lacking the ability to import now is video, and IIRC it's one of the two that is considered infeasible to load manually." CreationDate="2010-10-08T18:09:13.263" UserId="2289" />
  <row Id="5108" PostId="4391" Text="By the way, this post is talking about how to use Photoshop for this case." CreationDate="2010-10-08T20:33:51.600" />
  <row Id="5109" PostId="4391" Score="4" Text="@Sergio, not nesessarily, PhotoShop is not the only image editing software that has layers, guides, rules, and per pixel grids." CreationDate="2010-10-08T21:09:54.583" UserId="962" />
  <row Id="5110" PostId="4380" Text="@Mike thanks that was informational... do you know any other softwares or ways to dump that data ?" CreationDate="2010-10-08T21:27:53.597" UserId="2168" />
  <row Id="5111" PostId="4370" Score="1" Text="To add half a texel, you need to adjust your texture co-ordinates. Co-ordinates are normalised to be between 0 to 1, so if you have a 800x600 texture, you need to add 1/1600 and 1/1200 to the u and v values respectively." CreationDate="2010-10-08T21:48:07.260" UserId="1091" />
  <row Id="5112" PostId="4389" Score="1" Text="I wrote a utility (http://sourceforge.net/projects/protodata/) a while back to help me prototype binary file formats. It's not perfect, but it works, and I hope it can be of use to you." CreationDate="2010-10-08T23:19:08.393" UserId="2081" />
  <row Id="5113" PostId="4391" Text="@Sergio thought I mentioned that I'd recommend PS over illustrator in this case. But yeah, IIRC it should still possess all of those features being in the same suite as Photoshop. I haven't opened anything but Photoshop and After Effects for awhile now though." CreationDate="2010-10-08T23:48:55.180" UserId="14" />
  <row Id="5114" PostId="4393" Text="Also, regarding the duplicate I know people will point out: I'm mostly interested in how the actual data was put into the games and how huge levels were created while retaining a small file size - not so much the development process and tools used." CreationDate="2010-10-09T00:30:32.107" UserId="570" />
  <row Id="5115" PostId="4389" Text="Thank you, I will give that a try." CreationDate="2010-10-09T00:35:27.260" UserId="1248" />
  <row Id="5116" PostId="4391" Text="@AttackingHobo - he mentioned snapping guidelines by clicking the grid; that action is used in Photoshop primarily and 99% of the tutorials anyone would find by searching for that would return Photoshop results." CreationDate="2010-10-09T01:13:24.450" />
  <row Id="5117" PostId="4393" Text="Possible duplicate: http://gamedev.stackexchange.com/questions/443/how-were-8-bit-and-16-bit-games-developed" CreationDate="2010-10-09T01:14:08.327" />
  <row Id="5118" PostId="4396" Score="2" Text="Ah, the mario bushes/trees incest with a logical explanation!  Excellent." CreationDate="2010-10-09T03:57:39.410" UserId="284" />
  <row Id="5119" PostId="4395" Text="Also, use technology that use less space." CreationDate="2010-10-09T04:29:17.977" UserId="469" />
  <row Id="5120" PostId="4395" Score="3" Text="(sorry, enter issue again... there are a way to disable it? I hate that every time I press enter the comment submits)." CreationDate="2010-10-09T04:29:42.327" UserId="469" />
  <row Id="5121" PostId="4395" Text="Another enter :/ Anyway, use technology that use less space, like procedural maps (Noctis has a entire galaxy with several million solar systems, with planets that you can land and see life, trees, ruins, buildings... in less than 3MB), module music (music in formats like .mod, .xm, .it...), procedural textures (see werkkzeug, mapzone, and some other software), procedural sound effects (almost any sound effect is possible to make from math equations, or manipulation of basic sound waves), and so on." CreationDate="2010-10-09T04:32:21.200" UserId="469" />
  <row Id="5122" PostId="4393" Text="NES(see Metroid Source at MDB) and SNES(the source code of some random 3rd party games is out there on the web) used ASM, N64(Zelda: MM's debug screen displays the filename in the crash info) used C." CreationDate="2010-10-09T04:53:10.447" UserId="1713" />
  <row Id="5124" PostId="4255" Text="Thanks! Superb answer, I've always wondered how to do achieve that effect!" CreationDate="2010-10-09T07:31:25.677" UserId="1199" />
  <row Id="5125" PostId="4402" Score="4" Text="Could do with a more useful title, but I can't think of one." CreationDate="2010-10-09T08:08:26.220" UserId="1156" />
  <row Id="5126" PostId="4402" Text="Could do with a real question too. This isn't even appropriate for CW; it encompasses the entirety of game programming, which means most of the answers on the site are somehow appropriate for it." CreationDate="2010-10-09T10:59:47.720" UserId="744" />
  <row Id="5128" PostId="4357" Text="Hmm I see the point there but adding different commands an inner lag (combat command 3s, movement lets say 2s, and socials 1s) I believe it would fix that problem. The other battles texts will constantly display. Some players will hit more / faster depending of their stats. Thats my thought of what I would like to do" CreationDate="2010-10-09T14:16:12.537" UserId="2413" />
  <row Id="5129" PostId="4355" Text="That is exactly my idea behind. But I thought I would drive it with multi-threaded clients. But now I hear its not a good suggestion suggestion :P" CreationDate="2010-10-09T14:18:04.953" UserId="2413" />
  <row Id="5130" PostId="4357" Text="@Joe that was the idea behind the whole thing. I just can't figure it out if it all runs in the same single thread. It looks like a big loop to me to see if any player have a command buffered and then execute it. But what about the regular attacks commands (similar to &quot;white damage&quot; in WoW)?" CreationDate="2010-10-09T14:20:13.620" UserId="2413" />
  <row Id="5133" PostId="4357" Text="Run your game logic update at some fixed FPS, e.g. 30. Damage that occurs every 2 seconds occurs every 60 frames. It's just a normal game loop, but without the render() call." CreationDate="2010-10-09T15:22:45.890" UserId="744" />
  <row Id="5135" PostId="4355" Text="why use threads beyond what you may use for sockets/communication?" CreationDate="2010-10-09T16:11:00.960" UserId="1477" />
  <row Id="5136" PostId="4391" Text="@Sergio thanks for reminding me, your supposed to click and drag from the ruler. But yes, Illustrator does have the ability to create guides. So I don't think that any of this information is false." CreationDate="2010-10-09T16:47:33.737" UserId="14" />
  <row Id="5137" PostId="4409" Text="This would make more sense as a wiki question asking for ui design tutorials, etc. " CreationDate="2010-10-09T17:11:59.833" UserId="1198" />
  <row Id="5138" PostId="4407" Score="1" Text="Wrt are you talking about? Seems like a reasonable question, and a reasonable answer to me..." CreationDate="2010-10-09T17:13:51.703" UserId="1198" />
  <row Id="5139" PostId="4402" Score="1" Text="Is a wide quuestion overall, but there are a few subquestions asked as well." CreationDate="2010-10-09T17:19:31.130" UserId="1198" />
  <row Id="5140" PostId="4409" Text="I am not looking for  tutorials, neither a collection of stuff, I want a direct reply, I need to do a task, and I need to figure how to do it." CreationDate="2010-10-09T17:20:52.853" UserId="469" />
  <row Id="5141" PostId="4402" Score="3" Text="The subquestions are &quot;What should I know about game programming?&quot; (too general), &quot;How does a main loop work?&quot; (dup), &quot;What should I start with?&quot; (many dups of the form &quot;Should I start with X?&quot;), and &quot;What books should I read?&quot; (dup)." CreationDate="2010-10-09T18:16:02.867" UserId="744" />
  <row Id="5142" PostId="4409" Score="2" Text="&quot;How do I get started with user interface design?&quot; is a perfect kind of question for the UI StackExchange. (Actually it's the perfect kind of question for a forum, not a SE, but at least pick the right SE.) http://ui.stackexchange.com" CreationDate="2010-10-09T18:18:03.423" UserId="744" />
  <row Id="5143" PostId="4367" Text="@Guapo generally you will specify that when you load the texture into memory, it will probably be one of these though: http://en.wikipedia.org/wiki/S3_Texture_Compression Are you working on OpenGL, DirectX, something else? The details are tied to the API." CreationDate="2010-10-09T20:42:00.453" UserId="142" />
  <row Id="5144" PostId="4409" Score="2" Text="I think any answers may interest indie devs who need to do it all themselves and have the same sort of problems with Game UI design.  " CreationDate="2010-10-09T21:39:10.883" UserId="360" />
  <row Id="5145" PostId="4408" Score="9" Text="wooah! This image is moving!! :D" CreationDate="2010-10-09T21:59:45.450" UserId="490" />
  <row Id="5146" PostId="4408" Text="I don't see where clipping occurs? And I don't really understand the question. You want to create a 3 dimensional ball which has two halves in different colors, and use it as 2d sprite? The spritesheet seems pretty complete for that. What exactly is the nature of the quality issue?" CreationDate="2010-10-09T22:03:10.490" UserId="490" />
  <row Id="5147" PostId="4408" Text="I guess it is hard to see.  There are several sides of the rolling balls which are cut short.  I guess I was looking for a tried and true way to set up this sheet with exact scaling and placement on the sheet.  I think I'm off by just one or two pixels here and there." CreationDate="2010-10-10T00:45:59.383" UserId="573" />
  <row Id="5148" PostId="4409" Text="Practice, practice, and more practice... Even your &quot;fugly&quot; designs will improve with time and effort. " CreationDate="2010-10-10T03:11:49.023" UserId="2345" />
  <row Id="5149" PostId="4414" Text="Thanks for the links. I am already doing gamma correction at load time with libpng, which helps, but I might have to look again at the code after reading the above information as the images are still 'washed out' on a television." CreationDate="2010-10-10T03:47:58.130" UserId="2338" />
  <row Id="5150" PostId="4409" Score="1" Text="Practice for the sake of it don't work, if I have nothing to aim at." CreationDate="2010-10-10T06:41:57.910" UserId="469" />
  <row Id="5151" PostId="4409" Score="1" Text="(ignore the enter...) Even to break rules, you need to know them first." CreationDate="2010-10-10T06:42:23.400" UserId="469" />
  <row Id="5152" PostId="4407" Score="1" Text="Thank you very much for some of the clarification. " CreationDate="2010-10-10T08:13:40.763" UserId="2456" />
  <row Id="5153" PostId="3540" Text="No actually it would be 9 versions of each sprite" CreationDate="2010-10-10T17:38:17.307" UserId="962" />
  <row Id="5154" PostId="4407" Text="@Joe: even if he was, it's not his fault if the system is broken" CreationDate="2010-10-10T20:20:43.047" UserId="2188" />
  <row Id="5155" PostId="4407" Text="@Lo'oris: That's only if you assume &quot;the system&quot; is to get as much rep as possible before the site gets shut down for sucking, rather than build a useful Q&amp;A site that won't get shut down." CreationDate="2010-10-10T20:28:14.477" UserId="744" />
  <row Id="5156" PostId="4389" Text="@Brett: I added an extended example to the project home page, copied from one of the projects for which I used Protodata. http://protodata.sourceforge.net/cgi-bin/MainPage#Example" CreationDate="2010-10-10T20:57:57.287" UserId="2081" />
  <row Id="5157" PostId="4296" Score="1" Text="Selection bias FTW. Social devs hang around social devs. " CreationDate="2010-10-11T02:34:41.580" UserId="892" />
  <row Id="5158" PostId="3035" Score="1" Text="A prototype is low-cost model of something you're going to build later in earnest. An analogy is: a sketch is a prototype of an oil painting." CreationDate="2010-10-11T02:41:00.317" UserId="892" />
  <row Id="5159" PostId="4422" Score="4" Text="What is a sell-sheet? Like a game design document (GDD)?" CreationDate="2010-10-11T03:23:01.387" UserId="189" />
  <row Id="5160" PostId="4409" Text="Your best bet may be to look for general advice guidelines on flash and/or website design and work from there. Game interfaces aren't that far removed from any other sort of UI graphic design. Unfortunately graphic design is an art, not a science, and ultimately its going to be that well-known mix of inspiration and perspiration that builds what you are looking for." CreationDate="2010-10-11T03:29:15.653" UserId="2220" />
  <row Id="5161" PostId="2976" Text="Mono and Moonlight are MIT-licensed, so embedding one or both of them in a game is certainly doable (and is being done, for instance in Second Life). There has been at least one planned attempt at doing such an embedding of Moonlight itself for a game: http://tirania.org/blog/archive/2009/Nov-12-2.html#comment-22844845 (No idea if it happened/was successful or not, though.)" CreationDate="2010-10-11T03:52:54.057" UserId="2220" />
  <row Id="5162" PostId="4405" Text="@Joe Wreschnig : I agree with you, in using b2LoopShape I could create a slope as my desire. But, on following the link you posted; The problem is, it doesn't lead to a flash port of box2d just a c++ version. 1.) Do you have any suggestions for that?  or  2.)Do you know of any other physics engine for flash which allows creation of curved slopes?" CreationDate="2010-10-11T04:26:27.473" UserId="1251" />
  <row Id="5163" PostId="4378" Text="@AttackingHobo: Can you tell me what is 2dheight map for each pixel or can you point me to a place where I can use that for in my flash games ?" CreationDate="2010-10-11T04:28:58.957" UserId="1251" />
  <row Id="5164" PostId="4378" Score="2" Text="http://info.sonicretro.org/Sonic_Physics_Guide Take a look at this. I don't know if this will help you if you use box 2d. You might have to roll your own physics engine." CreationDate="2010-10-11T05:34:48.577" UserId="962" />
  <row Id="5166" PostId="4402" Text="@Joe I don't know, &quot;Are there any major/fundamental concepts that one should know about game programming versus control driven programming?&quot;, sounds like a reasonable question to me. Most of those questions are questions asked by people with no programing knowledge. This person is saying he is a proficient programmer, and wants to know some of the differences between application programming and game programming." CreationDate="2010-10-11T05:51:33.590" UserId="962" />
  <row Id="5167" PostId="4416" Text="SOIL! I forgot about that library. It has helped me in the past with some ideas. Thanks for the links." CreationDate="2010-10-11T06:15:33.643" UserId="2338" />
  <row Id="5168" PostId="4422" Score="6" Text="A sell-sheet is a one-page advertising pitch; in the domain of game design, it also probably covers your core vision for the game." CreationDate="2010-10-11T08:31:33.340" UserId="744" />
  <row Id="5169" PostId="4405" Text="I don't think the Flash port of Box2D is up-to-date with the new joint/shape types. I have no idea what physics engines are available for Flash other than Box2D." CreationDate="2010-10-11T08:33:40.353" UserId="744" />
  <row Id="5170" PostId="4405" Text="@ Joe : If I ask you, If it would be feasible if I tried writing an AS class for b2LoopShape?So that I could incorporate it into the Box2d Flash api. Where would I have to start heading.? Any clue?" CreationDate="2010-10-11T08:57:20.687" UserId="1251" />
  <row Id="5171" PostId="4378" Text="@Attacking Hobo : Is there any advantage or possibility in &quot;doing&quot; curved slopes If i try making an AS 3.0 class that allows loops in the box2d api?" CreationDate="2010-10-11T08:59:45.440" UserId="1251" />
  <row Id="5172" PostId="4408" Text="Did you try ImageMagick for the generation of the Spritesheet? See here: http://gamedev.stackexchange.com/questions/335/what-is-a-good-tool-for-producing-animated-sprites/385#385" CreationDate="2010-10-11T15:33:19.863" UserId="20" />
  <row Id="5173" PostId="4422" Text="@Joe yep that's what I'm after." CreationDate="2010-10-11T16:40:55.213" UserId="831" />
  <row Id="5174" PostId="4396" Score="1" Text="It's worth pointing out that the carts were often sized in mega*bits*, not mega*bytes*.  Those 64Mb carts were only 8MB." CreationDate="2010-10-11T17:13:13.063" UserId="1780" />
  <row Id="5175" PostId="4395" Text="@speeder it's easy to click 'edit' or 'delete' on accidental comments..." CreationDate="2010-10-11T17:14:34.347" UserId="1780" />
  <row Id="5176" PostId="4395" Text="Re: &quot;Compress what you can,&quot; on the old hardware you typically would compress to whatever the hardware could handle.  You would never compress audio to MP3, because the audio hardware didn't handle it natively and you wouldn't want to waste the time decompressing it on the CPU when you could just stream it straight off of the media into the audio hardware.  MIDI was great though because everyone had (and has) a wavetable synth on board; just load up your samples and there you go." CreationDate="2010-10-11T17:16:37.933" UserId="1780" />
  <row Id="5177" PostId="4395" Text="The hard part is NOT pressing enter. When this &quot;feature&quot; was introduced (that behavior is new... some time ago what it did was strip your enters, instead of submitting), I used to edit and delete, but now I don't bother, because after I am editing I end pressing enter again." CreationDate="2010-10-11T17:17:37.970" UserId="469" />
  <row Id="5178" PostId="3620" Text="I tried MyGUI and it's indeed extremely bloated, don't really recommend it if you want to save up space. Still fiddling to get QuickGUI to work. " CreationDate="2010-10-11T18:41:11.963" UserId="1312" />
  <row Id="5180" PostId="4381" Text="It looks like GG is moved to a separate project gigi on sourceforge." CreationDate="2010-10-11T19:46:51.257" UserId="370" />
  <row Id="5181" PostId="4421" Text="If you need some help with generating a sprite sheet from animation frames I can give a general explanation." CreationDate="2010-10-11T19:51:38.873" UserId="962" />
  <row Id="5183" PostId="4280" Score="1" Text="@ZorbaTHut, that is my situation.  C++ for the engine and game, and python (when it is easier) for tools.  I'm not using Lua as my tools language because it's Python's standard library that makes it easy to use.  I'm not embedding Python as I'm not insane." CreationDate="2010-10-11T21:01:11.690" UserId="370" />
  <row Id="5184" PostId="4427" Score="2" Text="In university I was forced to work in teams with up to seven people, and do commitee style stuff." CreationDate="2010-10-11T21:46:22.330" UserId="469" />
  <row Id="5185" PostId="4427" Score="2" Text="The result is lots of conflicts, crap game, and lost friends. Even if they whine, it is much better to assign each person a leadership role in something they can lead. In my last project, we only managed to stop conflicts after nominating someone as art director, since this was the major reason for conflict, and since I was the programmer, I plainly would override other people decisions in game design when I felt the need to. But the commitee decisions were still clear to the teachers, and we lost 20% of our grade for that." CreationDate="2010-10-11T21:48:28.033" UserId="469" />
  <row Id="5186" PostId="4408" Text="ImageMagick didn't appear to do rotation automatically.  " CreationDate="2010-10-11T22:28:04.260" UserId="573" />
  <row Id="5187" PostId="4439" Text="Now USC is my first choice, but if I couldn't get into USC that's where the rest of the problem lies. " CreationDate="2010-10-12T00:54:23.587" UserId="2481" />
  <row Id="5189" PostId="4421" Text="That would be amazingly helpful.  Thanks." CreationDate="2010-10-12T01:51:43.737" UserId="573" />
  <row Id="5190" PostId="4442" Text="Now something weird is happening. The Viewport bit is recognized, but as I type Titl- nothing appears on the Intellisense as if that helper property doesn't even exist. Then if I just manually type it in and wait a bit, it's detected and mouseover gives me the information for it." CreationDate="2010-10-12T02:07:04.843" />
  <row Id="5191" PostId="4438" Score="1" Text="I've asked a similar question but as a programmer here. http://gamedev.stackexchange.com/questions/1611/game-development-degree-vs-computer-science-degree" CreationDate="2010-10-12T02:21:09.153" UserId="907" />
  <row Id="5192" PostId="4442" Text="Hm that is strange. Intellisense could just be lagging. Try forcing it by pressing Ctrl+Space. The normal candidates for missing intellisense like missing references and using directives would generally cause compile errors..." CreationDate="2010-10-12T02:48:06.350" UserId="2200" />
  <row Id="5194" PostId="4445" Score="2" Text="The best reason to goto a university compared to a full trade school is a fall back.  You definitely won't learn as much in depth knowledge for a university but like you said, you should really be learning that on your own as well." CreationDate="2010-10-12T05:02:09.727" UserId="891" />
  <row Id="5195" PostId="4440" Text="Thanks for your answer. I will investigate this. :) &#xA;&#xA;Good point on the direction the camera is heading. This should be called heading." CreationDate="2010-10-12T06:27:08.597" UserId="2479" />
  <row Id="5196" PostId="4440" Text="With P_view.z, what if the camera is at a z of, say, 20, and the object is at 10. Would that just be replaced by P_view.z &lt; 10?" CreationDate="2010-10-12T06:28:35.413" UserId="2479" />
  <row Id="5197" PostId="4446" Score="2" Text="Since this is not answerable, but instead is meant for users to provide pros and cons for their choices, this should be a community wiki." CreationDate="2010-10-12T12:10:08.887" />
  <row Id="5198" PostId="4402" Text="The look like questions that have already been answered around the site also. But with 4 questions in one, it fits the overly broad criteria pretty well." CreationDate="2010-10-12T12:37:06.423" UserId="14" />
  <row Id="5199" PostId="4445" Score="1" Text="The trick is to learn the things you find necessary, but boring, at school. Pick up the rest on your own." CreationDate="2010-10-12T12:54:30.680" UserId="1352" />
  <row Id="5200" PostId="4446" Text="Correct, I set this now. edit&gt; Ah ok it's already done." CreationDate="2010-10-12T13:41:06.543" UserId="364" />
  <row Id="5201" PostId="4451" Score="8" Text="To add a bit to that: Good sounds are also often going to sound &quot;triumphant&quot; or &quot;melodious&quot;, rising in pitch, and soothing.  Think chiming bells, marches, and sweet guitar riffs.  Bad sounds are usually heavy on bass, falling in pitch, discordant, or scathing.  A two-note down step (like WAH-wah) would work, as might scratching records, bent &quot;dirty&quot; guitar notes, or even simple bass notes (like &quot;Baaaawwwwmmmm&quot;)." CreationDate="2010-10-12T15:11:47.177" UserId="2491" />
  <row Id="5202" PostId="4447" Score="5" Text="P.S. Google Docs is completely AMAZING for real-time collaborative editing as of the recent (mid-September, I think) update. Dropbox, on the other hand, doesn't have conflict resolution (it renames a conflicting file, which can create even more confusion) so it's pretty terrible for simultaneous editing of files but great for backup and sharing/non-simultaneous editing." CreationDate="2010-10-12T15:53:16.877" UserId="189" />
  <row Id="5203" PostId="4453" Text="I would say that all sprite frames (for a given entity) should be the same size, always." CreationDate="2010-10-12T16:08:41.910" UserId="1198" />
  <row Id="5204" PostId="4453" Text="And in specific cases, use second sprite (as you have with the gun turret) when it would be wasteful to make them all the same." CreationDate="2010-10-12T16:09:20.303" UserId="1198" />
  <row Id="5205" PostId="4440" Text="No, because by definition, P_view is the object's position relative to the camera. In the circumstance you describe (camera at 20, and object at 10), and camera was facing away from the object then P_view.z would be -10. If camera was facing towards the object then P_view.z would be 10." CreationDate="2010-10-12T16:17:07.173" UserId="1232" />
  <row Id="5207" PostId="4255" Text="@ricket : Nice site :) but the ball of the pong game flicks on Chrome..." CreationDate="2010-10-12T18:50:00.020" UserId="2437" />
  <row Id="5208" PostId="4447" Text="Is there a way to have company-local (as company-server installed) google docs?" CreationDate="2010-10-12T18:54:04.583" UserId="364" />
  <row Id="5209" PostId="4457" Text="That is excellent to know, I was just dealing with an issue of some nasty noise on a rounded shape I made in Inkscape then exported to png.  I'll have to try this when I get home." CreationDate="2010-10-12T18:57:24.543" UserId="2491" />
  <row Id="5210" PostId="4442" Text="TitleSafeArea is an instance method if Viewports, it sounds like you're trying to use it as a static method on the Viewport class." CreationDate="2010-10-12T20:49:47.730" UserId="1687" />
  <row Id="5211" PostId="4370" Text="I don't think this answer is correct in the interpretation of the results. The code in the question ought to map texels to pixels exactly as it stands, if the modelview/projection are set correctly (identity for MV and projection of `glOrtho(0,0,w,h,...)`. So I'd bet that's where the issue is." CreationDate="2010-10-12T20:54:37.843" UserId="1374" />
  <row Id="5212" PostId="4384" Text="Considering how many computers will use shared memory, I would not recommend DX7's version. And how can the D3D9 version of this be only available on Vista+ ? D3D9 was there in XP..." CreationDate="2010-10-12T20:57:42.783" UserId="1374" />
  <row Id="5213" PostId="4447" Text="@Klaim: I don't know of a way to install the software on a server. It's a web application and I doubt Google would just give users a way to not use their web servers." CreationDate="2010-10-12T21:46:54.613" />
  <row Id="5214" PostId="4460" Score="2" Text="Being familiar with both, XNA is nowhere near similar to PyGame. The graphics APIs are far lower level and it doesn't offer anything like the basic sprite system in PyGame." CreationDate="2010-10-12T22:25:53.780" UserId="395" />
  <row Id="5215" PostId="4447" Text="@Klaim you can use Office to accomplish this. It might be possible to use [Office Live](http://office.live.com) and Skydrive to accomplish what you want for free." CreationDate="2010-10-12T22:51:36.987" UserId="539" />
  <row Id="5216" PostId="4460" Text="Then that settles it; XNA would probably be your best choice OP. It's very simple to use and effective." CreationDate="2010-10-12T22:53:04.697" />
  <row Id="5217" PostId="4442" Text="Ah yeh as Martin said, the class you're writing your code in probably has a Viewport property i.e. public Viewport Viewport { get; } so when you type 'Viewport.' you get the static intellisense (which doesn't include TitleSafeArea - an instance property) and when you type in manually it resolves to the instance property Viewport (and its instance property TitleSafeArea)" CreationDate="2010-10-13T01:06:53.597" UserId="2200" />
  <row Id="5218" PostId="4421" Text="That link looks like an excellent resource.  I'm reading over it now, but it looks like the solution." CreationDate="2010-10-13T01:30:21.350" UserId="573" />
  <row Id="5219" PostId="4447" Score="1" Text="@Klaim, if you get google Apps for your domain you can. http://www.google.com/apps/intl/en/business/index.html" CreationDate="2010-10-13T03:14:27.437" UserId="14" />
  <row Id="5220" PostId="4370" Text="Well yes, you're probably right that there's something else going on here. However I think my answer is correct as far as the basic problem - something is causing the texels to be sampled in the wrong place, by just enough that it looks wrong with filtering on, but works if it's turned off." CreationDate="2010-10-13T05:25:22.817" UserId="1091" />
  <row Id="5221" PostId="4447" Score="4" Text="Noctrine, it's still hosted by google. It just appears on your domain courtesy of a CNAME entry. If you require the data to be physically on your local network, this will not work. OTOH, unless you require a security clearance to work on your &quot;game&quot;, the latter requirement is usually more an indication of paranoia and megalomania than anything else." CreationDate="2010-10-13T07:51:51.237" UserId="678" />
  <row Id="5222" PostId="4459" Score="3" Text="Honestly, I would spend an afternoon with the Python Tutorial (http://docs.python.org/tutorial/). Python has a few oddities, but it's a fairly simple language to learn. " CreationDate="2010-10-13T07:56:09.883" UserId="678" />
  <row Id="5223" PostId="4449" Score="1" Text="All of your Cons are really a non-issue if you're using Confluence, with the exception for hosting which isn't free unless you host it on your LAN server and allow others to join via DynDNS or similar service." CreationDate="2010-10-13T08:23:34.920" UserId="490" />
  <row Id="5224" PostId="4452" Text="Free sound is a great resource for indie games. Thanks" CreationDate="2010-10-13T08:38:30.493" UserId="2360" />
  <row Id="5225" PostId="4460" Text="@coderanger: XNA has sprites. http://msdn.microsoft.com/en-us/library/bb194908.aspx. They are considerably better than Pygame sprites, since they can actually use hardware acceleration. (And thereby good rotation, shaders, etc.)" CreationDate="2010-10-13T08:50:23.950" UserId="744" />
  <row Id="5226" PostId="4459" Score="3" Text="You won't find much that lets you do more with less code than Pygame. Pygame's rendering model is simple to the point of stupidity and uselessness on modern computers (CPU-side framebuffers), and the interface is nearly as high-level as you can get for those." CreationDate="2010-10-13T08:52:02.853" UserId="744" />
  <row Id="5227" PostId="4445" Score="1" Text="@Nailer: No, the trick is to find new interesting things at school, and learn them quickly and correctly by being able to work with experts." CreationDate="2010-10-13T08:54:26.140" UserId="744" />
  <row Id="5228" PostId="4447" Score="1" Text="Yeah I already know for domains (I already have several google apps for my domains) but lets say you don't have access to the internet but only to a local network? " CreationDate="2010-10-13T09:07:00.447" UserId="364" />
  <row Id="5229" PostId="4463" Text="Thank you, i didn't know SDL.NET . I think it is what i'm looking for;)!" CreationDate="2010-10-13T09:48:19.163" UserId="2494" />
  <row Id="5230" PostId="4445" Score="1" Text="@Joe: If you don't understand something, and can't seem to improve in it, it's boring. To overcome this first obstacle of boredom, it's great to have a course in it to get you started.&#xA;&#xA;A: You are eased into the subject. &#xA;&#xA;B: You get guidance when needed. &#xA;&#xA;C: You get extra motivation from teachers,students and grades.&#xA;&#xA;Of course, what you said is true too =) My courses were half and half. I sped through half of them with eagerness. The other half I finished reluctantly, but with great results. " CreationDate="2010-10-13T09:56:55.487" UserId="1352" />
  <row Id="5231" PostId="4449" Text="Funny thing is, we used JIRA for our project. I guess either nobody considered Confluence as well or perhaps the cost was too high. I upvoted your answer anyway." CreationDate="2010-10-13T10:21:13.353" UserId="1101" />
  <row Id="5232" PostId="4459" Score="3" Text="complex? python? sbrotfl. Dive into Python is one of the best guides I've ever read http://diveintopython.org/toc/index.html" CreationDate="2010-10-13T10:25:11.437" UserId="2188" />
  <row Id="5233" PostId="4468" Text="Thanks! I will give this a try." CreationDate="2010-10-13T12:41:37.433" UserId="2479" />
  <row Id="5234" PostId="4468" Score="1" Text="I don't believe this solves the issue in the question.  345%360 == 345, and abs(345-30) is still 315." CreationDate="2010-10-13T13:15:38.003" UserId="953" />
  <row Id="5235" PostId="2287" Score="2" Text="This is a very poor answer in my opinion. Actually, it's no answer at all." CreationDate="2010-10-13T14:15:55.553" UserId="2188" />
  <row Id="5237" PostId="4469" Text="Sorry I should clarify. If you did it in reverse, 30 - 345 is -315 and a negative angle doesn't make much sense. I guess I'm looking for the smallest angle between the two. i.e. 45 degrees is smaller than 315." CreationDate="2010-10-13T14:55:00.497" UserId="2479" />
  <row Id="5238" PostId="4473" Score="1" Text="The processor I am working on is a small microcontroller. It doesn't make sense to use trig functions to generate a vector just to get the difference between angles, every cycle is precious." CreationDate="2010-10-13T14:55:41.897" UserId="2479" />
  <row Id="5239" PostId="4470" Text="+1 &amp; Thanks for this. I will check it." CreationDate="2010-10-13T14:56:37.933" UserId="2479" />
  <row Id="5240" PostId="4473" Score="1" Text="On a microcontroller I'm kind of suprised it's not better to use a branch, but there's not a lot of arithmatic in my answer if you really want to avoid branching." CreationDate="2010-10-13T14:58:32.703" UserId="1091" />
  <row Id="5241" PostId="4473" Text="Well, a branch is two cycles and an add/subtract/etc is one cycle, but branching also takes up additional program memory. It's not critical, but it would be nice." CreationDate="2010-10-13T15:11:51.237" UserId="2479" />
  <row Id="5242" PostId="4461" Text="http://www.evernote.com/ is also a possibility for people who want a free alternative to OneNote.  It has a web client and clients for various platforms (desktops, phones) and stores all your notes &quot;in the cloud.&quot;  I think it has collaboration features too, but they may be premium." CreationDate="2010-10-13T15:21:35.807" UserId="2491" />
  <row Id="5243" PostId="4469" Score="1" Text="But there is no 'reverse' - you have 2 angles and 2 types of rotation you can perform to make one match the other. A negative angle makes perfect sense - it's just a measure of rotation from an arbitrary axis, after all." CreationDate="2010-10-13T15:28:03.163" UserId="1101" />
  <row Id="5244" PostId="4473" Text="@Tetrad - I get the feeling your answer is correct and mine is wrong, but I can't get my head around *why* that is the case. :)" CreationDate="2010-10-13T15:28:53.707" UserId="1101" />
  <row Id="5245" PostId="4348" Score="2" Text="Metanet, the guys who did N (which is in Flash) have a tutorial on how they did collisions that covers how they calculate curves: http://www.metanetsoftware.com/technique/tutorialA.html" CreationDate="2010-10-13T15:45:10.713" UserId="2491" />
  <row Id="5246" PostId="4464" Score="1" Text="That is where your artistic eye comes into play. You'll need to make the transformation in your mind's eye and then model that." CreationDate="2010-10-13T16:34:26.470" UserId="1198" />
  <row Id="5247" PostId="4460" Text="@Joe SpriteBatch.Draw is really just an equivalent to PyGame's blit call, not the Sprite class. I don't think I've ever had performance problems with PyGame/SDL, especially if he is just using it to start out." CreationDate="2010-10-13T16:39:47.840" UserId="395" />
  <row Id="5248" PostId="4381" Text="Wouldn't surprise me.  They intentionally kept it decoupled from FreeOrion." CreationDate="2010-10-13T17:45:33.127" UserId="136" />
  <row Id="5249" PostId="4480" Score="1" Text="Duh, wow, I need coffee I guess, thanks" CreationDate="2010-10-13T18:56:21.643" UserId="2039" />
  <row Id="5250" PostId="4464" Text="Start with a reference photo which does have near perfect front/side views. Got to learn the basics first before jumping into the details." CreationDate="2010-10-13T19:29:52.590" UserId="656" />
  <row Id="5251" PostId="4469" Text="If you want the smallest angle then abs(a1%180 - a2%180) will give you that angle. It will not tell you the direction, however. Removing the abs will give you the smallest angle &quot;going from&quot; a1 &quot;to&quot; a2" CreationDate="2010-10-13T19:45:51.787" UserId="2187" />
  <row Id="5252" PostId="4459" Text="I learned Python in an afternoon (from years of C++ experience) and within a week I was writing more functionality faster in Pygame." CreationDate="2010-10-13T22:28:31.847" UserId="1780" />
  <row Id="5253" PostId="4469" Text="@Chewy, huh?  The difference between 180 and 0 is not 0, and the difference between 181 and 0 is not 1..." CreationDate="2010-10-13T22:30:44.477" UserId="1780" />
  <row Id="5254" PostId="4482" Text="I tried both GONE and INVISIBLE and neither one seem to work." CreationDate="2010-10-13T22:43:28.127" UserId="2509" />
  <row Id="5256" PostId="1612" Text="@Alex Schearer - Trade school degrees tend to be a negative for the candidate.  Choosing between a university education and a trade school one is a no brainer in the absence of other information.  One thing shared by most of the trade school educated people that I've interviewed is that their money was not well spent and they did not know basic computer science, which in my opinion makes them poor additions to the programming team." CreationDate="2010-10-13T22:54:28.323" UserId="1780" />
  <row Id="5257" PostId="4482" Text="You must have another problem. I use these functions without problem. Are you sure you have unique ids for each row ? Use this code not in the list but with one unique EditText or ImageView in your Layout. " CreationDate="2010-10-13T23:00:44.610" UserId="721" />
  <row Id="5258" PostId="1612" Text="@dash-tom-bang maybe you meant to reply to someone else? I completely agree that getting a degree from a university is a no brainer. You can always go to a trade school later on if you feel it's necessary." CreationDate="2010-10-13T23:25:49.857" UserId="539" />
  <row Id="5259" PostId="4467" Text="On this problem, can we assume that the angles given are in the range [0,360] or (-infinite, +infinite) ? For instance, should the algorithm also work on comparing -130 degrees with 450 ? " CreationDate="2010-10-13T23:34:51.183" UserId="1581" />
  <row Id="5260" PostId="4255" Text="@Raveline I've found that the smoothness depends heavily on the speed of your computer. When I first visit the site (in Chrome) the ball stutters for a few seconds (maybe as the JavaScript hotspot VM is compiling to native code?) and then it's completely smooth. This is on my 4-year-old Core 2 Duo Win7 notebook. My iPod and Android phone are both completely smooth in moving the ball, too. But on older/slower computers I expect the ball wouldn't be as smooth." CreationDate="2010-10-13T23:42:44.320" UserId="189" />
  <row Id="5261" PostId="4482" Text="I also wrapped the two items with the unique LinearLayout and tried that to no avail." CreationDate="2010-10-13T23:55:47.467" UserId="2509" />
  <row Id="5262" PostId="1612" Text="@Alex I meant simply that a degree from a trade school is not necessarily a positive addition to one's resume/CV.  Indeed, in some circles it is actually a negative.  (Countering your first sentence?)" CreationDate="2010-10-14T00:02:55.540" UserId="1780" />
  <row Id="5263" PostId="4488" Score="4" Text="Wow, 300 dollars a DAY? A whole TON of impressions, I'd guess! I'm anxious to know the answer though." CreationDate="2010-10-14T03:25:24.163" UserId="189" />
  <row Id="5264" PostId="4469" Score="1" Text="@dash-tom-bang You are quite right. I don't know what I was thinking, but it wasn't correct at all now that I look at it again. Please disregard my previous comment." CreationDate="2010-10-14T03:54:41.583" UserId="2187" />
  <row Id="5265" PostId="4468" Text="@Gregory: okay!, I'm sorry for the mistake. I'm editing the reply, check this new one. :)" CreationDate="2010-10-14T04:31:40.193" UserId="1251" />
  <row Id="5266" PostId="4471" Text="Thanks for the response (and thanks to the others who submitted answers below)! The more that I think about it the more it seems like an RDBMS is the proper fit for this particular type of logging. It wouldn't be too difficult to design a custom log format that was well indexed for basic kinds of searches, but with the sort of complicated queries that are often used by CSRs and game analytics a more general approach is necessary -- at which point an established product is going to outperform in most cases." CreationDate="2010-10-14T06:29:26.233" UserId="62" />
  <row Id="5267" PostId="4471" Text="Custom event log setup would be handy for strictly chronological playback ala FPS demo recordings, but that's a very different problem to solve. Does anyone have experience with developing something similar to demo recordings for massively multiplayer client-server games?" CreationDate="2010-10-14T06:31:47.467" UserId="62" />
  <row Id="5268" PostId="4467" Text="Assume the angles are normalised to that range." CreationDate="2010-10-14T06:34:43.757" UserId="2479" />
  <row Id="5269" PostId="4313" Text="+1 for subdividing into 3 phases :)" CreationDate="2010-10-14T06:55:51.310" UserId="1251" />
  <row Id="5270" PostId="4468" Score="1" Text="By the way,angle1=angle1%360; angle2=angle2%360; var distance = Math.abs(angle1-angle2); is the same as var distance = Math.abs(angle1-angle2)%360 - just slower.&#xA;&#xA;" CreationDate="2010-10-14T07:35:24.697" UserId="1141" />
  <row Id="5272" PostId="1842" Text="Pygame by default does not end up as OpenGL in the end; SDL's default rendering model is CPU-side framebuffers. You can use Pygame with OpenGL, but none of the core Pygame documentation covers how to do it." CreationDate="2010-10-14T10:39:13.547" UserId="744" />
  <row Id="5273" PostId="4474" Text="+1 because it's clever, but on a microcontroller this is probably much worse-performing than the branching version." CreationDate="2010-10-14T10:46:39.217" UserId="744" />
  <row Id="5274" PostId="4470" Text="There are several ways to compute min, max, and abs of ints without branch instructions, though since this is a microcontroller the branch is probably the fastest way.  http://graphics.stanford.edu/~seander/bithacks.html#IntegerAbs" CreationDate="2010-10-14T10:48:52.090" UserId="744" />
  <row Id="5275" PostId="4474" Text="Depends a bit on the microcontroller, but, yes, it's usually not worth it; a (short) conditional jump is typically fast enough. Also, the third and fifth lines can be rewritten to be a bit faster by using the xor (^) operation like this, but I left them in the current form for clarity: temp1 := temp2 ^ ((temp2 ^ -temp2) &amp; ~temp1), temp2 := temp1 ^ ((temp1 ^ (360 - temp1)) &amp; ~temp2)" CreationDate="2010-10-14T12:12:14.050" UserId="1141" />
  <row Id="5276" PostId="4492" Score="3" Text="I don't think this is a real answerable question. I think this is more of a discussion-type question than a pure Q&amp;A." CreationDate="2010-10-14T12:24:38.863" />
  <row Id="5277" PostId="4490" Text="Thanks, the artist I worked under obviously didn't keep up with standards" CreationDate="2010-10-14T13:05:13.020" UserId="2510" />
  <row Id="5278" PostId="1619" Text="Option 3 - sounds like Joel Martinez's description of XNA approach." CreationDate="2010-10-14T13:42:38.923" UserId="1677" />
  <row Id="5279" PostId="4495" Score="1" Text="how do I get elapsed time" CreationDate="2010-10-14T13:49:57.663" UserId="2509" />
  <row Id="5280" PostId="3091" Text="what if something else interacts with the object in the meantime? For example the sleeping animal might be waked up by a hitting stone. Should you remove the schedule of the animal in that case?" CreationDate="2010-10-14T14:00:07.737" UserId="2231" />
  <row Id="5281" PostId="4495" Score="1" Text="Depends on what you're using.  If it's a game engine, check the documentation - there may be something built in.  If not, you have to calculate it yourself using whatever time functions are available on your platform." CreationDate="2010-10-14T14:58:02.360" UserId="2515" />
  <row Id="5282" PostId="4463" Score="1" Text="nitpick: It's LÖVE." CreationDate="2010-10-14T15:07:26.093" UserId="1581" />
  <row Id="5283" PostId="4488" Text="I just read a report about the shotgun app on the iphone making 900 a day... so I mean it is realistic." CreationDate="2010-10-14T15:43:15.760" UserId="2509" />
  <row Id="5284" PostId="4491" Text="I already saw that. It is not a useful resource for AS3, as some of the things he does are either impossible, or incredibly slow in AS3. That is why I asked this question." CreationDate="2010-10-14T15:46:07.327" UserId="962" />
  <row Id="5285" PostId="1842" Text="Pyglet however is a Python library that has much of the functionality of Pygame but which does actually use OpenGL for rendering." CreationDate="2010-10-14T15:57:38.130" UserId="1101" />
  <row Id="5286" PostId="4495" Score="2" Text="Do not use this exact method if you want physics that react the same way each time a simulation is run. The physics will look almost the same, but there will be small errors that accumulate and through through chaos theory, the physics will be much different each time. What happens if the game lags for 2 seconds? What about 10 seconds? Stuff might tunnel through walls. Your character might fall through the floors. Springs could &quot;explode&quot;. I posted a better answer." CreationDate="2010-10-14T16:33:18.620" UserId="962" />
  <row Id="5287" PostId="1513" Text="I would add Ogre as a good reference with OpenSceneGraph..." CreationDate="2010-10-14T16:39:06.917" UserId="364" />
  <row Id="5288" PostId="4488" Text="define &quot;realistic&quot;." CreationDate="2010-10-14T16:51:03.443" UserId="2188" />
  <row Id="5289" PostId="4488" Text="Realistic to make 300 dollars a day... meaning that if a simple useless app such as shotgun can rake in 900 a day in revenue, then it does not seem like a stretch that a simple but more engaging game can make a third of that a day." CreationDate="2010-10-14T16:54:55.793" UserId="2509" />
  <row Id="5290" PostId="4499" Text="Hey thanks for that link!  Tons of help.  Just looking to see around about number of daily users I need to get to make a free app profitable.   " CreationDate="2010-10-14T17:28:58.900" UserId="2509" />
  <row Id="5291" PostId="3091" Text="That depends on the situation: If the action done is harmless (like waking up while already being awake) we just let it happen. But if the action uses up some resource, we search through the pending queue and remove it." CreationDate="2010-10-14T17:35:40.220" UserId="450" />
  <row Id="5292" PostId="4472" Text="You don't need the modulo, the input values are restricted to the [0,360] range (see Thomas' comment to the original submission). Pretty neat." CreationDate="2010-10-14T18:27:41.493" UserId="1141" />
  <row Id="5293" PostId="4472" Text="Ah, yes, you're right. I had less strict input when I tried it out." CreationDate="2010-10-14T18:36:22.727" UserId="1091" />
  <row Id="5294" PostId="4498" Score="2" Text="Favorite just for this link.  Pesky black box physics." CreationDate="2010-10-14T18:55:16.073" UserId="891" />
  <row Id="5296" PostId="4495" Text="Everything gets harder with a variable timestep, so while it is an option it is not a great one (IMO)." CreationDate="2010-10-14T19:09:33.020" UserId="1780" />
  <row Id="5298" PostId="4498" Text="The OP should not be using a fixed sleep time when the rest of the processing can take an unknown amount of time." CreationDate="2010-10-14T19:11:16.683" UserId="1780" />
  <row Id="5299" PostId="4498" Text="Please read the article fully then. He addresses this issue when he talks about &quot;The Spiral of Death&quot;." CreationDate="2010-10-14T19:19:25.197" UserId="962" />
  <row Id="5300" PostId="4488" Text="It's certainly possible. My first facebook app peaked at around $200 a day, and that was with 80k active users. Only lasted for about 2 months though." CreationDate="2010-10-14T19:27:15.633" UserId="141" />
  <row Id="5301" PostId="4495" Text="Agreed, AttackingHobo's link could be considered the canonical reference for managing your timestep." CreationDate="2010-10-14T19:51:05.570" UserId="1232" />
  <row Id="5302" PostId="4490" Text="+1 For the excellent rigging tutorial link" CreationDate="2010-10-14T20:39:27.890" UserId="2077" />
  <row Id="5303" PostId="4505" Text="Some of the games I'm interested in aren't providing fully fleshed out, (or fully documented) APIs. I guess what I'm really looking for are tools which can scrape the client source for server calls and provide me with info about what is available for me to use. " CreationDate="2010-10-14T22:40:25.927" UserId="2520" />
  <row Id="5304" PostId="4505" Text="I've had friends interact with simpler games directly, using the Java Robot class http://download.oracle.com/javase/6/docs/api/java/awt/Robot.html which lets you do system calls to click, or manipulate the keyboard." CreationDate="2010-10-14T22:43:52.807" UserId="891" />
  <row Id="5305" PostId="4501" Text="Are looking for something particle based or something else?" CreationDate="2010-10-14T23:15:42.210" UserId="962" />
  <row Id="5306" PostId="4505" Score="1" Text="Slightly besides the point of the question but interesting links. Tnx." CreationDate="2010-10-14T23:21:36.310" UserId="2521" />
  <row Id="5307" PostId="4495" Text="Excellent link, Hobo.  I must admit, I haven't written my own timestep in years and the engines I use have taken care of this in the background.  I believe some of the bigger physics engines like Havoc will actually run with a fixed timestep and seamlessly interpolate based on whatever timestep you feed to it." CreationDate="2010-10-14T23:48:17.723" UserId="2515" />
  <row Id="5308" PostId="4504" Score="1" Text="Just to keep things on the up and up, 99% of web games prohibit this in their terms of service. Please do not construe any advice here as encouragement to violate the terms of any game." CreationDate="2010-10-14T23:51:25.080" UserId="395" />
  <row Id="5309" PostId="4504" Text="I could see applications of this outside of game playing, too - for example, for building automated tests for a given website." CreationDate="2010-10-14T23:52:52.080" UserId="2520" />
  <row Id="5310" PostId="4505" Text="Wasn't sure exactly what the author was asking for.  If it's to program AI for games that already exist.  This is a start.  If it's to hack games to make robots, that's a very different question." CreationDate="2010-10-15T00:28:50.323" UserId="891" />
  <row Id="5311" PostId="4504" Text="Sellenium is a javascript based testing framework/server which records actions of a user and can replay them on the server for testing http://seleniumhq.org/" CreationDate="2010-10-15T00:32:22.877" UserId="891" />
  <row Id="5312" PostId="4502" Score="1" Text="Pretty cool paper. However, if you read the entire paper, it does say &quot;Our system looks most realistic for rain and heavy snow. Light&#xA;snow should jitter as it falls, which is better simulated by a particle system.&quot;. Ricket is interested mainly in slow-falling snow." CreationDate="2010-10-15T01:35:48.770" UserId="2065" />
  <row Id="5313" PostId="4502" Text="Ah my bad, I didn't see that ricket wanted a low density of snow flakes.  Particles would be a better choice in that case." CreationDate="2010-10-15T01:51:50.963" UserId="891" />
  <row Id="5314" PostId="4504" Text="Sure, there is no shortage of legitimate applications for these technologies. Some web games even allow or directly sanction these kinds of things. Just want to make sure SO legal doesn't come after us." CreationDate="2010-10-15T08:07:19.537" UserId="395" />
  <row Id="5315" PostId="4497" Text="That being said, I would probably fix my time step if I were you. Even though this code here tries to find a smart amount of time to sleep based on the average calculation times of previous frames, it seems to stutter now and again. You should accept fix your timestep as answer instead =) " CreationDate="2010-10-15T08:37:07.627" UserId="1352" />
  <row Id="5316" PostId="4492" Text="If that is the case someone should make this community wiki. I can't seem to edit to be so anymore." CreationDate="2010-10-15T08:58:04.440" UserId="919" />
  <row Id="5317" PostId="4503" Text="This answers my question exactly." CreationDate="2010-10-15T09:00:00.417" UserId="919" />
  <row Id="5318" PostId="4471" Text="Depending on your server-side logic processing model, it may be possible just to store every input, stamped with the time of arrival on the server, which can be replayed. The problem tends to come in playback, since you need to replay every single input as well as modelling any other factor (eg. random seeds, implied input such as stuff that alters based on latency, etc). But there is no one-size-fits-all system here - it depends on how your server works." CreationDate="2010-10-15T09:20:54.413" UserId="1101" />
  <row Id="5323" PostId="4517" Text="And of course, once you have components you can make good use of interfaces again.  Your Axe type can implement IChopper and IWeapon but can then expose the component's behavior for it, allowing you to reuse both the type and the implementation as needed and cutting out the test for components.  If all axes have the same capabilities but different stats, then you're golden.  If you need items to have unique abilities, you may need to implement a game-component-collection and have your update routines query the objects for what they can do via which components are present.  " CreationDate="2010-10-15T17:31:07.193" UserId="2491" />
  <row Id="5324" PostId="1672" Text="I did not realize AI War was written in .NET. That's really cool, especially as its an inspiration for an XNA game I'm working on and I was thinking of how great it would be to make a game at that scale." CreationDate="2010-10-15T17:34:18.587" UserId="2491" />
  <row Id="5325" PostId="3669" Score="1" Text="Your example would be easier to read if you didn't use &quot;new&quot; (a reserved word in C++) as a parameter name." CreationDate="2010-10-15T17:51:26.920" UserId="1289" />
  <row Id="5326" PostId="4519" Text="These numbers are accurate, although $100M is rare and only for big MMO projects and the occasional massive title + engine in something like GTAIV. Note these numbers don't include the marketing cost which is often in the tens of millions. " CreationDate="2010-10-15T18:02:33.127" UserId="154" />
  <row Id="5327" PostId="4486" Text="This might be what I may do, although the bitmap is destroyable, and can have stuff added, I know how to update the distance variable on each pixel with destruction, but I don't know an efficient way to update the pixels for something being added to the environment." CreationDate="2010-10-15T18:47:02.277" UserId="962" />
  <row Id="5329" PostId="4528" Text="@Shadwell: Thank you very much. And not, I am not creative. I hate literature, writing essays and other stuff where it comes to imagine things. I just love solving problems and programming. :) Good luck." CreationDate="2010-10-15T21:54:06.490" UserId="676" />
  <row Id="5330" PostId="4489" Score="2" Text="What error are you getting?" CreationDate="2010-10-15T22:23:23.407" UserId="18" />
  <row Id="5331" PostId="4489" Score="3" Text="Additionally, some of your questions are purely programming questions and not particularly about game development. Since the number of Android developers on this site is still low, you might want to try asking on [StackOverflow](http://stackoverflow.com/)" CreationDate="2010-10-15T22:26:22.583" UserId="18" />
  <row Id="5332" PostId="4525" Text="malloc! The root of all evil!   We ran into a similar problem when first investigating Lua and simply abandoned the effort, so I'm curious to see if there's a solution." CreationDate="2010-10-15T22:32:01.663" UserId="1573" />
  <row Id="5333" PostId="4525" Text="Wasn't there a suggestion to change the default memory handler for lua to one that uses realloc ... if I remember correctly this was said to be much faster in some cases. But that was ~3 years ago. How do you bind Lua? If you use Luabind, except quite a significant function call overhead compared to directly binding methods, or probably compared to toLua as well." CreationDate="2010-10-15T23:03:30.203" UserId="490" />
  <row Id="5334" PostId="4486" Text="I've edited my response to handle the dynamic bitmap case (which was unfortunately not clear from the way you phrased your question originally). I'd suggest you change the wording to read: &quot;How can I implement 2d shadows on a level made out of a dynamic Bitmap?&quot;" CreationDate="2010-10-15T23:09:32.320" UserId="1232" />
  <row Id="5335" PostId="4486" Text="Updated question" CreationDate="2010-10-15T23:10:33.273" UserId="962" />
  <row Id="5336" PostId="4519" Text="Agree, except that you can still produce titles below $20M but they are likely going to be downloadable titles (XBLA, PSN, Steam) respectively free to play. Reasonably most current gen console games produced these days cost between $10M to $30M, fewer $40-$50M and very, very few above that with recent examples being GTA 4, APB, Red Dead Redemption." CreationDate="2010-10-15T23:22:40.993" UserId="490" />
  <row Id="5337" PostId="4503" Text="great answer!!!" CreationDate="2010-10-15T23:24:47.613" UserId="490" />
  <row Id="5338" PostId="4426" Text="If half want to go one way, and half the other way, why not let them go their separate ways? Develop two prototypes and if the team is still split by then, the prototypes will help everyone decide which way is best. It might not even get to that stage, especially if you encourage the devs to work on either or both." CreationDate="2010-10-15T23:25:34.773" UserId="2538" />
  <row Id="5339" PostId="4519" Text="I would says it vaguely bell-ish curve centered around $20-30M-ish. Tapers off faster towards the bottom than it does towards the top though." CreationDate="2010-10-15T23:31:36.153" UserId="395" />
  <row Id="5340" PostId="4525" Text="Have you tried the recommendations in optimizing lua's GC? http://lua-users.org/wiki/OptimisingGarbageCollection" CreationDate="2010-10-15T23:46:19.550" UserId="891" />
  <row Id="5341" PostId="4486" Text="This is in AS3, so I really have to use the CPU." CreationDate="2010-10-16T00:37:25.517" UserId="962" />
  <row Id="5342" PostId="4486" Text="I think I may have found a way to recompute the distances really efficiently, but I do have to test it out. I think I will use a combination of the mip levels, and recalculation, as any speedup in something as intensive as this will increase the speed of the game and allow for a larger amount of lights per scene." CreationDate="2010-10-16T00:41:53.870" UserId="962" />
  <row Id="5343" PostId="2264" Text="&quot;Tim Langdell Set to Lose 'Edge' Trademarks&quot; http://www.1up.com/news/tim-langdell-set-lose-edge and &quot;Former Edge Trademark Owner Langdell Booted From IGDA&quot; http://www.1up.com/news/edge-trademark-owner-langdell-booted-igda ahahahahaha " CreationDate="2010-10-16T00:47:23.610" UserId="891" />
  <row Id="5344" PostId="4498" Text="@AttackingHobo: yes, so I was commenting that the simple takeaway for the OP is that ...  Fixed timestep is the One True Path, even if GoG takes a lot of words to get to the point." CreationDate="2010-10-16T00:52:43.220" UserId="1780" />
  <row Id="5345" PostId="4532" Score="3" Text="Hey, that is the holy grail of game design, you expect the answer to be that simple? :P" CreationDate="2010-10-16T02:13:52.523" UserId="469" />
  <row Id="5346" PostId="4401" Text="Thanks a ton! I wasn't able to get it working at first, but then I realized it wasn't XNA 4.0 compatible. I modified it and it worked awesomely." CreationDate="2010-10-16T04:35:15.463" UserId="2289" />
  <row Id="5347" PostId="4532" Text="Pretty sure if anyone has a good answer to this, they aren't going to tell you. See also: the fabled Zynga playbook." CreationDate="2010-10-16T04:54:50.837" UserId="395" />
  <row Id="5349" PostId="4525" Text="@DavidYoung I've tried optimising it a bit, got it about 15% faster, on both, so nothing that would really explain the large difference in speed" CreationDate="2010-10-16T10:17:35.043" UserId="337" />
  <row Id="5350" PostId="4525" Text="@GamingHorror looking back at the call stacks it would seem that malloc is getting called from realloc (luaV_execute-&gt;luaM_realloc_-&gt;l_alloc-&gt;realloc-&gt;malloc), I also use the Lua C api directly, with a bit of light user data for the one class that needs to be called." CreationDate="2010-10-16T10:22:35.650" UserId="337" />
  <row Id="5353" PostId="4519" Score="1" Text="Saying they were &quot;made for a few hundred dollars in their spare time&quot; assumes their time is worthless - When Jon Blow said Braid cost $200k to develop a bunch of indies were shocked, but $180k of that was accounted for as paying himself a (relatively low) $60k/year salary." CreationDate="2010-10-16T14:42:12.503" UserId="744" />
  <row Id="5354" PostId="4517" Score="1" Text="@CodexArcanum: &quot;Your Axe type can implement IChopper and IWeapon but can then expose the component's behavior for it&quot; - What's the point of this? It just bloats out your class hierarchy. The point of the component pattern is that you don't need an Axe class or an IChopper interface or an IWeapon interface, just concrete Chopper and Weapon components, and a top-level Item." CreationDate="2010-10-16T15:01:01.857" UserId="744" />
  <row Id="5356" PostId="4535" Text="Cloud storage just means you're storing the saves online. You can do that with any file format." CreationDate="2010-10-16T16:36:12.617" UserId="744" />
  <row Id="5357" PostId="4552" Score="2" Text="&quot;There are no lines, or shading, but instead are implied by individual pixels put in a particular colour.&quot; - Er, there are lines and shading. &quot;Pixel art&quot; just refers to the fact those elements are usually hand-drawn at a pixel or near-pixel level, rather than by a 3D rasterizer with equations to model lighting." CreationDate="2010-10-16T16:42:41.750" UserId="744" />
  <row Id="5358" PostId="4552" Score="1" Text="@Joe Wreschnig When I say Lines I mean them as in line art. There are black pixels representing lines but they aren't conected and the image wouldn't read without the colour in them. Colour change isn't shading - shading is dependent on background and surrounding elements. Hence why I said the shading and lines are implied by changing the pixel colours. Since that's probably a confusing statement, though, I'll edit my post!" CreationDate="2010-10-16T16:48:37.017" UserId="2545" />
  <row Id="5359" PostId="4535" Text="I know that. But for communication purposes it can be a good idea to structure it with something that's easy to transfer." CreationDate="2010-10-16T17:25:03.927" UserId="1217" />
  <row Id="5360" PostId="4519" Score="2" Text="There is a difference between an indie game and a hobby project. " CreationDate="2010-10-16T22:47:54.983" UserId="395" />
  <row Id="5361" PostId="4547" Score="1" Text="Maybe we should be glad you live very far away now ;-) Probably wouldn't hurt subscription numbers though." CreationDate="2010-10-16T22:52:58.833" UserId="395" />
  <row Id="5362" PostId="4501" Text="Anything that gets the job done." CreationDate="2010-10-17T00:33:40.737" UserId="189" />
  <row Id="5363" PostId="4554" Text="I always hated that the os abstraction layer was virtual.  It's not like you'll ever need two os abtraction layers.  Much better to use CRTP." CreationDate="2010-10-17T00:58:13.617" UserId="370" />
  <row Id="5364" PostId="4165" Text="Please do hate the singleton.  It does two things poorly.  Global access and arity.  Often developers think global access == singleton.  There a *very* few problems than need a true singleton, and possibly a few more that are more elegant when solved with a singleton." CreationDate="2010-10-17T01:00:42.597" UserId="370" />
  <row Id="5365" PostId="3031" Text="Good answer. A good artist will probably have a general concept about certain things, but we rarely know exactly how things work in the engine and you might need to lay it out pretty specifically. Remember we don't have the same background, so something that's obvious to you wouldn't necessarily occur to us, so more detail is better. Remember to always let an artist know if you need an asset to do multiple things! Ie, a character portrait that will be in game at 300 px, but that you also want to use at a marketing image at 2500 px." CreationDate="2010-10-17T04:45:37.973" UserId="2545" />
  <row Id="5366" PostId="1672" Text="@Codex: well, it's switching to Unity (though it still uses Mono). Quite impressive though!" CreationDate="2010-10-17T07:05:05.720" UserId="1004" />
  <row Id="5367" PostId="4547" Text="Well, I never said I thought it was a good idea to try to make a game that humans keep playing forever either." CreationDate="2010-10-17T09:27:32.600" UserId="744" />
  <row Id="5368" PostId="4532" Score="13" Text="The title of your question makes you sound as if you were some kind of robotic overlord, trying to enslave us humans with the most addicting game ever." CreationDate="2010-10-17T11:27:30.667" UserId="20" />
  <row Id="5369" PostId="4557" Text="That's a very good point. Basically what I'm asking is not so much which medium I could excel in right away, but which medium would get me the most value for my investment in it. I suppose it also depends on the amount of investment, but I have to say the malleability of vector art is tempting. It does feel like it's a bit harder to get into though, because it's more dissimilar to drawing or painting on traditional mediums. Depends on the tools too, of course." CreationDate="2010-10-17T14:25:24.630" UserId="302" />
  <row Id="5370" PostId="4557" Text="Digital painting will definitely give you value, since a lot of the skills you'd learn to do it you can apply to any other kind of art, but it will definitely have the highest learning curve. Vector is a little weirder to wrap your head around but I don't think it's that hard, really, just time consuming. " CreationDate="2010-10-17T16:18:19.187" UserId="2545" />
  <row Id="5371" PostId="4545" Text="I've tried that, it does save a bit of time (couple of seconds, still nowhere near the standalone interpreter), maybe the problem (or one of them) is that allocation time isn't constant and depends on how much memory has been reserved before? That would be solvable by using a pool of memory just for Lua, I'll give that a shot (anyone got some hints on implementing that?)." CreationDate="2010-10-17T17:36:00.610" UserId="337" />
  <row Id="5372" PostId="4565" Text="@RCIX: Thanks (15 chars)" CreationDate="2010-10-17T17:52:34.233" UserId="2555" />
  <row Id="5373" PostId="4545" Text="What saves a couple of seconds, tcmalloc? The reason malloc is generally slow isn't because allocation time is not constant (though it often is not) - it's because allocation has horrible cache locality, lots of locking overhead, tons of consistency checking in debug builds, etc. Basically, you should _never_ be calling real malloc (and especially not real free!) during script execution - always use an existing pool of memory as much as you can." CreationDate="2010-10-17T17:57:04.087" UserId="744" />
  <row Id="5374" PostId="4565" Score="4" Text="correct, and if I remember correctly you can still get direct access to the GPU by writing shaders" CreationDate="2010-10-17T18:21:11.030" UserId="490" />
  <row Id="5375" PostId="4567" Text="I smell over-engineering. Components register themselves with GameObject. If GameSubsystem is what I think it is, then it's just a list of components that can be added to a GameObject at once. How you describe it sounds like there is some kind of &quot;magic&quot; how GameObjects and Components get together (they search for each other? Why?). I also get the feeling that you're trying to use components for basically everything in your engine, which I would also reconsider. For what it's worth I would only consider options 3 or 4." CreationDate="2010-10-17T18:30:55.313" UserId="490" />
  <row Id="5376" PostId="4568" Text="I'm not quite sure I'm following you. I've never messed with anything involving the camera, since my game is 2D (I'm drawing the &quot;3D&quot; primitives all with Z-coordinate == 0). I had been thinking I'd need to have a DrawPrimitives() and DrawSprites() method in the base Note class, but I'm also not sure what depth sorting entails or how to do it." CreationDate="2010-10-17T18:38:56.667" UserId="2289" />
  <row Id="5377" PostId="4569" Text="Do you also intend to program car steering?" CreationDate="2010-10-17T18:52:05.850" UserId="1966" />
  <row Id="5378" PostId="3871" Text="He said traditional 3D. Meaning everything in 3d. Creating a 3D animations for a character on the otherhand, can greatly reduce the cost of animation, as you only have to create the 3D character once, and then just animate the bones arround. While in 2D animation you have to redraw the character many times for each animation, and it becomes expensive with large amount of animations compared to a large amount of a 3d character." CreationDate="2010-10-17T19:03:12.017" UserId="962" />
  <row Id="5379" PostId="4567" Text="@GamingHorror, Registering `Components` in `GameObjects` is out of scope of my question. Read articles about component-based approach or ask you own question on this site if you are interested in it. What you think about `GameSubsystem` is totally wrong." CreationDate="2010-10-17T20:18:34.593" UserId="1677" />
  <row Id="5380" PostId="4572" Score="3" Text="If you are considering college, I really do hope you can type better than that, and this time you were just being lazy. Either way, people here will be more willing to answer questions if correct spelling and grammar are used." CreationDate="2010-10-17T20:34:53.780" UserId="962" />
  <row Id="5381" PostId="4527" Text="If this is your approach, your game will be utterly boring. Hey maybe you'll have a nice engine, but it will suck nonetheless. If you do not feel creative, find someone who *is*." CreationDate="2010-10-17T20:44:54.427" UserId="2188" />
  <row Id="5382" PostId="4568" Text="I was not aware that you were working with 2d. In that case you don't really need to worry about sorting the primitives by depth or distance from the camera/eye. The reason for depth sorting will become clear to you if you ever attempt to draw transparent objects in 3d space. You can read more about it here: http://blogs.msdn.com/b/shawnhar/archive/2009/02/18/depth-sorting-alpha-blended-objects.aspx &#xA;&#xA;Regardless, you should still create 2 draw lists, one for drawing primitives and one for spritebatch." CreationDate="2010-10-17T21:13:03.737" UserId="2345" />
  <row Id="5384" PostId="4572" Text="yeah sorry about that I had to be quick to go help my cousin get his deer out of the woods." CreationDate="2010-10-17T22:01:58.633" UserId="2522" />
  <row Id="5385" PostId="4569" Text="Stighy - Can you go into detail about how the car (or other object) will behave? Is it going to be used from a top-down or side perspective?" CreationDate="2010-10-17T22:02:04.510" UserId="2290" />
  <row Id="5386" PostId="4409" Text="Joe Wreschnig - This is the appropriate SE for this question, because it deals specifically with game ui design. For the same reason game specific programming questions belong here and not on SO, this question belongs here and not on UI." CreationDate="2010-10-17T22:04:35.513" UserId="2290" />
  <row Id="5387" PostId="2470" Text="This is not entirely correct. If you get a degree at a nationally accredited school, you can pursue a degree at regionally accredited institution (and vice versa). The case I believe you are referring to is if, for whatever reason, you decide to transfer from a nationally accredited school to any other school (nationally or regionally accredited), before you have your degree, the new school does not have to accept any of your credits." CreationDate="2010-10-17T22:07:47.967" UserId="2290" />
  <row Id="5388" PostId="1721" Text="Munificent, other than the cost, which I admit is quite expensive, can you expound on why you strongly discourage people from attending Full Sail? As a grad myself, I would be interested in hearing your points." CreationDate="2010-10-17T22:11:22.557" UserId="2290" />
  <row Id="5390" PostId="4541" Score="1" Text="The purpose isn't just to prevent values from getting too high, sometimes it's because beyond a certain point, additional gains are actually more valuable to the player (increasing returns), so decreasing stat returns is used to balance it so that the overall power gain for the player stays the same." CreationDate="2010-10-18T02:42:54.577" UserId="458" />
  <row Id="5391" PostId="4492" Text="It's worth noting that in some companies, the line between &quot;design&quot; and &quot;marketing&quot; is imaginary. What becomes of your question when the person who does design is also involved in marketing?" CreationDate="2010-10-18T03:07:03.723" UserId="458" />
  <row Id="5392" PostId="4522" Text="+1 for the pcg wiki" CreationDate="2010-10-18T06:12:10.003" UserId="1251" />
  <row Id="5395" PostId="4532" Text="It was meant as a joke. No need to insult somebody." CreationDate="2010-10-18T07:23:07.190" UserId="20" />
  <row Id="5396" PostId="4572" Text="@wolf:haha, lol, shall i give yu a +1 dear? :-p" CreationDate="2010-10-18T09:40:22.087" UserId="1251" />
  <row Id="5397" PostId="4532" Text="@bummzack: ok, boss, i retreat !" CreationDate="2010-10-18T09:42:46.993" UserId="1251" />
  <row Id="5398" PostId="4569" Text="Top-Down... and about sterring: maybe, at the moment, i don't care about it... sterring will be next step !" CreationDate="2010-10-18T09:45:59.567" UserId="2494" />
  <row Id="5399" PostId="3669" Text="Thanks for noticing, fixed." CreationDate="2010-10-18T10:03:25.563" UserId="1629" />
  <row Id="5400" PostId="4586" Text="not bad, but It doesn't take me anywhere,much." CreationDate="2010-10-18T11:11:25.760" UserId="1251" />
  <row Id="5401" PostId="4532" Text="I don't think the &quot;joke&quot; is much of a stretch. I also think it devalues the medium. Do you think authors sit around trying to figure out what a book should have to get people to read it over and over? Having a wide market reach is worth talking about, having deep mechanics is worth talking about, but designing to keep someone playing the same game forever? I already gave the optimum answer for that. You just want a more indirect gun." CreationDate="2010-10-18T11:33:06.343" UserId="744" />
  <row Id="5402" PostId="4546" Text="Thank you for this awesome answer. Especially the example class structure since I have had trouble with creating that before." CreationDate="2010-10-18T11:59:09.247" UserId="215" />
  <row Id="5403" PostId="4587" Text="@joe: the pdf's are really tough materials. But, when I read through the cpp and h files, as you said, they are &quot;understandable&quot;.Thank you." CreationDate="2010-10-18T12:52:43.760" UserId="1251" />
  <row Id="5404" PostId="4572" Text="@ vishnu: Nice one. XD" CreationDate="2010-10-18T14:22:03.737" UserId="2522" />
  <row Id="5405" PostId="4590" Score="5" Text="It sounds like you're insinuating that you think things like Flash or Unity are still banned.  That's not the case anymore.  http://www.gizmag.com/apple-relaxes-development-tool-restrictions-for-ios/16330/" CreationDate="2010-10-18T14:38:46.953" UserId="51" />
  <row Id="5406" PostId="4590" Text="That does sound like the case, but the OP seems to be interested to know *how* one could tell the difference." CreationDate="2010-10-18T15:42:33.423" UserId="1198" />
  <row Id="5407" PostId="4534" Text="Someone does not agree obviously. Care to argument as to why this was downvoted?" CreationDate="2010-10-18T16:24:50.087" UserId="1217" />
  <row Id="5408" PostId="4527" Score="3" Text="@Lo'oris - isn't that what he's trying to do? This is a great step in the direction of getting help with those parts he's not comfortable with. " CreationDate="2010-10-18T16:36:19.480" UserId="1217" />
  <row Id="5409" PostId="4587" Text="+1.  Box2D also is very careful about stability, one of the things that is very difficult when you are rolling your own." CreationDate="2010-10-18T17:00:49.583" UserId="1134" />
  <row Id="5410" PostId="4532" Text="author's no, but book publishers could definitely be doing that." CreationDate="2010-10-18T17:02:57.877" UserId="1477" />
  <row Id="5411" PostId="4187" Text="Sorry, I may have been a little confusing. The method I described does nothing more than tell the panel to draw a texture on its background. Similar to how you can tell an imagebox what image to draw. But instead of the texture/image being a file it is the xna backbuffer. I was not drawing ontop of or over the panel/window. So there were no issues with &quot;airspace&quot;. " CreationDate="2010-10-18T17:04:21.417" UserId="2345" />
  <row Id="5412" PostId="4187" Text="Ah, I see.  So your approach is very similar to how I've hosted XNA content in WPF (using D3DImage).  Instead of a typical bitmap source, the image source is an XNA/Direct3D surface.  I agree that this is the best approach given the options available--there are no airspace issues, and the performance is pretty good because no unnecessary copying/blitting is required." CreationDate="2010-10-18T17:13:35.123" UserId="136" />
  <row Id="5413" PostId="4594" Text="I'd expect they don't investigate until they have a reason also. As no Unity apps were turned away during the Ban." CreationDate="2010-10-18T18:09:41.507" UserId="14" />
  <row Id="5414" PostId="4600" Text="Heh, looks like we found it simultaneously :-)" CreationDate="2010-10-18T19:07:17.307" UserId="395" />
  <row Id="5415" PostId="4600" Text="@stighy, when you can, be sure to make this the accepted answer so it isn't incorrectly categorized as unanswered." CreationDate="2010-10-18T19:58:59.917" UserId="51" />
  <row Id="5416" PostId="4591" Text="I learned this as &quot;easy to learn, difficult to master.&quot; This is exactly why Super Smash Bros. Melee is so popular. It does that perfectly." CreationDate="2010-10-18T20:34:38.013" UserId="141" />
  <row Id="5417" PostId="4591" Text="I had exactly that in mind when writing this answer, but I tried to be as comprehensive as possible ;-)" CreationDate="2010-10-18T20:35:49.057" UserId="33" />
  <row Id="5418" PostId="4599" Text="Hmm.. look at the first lines: aa, aah, aahed, aahing, aahs, aal, aalii, aaliis, aals... and continues like that. It seems like having the same trash that I got parsing the web." CreationDate="2010-10-18T21:54:44.193" UserId="2248" />
  <row Id="5419" PostId="4582" Text="I've downloaded about 10 and I can't find one with a list of words. A regular dictionary is not useful to me because some words will not be present, like plurals and verb conjugations." CreationDate="2010-10-18T22:42:45.577" UserId="2248" />
  <row Id="5420" PostId="4607" Text="the game will be coded primarily for myself as i'm going on a 1 month trip in a few months" CreationDate="2010-10-18T23:02:50.507" UserId="2575" />
  <row Id="5421" PostId="4608" Text="Interesting.  Thanks for the links.  After staring at this stuff all day I'm starting to wrap my head around the concept of Local and Global coordinates and how they relate to each other." CreationDate="2010-10-18T23:26:29.543" />
  <row Id="5422" PostId="4567" Text="I'm biased towards developing components for game logic, not engine components, and your description seemed to point in that direction. I understand component systems very well, I'm thinking I was thrown off course because I'm not familiar with the terminology you used, specifically GameSubsystem. From what I read, it sounded like you were trying to build *everything* (eg the whole engine) just from components." CreationDate="2010-10-19T00:25:05.660" UserId="490" />
  <row Id="5423" PostId="1721" Score="2" Text="From what I've heard, students are taught a cookie-cutter approach to making a game: here's you implement shadows, here's a BSP, with relatively little high-level concepts. If you take a student outside of those specific things, they're lost. To me that's backwards, it's easy to learn specific techniques on your own if you have a solid foundation in the principles." CreationDate="2010-10-19T00:34:22.867" UserId="160" />
  <row Id="5425" PostId="4567" Text="Yes, &quot;Component-based game objects&quot; and &quot;Component-oriented programming&quot; are different terms, it can be confusing. Don't be biased, better be &quot;bilased&quot;: http://scottbilas.com/files/2002/gdc_san_jose/game_objects_slides.ppt" CreationDate="2010-10-19T01:34:11.140" UserId="1677" />
  <row Id="5426" PostId="4610" Score="1" Text="@Eric Wow...good job." CreationDate="2010-10-19T02:58:36.157" UserId="1863" />
  <row Id="5427" PostId="4590" Text="Yes. I just want to know how would Apple differentiate the technologies an app would use. I know Apple had already relaxed its terms. Thanks." CreationDate="2010-10-19T07:48:42.227" UserId="2156" />
  <row Id="5428" PostId="4594" Text="Yeah. It sounds like way too mess for such massive app submissions unless they can automate as you said. Thanks." CreationDate="2010-10-19T07:54:32.323" UserId="2156" />
  <row Id="5429" PostId="4617" Text="I am recording things on the server." CreationDate="2010-10-19T08:45:29.863" UserId="1495" />
  <row Id="5430" PostId="4595" Text="i don't think starting a game career with game engines like flixel and flashpunk is good. They reduce your learning skill set." CreationDate="2010-10-19T10:11:50.417" UserId="1251" />
  <row Id="5431" PostId="4619" Text="I didn't ask if it made sense, I didn't ask if it can be approximated by any mathematical function. Feel free to comment about it with comments. :)" CreationDate="2010-10-19T11:33:17.887" UserId="938" />
  <row Id="5432" PostId="4619" Text="Also, you can't decouple fitness from purpose. Say, eg, you wanted to scale down the value of each successive upvote on StackOverflow so that hugely popular questions generate less reputation. Using logarithm would lead to decimal scores, it would change the amount of upvotes required for score-related badges, it would make voting generally confusing to people, it would make negative scores impossible..." CreationDate="2010-10-19T11:44:57.010" UserId="938" />
  <row Id="5433" PostId="4619" Text="You asked for a name, I gave you one: It's a rough approximation of a **logarithmic scale**, more suited for pen &amp; paper games than for computer games. And the original question was about *values*, not *votes*, those are a totally different beast." CreationDate="2010-10-19T12:21:42.770" UserId="1141" />
  <row Id="5434" PostId="4617" Text="and you're running AI on the client?" CreationDate="2010-10-19T13:36:31.607" UserId="249" />
  <row Id="5435" PostId="4565" Score="2" Text="I can confirm that GamingHorror is correct.  XNA has out-of-the-box support for shaders written in HLSL, which could be used to perform various operations directly on the GPU." CreationDate="2010-10-19T14:28:42.677" UserId="136" />
  <row Id="5436" PostId="4519" Score="1" Text="I think Blow actually stated that &quot;most&quot; of the money was used to pay the artist, and then a lot of the rest was for him to live on (and presumably paying for the music, etc.). So for him, even if it were a hobby project, unless he also elected to do his own graphics (or got someone to do them also as a hobby), then it would still have cost a reasonable amount of money." CreationDate="2010-10-19T14:43:31.703" UserId="1091" />
  <row Id="5437" PostId="4617" Text="No, all the AI is running on the server" CreationDate="2010-10-19T14:44:34.767" UserId="1495" />
  <row Id="5438" PostId="4582" Text="You might want to edit your original question to be specific about what kind of words you need then?" CreationDate="2010-10-19T15:28:14.310" UserId="1101" />
  <row Id="5439" PostId="4599" Score="1" Text="It doesn't continue like that, and they are all words. Aa is a kind of lava, aah through to aahs are exclamations, and allii sounds like a word." CreationDate="2010-10-19T15:32:52.340" UserId="1156" />
  <row Id="5440" PostId="4630" Text="Based on my current, probably flawed, understanding of opengl graphics, opacity is a property that's applied to the middle of a shape rather than its vertices. Is this false? Is there a tutorial or document where I can better learn this stuff?" CreationDate="2010-10-19T16:22:36.317" UserId="2520" />
  <row Id="5441" PostId="4630" Text="Opacity is controlled via alpha-blending. Supply a value for the alpha can be done through vertices, through texturing, or using shaders (or a combination). Which is best for you depends exactly on what you're doing." CreationDate="2010-10-19T16:33:45.427" UserId="1091" />
  <row Id="5442" PostId="4628" Score="2" Text="&quot;would result in just huge amounts of islands&quot; - Or it generates land with lakes in it, if you just swap land/water." CreationDate="2010-10-19T16:42:22.860" UserId="744" />
  <row Id="5443" PostId="4628" Score="1" Text="Even so, you would get a large amount of lakes, in a fairly standard pattern." CreationDate="2010-10-19T16:45:45.673" UserId="1156" />
  <row Id="5444" PostId="4628" Text="&quot;I don't think I can really generate a supermassive sheet of perlin noise.&quot; Why not? If the world is going to be that big - and you mention a game that has this - then you need to be able to store it. And if you can store it, you can generate it. It's not entirely clear what your question is here.&#xA;&#xA;" CreationDate="2010-10-19T16:59:29.000" UserId="1101" />
  <row Id="5445" PostId="4599" Text="@Damian, @The Allii is a word, and looking at these they all are. There are, alot, of words. I think Damian is searching for a more generic and easy list. But this is an awesome resource, +1" CreationDate="2010-10-19T17:15:00.207" UserId="14" />
  <row Id="5446" PostId="4628" Score="1" Text="@Kylotan: Mincraft is infinite in size (well not really, but it is really big... total volume = long.MaxValue x 128 x long.MaxValue). Therefore, it does not generate the whole world in one shot nor does it store the entire map in memory. It generates regions of 16x128x16 blocks asynchronously if they have not been visited before otherwise it loads them from disk." CreationDate="2010-10-19T17:37:56.853" UserId="2345" />
  <row Id="5447" PostId="4628" Text="@Kylotan: Not only is it generated as Arriu said, but if I say that each pixel is a single character, I'm looking at almost certainly terabytes if not more. This is something I'm pretty new to, so I'm sorry if I miss something." CreationDate="2010-10-19T18:50:20.120" UserId="1156" />
  <row Id="5448" PostId="4631" Text="its not quite a game in itself but a popular game related program, apprentice was made with delphi. I think the main reason no one has taken it up after it got abandoned was the language." CreationDate="2010-10-19T19:10:19.277" UserId="1477" />
  <row Id="5449" PostId="3740" Text="Well, it looks like your dream came true! http://github.com/paulhodge/EASTL" CreationDate="2010-10-19T20:00:49.697" UserId="744" />
  <row Id="5450" PostId="4621" Text="Found Actionscript.org to have some really good AS3 focused tips." CreationDate="2010-10-19T20:13:23.590" UserId="2567" />
  <row Id="5451" PostId="4628" Score="1" Text="@The Communist Duck: Yes this is true, a game like minecraft can get away with using about 2 to 4 bytes of data per block but only a byte needs to be saved after it is no longer visible (one byte describes the type of block, the other bytes describe lighting and other data which can be recalculated later). Here is where it gets interesting, you can use RLE to drastically reduce the stored size down to only a few bytes since the blocks are somewhat coherent, as you mentioned. " CreationDate="2010-10-19T20:20:23.107" UserId="2345" />
  <row Id="5452" PostId="4627" Score="1" Text="I've used the 12Dicts package for a Scrabble solver. It worked very well. " CreationDate="2010-10-19T21:05:22.050" UserId="2587" />
  <row Id="5453" PostId="4033" Score="1" Text="Those are really freakin great" CreationDate="2010-10-19T22:21:11.187" UserId="804" />
  <row Id="5454" PostId="4594" Text="If you encrypt it within the binary, they can just look at the code in ram while it's running. " CreationDate="2010-10-19T23:05:57.887" UserId="2306" />
  <row Id="5455" PostId="4046" Score="1" Text="I found some more links that may be useful to anyone coming back to this topic:&#xA;http://cowboyprogramming.com/2007/01/05/evolve-your-heirachy/" CreationDate="2010-10-19T23:07:42.967" UserId="360" />
  <row Id="5456" PostId="4636" Score="4" Text="I should also mention that this isn't necessarily proof that it is a good idea. I know the use of a particular flavor of Delphi has made it impossible to port the game off Windows despite a huge consumer demand." CreationDate="2010-10-20T00:31:27.747" UserId="395" />
  <row Id="5457" PostId="4643" Score="2" Text="Don't forget Blender!" CreationDate="2010-10-20T01:54:43.840" UserId="647" />
  <row Id="5458" PostId="4643" Score="2" Text="True, but I'm guessing Blizzard is using Maya or Max ;) They can afford it!" CreationDate="2010-10-20T02:08:54.053" UserId="1198" />
  <row Id="5459" PostId="2654" Score="1" Text="An alternative is to hook EndScene and you can use the full gamut of Direct3D drawing calls (i.e. create your own models and draw them) before calling through to the original EndScene." CreationDate="2010-10-20T03:57:48.673" UserId="2200" />
  <row Id="5460" PostId="4529" Text="+1 for the encouragement, everybody is creative as long as he believes he is so." CreationDate="2010-10-20T04:37:02.993" UserId="1251" />
  <row Id="5461" PostId="779" Text="I've yet to be hired on a game project where the demo was there and ready for me to play. Usually I'm contacted when the GDD is completed, or almost completed. If you're a programmer I can see how maybe you'd get your thoughts across better that way, but art assets can take a long time, especially if it's just one artist working part time since the gig is unpaid. " CreationDate="2010-10-20T05:11:03.670" UserId="2545" />
  <row Id="5462" PostId="4595" Score="1" Text="To add on to the comment, once you have a good grasp of the language or API, a good framework helps to let you focus on the game instead of reinventing the wheel." CreationDate="2010-10-20T10:05:44.440" UserId="2132" />
  <row Id="5463" PostId="4628" Score="2" Text="'Really big' is not the same as infinite and you can't use the two terms interchangeably. If you grow the map as and when it is discovered, that is a finite size that grows on demand - quite a different proposition from being infinite. Each bit of growth can be generated as needed. The terrain data in Minecraft is very amenable to trivial compression since there is a high degree of coherence among the data. (eg. RLE as mentioned.)" CreationDate="2010-10-20T10:34:01.610" UserId="1101" />
  <row Id="5464" PostId="4637" Text="This sort of data is very hard to come by." CreationDate="2010-10-20T11:13:37.150" UserId="1101" />
  <row Id="5465" PostId="4635" Score="1" Text="Did you mean &quot;help you *decrease* time to market&quot;?" CreationDate="2010-10-20T11:15:23.623" UserId="1101" />
  <row Id="5466" PostId="4637" Text="Off the top of my head: Dungeon Siege, Gabriel Knight 3, Dark Engine (and so Thief, Thief 2), Unity3d, Valve' engine (at least Particle System as I know: http://developer.valvesoftware.com/wiki/Particle_system)" CreationDate="2010-10-20T11:21:14.150" UserId="1677" />
  <row Id="5467" PostId="4646" Score="2" Text="+1 - Good links! I'll also add that lots of times such cinematics are done by an entirely separate company, and may use completely different assets depending on the platforms involved. (PC/PS3/360 games may get to use the &quot;same&quot; high-poly model for prerendered cinematics and normal-mapped for in-game - PSP/DS games not so much.)" CreationDate="2010-10-20T11:42:36.513" UserId="744" />
  <row Id="5468" PostId="4652" Text="I've read that book.Its good for learning concepts." CreationDate="2010-10-20T11:51:42.407" UserId="1251" />
  <row Id="5469" PostId="4637" Score="1" Text="-1, pretty much every game written in the past decade is going to use a component system somewhere, and not use a component system somewhere else it could've." CreationDate="2010-10-20T12:31:58.580" UserId="744" />
  <row Id="5470" PostId="4640" Text="David, I unfortunatley have to agree for practical purposes Delphi is dead.  And yes, C# is very &quot;similar&quot; to Delphi - I just really like the fast, responsiveness of a Delphi WinApp over C#.  There is noticable difference.  I guess I just have to suck it up and let Delphi go." CreationDate="2010-10-20T12:43:33.663" UserId="1875" />
  <row Id="5471" PostId="4637" Score="2" Text="You are wrong. Many engines still use static hierarchies. And it is interesting to collect and read docs/postmortems/code snippets of games and engines that really use component systems." CreationDate="2010-10-20T12:44:38.390" UserId="1677" />
  <row Id="5472" PostId="4640" Text="Also, I plan to stick with just Windows game development... not sure if I care about making an Xbox game at this time and I don't care about Linux/Mac.  " CreationDate="2010-10-20T12:45:05.417" UserId="1875" />
  <row Id="5473" PostId="4547" Score="2" Text="-1 for evil alignment." CreationDate="2010-10-20T12:47:49.853" UserId="1677" />
  <row Id="5474" PostId="4547" Text="Evil questions have only unpleasant answers." CreationDate="2010-10-20T13:42:43.873" UserId="744" />
  <row Id="5476" PostId="4637" Score="1" Text="I didn't say engines don't use static hierarchies. I said you'd be hard-pressed to find an engine that _only_ uses static hierarchies, just like you'd be pressed to find one _only_ using components." CreationDate="2010-10-20T13:45:43.587" UserId="744" />
  <row Id="5478" PostId="4637" Score="2" Text="You are wrong. Game entities (heart of game logic), visual effects, game engine and editor infrastructure either are component-based or not." CreationDate="2010-10-20T14:07:37.907" UserId="1677" />
  <row Id="5485" PostId="4656" Score="2" Text="Great points! I pretty much always play as a female character as I'd rather look at a girl's bum for 8 hours ;)" CreationDate="2010-10-20T14:52:01.640" UserId="119" />
  <row Id="5487" PostId="4617" Text="I see, well I think the only reasonable way to implement that would be to run a fixed-step simulation. Not sure why you'd want variable framerate on a server anyway." CreationDate="2010-10-20T15:29:42.850" UserId="249" />
  <row Id="5488" PostId="4640" Score="2" Text="Yes, there is a difference, but it's getting smaller. If you find yourself in situation where the performance difference is too great, you can link in C++ libraries to do some of the heavy lifting. I haven't had to resort to that, however." CreationDate="2010-10-20T15:41:55.737" UserId="2306" />
  <row Id="5489" PostId="4637" Score="1" Text="If nothing else, most examples and tutorials for indie games use object infrastructures, so good examples of component-based designs are rare and valuable.  Even the articles I do find about &quot;component based design&quot; often as not misinterpret it as just a way to further muddle up a type-hierarchy.  " CreationDate="2010-10-20T15:44:10.420" UserId="2491" />
  <row Id="5490" PostId="4641" Text="Wow, excellent link. His talk on component systems really helped me to better understand the implementation of component-based systems.  Neat talk about how the continuous world was done in DS as well. I wonder if similar techniques are still in use in other large world games.  I think most tend to use something more akin to regions or chunks (Minecraft, anything by Bethesda)." CreationDate="2010-10-20T15:46:03.150" UserId="2491" />
  <row Id="5492" PostId="4660" Text="Do you know if the audio for that presentation is behind the GDC Vault paywall? The slides alone are pretty cool but there are a few questions I have that I suspect are answered in the presentation." CreationDate="2010-10-20T16:30:23.820" UserId="744" />
  <row Id="5495" PostId="4653" Score="3" Text="While I love C# and Python, I don't necessarily think that a high-level language is a must.  I mean, certainly don't program in C or Assembly, but C++ is high-level enough for many people and if your whole team already knows it, then that's the best language to use.  Much more important is the suggestion to use an Engine, or more generically, to make good use of high-level libraries. The more of someone else's good code you can use, the better." CreationDate="2010-10-20T17:10:30.887" UserId="2491" />
  <row Id="5497" PostId="4663" Text="as a note: I intentionally didn't put in too many specific details in hope that this would be better able to help someone else in the future as well with broader more general type answers. It appears to be working well so far. thanks!" CreationDate="2010-10-20T17:22:18.637" UserId="1477" />
  <row Id="5498" PostId="4635" Text="Yes, thanks ;-)" CreationDate="2010-10-20T17:28:23.607" UserId="1198" />
  <row Id="5499" PostId="4672" Score="1" Text="Are you talking physics?" CreationDate="2010-10-20T18:08:34.190" UserId="1156" />
  <row Id="5500" PostId="4675" Text="Heh, trust me to over-complicate it _that_ bad. I just read recently that you can simulate basic air resistance by multiplying by 0.9 and still that didn't come to mind. Thank you." CreationDate="2010-10-20T18:26:29.123" UserId="1902" />
  <row Id="5501" PostId="4676" Text="I figured I would have to put a check in place, as well, but it seems to work without one." CreationDate="2010-10-20T18:33:35.400" UserId="1902" />
  <row Id="5502" PostId="4675" Text="Haha, oh wow, yeah.  I was calculating an inverse vector normal and multiplying it by a slow-down factor.  Why didn't I just do this?  Sometimes the really obvious answers are the easiest to miss." CreationDate="2010-10-20T18:56:33.360" UserId="2491" />
  <row Id="5503" PostId="4677" Text="Converted this to CW." CreationDate="2010-10-20T19:09:28.687" UserId="51" />
  <row Id="5504" PostId="4677" Score="2" Text="Also for list-type questions, it's usually better to put your examples as answers instead of built into the question, that way there's a singular place for people to comment/vote on each of those." CreationDate="2010-10-20T19:13:21.580" UserId="51" />
  <row Id="5505" PostId="4673" Score="2" Text="Also little semantic detail.. in the statement `velocity.i += speed;` the `speed` is in fact your acceleration, i.e. the rate that velocity changes by. :)" CreationDate="2010-10-20T19:23:57.063" UserId="1970" />
  <row Id="5506" PostId="4672" Score="6" Text="Why would you want to implement it if you don't know what it is?" CreationDate="2010-10-20T19:28:13.593" UserId="1970" />
  <row Id="5510" PostId="4679" Score="1" Text="That's a very interesting formula. I'll have to keep that in mind for the future!" CreationDate="2010-10-20T19:53:15.497" UserId="1970" />
  <row Id="5516" PostId="4673" Text="Flixel calls this &quot;drag,&quot; in case you're looking for a term that's independent of acceleration." CreationDate="2010-10-20T20:19:35.800" UserId="953" />
  <row Id="5517" PostId="4640" Text="Actually, using Mono, you can work seamlessly on Mac/Linux as well, and MonoTouch/MonoDroid allow working on iDevices and Android. So it's not really all that limiting. ;)" CreationDate="2010-10-20T20:21:39.087" UserId="1970" />
  <row Id="5522" PostId="4679" Text="+1 Looks interesting, I think I might throw it into some code to see it work." CreationDate="2010-10-20T20:35:11.520" UserId="891" />
  <row Id="5523" PostId="4640" Score="2" Text="@Ipsquiggle sure - mono is a nice option to have. If he's ignoring Linux and Mac (and both guys that bought Macs for gaming can kiss my ass), .NET/XNA are a great option." CreationDate="2010-10-20T20:55:19.303" UserId="2306" />
  <row Id="5524" PostId="4673" Text="&quot;Deceleration&quot; is negative acceleration. Have you taken calculus?" CreationDate="2010-10-20T20:57:09.313" UserId="2306" />
  <row Id="5528" PostId="1818" Score="1" Text="I always liked how the little portrait in id software games would change his face depending on the difficulty level you were looking at.  " CreationDate="2010-10-20T21:43:45.757" UserId="2491" />
  <row Id="5530" PostId="4660" Text="@Chris Waters, I didn't know about this presentation, thank you very much!" CreationDate="2010-10-21T00:10:58.783" UserId="1677" />
  <row Id="5531" PostId="4686" Text="Do you have some nice ideas of nice blogs that I could base myself on ? Just to know what kind of stuff I should keep on it, like small independent challenges, news of a bigger indenpendent projet, etc ?" CreationDate="2010-10-21T01:17:54.070" UserId="889" />
  <row Id="5532" PostId="4687" Text="About Boost, I think maybe it's a huge library and many many things are not quite useful in all projects. In fact luabind use Boost a lot and it's one of the things I didn't like." CreationDate="2010-10-21T01:24:31.180" UserId="889" />
  <row Id="5533" PostId="4627" Text="Well this is what's most close to what I was looking for, So I choose this answer. The other answers gives great resources too, so thanks to all." CreationDate="2010-10-21T01:25:27.067" UserId="2248" />
  <row Id="5534" PostId="4668" Text="That's an excellent point.  I hadn't considered the multi-person workflow too closely nor the version control. Those are both very good arguments in favor of text files, at least as a source document.  Easier tool support as well. Thanks for that perspective!" CreationDate="2010-10-21T02:26:05.110" UserId="2491" />
  <row Id="5535" PostId="4671" Text="Though probably not something I would use (I'm leaning towards JSON over XML) I do appreciate the links." CreationDate="2010-10-21T02:27:22.937" UserId="2491" />
  <row Id="5536" PostId="4687" Score="1" Text="I would say it is an advantage. You have many many solutions out of the box. And your project has only 1 extern dependency - Boost. Not many many little libraries (that use different styles, approaches, licenses, and in turn may have extern implicit dependencies) that are hard to update, sync with your code and maintain." CreationDate="2010-10-21T02:28:59.083" UserId="1677" />
  <row Id="5537" PostId="4687" Score="1" Text="And you include only those Boost libraries (headers) that you need. Boost is huge, but you don't care until you need this or that." CreationDate="2010-10-21T02:33:41.447" UserId="1677" />
  <row Id="5538" PostId="4688" Text="Interesting. What about performance tests? Is there any ChaiScript/Lua/Python comparison?" CreationDate="2010-10-21T02:39:29.153" UserId="1677" />
  <row Id="5539" PostId="4690" Score="1" Text="+1 for providing the link to ludumdare" CreationDate="2010-10-21T04:42:23.640" UserId="1251" />
  <row Id="5540" PostId="4532" Text="@Joe - &quot;I also think it devalues the medium.&quot; Ah, the eternal argument between &quot;engineering&quot; an experience, and &quot;creating&quot; the experience, as though making beautiful, creative, fun games can only be done through the &quot;art&quot; of game design.  As for writers, yes - there are basic tools and techniques most successful writers employ that pull the average reader into the story, regardless of the reader's background and experience.  These are covered in countless literature on the art of storytelling. EA and other game mills turn out successful products, so I assume there is some knowledge out there." CreationDate="2010-10-21T04:45:25.827" UserId="1885" />
  <row Id="5541" PostId="4532" Text="@bummzack - I have no idea what you're talking about, and it really grinds my gears to have someone suggest that I'm merely an autonomous mechanism attempting to enslave all of humanity for the sole purpose of powering my positronic empire.  I see I'm going to have to cool off with a nice can of 10w30 down at the shop." CreationDate="2010-10-21T04:48:53.623" UserId="1885" />
  <row Id="5542" PostId="4689" Score="2" Text="+1 for the excellent response above. I would like to add that in addition to working on personal projects, you should have at least one team project you've worked on and completed. To potential employers, team projects demonstrate your ability to collaborate and work effectively with others, which is a necessity in our industry. If you're interested in looking for team projects, I'd highly recommend checking out the &quot;Help Wanted&quot; forms on http://indiedb.com/ and http://gamedev.net" CreationDate="2010-10-21T05:16:14.063" UserId="2290" />
  <row Id="5543" PostId="4686" Text="@Frédérick Imbeault I'd talk about projects your working on, programming tips and tutorials, challenges you've overcome, and your opinion on industry-related news/articles. As long as the content you post on your blog is professional and relevant to the industry, you can't go wrong. :)" CreationDate="2010-10-21T05:33:07.337" UserId="2290" />
  <row Id="5544" PostId="4680" Text="Have edited the question." CreationDate="2010-10-21T06:13:40.317" UserId="2132" />
  <row Id="5545" PostId="4652" Text="I just noticed the video podcasts.  I once again will have something to watch on the subway." CreationDate="2010-10-21T08:02:32.033" UserId="2595" />
  <row Id="5546" PostId="4695" Text="can u please detail, by what u said &quot;script the engine with a graph?&quot;" CreationDate="2010-10-21T09:57:43.197" UserId="1251" />
  <row Id="5548" PostId="4687" Text="And about python and Lua, is there some wrappers for C++ that allow you to redefine class methods, create new methods, etc ? And is this feature can be controlled from the C++ code (for security) ? As I said, LuaBind does these things but fail in a context of inheritance, which is quite common in a game project. Methods I would like to redefined are for exemple, tests specific game loop, update methods of entities like player, update method of the game world itself, etc." CreationDate="2010-10-21T11:26:59.543" UserId="889" />
  <row Id="5549" PostId="4688" Text="Quite interesting, is there any disavantages / bugs / performance issus you've come through so far ?" CreationDate="2010-10-21T11:27:57.533" UserId="889" />
  <row Id="5551" PostId="4656" Text="@Iain Haha, exactly! And you are not the first to say that, and you will not be the last!" CreationDate="2010-10-21T12:43:57.027" UserId="2545" />
  <row Id="5552" PostId="4677" Text="&quot;Commerical&quot; -&gt; &quot;Commercial&quot; on title." CreationDate="2010-10-21T13:08:44.060" UserId="1581" />
  <row Id="5553" PostId="4539" Text="Space junk is usually invisible to the naked eye - maybe you meant asteroid fields? http://www.google.com/images?q=asteroid+field" CreationDate="2010-10-21T13:15:00.117" UserId="1581" />
  <row Id="5555" PostId="4687" Text="Lua doesn't have classes and objects, but they can be emulated by tables. Here is a Lua library for OOP that I prefer: http://love2d.org/wiki/MiddleClass." CreationDate="2010-10-21T13:56:46.810" UserId="1677" />
  <row Id="5556" PostId="4687" Text="Some time ago I've asked questions about Lua-C++ (you may be interested): http://stackoverflow.com/questions/2685636/lua-game-state-and-game-loop" CreationDate="2010-10-21T13:59:00.823" UserId="1677" />
  <row Id="5558" PostId="4696" Score="1" Text="I agree that being &quot;that guy who created Angry Farm&quot; would help someone's odds of making their way into the industry, but I don't see this as a viable strategy for most, as there are only a handful of &quot;Angry Farms&quot; that come out a year. Besides, in most cases, &quot;that guy who created Angry Farm&quot; either continues to make games on his own, or chooses to open his own development house." CreationDate="2010-10-21T14:28:35.020" UserId="2290" />
  <row Id="5559" PostId="4695" Text="I think he meant a graph whos nodes represent actions or bits of logic. Instead of programming you connect these nodes to create the logic of the game. " CreationDate="2010-10-21T15:01:07.817" UserId="20" />
  <row Id="5561" PostId="4698" Text="I really don't know why this is tagged as linux; the sorts of libraries needed would run cross-platform." CreationDate="2010-10-21T15:36:45.537" UserId="1156" />
  <row Id="5563" PostId="3613" Text="It's graphics, rather than programming. So here sounds good. And moonshadow, Ranieri: Wouldn't they do better as answers?" CreationDate="2010-10-21T15:39:31.000" UserId="1156" />
  <row Id="5564" PostId="4680" Text="Maybe you could have a nice engine with some side librairies such as boost for math, serialization, etc ?" CreationDate="2010-10-21T15:48:17.423" UserId="889" />
  <row Id="5565" PostId="4654" Text="You've definitely helped clear up things, thanks. :) But something like a noise function wouldn't be continuous. And AFAICS, if it's continuous I wouldn't receive a 'random' world. Or am I missing something here?" CreationDate="2010-10-21T15:51:51.377" UserId="1156" />
  <row Id="5566" PostId="4706" Score="1" Text="Yeah, it wasn't that I found torquescript difficult, so much that learning it on my own was hard because the documentation is so bad. " CreationDate="2010-10-21T15:52:46.350" UserId="2545" />
  <row Id="5567" PostId="4689" Text="I will check theses on my next free times, as students it's hard to come with a concrete and quite complete project and push it to the end with all school works to do and side jobs to live so team projects could be a nice avenue !" CreationDate="2010-10-21T15:53:09.360" UserId="889" />
  <row Id="5569" PostId="4632" Text="The sort of effect I want to achieve is something like a 2d top down of Minecraft's map (not game)...if I just used fewer octaves, wouldn't I still need to generate a massive sheet of perlin noise? Or could I somehow generate just a very, very small amount of it?" CreationDate="2010-10-21T16:16:53.540" UserId="1156" />
  <row Id="5570" PostId="4654" Text="Sorry for the double comment, but I feel the above is separate from this. When you say 'use the world coordinates for the perlin noise', would this be the same kind of effect as generating the 'huge' sheet of noise but in parts? I feel a bit slow on the uptake today." CreationDate="2010-10-21T16:17:10.017" UserId="1156" />
  <row Id="5571" PostId="4654" Text="Well, your noise generation certainly can be continuous, and usually is, because you smooth it out. To smooth across boundaries you might need to read across the border a little, but the principle remains the same. If the noise in question needs pseudo-random data, then you generate that from known quantities - ie. a hash of your world coordinates. The outputs then are predictable." CreationDate="2010-10-21T16:47:27.480" UserId="1101" />
  <row Id="5572" PostId="4654" Text="As for randomness, each world can have its own seed value which is used in the calculations. eg. sin(x+seed) instead of sin(x), in my example above. Each different seed will generate a different world. And regarding the huge sheet... I'm not sure what relevance that has. It doesn't matter how much or how little you generate or when you do so. The initial state of the world is defined by the mathematical formula, and you just use that formula to discover that state as and when you need it." CreationDate="2010-10-21T16:49:43.033" UserId="1101" />
  <row Id="5574" PostId="4691" Text="Ah. I see. I think." CreationDate="2010-10-21T17:25:08.357" UserId="1156" />
  <row Id="5575" PostId="4708" Text="I was going to post my own answer, but this is good. I would think about the time you want the player to spend before getting certain parts as well. Know how long your races take and factor that into your decision somehow." CreationDate="2010-10-21T17:34:50.673" UserId="2100" />
  <row Id="5576" PostId="4708" Text="I can't vote you up because I have not enough reputation, but I like it :) I will accept it tomorrow if there isn't anything better" CreationDate="2010-10-21T17:52:52.220" UserId="802" />
  <row Id="5577" PostId="4708" Score="3" Text="I also was going to suggest excel. It's also worth noting that once you've found your 'top' and 'bottom' player, you have to consider the difficulty of the challenges; if most people will win most races on their first try, then something close to the top player is what you want to focus on, and the converse if your game is tuned 'hard'." CreationDate="2010-10-21T18:06:06.507" UserId="1970" />
  <row Id="5578" PostId="4613" Text="This makes sense.  VBO's allow rendering lots of vertices in one call.  Instancing is one level higher in the hierarchy and lets you render lots of VBO's in one call." CreationDate="2010-10-21T18:11:27.680" UserId="2253" />
  <row Id="5579" PostId="4688" Text="I haven't seen any benchmarks, but I haven't had any performance problems yet... my main grip so far would be that it doesn't convert between numeric types implicitly (so you get an error if you pass an int to a function taking a float, etc)." CreationDate="2010-10-21T19:03:20.767" UserId="1272" />
  <row Id="5580" PostId="4706" Text="Nothing garage games makes has any documentation. Stay away. Stay very far away." CreationDate="2010-10-21T19:04:12.340" UserId="891" />
  <row Id="5581" PostId="4632" Text="I think you might still be a little confused about how perlin noise works. You can generate chunks of 16x16 blocks individual by sending the function the x and y coordinate offsets for the perlin noise. Notice how the PerlinNoise_2D(float x, float y) function takes in the x and y coordinate. In other words it generates noise for some (x,y) position. Also, generating less octaves is not the same as changing the wavelength of the octaves. Less octaves =&gt; Less fine grain detail. Longer wavelength =&gt; more zoomed in." CreationDate="2010-10-21T19:34:36.100" UserId="2345" />
  <row Id="5582" PostId="4632" Text="Also, here is an article with code that shows you how to implement zoom/longer wavelenghts: http://www.dreamincode.net/forums/topic/66480-perlin-noise/ " CreationDate="2010-10-21T19:36:16.190" UserId="2345" />
  <row Id="5583" PostId="4681" Score="3" Text="Great visualizations! " CreationDate="2010-10-21T19:37:48.917" UserId="2345" />
  <row Id="5584" PostId="4692" Text="I think Unity is completely overpowered for what he needs. A Game Creator tool would be a much better fit." CreationDate="2010-10-21T21:17:47.250" UserId="490" />
  <row Id="5585" PostId="4692" Text="The Game Creator communities are also very help- and resourceful, and their workflow is much less technical. They may not be as feature rich but his goal is to focus on game design &amp; art, so many features just get in the way." CreationDate="2010-10-21T21:24:34.853" UserId="490" />
  <row Id="5586" PostId="4692" Text="This looks right up my alley, actually. :] It might be a little overpowered but the tutorials look really great." CreationDate="2010-10-21T21:43:25.907" UserId="2545" />
  <row Id="5587" PostId="4692" Text="@GamingHorror &quot;for what *she* needs&quot;, thanks!" CreationDate="2010-10-21T21:43:44.567" UserId="2545" />
  <row Id="5588" PostId="737" Score="2" Text="Well, &quot;characters shouldn't say much&quot; - it depends. In adventure games Characters often have their own &quot;branded replicas&quot; that are often repeated. For example, Guybrush Threepwood (&quot;Yikes!&quot;, &quot;I'm Guybrush Threepwood, a mighty pirate!&quot;). From &quot;Flight of the Amazon Queen&quot;: &quot;Just my luck&quot;. Such replicas make Characters more individual." CreationDate="2010-10-21T23:24:05.873" UserId="1677" />
  <row Id="5589" PostId="4552" Text="Agree with Daestwen" CreationDate="2010-10-22T00:03:53.947" UserId="2622" />
  <row Id="5590" PostId="4715" Text="This is very true, unfortunately the only programmers I know personally are the ones I work with, and my contract stipulates I can't ask them to join projects outside of the company! I also would feel bad about looking for a programmer with absolutely no money to offer them, and without being able to guarantee a minimum time investment on my own part. (Crunch time at the studio tends to take all my attention for a few weeks!)" CreationDate="2010-10-22T00:31:40.077" UserId="2545" />
  <row Id="5592" PostId="4607" Text="Q:&quot;How do I do X&quot; A:&quot;X is not complicated, unless you are trying to make a generic X engine&quot; - This is not a helpful answer at all." CreationDate="2010-10-22T01:05:08.947" UserId="962" />
  <row Id="5593" PostId="4552" Text="This answer is not entirely accurate. Pixel art does *not* imply a &quot;boxy look&quot;, nor is &quot;a lot of pixel art&quot; done on a large scale and colour-reduced. Any pixel artist will tell you that automated size- and colour-reduction is in fact *not* pixel art at all. Though there is a substantial amount of &quot;low-spec&quot; art these days, there is in fact very little actual pixel art in high-profile games. And your example is of poor quality. If you want to see many good examples of great pixel art, check out the hall of fame at PixelJoint. http://www.pixeljoint.com/pixels/new_icons.asp?ob=rating" CreationDate="2010-10-22T02:43:44.640" UserId="2081" />
  <row Id="5594" PostId="4687" Text="Just FYI topright your Squirrel link points to python.org not http://squirrel-lang.org/" CreationDate="2010-10-22T03:06:03.703" UserId="2200" />
  <row Id="5595" PostId="4590" Text="The joke goes something like this: &quot;If all these managed-language applications are compiled down to ARM, how will Apple tell the difference from regular applications?&quot; / &quot;Easy, they'll be the ones that don't leak memory.&quot; (ba-dum-tss)" CreationDate="2010-10-22T04:00:01.977" UserId="288" />
  <row Id="5597" PostId="4696" Score="1" Text="I think the main advantage of creating games and writing articles talking about your experiences comes from the understanding that you gain. Sure you may get lucky and create a breakout hit, but in any case you'll build valuable skills. What company wouldn't hire someone that's proven they: are a self starter, get things done, understand things, and communicate effectively?" CreationDate="2010-10-22T06:06:00.347" UserId="37" />
  <row Id="5599" PostId="4692" Text="@daestwen: Forgive me, please! It's hard to tell from your synonym and your ident-icon. ;)" CreationDate="2010-10-22T08:12:02.417" UserId="490" />
  <row Id="5600" PostId="4695" Text="@Vishnu : bummzack is right. It is more visual so it is often a better fit for artists. I forgot Kismet/UDK but it is an other good choice. Still I would go 2D first (considering your background). " CreationDate="2010-10-22T09:54:59.707" UserId="950" />
  <row Id="5601" PostId="4687" Text="@jeffora, thanks. :)" CreationDate="2010-10-22T11:23:42.887" UserId="1677" />
  <row Id="5603" PostId="3813" Score="1" Text="I actually wonder whether the &quot;crushing&quot; is frustrating per se, or whether it's actually good.  25 days where you can't be attacked by the active, and thus higher level, players seems like a horrible dead zone to create.  Sure, ideally you shouldn't be able to be spam killed, but being killed by another player is much better than having no interaction at all with other players.  Just something to keep in mind." CreationDate="2010-10-22T13:30:18.100" UserId="284" />
  <row Id="5604" PostId="3941" Text="I think that your item number 4 leads to:  Remove all rewards for a  high level attacking a low level." CreationDate="2010-10-22T14:40:40.427" UserId="284" />
  <row Id="5605" PostId="4730" Text="This may be useful, but it doesn't really tackle the language/API crisis the OP is coming to." CreationDate="2010-10-22T15:04:32.710" UserId="1156" />
  <row Id="5606" PostId="3815" Score="1" Text="that doesn't really solve the problem just lets some players avoid it." CreationDate="2010-10-22T15:05:30.427" UserId="1477" />
  <row Id="5607" PostId="4719" Text="Wow, I hadn't even realized the connotation of the title when I wrote it. :)" CreationDate="2010-10-22T15:13:52.047" UserId="2289" />
  <row Id="5608" PostId="4720" Text="That's very cool.  Do you know if there is an equivalent that will work in Windows?  I don't have a good Windows machine for development." CreationDate="2010-10-22T15:15:23.787" UserId="2615" />
  <row Id="5609" PostId="4723" Text="Good point, I'll whip up a sharper-turned curve, and an &quot;ideal&quot; curve in Illustrator or Inkscape later today." CreationDate="2010-10-22T15:16:02.523" UserId="2289" />
  <row Id="5611" PostId="4723" Text="Original post edited!" CreationDate="2010-10-22T16:47:35.697" UserId="2289" />
  <row Id="5612" PostId="4731" Text="Thanks for your input, I'm checking your site out as we speak. I'm sure it will be invaluable having someone with your experience contributing here" CreationDate="2010-10-22T17:01:46.813" UserId="2632" />
  <row Id="5613" PostId="4729" Text="I must say that JMonkeyEngine does look good. I'll definitely check it out. Thanks for you input" CreationDate="2010-10-22T17:03:02.810" UserId="2632" />
  <row Id="5614" PostId="4741" Text="Ahh, that's why the sample projects have &quot;Copy of X&quot; in them.  I assumed they were just manual copies, I didn't realize XNA+VS automated that.  Very useful!  And the picture demonstrates where the option is very nicely.  Sounds like it would be best to start with an XBox project then and do a Windows copy if I'm planning for release on both from the start." CreationDate="2010-10-22T18:06:21.763" UserId="2491" />
  <row Id="5615" PostId="4737" Text=":D Thanks, but your formatting's a little broken. :p" CreationDate="2010-10-22T18:12:21.930" UserId="354" />
  <row Id="5616" PostId="4742" Text="Nice to be aware that I might run into shader or buffer problems on PC as well. I assumed that XNA was hiding most of those little details but I guess some still slip through." CreationDate="2010-10-22T18:20:28.240" UserId="2491" />
  <row Id="5618" PostId="4717" Text="Yes, Lua is pretty simple and very easy to integrate with C. In fact, that's Lua's main objective, being an embedded language. " CreationDate="2010-10-22T18:22:42.193" UserId="793" />
  <row Id="5620" PostId="4741" Text="Personaly id always start from a windows project, its easier to debug on windows and you get tools like perf hud and pix. It dosnt matter which way round you do it, but doing that way round kind of solidifies the idea of c main dev platform, but test early and often on 360." CreationDate="2010-10-22T18:42:25.027" UserId="120" />
  <row Id="5624" PostId="4720" Text="Sorry, I meant an equivalent in Linux.  I can't edit my last comment." CreationDate="2010-10-22T19:49:59.363" UserId="2615" />
  <row Id="5625" PostId="4736" Text="http://www.indeed.com/jobtrends?q=java&amp;l= and http://www.indeed.com/jobtrends?q=.net&amp;l= are pretty representative of the market demand for both.  Looks like Java is the one actually growing." CreationDate="2010-10-22T20:07:54.460" UserId="891" />
  <row Id="5626" PostId="4721" Score="4" Text="C++ is hard, damn hard, but it is easier in the long run if you try and wrap your mind around it before Java really sets it.  It's definitely harder trying to learn C++ from a Java background than to learn Java from a C++ background.  http://www.joelonsoftware.com/articles/ThePerilsofJavaSchools.html" CreationDate="2010-10-22T20:09:12.570" UserId="891" />
  <row Id="5627" PostId="4731" Text="Pointer handling isn't universal =( curse my Java up bringing." CreationDate="2010-10-22T20:11:16.777" UserId="891" />
  <row Id="5628" PostId="4731" Text="I would like to know why you think building a game in Java is tedious. Also, it seems like you are suggesting Python is less tedious. With so many great Java game centric frameworks and libraries out there it seems like a very bold statement to make. " CreationDate="2010-10-22T21:33:48.217" UserId="2345" />
  <row Id="5629" PostId="4731" Score="1" Text="For a beginning programmer, everything in Java can be more tedious.  Compare something like printf.  In python it's part of the print statement: print &quot;%s, your score is %d&quot; % (student, score).  In php, you have to cast all primitives to wrapper classes, cast those to objects, and build an anonymous object array.  I like Java. (I've taught it for years, and wrote a book about it.) However, if the goal is to get somebody going in game programming, I want a language that gets out of the way as much as possible. " CreationDate="2010-10-22T22:31:31.080" UserId="2634" />
  <row Id="5632" PostId="4736" Text="I hadn't considered the influx of Java development being brought about by the success of the Android platform.  That probably has a lot to do with the jump in related job openings in late 2008 and early 2009.  It will be interesting to see how WP7 and the availability of MonoTouch for iOS and MonoDroid for Android impact Java's mobile presence." CreationDate="2010-10-23T00:18:25.563" UserId="136" />
  <row Id="5633" PostId="4731" Text="Thank you for taking the time to comment. It has helped me understand where you are coming from. However, I am not quite sold on python being a better language for students just yet, similar to how the faculty at my University has been questioning their recent change to Python for first year students. Perhaps, the students are simply stuck on new issues. It used to be students making everything &quot;public static&quot;, now they have a hard time understanding the difference between types." CreationDate="2010-10-23T01:31:22.243" UserId="2345" />
  <row Id="5634" PostId="4747" Text="Android supports full OpenGL, but the iPhone only supports OpenGL ES.  So you'll have to restrict yourself to the ES API.  Luckily it is nearly 100% compatible with regular OpenGL (ES uses `glOrthof`, but regular uses `glOrtho`).  Both platforms support OpenAL.  I'm sure there are other libraries that well supported on both platforms." CreationDate="2010-10-23T01:50:45.970" UserId="370" />
  <row Id="5635" PostId="4754" Text="Your inputs are ambiguous.  I assume vertex means the staring position.  And end point means the ending position.  What does speed mean?  How far the object can travel in a second?  Is speed how long in time the object should take to get from start to finish?" CreationDate="2010-10-23T01:58:06.543" UserId="370" />
  <row Id="5636" PostId="4760" Score="1" Text="Thanks for the advice, I've implemented my shader using a texture atlas, I'm &quot;only&quot; getting a 109fps now, but it's a neat improvement from the 55fps I was getting. Thanks!" CreationDate="2010-10-23T02:21:43.097" UserId="2469" />
  <row Id="5637" PostId="4763" Text="It might be a little easier for us to make good suggestions if you post a screenshot of what your problem is." CreationDate="2010-10-23T04:07:49.867" UserId="2345" />
  <row Id="5638" PostId="4746" Text="Yeah, that would be great. The thing is that it is not exactly a AAA game and I don't have proper beta-testers xD To do that, I would need a good number of them" CreationDate="2010-10-23T08:27:04.790" UserId="802" />
  <row Id="5639" PostId="4765" Score="1" Text="Are you looking for engines that do this, how to manually implement it, or both?" CreationDate="2010-10-23T12:03:45.147" UserId="1156" />
  <row Id="5640" PostId="3941" Text="@Tchalvak: no. It doesn't solve the problem (they may attack anyway just for fun), and it isn't *definitely* (and quite plainly, I thought) not what I meant with point 4." CreationDate="2010-10-23T15:12:19.890" UserId="2188" />
  <row Id="5641" PostId="4728" Text="While what you say sounds good, to make it work you have to actually build your game around it. For example it's pointless to do that and then require the player to leave the city: if they *have* to leave the city, who cares if they are protected while inside? You're not solving anything if you do that." CreationDate="2010-10-23T15:18:01.517" UserId="2188" />
  <row Id="5642" PostId="3872" Text="lazy design. Actually fixing the problem is much better than this." CreationDate="2010-10-23T15:19:09.143" UserId="2188" />
  <row Id="5643" PostId="4707" Text="You want to study this http://gamebalanceconcepts.wordpress.com/2010/07/07/level-1-intro-to-game-balance/" CreationDate="2010-10-23T15:28:14.483" UserId="2188" />
  <row Id="5644" PostId="4745" Score="1" Text="I think this is the best way for now." CreationDate="2010-10-23T18:44:40.913" UserId="2708" />
  <row Id="5645" PostId="4670" Score="1" Text="I'd like to add that you'll probably want to seek out a project manager/producer with a fair amount of mobile game development experience under his/her belt. When starting a company, it's imperative that you have an expert(s) on staff that can help with strategic and development decisions, and the project management role fulfills that need perfectly." CreationDate="2010-10-23T19:08:12.980" UserId="2290" />
  <row Id="5647" PostId="4717" Text="Thanks for the reference on LuaBind, maybe digging into other binding libraries will convince me for taking Lua again" CreationDate="2010-10-23T20:16:36.500" UserId="889" />
  <row Id="5648" PostId="4763" Score="1" Text="How do you check for collision ? Is it with 2d shape vectors or you use a tile-based algorithm ?" CreationDate="2010-10-23T20:24:08.177" UserId="889" />
  <row Id="5649" PostId="4780" Score="2" Text="This is indeed a great solution. Here is an excellent article from devmaster.net which describes why this works and gives some implementation details: http://www.devmaster.net/forums/showthread.php?t=5784" CreationDate="2010-10-23T20:25:30.353" UserId="2077" />
  <row Id="5650" PostId="4759" Score="1" Text="Thanks, it was the environment mapping that I was after, thanks for the links, I did try to find stuff like this but I think I had the wrong taxonomy." CreationDate="2010-10-23T20:28:50.847" UserId="2686" />
  <row Id="5651" PostId="4780" Text="I don't know about C#, but the abs() function in most C environments will likely be faster than a branch (the ?: operator), when optimized." CreationDate="2010-10-23T20:50:35.860" UserId="744" />
  <row Id="5652" PostId="4780" Score="1" Text="I removed the Math.Abs() call because I assumed that this code might run on the Xbox 360 or Windows Phone 7. The JIT compiler  on Xbox 360 does not inline anything. A call to Math.Abs() is actually more expensive. " CreationDate="2010-10-23T21:09:39.903" UserId="2345" />
  <row Id="5653" PostId="4765" Text="I am making an engine to do this for me." CreationDate="2010-10-23T21:22:22.603" UserId="2696" />
  <row Id="5654" PostId="4767" Text="O.D.E is the same link as bullet, but I understand the idea." CreationDate="2010-10-23T21:23:45.330" UserId="2696" />
  <row Id="5655" PostId="4763" Score="1" Text="Please, post an screenshot. Or at least some ASCII art." CreationDate="2010-10-24T00:10:30.360" UserId="1581" />
  <row Id="5657" PostId="4782" Score="1" Text="Nice answer, I think music is part of keeping the player in the Flow zone, which is important. If you don't know about the Flow, I suggest you read this paper writting by Jenova Chen, this guy actually wrote a thesis on the subject. http://www.jenovachen.com/flowingames/p31-chen.pdf" CreationDate="2010-10-24T13:07:17.290" UserId="889" />
  <row Id="5659" PostId="1775" Score="1" Text="Re-design your game so that two users can't abuse it, instead of trying to stop them from doing so." CreationDate="2010-10-24T14:13:05.667" UserId="2188" />
  <row Id="5660" PostId="2516" Text="Many Android Phones have OpenGL ES 2.x support. You can use it with NDK or Android SDK. I have created a thread to list opengl 2.x extensions by devices: http://stackoverflow.com/questions/3881197/opengl-es-2-0-extensions-on-android-devices" CreationDate="2010-10-24T15:49:20.213" UserId="721" />
  <row Id="5661" PostId="4784" Score="1" Text="You also should differ from &quot;InGame&quot;-Time and &quot;TimeUntilGameEnds&quot;, MMOs are dynamically and infinite, so you want to talk about the time a user has to spent into the game to have a satisfying success" CreationDate="2010-10-24T16:01:21.130" UserId="2063" />
  <row Id="5662" PostId="4794" Text="Interesting, I had never heard of Direct2D before. It doesn't seem to be widely used - perhaps because of it being Windows 7 only." CreationDate="2010-10-24T16:27:33.210" UserId="1386" />
  <row Id="5663" PostId="4789" Text="Here is an English version of the Russian simplex noise page: http://docs.google.com/viewer?a=v&amp;q=cache:363xWad34LMJ:www.itn.liu.se/~stegu/simplexnoise/simplexnoise.pdf+simplex+noise&amp;hl=en&amp;gl=ca&amp;pid=bl&amp;srcid=ADGEESibkqdImxpGw0Ln7jDyRTX3qYbtmpNvkSKP0BQtB1yI5aMMrzymlkpdgEuYgDC-fQHDTD4gzpGcATNE8G8aUtyhNcPROEGhMHiMPbzjDrSfmyYi361dA88_cFmQpGEWesOH9_2_&amp;sig=AHIEtbRH9baL0f_KDPAtREBaD4q7r7WSdw the original pdf can be downloaded here: http://webstaff.itn.liu.se/~stegu/simplexnoise/simplexnoise.pdf" CreationDate="2010-10-24T16:39:06.787" UserId="2345" />
  <row Id="5664" PostId="4796" Score="3" Text="How is this related to game development?" CreationDate="2010-10-24T17:16:50.667" UserId="653" />
  <row Id="5666" PostId="4791" Text="Since you aren't really asking a question, this should be a community wiki." CreationDate="2010-10-24T17:51:07.283" UserId="2345" />
  <row Id="5667" PostId="4791" Score="1" Text="@Arriu Community wiki is no longer available to end users." CreationDate="2010-10-24T20:01:28.137" UserId="14" />
  <row Id="5668" PostId="4791" Score="1" Text="I do not believe that this question should have been closed. This question asks &quot;what the value of serious games are to education and work&quot;, then delves deeper by asking how they could be incorporated into primary education. To me, this seems like a very valid discussion topic." CreationDate="2010-10-24T20:02:36.527" UserId="2290" />
  <row Id="5669" PostId="4791" Score="1" Text="@Noctrine Thanks! I was not aware of this. @Ari Patrick I also agree that this is certainly a valid discussion topic." CreationDate="2010-10-24T20:35:01.727" UserId="2345" />
  <row Id="5670" PostId="4791" Text="@Ari Which is why I reopened it. " CreationDate="2010-10-24T20:45:16.097" UserId="14" />
  <row Id="5671" PostId="3969" Text="In order to answer questions 1 and 3, can you provide more information on the type(s) of video games your framework/engine (which is it?), will support? Saying you want to make an engine for &quot;educational games&quot; is like saying you want to make an engine for &quot;AAA games&quot;; Although we understand what you mean at some level, the constructs of educational and AAA games are way too broad for someone to provide sound technical advice, without additional information." CreationDate="2010-10-24T20:53:45.210" UserId="2290" />
  <row Id="5672" PostId="4791" Text="@Noctrine I sincerely appreciate that. :)&#xA;@Frédérick Imbeault Can you share a link to the article you read?" CreationDate="2010-10-24T20:57:46.880" UserId="2290" />
  <row Id="5673" PostId="4793" Score="3" Text="If speed is your number-one concern, and you do not mind sacrificing a bit of accuracy, this is the best answer." CreationDate="2010-10-24T21:07:57.813" UserId="962" />
  <row Id="5674" PostId="4754" Text="Apologies for being unclear. I will try to make it simple - I would like to make a ball move from one side of the screen (x=0) to the other side (x=480), starting from y=0, and reaching a maximum of y=320 (at halfway, x=240). I want it to do this over 2 seconds. From this information, can I determine from a formula my x and y coordinates for each frame?" CreationDate="2010-10-24T22:02:54.217" UserId="2679" />
  <row Id="5675" PostId="4758" Text="I am throwing a ball in 2D, but the ball does have acceleration in the x-direction. I want it to be thrown from one side of the screen to the other (see comment on original question). I understand how to update based on vx and vy, but am not sure how to update those values themselves." CreationDate="2010-10-24T22:04:46.367" UserId="2679" />
  <row Id="5676" PostId="2108" Text="Steam's Engine? I think you mean Valve's Source Engine. Steam is Valve's content delivery system." CreationDate="2010-10-24T22:24:52.673" UserId="962" />
  <row Id="5677" PostId="4796" Text="What exactly do you want to detect? The existence of a front camera? The amount of memory available?" CreationDate="2010-10-24T22:26:49.393" UserId="189" />
  <row Id="5678" PostId="2108" Text="@AttackingHobo Sorry, fixed it." CreationDate="2010-10-24T22:31:18.860" UserId="189" />
  <row Id="5679" PostId="4791" Text="@Noctrine I appreciate as well, I think the topic is quite correct. Moreover, I think this discussion could get great answers / thoughs from different users. @Ari Here is one of the articles : http://www.liebertonline.com/doi/abs/10.1089/cpb.2009.0013 I've read some nices articles about serious games, but I wanted to get the feel of experienced game developpers about it, I think theses games really can help the entire community on different spheres of life." CreationDate="2010-10-24T23:24:29.123" UserId="889" />
  <row Id="5680" PostId="4802" Text="Thank you for the link on Games in Education, I will surely take a look at it tonight. As for the name &quot;Serious Games&quot; I must only partially agree with you. In fact, maybe the term &quot;Serious&quot; isn't quite the word to use, but it surely is the one to use if you want everyone to understand. Is that a good reason ? Well maybe not, as Zimmerman and Salen said in their book Rules of play, the vocabulary of video games are not quite well defined for now. Finally I strongly agree with you about for balance in forms of learning." CreationDate="2010-10-24T23:35:53.823" UserId="889" />
  <row Id="5681" PostId="4805" Score="1" Text="Wow thanks for all the link, I appreciate. I'm not quite old (21) so for older video games, I don't really know serious ones. A question I am asking to myself is, concidering serious video games are already used for children education in elementary schools and seems to be a nice supplement, could they possibly get a place (or did they already) in Degree education ?" CreationDate="2010-10-24T23:45:26.757" UserId="889" />
  <row Id="5682" PostId="2124" Score="2" Text="&quot;Graphics are totally unimportant.&quot; In theory they are, but if you are presenting your AI, and your AI is slightly weaker than another persons, but visual presentation is a lot better, who do you think is going to get the job?" CreationDate="2010-10-25T00:06:07.290" UserId="962" />
  <row Id="5685" PostId="4791" Text="+1, question is good." CreationDate="2010-10-25T00:37:39.567" UserId="1677" />
  <row Id="5686" PostId="4805" Text="+1, great links" CreationDate="2010-10-25T00:38:00.643" UserId="1677" />
  <row Id="5687" PostId="4805" Score="1" Text="Personally, I have not run across any games designed specifically for degree education, but I can think of a number of practical applications: An economy simulator to study the long term impact of economic decisions. An injury/illness simulator that would allow students to practice diagnoses. I think the power of serious games in degree education is in their ability to simulate complex real-world situations in the classroom, providing students with an environment to fail safely, and tools to analyze the potential long term consequences of decisions." CreationDate="2010-10-25T00:57:01.057" UserId="2290" />
  <row Id="5688" PostId="4805" Score="1" Text="You're probably just right, using such &quot;Serious&quot; games more on the &quot;Serious Simulation&quot; way could be a good thing. It could be a great achivement to prouve Flow in such games. If there is any, university students would probably be more enthusiast for learning more complex phenomenons on different subjects. Here is a link about Flow in games if anyone wonders : http://jenovachen.com/flowingames/p31-chen.pdf" CreationDate="2010-10-25T01:40:09.680" UserId="889" />
  <row Id="5689" PostId="4796" Text="It may not be directly related to game dev, but it is needed for my game.  Yes, processor, memory... things like that" CreationDate="2010-10-25T01:54:53.020" UserId="2509" />
  <row Id="5690" PostId="3051" Score="1" Text="I have written a few Box2D tutorials based on 2.1 for Flash. Could be helpful if you get stuck with any other of the changes between the versions in future: http://blog.allanbishop.com/category/physics/box2d/" CreationDate="2010-10-25T02:07:11.843" UserId="560" />
  <row Id="5691" PostId="4794" Text="It is Vista and Windows 7 only, due to the use of Direct3D 10. And it is rather new :)" CreationDate="2010-10-25T02:11:50.033" UserId="2668" />
  <row Id="5692" PostId="4590" Text="@Andrew Russell - lol" CreationDate="2010-10-25T02:16:16.527" UserId="560" />
  <row Id="5693" PostId="4731" Text="Well, I'm actually doing that too. I teach the first year CS class in Java now, and I'm switching to Python in the Spring. I'll still teach Java, but it will be in the CS2 course. I taught game programming in Flash, Java, and Python, and of the three, found Python to be by far the easiest to teach to novice programmers. Flash was (ironically) the most difficult. Those with animation experience could not make the jump to programming." CreationDate="2010-10-25T02:18:52.923" UserId="2634" />
  <row Id="5694" PostId="4758" Score="2" Text="@Ben Williams You only need to set the vx and the vy at the start. And add gravity to the vy each frame. You also could have a friction by multiplying both the vx and vy by a number below 1(something like .95 might work depending on your frame rate). Search on google &quot;bouncing ball YourProgrammingLanguageHere&quot; and you will probably get some basic, but helpful tutorials." CreationDate="2010-10-25T02:22:18.370" UserId="962" />
  <row Id="5695" PostId="4788" Text="Is there any reason you want to use Vector Graphics?" CreationDate="2010-10-25T02:24:23.703" UserId="962" />
  <row Id="5696" PostId="4811" Score="1" Text="(Don't have enough reputation to create new tags, otherwise I'd have it tagged [commodore-64] and [assembler]" CreationDate="2010-10-25T02:29:01.577" UserId="849" />
  <row Id="5697" PostId="4811" Score="2" Text="I think that your tags are appropriate and have added them for you." CreationDate="2010-10-25T02:32:23.677" UserId="2100" />
  <row Id="5698" PostId="4792" Text="Hrm, good idea and you gave me a further idea I can use with the tiles. What I could do is stick with my tiles and then maybe for tiles that are associated with an obstacle, I could associate a list of vectors with that tile. For example:&#xA;&#xA;1. Test character bounding box coordinate (depending on direction going) and check if it intersects with any tiles associated with a collision&#xA;&#xA;2. If tile is obstacle, check if vector list is associated with tile.&#xA;&#xA;3. If it has a list, check player coords against vector list to see if collision has occured&#xA;&#xA;Thanks" CreationDate="2010-10-25T02:44:38.603" UserId="2039" />
  <row Id="5699" PostId="4695" Text="@both-above: hmmmm, I've not used graphs, but have seen some in 3ds max bounce animations" CreationDate="2010-10-25T04:19:28.140" UserId="1251" />
  <row Id="5700" PostId="4787" Text="EVE-Online used to allow you to, but required a manual INI tweak to even display the option. The option has since been removed altogether as far as I'm aware." CreationDate="2010-10-25T05:39:06.833" UserId="2749" />
  <row Id="5701" PostId="4807" Text="Angle-axis rotation?" CreationDate="2010-10-25T07:14:19.663" UserId="1386" />
  <row Id="5702" PostId="4788" Text="Yes: I like the style, they can compress better than textures and they are more flexible for animation." CreationDate="2010-10-25T07:17:37.543" UserId="1386" />
  <row Id="5703" PostId="4778" Text="Thanks! That NodeGame Shooter looks pretty interesting, I'll have to spend some time with its code. " CreationDate="2010-10-25T08:29:29.797" UserId="1868" />
  <row Id="5704" PostId="3872" Text="Not really, just different. Your solutions (which I voted up, as it happens) are not good for all games and would damage the gameplay in most MUDs which depends on large power differentials and players sharing the same area. In those games PvP was not the primary objective however." CreationDate="2010-10-25T10:29:21.263" UserId="1101" />
  <row Id="5705" PostId="4782" Text="I know as a player, the first thing I always do on a phone game is turn off any music.  But maybe I'm in the minority." CreationDate="2010-10-25T12:12:34.817" UserId="2760" />
  <row Id="5706" PostId="4782" Text="@Frédérick Great point, thanks for the link. @BBlake It definitely varies from player to player, and often depends on *where* a person is playing.  Someone playing mobile games in their cubicle at work will probably mute their device ;)." CreationDate="2010-10-25T12:41:25.707" UserId="136" />
  <row Id="5707" PostId="4733" Text="Url actually is http://scratch.mit.edu/" CreationDate="2010-10-25T13:07:39.163" UserId="2073" />
  <row Id="5708" PostId="3010" Score="1" Text="+1 pretty interesting information" CreationDate="2010-10-25T13:15:29.893" UserId="1251" />
  <row Id="5709" PostId="4809" Text="There **is** an absolute-to-local coordinates convertion method, please look at my second and third example of code - same result." CreationDate="2010-10-25T13:25:33.063" UserId="2734" />
  <row Id="5710" PostId="4782" Text="Maibe but you can think of well known Iphone games using music like Tap Tap Revolution. If this game works, it means players probably like music on their portable device ;)" CreationDate="2010-10-25T13:32:01.177" UserId="889" />
  <row Id="5711" PostId="4818" Text="If you compare video games to other industry, they are quite young. Maybe in a couple of decades, when project managers, school teachers, politicians will be replaced by younger ones who known video games from their youth, this vision will be more likely to change." CreationDate="2010-10-25T13:40:15.703" UserId="889" />
  <row Id="5712" PostId="4747" Score="3" Text="Android supports OpenGL ES 1.x and 2.x as iPhone. OpenAL is not available on Android." CreationDate="2010-10-25T14:02:03.587" UserId="721" />
  <row Id="5713" PostId="4806" Text="Do you have a better reason than doesn't feel right? That's not a very substantial reason to consider a re-design." CreationDate="2010-10-25T14:18:36.503" UserId="1386" />
  <row Id="5714" PostId="4825" Text="I also suggest your first point in my solution, so +1!" CreationDate="2010-10-25T14:34:12.677" UserId="1386" />
  <row Id="5715" PostId="4752" Score="1" Text="Great answer, just what I was thinking, however, you're wrong about it not working for translucent strokes if you allow writing the zbuffer in one pass, then doing the colour in the second." CreationDate="2010-10-25T14:41:22.190" UserId="1742" />
  <row Id="5716" PostId="4811" Score="1" Text="What is the point? (not to be snarky, I'm genuinely curious)." CreationDate="2010-10-25T15:36:30.140" UserId="1198" />
  <row Id="5717" PostId="4811" Score="2" Text="@Nate Part Nostalgia, but also an interesting challenge: With a machine that's limited (but whose limitations are well known), how far can one push it with the knowledge, tools and resources we have available today?" CreationDate="2010-10-25T16:24:31.970" UserId="849" />
  <row Id="5718" PostId="1410" Text="But that's what his question was really about, object interaction." CreationDate="2010-10-25T16:44:16.073" UserId="1386" />
  <row Id="5719" PostId="4794" Score="1" Text="Note that several high-profile game programmers consider Direct2D awful - http://braid-game.com/news/?p=455 (which also links to a podcast) and http://braid-game.com/news/?p=466." CreationDate="2010-10-25T18:01:16.503" UserId="744" />
  <row Id="5720" PostId="4808" Text="+1, mostly for the first paragraph" CreationDate="2010-10-25T18:16:48.317" UserId="2188" />
  <row Id="5721" PostId="4809" Text="My mistake. All I can imagine is that the methods you're using don't do what you think they're supposed to do, or your coordinates are at some point being fetched or used in the wrong way. I would run some simple tests, e.g. put your character at (0,0), try to move it to (1, 1) and see what happens to its coordinates, and other simple operations like that (not all from the origin of course). Simple, small numbers ought to make the nature of the problem easier to determine." CreationDate="2010-10-25T18:20:30.623" UserId="2698" />
  <row Id="5723" PostId="3755" Text="Also when they say cross-platform, they really mean it. The only thing I know of that runs in more places is Unity." CreationDate="2010-10-25T18:55:12.693" UserId="395" />
  <row Id="5724" PostId="4794" Text="I think the [managed wrapper](http://code.msdn.microsoft.com/WindowsAPICodePack) for Direct2D tends to be much easier to work with than the native library.  And most of the criticisms I've read of Direct2D have cited examples where the same ends can be accomplished relatively easily in Direct3D.  Sure, it's overkill to draw a rectangle, but it works well for curves and shapes with nontrivial texturing and/or stroking.  Besides, D2D wasn't aimed primarily at game developers--it was intended to provide a richer, more performant alternative to GDI.  But it does interoperate well with Direct3D." CreationDate="2010-10-25T18:57:28.953" UserId="136" />
  <row Id="5725" PostId="4798" Text="DirectDraw has been deprecated for some time now, and as far as I know, it has no native capabilities for rendering vector-based graphics.  My recollection is that it relied entirely on textures and blitting.  I believe GDI+ is unaccelerated and GDI, while accelerated, is rather primitive.  It would be better to go with a library like Cairo, which supports multiple renderers, at least one of which supports GPU-accelerated rendering.  Direct2D is probably the best choice for Vista and 7." CreationDate="2010-10-25T19:04:03.610" UserId="136" />
  <row Id="5727" PostId="3754" Text="SFML Audio is built on OpenAL.  It thoroughly misuses sound sources.  Each loaded sound needs a sound buffer.  Each playing sound needs a sound source.  SFML mistaken linked the two concepts together, every loaded sound owns a sound source as well.  The is particularly a problem when using hardware accelerated sound drivers as they usually only support 16-32 sources.  That means your game can only every have ~16 sounds loaded at any given time.  The author is aware of the short coming and suggest disabling hardware sound mixing to fix the limitation." CreationDate="2010-10-25T19:14:36.233" UserId="370" />
  <row Id="5728" PostId="3791" Score="1" Text="Ctrl-F &quot;minecraft&quot; there it is..." CreationDate="2010-10-25T23:15:43.793" UserId="154" />
  <row Id="5729" PostId="4715" Text="Well I do game coding work with an artist with pretty similar conditions, we both have other full time obligations, some weeks are super productive, other times its months between anything significant happening, sometimes its one-sided. You might be able to find a similar setup ;)." CreationDate="2010-10-25T23:28:08.917" UserId="1413" />
  <row Id="5730" PostId="4737" Text="Thanks, Tetrad. :)" CreationDate="2010-10-26T01:35:26.637" UserId="354" />
  <row Id="5731" PostId="4811" Score="1" Text="Right on, best of luck!" CreationDate="2010-10-26T04:12:20.267" UserId="1198" />
  <row Id="5732" PostId="4806" Text="Well, the reason would be a lack of cohesion if the factory was not only responsible for creating objects, but defining event handlers for any random event that I might need to handle on an entity." CreationDate="2010-10-26T04:12:42.983" UserId="2735" />
  <row Id="5733" PostId="4825" Text="Thanks, I considered this possibility, and though some part of me felt like I shouldn't have either hold a reference to one another, I'd feel much better having a component hold a reference to its associated entity than the other way around.  " CreationDate="2010-10-26T04:25:25.627" UserId="2735" />
  <row Id="5734" PostId="4758" Score="3" Text="Actually, if you know that your object is following a parabolic trajectory, it's much, much better to implement it as a curve function, rather than discrete physical steps. Yes, it can be 'harder' to code initially, but the payoff is that the movement of your object becomes decoupled from frame-rate concerns." CreationDate="2010-10-26T06:43:00.947" UserId="211" />
  <row Id="5735" PostId="4801" Text="It isn't really a visualization, but someone once put it to me as &quot;complex numbers : 2 :: quaternions : 4&quot;" CreationDate="2010-10-26T06:43:00.963" UserId="395" />
  <row Id="5736" PostId="2360" Score="2" Text="I'm laughing just reading this. That must have been hilarious and disturbing at the same time." CreationDate="2010-10-26T07:42:01.683" UserId="1386" />
  <row Id="5737" PostId="4717" Text="I'd suggest only running your scripts in the main thread however, and provide a pool allocator for it if performance is a concern." CreationDate="2010-10-26T10:14:29.437" UserId="1101" />
  <row Id="5738" PostId="4844" Text="Could you provide a link for that quote? We find that the device is lost when you lock the desktop, also." CreationDate="2010-10-26T10:37:21.810" UserId="1101" />
  <row Id="5739" PostId="4844" Text="I've added the link for the quote." CreationDate="2010-10-26T11:18:47.280" UserId="1386" />
  <row Id="5740" PostId="4846" Score="2" Text="I agreed this have a particular educational advantage. Still it requires some knowledge and skills in programming languages theory (which a lot of people THINK they have) and some knowledge in theory of Computing. If this answers seams appealing to someone, I would suggest theses two books : http://www.amazon.com/gp/product/0136073476/ref=oss_product and http://www.amazon.com/gp/product/0534950973/ref=oss_product" CreationDate="2010-10-26T11:35:39.827" UserId="889" />
  <row Id="5741" PostId="4844" Score="1" Text="the change in DirectX behavior is a side effect of the change in the driver model. That is, it requires WDDM. SO it's Vista/Win7 only." CreationDate="2010-10-26T11:52:14.260" UserId="1374" />
  <row Id="5742" PostId="4840" Score="1" Text="Great question! Hopefully we get some insightful answers, as usual!" CreationDate="2010-10-26T12:05:03.453" />
  <row Id="5743" PostId="4793" Text="I don't know about &quot;best&quot; - As shown in another answer, you can get another very good approximation in five ops + abs (the speed of which depends on your arch / compiler, but is often branchless). If the lookup table is not in cache, it's going to be much slower." CreationDate="2010-10-26T12:31:24.880" UserId="744" />
  <row Id="5744" PostId="4846" Text="You'd be surprised how far you can go with no real knowledge of those things however. Lots of MUDs have a scripting language which is little more than a list of statements with some hacks to enable conditionals, and yet they can achieve a lot with that alone." CreationDate="2010-10-26T13:17:15.747" UserId="1101" />
  <row Id="5745" PostId="4842" Text="your notation is a bit confusing. your `f_x` uses `f_y` s acceleration `a` as its half velocity? You should make that `x(t) = x0 + vx0*t` and `y(t) = y0 + vy0*t + .5*ay*t*t`" CreationDate="2010-10-26T13:18:26.900" UserId="252" />
  <row Id="5747" PostId="4758" Score="1" Text="I second @Blair, unless you separate the physics-framerate from the video framerate this may cause horrible effects like clipping errors" CreationDate="2010-10-26T13:23:32.117" UserId="252" />
  <row Id="5748" PostId="4842" Text="I purposely didn't use the euler motion formulas.  `a` and `t` were just poorly chosen names.  You should notice that there isn't a velocity component in the formulas.  Euler motion and parametric parabolas are not the same thing, but they are very similar as ballistic flight traces a parabolic path." CreationDate="2010-10-26T14:23:46.880" UserId="370" />
  <row Id="5749" PostId="4848" Text="V8 might be fun to embed, yeah. I may try and do a demo of that. Thanks for the idea :)" CreationDate="2010-10-26T15:02:48.610" UserId="1974" />
  <row Id="5750" PostId="4845" Score="2" Text="You're correct, the reason OpenGL doesn't suffer (as much) from this is because the driver keeps a copy of everything for you on Windows. This can cause GL apps to use more RAM than DX apps, but a well-behaved DX app should be caching everything in case it needs to restore its context data anyway, so it amounts to who's responsibility that caching is." CreationDate="2010-10-26T15:08:20.770" UserId="1974" />
  <row Id="5751" PostId="4852" Text="Is this 3D or 2D?" CreationDate="2010-10-26T16:09:40.297" UserId="14" />
  <row Id="5752" PostId="4852" Text="2d for now but 3d options would be useful to know for future reference." CreationDate="2010-10-26T16:13:48.130" UserId="1477" />
  <row Id="5755" PostId="4855" Text="Currently - i can't. That's what this question is about: My shapes are just a bunch of vertices ATM. :-(" CreationDate="2010-10-26T16:43:54.270" UserId="2649" />
  <row Id="5756" PostId="4856" Text="I was thinking over the example and it isn't the best of examples. Let's say Space Invaders then. I will update the question." CreationDate="2010-10-26T16:56:40.107" UserId="2132" />
  <row Id="5757" PostId="4856" Score="2" Text="The movement of Space Invaders is also totally deterministic, though. You just need to record when each shot/hit pair occurs, simulate movement up to that time (which is a simple linear equation), and make sure it was actually a hit." CreationDate="2010-10-26T17:00:45.490" UserId="744" />
  <row Id="5758" PostId="4856" Text="I finally got what you mean after thinking it through. Thanks" CreationDate="2010-10-26T17:14:06.113" UserId="2132" />
  <row Id="5760" PostId="4857" Text="The normal check seems like a great idea to me. Thanks for posting that." CreationDate="2010-10-26T18:29:27.500" UserId="2100" />
  <row Id="5761" PostId="4863" Text="can you give a couple of examples of what rules your ideal system would allow?" CreationDate="2010-10-26T18:58:54.670" UserId="1477" />
  <row Id="5762" PostId="4787" Text="Nice answer.  I would combine some of the strategies you listed.  Do not store the password locally; instead, store a token returned by the server on successful authentication.  A good token should have a built-in expiration and should be bound to both the user name and the machine (using either method you mentioned).  You could tighten security even further by binding the token to the local Windows account.  Doing so could help guard against attackers with access to the machine but not the player's Windows account.  However, a knowledgeable attacker could still get around this." CreationDate="2010-10-26T18:59:01.250" UserId="136" />
  <row Id="5763" PostId="4863" Text="Absolutly ! For exemple, the player could take an object an make it interact with another one (ex: dropping it on a surface of combining objects). He could also &quot;Activate&quot; an object by clicking on it." CreationDate="2010-10-26T19:02:08.760" UserId="889" />
  <row Id="5764" PostId="4865" Text="This won't work if you want to add features such as double jumps, or wall jumps I think ?" CreationDate="2010-10-26T19:32:55.583" UserId="889" />
  <row Id="5765" PostId="4860" Text="Is there a reason to use const ints instead of an enum? In the degenerate case of a single flag or named group the enumerated type is more readable, and you get additional type-checking abilities in most compilers." CreationDate="2010-10-26T19:34:25.617" UserId="744" />
  <row Id="5766" PostId="4860" Text="Well yes, the enum can't (I think) use binary operators to create new custom groups. The reason why I made theses const is that I use a Config class with public static members for readability reasons, keeping security of config parameters." CreationDate="2010-10-26T19:41:40.673" UserId="889" />
  <row Id="5767" PostId="4860" Text="It can. Enumeration &quot;rvalues&quot; can be bitwise operations on other constant values (I think it can be any constant expression actually, but I'm too lazy to check the standard). Non-static values are achieved in exactly the same way as your example, but are more accurately typed. I have no idea what you mean by &quot;security&quot;, but exactly the same syntax without the overhead associated with a class can be achieved with a namespace." CreationDate="2010-10-26T19:44:43.840" UserId="744" />
  <row Id="5768" PostId="4860" Text="I updated your code examples to use an enumerated type." CreationDate="2010-10-26T19:55:21.300" UserId="744" />
  <row Id="5769" PostId="4865" Text="I don't believe the OP mentioned double jumps or wall jumps, did he?" CreationDate="2010-10-26T20:10:10.457" UserId="1232" />
  <row Id="5770" PostId="4865" Text="I've revised code to show how to abstract the vector to your foot from character centre. If you animate this, and feet end up sideways and hit a wall, you'll be able to support wall jump. " CreationDate="2010-10-26T20:21:43.237" UserId="1232" />
  <row Id="5771" PostId="4865" Text="This is basically a less flexible way of checking the collision normal. (Less flexible because you can trivially distinguish a wall jump from a floor jump from a ceiling jump just by checking the normal's direction.)" CreationDate="2010-10-26T20:31:36.600" UserId="744" />
  <row Id="5772" PostId="4865" Text="@Joe: Hardly. testLineAgainstWorld could easily return surface information for that query (contact normal, contact point and surface attribute flags). So really there's nothing to stop you from using this technique in conjunction with what others have mentioned, including checking the normal direction." CreationDate="2010-10-26T20:46:46.467" UserId="1232" />
  <row Id="5773" PostId="4857" Text="+1 for normal checking.  THis ensures that a floor can seamlessly transition into a wall without causing any issues." CreationDate="2010-10-26T22:04:03.307" UserId="2595" />
  <row Id="5774" PostId="4845" Text="That's true (about OpenGL)." CreationDate="2010-10-26T22:13:40.193" UserId="1677" />
  <row Id="5775" PostId="4868" Text="The same as in any other media (literature, movie, song etc.)" CreationDate="2010-10-26T22:17:39.393" UserId="1677" />
  <row Id="5776" PostId="4868" Score="3" Text="In which country are you?" CreationDate="2010-10-26T22:40:07.050" UserId="450" />
  <row Id="5777" PostId="4860" Text="Maybe it does make thinks easier to read. I approuve the changes you made, the method I used was correct but I had not adjusted the code for the explaination enouph, thank you for the corrections. For the namespace, you are quite right, but this is not true for all languages (Scripting languages for exemple). The &quot;Security&quot; is that my config options are static so they can't be modified but using an enum prevent this as well." CreationDate="2010-10-26T22:56:53.273" UserId="889" />
  <row Id="5778" PostId="4867" Text="Your answer is well explained, I like the callback method of doing, but I would like if you can answer this; The activations are made by cliking an object, as well as interactions. The kind of action depends on the &quot;PlayerHand&quot; object's current state. Would this cause a problem ?" CreationDate="2010-10-26T23:13:31.827" UserId="889" />
  <row Id="5779" PostId="4869" Text="I Can't use prolog, the project already is under a specific engine so I'm limited" CreationDate="2010-10-26T23:14:16.040" UserId="889" />
  <row Id="5780" PostId="4871" Text="Benefiting meaning being a commercial program? Also, how does Apples to Apples (a card game) use names-- do they have some sort of copyright disclaimer or do they pay to license the names they use?" CreationDate="2010-10-26T23:38:22.710" UserId="2817" />
  <row Id="5781" PostId="4860" Text="The UnrealEngine uses Physics Types for this, and while similar, don't just cover the details of collision but the actual physics behind it as well.  For example, PHYS_Falling means gravity is pushing you downwards.  PHYS_Spider is a special walking type for walking on walls and such." CreationDate="2010-10-27T01:01:22.297" UserId="631" />
  <row Id="5782" PostId="3969" Text="The type of game is still undecided, but it has to be a bit narrow because the games should be created/customized by school teachers. I think there is no way around creating a game creation tool, but I'm open to new ideas. I was considering creating a specialized game language at one point, but I don't know how much sense that would make for a restricted, easy-to-use environment." CreationDate="2010-10-27T01:19:19.330" UserId="2205" />
  <row Id="5783" PostId="4871" Score="1" Text="Ultimately you would need to talk to a lawyer to get a 100% correct answer. From what I can tell, as long as you only use a name in a statistics/news kinda way (so fantasy team comps, trivial pursuit) then you should be safe -although that's not to say someone might not try to sue you http://www.cbsnews.com/stories/2006/08/07/eveningnews/main1872987.shtml and http://news.cnet.com/8301-1023_3-10256918-93.html are some cases. Certainly seems a grey area. I think if it is a commercial program then the chances of getting sued increases greatly." CreationDate="2010-10-27T01:51:30.923" UserId="560" />
  <row Id="5784" PostId="4871" Text="...continued. So if a card game asked something like &quot;Who was the president of the United States during 2002&quot; and the card had an answer of &quot;George Bush&quot; then that is fine because that knowledge is in the public domain. But if you created a game where you play as the character George Bush then you could get yourself into trouble whether the game was free or not." CreationDate="2010-10-27T01:55:15.473" UserId="560" />
  <row Id="5785" PostId="4871" Score="1" Text="@Alla  - IIRC (though IANAL), political figures cannot claim rights to their likeness used for commercial purposes, so long as those purposes do not entail libel" CreationDate="2010-10-27T03:40:17.520" UserId="1067" />
  <row Id="5786" PostId="4871" Score="2" Text="@warren - it seems to depend (IANAL either). After doing more research into it, it seem parodies are fine in the US (which is why South Park is not sued), however there is a fine line between a individual’s publicity rights with the First Amendment. Depending on the usage, political figures can claim rights to their likeness being used for commercial purposes. Two good articles I came across are http://dev-warhol.matmarquis.com/content/privacy-and-publicity-basics and http://citmedialaw.org/legal-guide/using-name-or-likeness-another" CreationDate="2010-10-27T04:24:48.343" UserId="560" />
  <row Id="5787" PostId="4872" Text="I think that pretty much every MMO starts out with off-the-shelf technologies and then customized the hell out of it once they grow to a certain size and start to really specialize their tools. Stackless I/O in EVE Online is a fantastic example: http://www.eveonline.com/devblog.asp?a=blog&amp;bid=584" CreationDate="2010-10-27T06:32:20.767" UserId="849" />
  <row Id="5790" PostId="4878" Text="Yes, this is not really a 3D game. I just thought it will be easier to create 3D model (and animations) once and then pre-render them as I see fit. I had very positive experience with pre-rendering 2D vector movie clips. However, I did that on client side during startup. And I have a feeling that I won't be able to do that with 3D. Will it make sense (or is it even possible) to use 3D engine only for models and draw environment as tiled bitmaps, for example?" CreationDate="2010-10-27T06:43:44.327" UserId="2821" />
  <row Id="5791" PostId="4839" Text="What is the platform? OpenGL/DirectX or something else?" CreationDate="2010-10-27T06:55:01.910" UserId="1024" />
  <row Id="5792" PostId="4857" Text="+1 Definitely check the collision-normal. Having different types of world-geometry is fine and allows for a more flexible level design, but it doesn't solve you primary issue. A &quot;wall&quot; might also be of type &quot;ground&quot;, depending if you're running into it or standing on it. That's where the collision-normal will help." CreationDate="2010-10-27T07:21:00.990" UserId="20" />
  <row Id="5793" PostId="4857" Text="I find the normal solution very nice and would solve my issue. Even the other high-rated answer is nice and such - but this answers my question better. Thank your wkerslake!" CreationDate="2010-10-27T07:32:54.263" UserId="2649" />
  <row Id="5794" PostId="4839" Score="1" Text="Well this is mostly a general question of how to prepare 3d avatars for customizables most likely clothes like pants and long sleeves as those are the ones that are gonna be affected by animations most of the time due to being near the joints." CreationDate="2010-10-27T07:45:10.580" UserId="919" />
  <row Id="5795" PostId="4842" Text="Thanks! This is just what I was after." CreationDate="2010-10-27T08:03:37.890" UserId="2679" />
  <row Id="5796" PostId="4878" Text="I think it will be much easier to pre-render (unless you are a vgood animator) but will come at a cost of filesize and less flexibility at code time since they are bitmaps (although pre rendering will be easier to make changes). Choice is up to you :)" CreationDate="2010-10-27T08:28:03.460" UserId="560" />
  <row Id="5797" PostId="4878" Text="That's what I thought, thanks :-)" CreationDate="2010-10-27T08:52:43.887" UserId="2821" />
  <row Id="5803" PostId="294" Text="I use TG classic with much success. " CreationDate="2010-10-27T10:42:13.927" UserId="678" />
  <row Id="5804" PostId="4846" Text="Been there, done that.  Learned a *lot* about parsing, compiler design, bytecode machines, all that stuff.  Next time I'll probably use Lua and appreciate it all the more. :)" CreationDate="2010-10-27T11:04:40.757" UserId="2361" />
  <row Id="5805" PostId="4868" Score="2" Text="-1, this is not the legal advice stack exchange, nor is this question game specific." CreationDate="2010-10-27T11:57:42.043" UserId="744" />
  <row Id="5806" PostId="803" Score="1" Text="Check out *Chip's Challenge* (old Windows game) for some fantastic ice-slide levels." CreationDate="2010-10-27T12:21:01.480" UserId="2831" />
  <row Id="5807" PostId="4757" Text="What hardware do you have? Four texture samples shouldn't be a problem on any new hardware." CreationDate="2010-10-27T13:20:43.490" UserId="501" />
  <row Id="5808" PostId="4874" Text="I like your method, I love books and got plenty for a student but unfortunately I don't have &quot;Effective C++&quot; serie yet (It's in my &quot;To Buy&quot; list). I don't know about &quot;Modern C++ design&quot; but I will take a look a it, thank you for the suggestion. Concerning your exemples, I think that a mix of the two could maybe suit my needs just fine. I will try to take the second exemple, but send it another object that could be NULL so it can be generic enouph for every possible actions in the game." CreationDate="2010-10-27T13:50:26.817" UserId="889" />
  <row Id="5809" PostId="4884" Text="I don't want to write for OpenGL ES. I didn't even mention something about iPhones. Objective-C is a platform-indepenent language. Sorry. (:" CreationDate="2010-10-27T13:53:58.940" UserId="2566" />
  <row Id="5810" PostId="4884" Text="Sorry! I forgot, I always associate Objective-C with iPhone. Does the forum thread help? If not I can just delete my answer." CreationDate="2010-10-27T13:56:20.980" UserId="189" />
  <row Id="5811" PostId="4865" Score="2" Text="Never call a variable `char`, not even in pseudo-code." CreationDate="2010-10-27T13:59:09.313" UserId="2566" />
  <row Id="5812" PostId="4868" Text="Just use names like Haris Pilton." CreationDate="2010-10-27T15:11:56.137" />
  <row Id="5813" PostId="4733" Text="Yes, thank you Sven..." CreationDate="2010-10-27T15:22:22.950" UserId="2634" />
  <row Id="5814" PostId="4798" Text="My bad, I thought GDI+ was accelerated! I guess Direct2D would be the best choice then as you say." CreationDate="2010-10-27T16:20:33.170" UserId="2469" />
  <row Id="5815" PostId="4836" Text="Yep the textures have mipmaps, I exported them as a *.dds from the DirectX texture tool.&#xA;But how do they use textures in commercial games where there are loads of high def textures all over the place ? I'm just sampling 1 texture atlas and getting a frame rate of 109 fps while rendering a terrain, all on the gpu." CreationDate="2010-10-27T16:21:30.643" UserId="2469" />
  <row Id="5816" PostId="4757" Text="I have a Radeon X1950, yeah it's a couple years old, if not more. I'm guessing it's maybe not the best hardware. What do you think ?" CreationDate="2010-10-27T16:26:23.977" UserId="2469" />
  <row Id="5817" PostId="4872" Text="Do you mean TCP calls to the server? HTTP(HyperText Transfer Protocol) is used by web servers and browsers for web pages and has nothing to do with MMOs unless you mean a browser based game like urbandead." CreationDate="2010-10-27T16:37:51.170" UserId="2447" />
  <row Id="5818" PostId="4884" Text="Renaming to `.mm` helped. Thanks =D" CreationDate="2010-10-27T16:42:03.777" UserId="2566" />
  <row Id="5819" PostId="4888" Text="I think it highly depends on your needs, if you never need to access a specific element and just need to read all of them and you add and remove elements frequently, the list is a better solution." CreationDate="2010-10-27T16:48:16.557" UserId="889" />
  <row Id="5820" PostId="4889" Text="Well I might have also put C in it, but there aren't such containers in C, but that's something to think about: is there some STL-like tibrary for C ?" CreationDate="2010-10-27T16:48:21.033" UserId="1829" />
  <row Id="5821" PostId="4888" Text="Thanks, that gives me some ammo to shoot on my classmates..." CreationDate="2010-10-27T16:49:19.597" UserId="1829" />
  <row Id="5822" PostId="4877" Text="Dalin, Those are great articles. I will read them all." CreationDate="2010-10-27T17:08:57.650" />
  <row Id="5823" PostId="4872" Text="Michael Stum, Is Stackless I/O made with Stackless Python?" CreationDate="2010-10-27T17:09:42.267" />
  <row Id="5824" PostId="3755" Text="I've used FMod in several iPhone projects and didn't find it particularly buggy as long as I stuck to the low level API. FMod Designer of course is a different beast. I also found the forums pretty good and the staff there very supportive. I heard the console versions of FMod are less stable (and far more expensive) than PC/Mac/iPhone but don't have experience with those." CreationDate="2010-10-27T17:13:48.130" UserId="908" />
  <row Id="5825" PostId="4881" Text="coderanger so when you say 'the clients are highly stateful' you mean that the client app is storing all the data there and not always sending requests to the server? also, how does one learn about developing custom servers and custom protocols? " CreationDate="2010-10-27T17:20:23.563" />
  <row Id="5826" PostId="4877" Text="Good to hear.  Unfortunately I couldn't find anything that just had a list of what they used.  Developer journals are always interesting though, IMO :)" CreationDate="2010-10-27T17:27:29.907" UserId="631" />
  <row Id="5827" PostId="4888" Score="5" Text="@Frédérick: That is the standard C++ wisdom, but it's also almost always wrong. Vectors, especially when dealing with vectors of pointers (which you almost always are for games), are extremely fast to remove stuff from the middle of - it is linear time, but it's a very very small overhead per item. It's also _much_ faster to iterate sequentially over a vector." CreationDate="2010-10-27T17:59:27.930" UserId="744" />
  <row Id="5829" PostId="4893" Score="2" Text="That graph really needs to start with a &quot;Are you storing pointers and less than a thousand? No -&gt; vector&quot; node." CreationDate="2010-10-27T18:02:02.857" UserId="744" />
  <row Id="5830" PostId="4890" Text="+1 for being the only person to mention deques - you get the contiguous memory and lookup speed benefits of vectors, with fast insert/remove at both ends." CreationDate="2010-10-27T18:04:20.280" UserId="744" />
  <row Id="5833" PostId="4889" Text="I've used glib (http://library.gnome.org/devel/glib/) in the past, which implements a number of standard data structures for C. I hated it because it's usually too verbose and desperately wants to be C++, but it's mature and stable." CreationDate="2010-10-27T18:09:17.093" UserId="744" />
  <row Id="5835" PostId="4896" Score="2" Text="I am frequently asked to install it *again* when installing new PC games.  Different versions perhaps?" CreationDate="2010-10-27T18:12:56.767" UserId="2150" />
  <row Id="5838" PostId="4896" Score="1" Text="Maybe it's just badly written installers that don't check for existing version." CreationDate="2010-10-27T18:38:21.610" UserId="2821" />
  <row Id="5842" PostId="4872" Text="@Adam no idea if these two are related or not." CreationDate="2010-10-27T18:54:28.620" UserId="849" />
  <row Id="5843" PostId="4893" Text="Yes maybe you are right, I did not consider the type stored it should also be analysed." CreationDate="2010-10-27T18:56:38.313" UserId="889" />
  <row Id="5846" PostId="4888" Text="I can't say you are wrong, in fact I think it's right but still I don't think this only reason should swipe away lists definitely. Yes games do use a lot of vector pointers, but it can use containers on objects. For exemple a MapReader class that read each chunck of a binary map and store them in a vector. What if the map is loaded in an editor and the chunks are always modified, can't the list be a better choice ? I'm still a student, I worked on some commercialised games, but I have a lot to learn so tell me if I'm wrong, trying to answer questions is a nice way to learn myself :)" CreationDate="2010-10-27T19:03:30.363" UserId="889" />
  <row Id="5849" PostId="4888" Text="I'm not sure what kind of structure you're getting at exactly - this kind of optimization requires concrete examples to say anything definitively. For example, my first reaction to your use case would be an unordered set, which allows equally fast insertion, deletion, and lookup; in my experience sets are great for objects in editors. But as editors have much laxer real-time performance requirements - e.g. it's fine if responding to a &quot;Delete&quot; button press takes 1/20th of a second or takes a 1/2th of a second 10% of the time - this level of optimization also rarely applies to them. " CreationDate="2010-10-27T19:49:42.117" UserId="744" />
  <row Id="5850" PostId="4888" Score="1" Text="@Frédérick Imbeault Modified isn't much of a problem it is Add\Remove that causes problems. From add\removed point to the end of the vector is copied to keep the vector contiguous.  If element order doesn't matter you can swap the deleted element with the last element then pop that for delete and add to the end for add." CreationDate="2010-10-27T20:41:50.120" UserId="2447" />
  <row Id="5851" PostId="768" Score="1" Text="As a related note, small goals are also good because it lets you create a feedback cycle with yourself. Code a little, debug a little, feel good to see your game doing a little bit more cool stuff. The worst parts of any development are the big things that take a long time to finish, because you risk losing that joy of accomplishment while you work on it." CreationDate="2010-10-27T20:59:10.057" UserId="2491" />
  <row Id="5852" PostId="4888" Text="I just came through a problem helping a student in his work and reminds me of a dangerous use of vectors. Imagine you have a vector of objects somewhere and other vectors of pointers, pointing on objects of the &quot;Big&quot; one. A student did this to create a sport simulation. He had a pool of players that could be transfered from teams, so teams pointed on players they had. The problem is, when you add objects to the big vector, it can reserve another array and copy elements. When that arrives... all pointers become bad. Maybe it's not quite well to do this, but it can bring errors hard to debug..." CreationDate="2010-10-27T21:29:14.640" UserId="889" />
  <row Id="5853" PostId="4871" Text="Very interesting... For facts I can understand why it is legal, but what about opinion oriented items? The same? ie. &quot;Which is your favorite celebrity?&quot; with multiple cards that have celebrity names on them." CreationDate="2010-10-27T21:41:57.050" UserId="2817" />
  <row Id="5854" PostId="4904" Score="1" Text="Calling mrdoob's 3D engine a &quot;game engine&quot; is a bit far fetched. AFAIK the engine is still in quite an experimental stage and wasn't used in any game so far." CreationDate="2010-10-27T21:53:25.277" UserId="20" />
  <row Id="5855" PostId="4884" Text="Well great! Glad I could help you then." CreationDate="2010-10-27T22:06:25.823" UserId="189" />
  <row Id="5856" PostId="4898" Score="1" Text="You should be the first to write one! :)" CreationDate="2010-10-27T22:07:26.290" UserId="189" />
  <row Id="5857" PostId="4749" Text="Ah, based on the great Falling Sand game! ( http://www.google.com/search?q=falling+sand )" CreationDate="2010-10-27T22:15:39.230" UserId="189" />
  <row Id="5858" PostId="4769" Score="11" Text="Wow, blue on red, are you sure the site is only 8 years old? I HIGHLY recommend a redesign, as I literally can't look at that site for more than a few seconds." CreationDate="2010-10-27T22:19:52.423" UserId="189" />
  <row Id="5859" PostId="4888" Score="3" Text="Well sure, taking the address of an element in a vector and storing that off isn't safe.  But generally speaking you hardly ever do that, instead preferring to have a vector of pointers of elements and copying the pointer around (or something similar)." CreationDate="2010-10-27T22:48:06.470" UserId="51" />
  <row Id="5860" PostId="4881" Text="Yes, to reduce network traffic the client caches a lot of information locally (unlike in a web game where usually everything comes directly from the server). The server is still authoritative though, to prevent cheating. As for learning about how to develop this kind of thing. I would look for a book on &quot;network programming&quot;. There are a lot of tools out there that can help though, Twisted, Protocol Buffers, etc etc. A lot of depends on what language and frameworks you are most comfortable in." CreationDate="2010-10-27T23:21:06.213" UserId="395" />
  <row Id="5861" PostId="4903" Score="1" Text="You might want to add what systems you are targeting (PC, 360, Phone7) since that has a big impact on what libraries you can use." CreationDate="2010-10-27T23:23:09.413" UserId="395" />
  <row Id="5862" PostId="4868" Score="1" Text="@Joe Wreschnig - It is an important consideration when designing a game, which to me makes it game development specific question, even though no one here will be qualified to give a professional legal answer. At the very least it raises the importance and potential implications of using names in a game." CreationDate="2010-10-27T23:24:52.363" UserId="560" />
  <row Id="5863" PostId="4871" Score="1" Text="I would say as long as it is up to the user, that is, they are free to decide, then I see no problem with that. However, if it was worded to imply something, and what you were implying was considered defamatory, then you could get in trouble for that." CreationDate="2010-10-27T23:31:44.377" UserId="560" />
  <row Id="5864" PostId="4896" Text="Games use different version of MSVS. For example many games still use MSVS 2005. Strangely enough games are the only apps where I am asked to install them upfront. Don't other applications have the same issue?" CreationDate="2010-10-28T00:34:51.770" UserId="2843" />
  <row Id="5865" PostId="4896" Text="Anyway this should have been a comment. How your computer is configured vs mine has nothing to do with the question. " CreationDate="2010-10-28T00:35:32.910" UserId="2843" />
  <row Id="5866" PostId="4898" Text="Well, I wrote one in C# for my own project. Maybe we could all contribute?" CreationDate="2010-10-28T04:34:33.127" UserId="141" />
  <row Id="5867" PostId="4868" Text="If no one here is qualified to give professional legal advice, no one here should be giving answers. If you are qualified to give legal advice, you should go found the Legal Stack Exchange." CreationDate="2010-10-28T05:18:30.463" UserId="744" />
  <row Id="5868" PostId="3978" Text="You should at least update the question to tell what you figured out." CreationDate="2010-10-28T05:57:52.347" UserId="962" />
  <row Id="5869" PostId="4903" Text="PC , and mayby xbox, but I don't know how plugin system can look on xbox, is it posible ?" CreationDate="2010-10-28T08:07:09.493" />
  <row Id="5870" PostId="4911" Score="4" Text="Duplicate of http://gamedev.stackexchange.com/questions/651/tips-for-writing-the-main-game-loop or http://gamedev.stackexchange.com/questions/4193/handling-game-states-for-android or http://gamedev.stackexchange.com/questions/1783/game-state-stack or http://gamedev.stackexchange.com/questions/4131/game-state-sharing-data or maybe http://gamedev.stackexchange.com/questions/3708/deal-with-mini-states-in-game or http://gamedev.stackexchange.com/questions/2499/what-is-the-best-way-to-make-a-main-menu-system or more but I'm out of comment space so please everyone, stop asking this question." CreationDate="2010-10-28T08:56:38.220" UserId="744" />
  <row Id="5871" PostId="4911" Score="7" Text="@Joe These QA sites would be brilliant if it wasn't for all those pesky users asking questions..." CreationDate="2010-10-28T09:54:12.287" UserId="2612" />
  <row Id="5872" PostId="4917" Score="1" Text="What is &quot;XBLIG&quot;?" CreationDate="2010-10-28T12:21:06.323" UserId="189" />
  <row Id="5873" PostId="1047" Text="+1 for the comment about actually releasing a game.  Getting a game up and running is only about 30% of the process, IMO.  Constantly iterating on the mechanics, polishing everything to look presentable, chasing down those nasty bugs that only occur in very specific scenarios and actually being able to focus just on what needs to be done is the other 70%.  " CreationDate="2010-10-28T12:28:09.693" UserId="34" />
  <row Id="5874" PostId="4918" Text="This makes sense. Would like to hear more opinions though." CreationDate="2010-10-28T12:42:10.307" UserId="2771" />
  <row Id="5875" PostId="4917" Score="2" Text="Xbox live indie game" CreationDate="2010-10-28T12:50:22.520" UserId="2469" />
  <row Id="5876" PostId="4871" Text="Yeah, it would be 100% user-decided choices. Thanks everyone, I am going to mark this one answered as I think I have enough to do some more research on my own." CreationDate="2010-10-28T12:59:07.970" UserId="2817" />
  <row Id="5877" PostId="4873" Text="your server stops running? that's odd I've left sfs idle for hours without the server quitting on me. Can you give the log output from when the server closes?" CreationDate="2010-10-28T13:00:23.233" UserId="1477" />
  <row Id="5878" PostId="4852" Text="What kind of animations ? Are you talking about videos, or maybe something that could be a sequence of png's or images ?" CreationDate="2010-10-28T13:04:13.453" UserId="2469" />
  <row Id="5879" PostId="4918" Text="I agree with this. You should split the objects into two categories, the actually movable ones, and ones invisibly anchored to the environment, so they affect other objects, but don't move." CreationDate="2010-10-28T13:13:54.840" UserId="141" />
  <row Id="5880" PostId="4852" Text="the latter, for example a radar-like ping somewhere on the screen." CreationDate="2010-10-28T13:15:06.687" UserId="1477" />
  <row Id="5881" PostId="4907" Text="when one modifies a language like Lua, you mean they are creating their own personal framework that is based on Lua. Correct? If so, does this decrease the performance/speed of the programs developed?" CreationDate="2010-10-28T13:16:07.277" />
  <row Id="5882" PostId="4872" Text="@Michael Stum Just found out that it is from this video http://us.pycon.org/2009/conference/schedule/event/91/" CreationDate="2010-10-28T13:20:19.690" />
  <row Id="5883" PostId="4918" Text="What about (sub)systems? Should there be two separate systems: one for moving and another for collisions?" CreationDate="2010-10-28T13:25:33.063" UserId="2771" />
  <row Id="5884" PostId="4918" Text="By doing two systems, you would have to iterate through all your objects twice; one for updating the position, velocity... and other for checking if it collided with something. Just do everything in the same loop: update the properties and check if it intersects something, and then apply bounce/deceleration/etc." CreationDate="2010-10-28T13:30:11.863" UserId="2798" />
  <row Id="5885" PostId="4916" Text="I wonder how different XNA and the devkit are..." CreationDate="2010-10-28T13:43:58.720" UserId="2301" />
  <row Id="5886" PostId="4916" Text="XNA is a high-level, C# API. A devkit is a special console where you can deploy games written with C++ and DirectX, thus having a lower level access and better performance overall." CreationDate="2010-10-28T13:55:03.243" UserId="2798" />
  <row Id="5888" PostId="4924" Text="Your first part is correct. Your second is not. If you're statically linked to the CRT then there's no issue with there being other versions of the CRT in use on the same machine. All you could be exposed to are bugs in the version of the CRT that you're statically linked to." CreationDate="2010-10-28T14:28:16.627" UserId="1088" />
  <row Id="5889" PostId="4907" Text="@J3M7OR3 - It is my understanding that they created their own internal framework based on Lua, but I could not possibly say about performance/speed." CreationDate="2010-10-28T14:49:32.673" UserId="2787" />
  <row Id="5890" PostId="4924" Text="@Len Holgate: I'd say the second part is definatly correct, imagine this: your game is spread across multiple dlls(as many are), one of those dlls is an old utility lib, statically linked to crt, its never needed an update because its function never changes. It allocates some memory(say a strdup clone) using its old crt heap structure, the newer dll(s) that requested this then proceed to free the memory...boom! The newer crt heap implementation they use isn't compatible anymore. If your lucky this is detected before release, if your not, well, lets just say the reviews won't be as good" CreationDate="2010-10-28T15:10:54.370" UserId="1630" />
  <row Id="5891" PostId="4905" Score="1" Text="I agree, I would mention that you can add on some Extension methods to the existing Vector2 class, so your code stays somewhat clean in the sense that you don't have code like `MyVectorHelper.Rotate(...)`" CreationDate="2010-10-28T15:29:07.613" UserId="1198" />
  <row Id="5893" PostId="4852" Text="I think there has been a failure of communication on my part. I am looking for what file formats I could import into an android application, not how to create the animation in the first place. Basically I was caught off guard in a meeting with an artist and the guy heading the design on a project when he asked her about doing some animation and she asked what format it needed to be in. Google searches for animation and android just link me to how to do it internally and not how to import animation from an existing outside file." CreationDate="2010-10-28T15:39:55.023" UserId="1477" />
  <row Id="5894" PostId="4916" Text="so.. completely different" CreationDate="2010-10-28T16:02:54.970" UserId="2301" />
  <row Id="5895" PostId="4867" Text="That should not be a problem.  It sounds like the PlayerHand state would be a condition of the input binding rather than the action binding (where the bound input gesture triggers the bound action)." CreationDate="2010-10-28T16:07:53.517" UserId="136" />
  <row Id="5896" PostId="4934" Text="Thanks! Will mark this as an answer. Added the link to the blog thread!" CreationDate="2010-10-28T16:47:16.667" UserId="1199" />
  <row Id="5897" PostId="4931" Text="very good idea, didn't thought about that, because I created the GUI system before I made the actual game logic, so I hadn't any functions to link to." CreationDate="2010-10-28T16:59:30.630" UserId="2063" />
  <row Id="5898" PostId="4937" Text="procedural content needs some design work put into what rules the procedural generater to follow.(don't put spawn locations in rooms with no air)  In addition to procedurally generated content you could do procedurally assissted content so you do something like generate a hilly area and then have artist come by and make modifications for things like the area surrounding a city or some such." CreationDate="2010-10-28T17:18:50.590" UserId="1477" />
  <row Id="5899" PostId="4849" Text="I'll take a look! The only problem is that the engine I have does not have skydome support built into it's rendering engine -- I'd have to do something like place a large dome over the entire world. Also, I need it to be fully immersive -- The bottom is actually just as important as the top of whatever background method I use." CreationDate="2010-10-28T17:48:56.677" UserId="2774" />
  <row Id="5900" PostId="4834" Text="Those are some REALLY cool links! But unfortunately, for this particular project, none of them will do. I specifically need to be able to warp a texture so that it fits onto a skybox, and looks spherical. I have taken a look a the program's built in skybox generation tools, but they always come out with some form of defect (Huge horizontal stretching, or tight pinches). " CreationDate="2010-10-28T17:53:31.650" UserId="2774" />
  <row Id="5901" PostId="4924" Score="1" Text="Given your clarification then yes there is a potential issue. You really shouldn't be allocating in one dll and freeing in another IMHO, but that's another issue." CreationDate="2010-10-28T18:05:30.860" UserId="1088" />
  <row Id="5902" PostId="4936" Score="1" Text="The link is broken." CreationDate="2010-10-28T18:29:01.670" UserId="2100" />
  <row Id="5903" PostId="4937" Text="I believe the &quot;procedurally assisted&quot; method has been used by Bethesda (for Oblivion and Fallout) and CCP (for Eve Online), amongst others." CreationDate="2010-10-28T18:36:10.867" UserId="2491" />
  <row Id="5904" PostId="4936" Text="Thanks! Edited." CreationDate="2010-10-28T18:38:01.020" UserId="1199" />
  <row Id="5905" PostId="4162" Text="Its very worthwhile to note the distinction between types of patterns as well. A lot of the GoF patterns fall into that &quot;missing language feature&quot; zone, but some patterns are more architectural, they describe the system at a high level.  MVC is such a pattern, and represents a way of doing interface programming in ANY language.  Similarly, some patterns are based on implementations of concepts that are good in any language, like Composition. &quot;The whole acts like its pieces&quot; is a useful pattern in many situations, in many languages." CreationDate="2010-10-28T19:50:07.173" UserId="2491" />
  <row Id="5906" PostId="4176" Text="Components also need to talk to each other, bringing in patterns like Mediator, Observer, and Composer.  &quot;Component-Based Game&quot; is a composite design pattern all by itself." CreationDate="2010-10-28T19:52:16.047" UserId="2491" />
  <row Id="5907" PostId="4559" Score="1" Text="+1 I was hoping someone had linked to that and I see that the author has!  The component pattern description there was pretty helpful, and I like that you try to use complete code examples to demonstrate." CreationDate="2010-10-28T19:54:10.693" UserId="2491" />
  <row Id="5908" PostId="4162" Text="@CodexArcanum: You can't imagine a language that has a forwarding mechanism like Objective-C which supports multiple recipients? I mean sure it's still the same mechanism at some level, but no one would call it a design pattern in that language, just like no one calls inheritance &quot;the inheritance pattern&quot; in C++." CreationDate="2010-10-28T20:16:15.630" UserId="744" />
  <row Id="5909" PostId="4554" Text="Maybe I'm just old, but I wouldn't even use CRTP for DX/OpenGL or platform interfaces. It's too slow to compile - I'd just use typedefs. CRTP is good when you want to share interfaces and implementations between classes but have no other relation, not when you just want to pick one struct or the other." CreationDate="2010-10-28T20:22:34.733" UserId="744" />
  <row Id="5910" PostId="4930" Text="Programming without the theory can lead to very poorly designed and/or performing programs. As a programmer, your job is to solve a problem. Without the theory a computer science degree gives (should give), you don't really have a solid set of tools to solve problems unless you learn it by yourself. You are correct when you say nothing beats practice to prepare you for actually making a program, but practice without theory is not a very efficient way to get better. http://www.joelonsoftware.com/articles/ThePerilsofJavaSchools.html Is a very good article :)" CreationDate="2010-10-28T20:27:11.907" UserId="2187" />
  <row Id="5911" PostId="4162" Text="@Joe Wreschnig And in Haskell you can do it generically and they call it &quot;map&quot;.  Sure it's not explicitly the &quot;Composite Pattern&quot; but both solve the same problem. Being able to identify and discuss in common language such problems is at the heart of design patterns. Just because .NET has built in Events doesn't mean I can't recognize the Observer pattern in action." CreationDate="2010-10-28T20:57:55.543" UserId="2491" />
  <row Id="5912" PostId="3224" Text="Dan is also a real active, nice guy. I've emailed him and gotten very fast responses back. I also wrote a blog post in response to something of his and he was very quick to show up on my blog with comments about it.  He's great to chat game design theory with." CreationDate="2010-10-28T21:00:25.557" UserId="2491" />
  <row Id="5913" PostId="4936" Score="1" Text="I *think* he's just an idea guy, no actual implementations yet. Seems like he has some iPhone apps though?  I kind of wonder how many of his ideas have been picked up on.  I know that there's a series of flash puzzle-platformer games loosely similar to the light &amp; shadow concepts he started out with." CreationDate="2010-10-28T21:13:00.797" UserId="2491" />
  <row Id="5914" PostId="817" Text="That's a unique analysis, I like it." CreationDate="2010-10-28T21:31:00.540" UserId="284" />
  <row Id="5915" PostId="1033" Text="Pretty harsh for accidental disconnection, though, could use a solution in that area." CreationDate="2010-10-28T21:37:39.863" UserId="284" />
  <row Id="5916" PostId="4905" Text="Very good point, I'm not very experienced in C# so I hadn't heard of Extension methods. They appear to be somewhat complicated but worth the effort. http://msdn.microsoft.com/en-us/library/bb383977.aspx" CreationDate="2010-10-28T21:39:43.930" UserId="189" />
  <row Id="5917" PostId="4932" Text="It's not really clear what you mean by having players drive everything.  The quest taker, or the quest giver? They get to choose their own quest goals?" CreationDate="2010-10-28T21:43:56.643" UserId="284" />
  <row Id="5918" PostId="4932" Text="It means that players create 'quests' without calling them 'quests' by for example asking a player to craft them x piece of armor or y weapon. They could also create whole cities in which they would **drive** the development of. You have to think of the game in a different way than the traditional MMO in which you have specific quests that you must complete in order to gain xp or rewards..." CreationDate="2010-10-28T21:48:09.950" UserId="2787" />
  <row Id="5919" PostId="4176" Text="@CodexArcanum, Observer, definetely, but not always Mediator (Chain of Responsibility can be used instead). It is Composer only if GameObject (composed of GameObjectComponent) is GameObjectComponent itself (not nessesary)." CreationDate="2010-10-28T23:06:08.960" UserId="1677" />
  <row Id="5920" PostId="4852" Text="If your animation is on a sprite sheet, can you not just load that sprite sheet into yout app ? the sprite sheet is just a png or jpg or something like that." CreationDate="2010-10-28T23:28:37.103" UserId="2469" />
  <row Id="5921" PostId="4752" Text="Thanks, my strokes are indeed opaque, so this worked very simply and wonderfully!" CreationDate="2010-10-29T01:26:56.087" UserId="2289" />
  <row Id="5922" PostId="4930" Text="Of course theory is relevant, but I'm a lot concerned about theory, and any programmer should be; moreover the theory is not that much complicated (especially compared to some fields of mathematics)." CreationDate="2010-10-29T06:47:54.810" UserId="1829" />
  <row Id="5923" PostId="4924" Score="1" Text="&quot;If the CRT contains a critical bug, it means they don't need to recompile their huge code base &quot; I mean realistically, does this happen a lot during a game's development lifecycle? Maybe once or twice but an extra fresh rebuild every single year probably isn't too bad, no?" CreationDate="2010-10-29T07:25:18.603" UserId="2843" />
  <row Id="5924" PostId="4924" Text="@kizzx2: its a good idea, by just stick do dynamic linkage and you don't need to worry about forgetting to do it(also, your static libs might be out of date, so a recompile might not help). also some game engines span years apon years(think Unreal engines), not only for their core development, but also the 3rd parties that lease them..." CreationDate="2010-10-29T08:02:16.477" UserId="1630" />
  <row Id="5925" PostId="3599" Text="You can always use the carrot to lead the player to the interesting (ie. content-rich, ie. expensive) bits. For example, WoW has the exploration and zone quest achievements to entice you to consume all the manually created content." CreationDate="2010-10-29T08:19:47.167" UserId="678" />
  <row Id="5926" PostId="4928" Text="I actually implemented a player contract system for a game world based on the NWN engine. It worked well, but players seemed to prefer informal arrangement or free-lancing to iron-clad contracts." CreationDate="2010-10-29T08:21:41.020" UserId="678" />
  <row Id="5927" PostId="3622" Text="Honestly, I'd love major MMOs to have &quot;botting encouraged&quot; servers with botting competitions for all aspects of the game. It would be the ultimate &quot;programming game&quot;. See also corewars, pascal-robots etc." CreationDate="2010-10-29T08:25:44.267" UserId="678" />
  <row Id="5928" PostId="3608" Text="Maybe not everyone agrees EXACTLY what grinding is, but that does not mean it's meaningless - exactly how many things does EVERYONE agree on? Some MMO players have no problem with admitting that there's a grind, and that they enjoy it." CreationDate="2010-10-29T08:39:10.570" UserId="1386" />
  <row Id="5929" PostId="3608" Text="&quot;If people complain it's &quot;grindy&quot;, figure out what, if anything, they are actually complaining about.&quot; If they complain it's too grindy it probably means they are bored out of their face because of the repetition required to obtain some goal." CreationDate="2010-10-29T08:42:28.727" UserId="1386" />
  <row Id="5931" PostId="4949" Text="3DS meaning 3d Studio Max?" CreationDate="2010-10-29T09:38:36.363" UserId="919" />
  <row Id="5932" PostId="4949" Text="He means 3DS file format, the de facto format of old versions of 3D Studio MAX." CreationDate="2010-10-29T10:07:53.873" UserId="2798" />
  <row Id="5933" PostId="3608" Text="@Cisco: Repetition is not inherently boring. Boring things done once are not interesting. If the only definition of grind you have is &quot;repeatedly doing boring stuff&quot;, then the problem is that your game is boring, not that it's &quot;grindy&quot;. Just because people use the word casually doesn't guarantee it a place in professional critiquing." CreationDate="2010-10-29T10:14:27.530" UserId="744" />
  <row Id="5934" PostId="4162" Text="@CodexArcanum: Map calls a function repeatedly with many arguments, which is not the same thing as invoking the same method/message on many objects. (It can _do_ the same things, but it's not the same _architecture_, which is what we're talking about here.) If the language provides it directly, it's not an architectural pattern." CreationDate="2010-10-29T10:17:09.040" UserId="744" />
  <row Id="5935" PostId="4948" Score="2" Text="And nice energy particle emitters at the point of contact that die out shortly after being spawned." CreationDate="2010-10-29T10:48:38.097" UserId="631" />
  <row Id="5936" PostId="3608" Text="Boring could just mean there's literally nothing to do, or could mean the twelve hour cut scenes cause people to fall asleep, grindy is more specific." CreationDate="2010-10-29T11:00:19.993" UserId="1386" />
  <row Id="5937" PostId="4953" Text="Is your underlying question &quot;I'm interested in making an Xbox XNA game, do I need to buy an Xbox 360?&quot; ?" CreationDate="2010-10-29T12:24:15.553" UserId="189" />
  <row Id="5938" PostId="4953" Text="No, because I'm going to buy an Xbox 360, just that I may not have it during my initial weeks of development." CreationDate="2010-10-29T13:02:29.667" UserId="2862" />
  <row Id="5939" PostId="4928" Text="Yes it makes sense. An auctioning system probably works better. I think this is closer to what Eve has. I think it does have contracts as well but they're rarely used and mostly just for transport. Not out of experience, but heard this from players. I guess it has to fit into the overall design to make any sense. If there were a ranking (or feedback) system built into the game, where customers/quest-givers were able to rate the quest-taker's performance, it might become another XP-like stat to work for. Again, just another form of grinding I suppose." CreationDate="2010-10-29T14:16:18.273" UserId="2528" />
  <row Id="5940" PostId="4949" Text="Yep, that got me too when I first read it " CreationDate="2010-10-29T14:40:45.727" UserId="656" />
  <row Id="5941" PostId="4894" Text="You are always sharing the CRT. You probably have at least 20 other processes running even when you have just fired up a game straight after a reboot." CreationDate="2010-10-29T15:24:01.507" UserId="1101" />
  <row Id="5942" PostId="4963" Text="Exactly, when I read the first example, I thought, &quot;that is not a racing game, that is an arcade racing game.&quot;" CreationDate="2010-10-29T15:24:25.140" UserId="962" />
  <row Id="5943" PostId="4965" Text="Yeah, I know I can just load the .dlls (since it's a PC game) however I'm wondering if this is the best way of doing it, or if this is going against some established best practice" CreationDate="2010-10-29T15:26:36.297" UserId="2892" />
  <row Id="5944" PostId="4963" Text="maybe I used to play too much games like Out Run :-)" CreationDate="2010-10-29T15:28:12.923" UserId="1868" />
  <row Id="5945" PostId="4963" Score="1" Text="It's still a reasonable design if you want to gate some of the game's content on the player's skill. But usually today content is gated via unlocks (&quot;Beat track 7 in under 1:03 to unlock track 8!&quot;), which is kind of sad, because that creates more filler playtime and is very removed from the in-game world." CreationDate="2010-10-29T15:31:29.787" UserId="744" />
  <row Id="5947" PostId="4967" Text="-1, too vague and doesn't really ask a specific answerable question." CreationDate="2010-10-29T15:49:56.877" UserId="51" />
  <row Id="5948" PostId="4958" Score="2" Text="You should add your conclusion as an answer and mark it as accepted." CreationDate="2010-10-29T15:54:05.583" UserId="51" />
  <row Id="5949" PostId="4967" Score="1" Text="i am learning my way to program game, but splitting my code into different files causes me problems to understand, so i need some sort of check list or to do list, so it will give me some clear picture." CreationDate="2010-10-29T16:01:23.180" UserId="1345" />
  <row Id="5950" PostId="4968" Score="2" Text="Can you be a little more specific, by describing what you mean by &quot;online games&quot;? There are multiplayer games, MUDs, MMOs, social games, etc., each with their own variety of business models." CreationDate="2010-10-29T16:39:36.390" UserId="2290" />
  <row Id="5951" PostId="4970" Text="Thanks Ari, your answer is more appealing towards my problem." CreationDate="2010-10-29T17:14:28.793" UserId="1345" />
  <row Id="5952" PostId="4977" Score="1" Text="The new Xbox 360 4g slim does not support XNA development without a harddrive." CreationDate="2010-10-29T17:42:12.900" UserId="2345" />
  <row Id="5953" PostId="4968" Text="I am interested in all possibilities. And I think the answers might be useful to many startup game developers." CreationDate="2010-10-29T17:46:32.447" UserId="1853" />
  <row Id="5954" PostId="4973" Text="+1 for the descriptions with game examples. One model you missed is the one-time-purchase model used by Guild Wars." CreationDate="2010-10-29T18:21:49.870" UserId="2290" />
  <row Id="5955" PostId="4957" Text="For your second point, is there a specific platform(s) you are targeting?" CreationDate="2010-10-29T18:44:27.270" UserId="2290" />
  <row Id="5956" PostId="4964" Score="1" Text="+1 for the detailed and accurate response. Excellent work, Kylotan!" CreationDate="2010-10-29T18:45:05.913" UserId="2290" />
  <row Id="5958" PostId="4983" Text="I guess I thought that as long as you had a ref to newVal it would not be able to be cleaned up since it would be referenced somewhere else." CreationDate="2010-10-29T19:16:04.110" UserId="2469" />
  <row Id="5959" PostId="4983" Text="In C++ classes/structs which do not allocate space for themselves with the &quot;new&quot; command will be cleaned up when the next &quot;}&quot; is seen.  The problem is that even though it's cleaned up the values still exist in memory until something writes over that area.  Which can lead to very hard to find bugs." CreationDate="2010-10-29T19:20:05.447" UserId="891" />
  <row Id="5960" PostId="4905" Text="Extension methods aren't very hard at all, and are immensely useful." CreationDate="2010-10-29T19:27:01.247" UserId="2289" />
  <row Id="5961" PostId="4983" Text="Right so it's the same as in C. I should have figured that out. I'm moving up from C to C++ and was pretty unsure about that. Thanks for the info." CreationDate="2010-10-29T19:35:56.660" UserId="2469" />
  <row Id="5962" PostId="4981" Text="If the implication you're making is that returning a reference would be faster, that may not actually be the case.  http://cpp-next.com/archive/2009/08/want-speed-pass-by-value/" CreationDate="2010-10-29T19:44:03.803" UserId="51" />
  <row Id="5963" PostId="4983" Text="Ah then just to clarify, plain old C++ is like that, but not C++ .NET.... C++ .NET is garbage collected while plain old C++ requires new/delete" CreationDate="2010-10-29T19:48:48.843" UserId="891" />
  <row Id="5964" PostId="4957" Text="Ari Patrick, I am planning on making a first person MMO adventure game for the XBOX 360/Kinect, PS3 and Wii. Thanks for asking. " CreationDate="2010-10-29T20:47:53.963" />
  <row Id="5965" PostId="4964" Text="Kylotan Thank you so much. I have a good idea of what to look for now. " CreationDate="2010-10-29T20:48:51.390" />
  <row Id="5966" PostId="4970" Text="@NativeCoder glad I could help. @Ricket Thanks for correcting that mistake :)" CreationDate="2010-10-30T00:30:41.050" UserId="2290" />
  <row Id="5967" PostId="4989" Text="I understand how using a friend class will tightly couple one class to another.  I was wondering if there was a design pattern in particular that alleviates the issue, because just wrapping something in a getter/setter is potentially a worse solution." CreationDate="2010-10-30T01:27:42.213" UserId="891" />
  <row Id="5968" PostId="4989" Text="Interesting example is the Factory pattern in C++ requires &quot;friend &quot;because of the use of private constructors." CreationDate="2010-10-30T01:34:49.053" UserId="891" />
  <row Id="5969" PostId="4986" Text="+1 for server leasing, which totally slipped my mind. :P" CreationDate="2010-10-30T02:28:52.137" UserId="2290" />
  <row Id="5970" PostId="4993" Text="Good points. OK, the game is meant for kids. I should have added that... will add it now." CreationDate="2010-10-30T02:34:46.510" UserId="1794" />
  <row Id="5971" PostId="4994" Text="I'm also considering pre-loading synth speech files (i.e. created in Fruity Loops, for example). This may be memory intensive but not processor intensive like text to speech." CreationDate="2010-10-30T02:55:28.740" UserId="1794" />
  <row Id="5972" PostId="4994" Text="@gary comtois After your edit indicating that the game was for toddlers, I made significant modifications to my answer. It's amazing how having children as a target demographic can impact development. :)" CreationDate="2010-10-30T03:07:21.943" UserId="2290" />
  <row Id="5973" PostId="4994" Score="1" Text="Understood! :) And I agree - mispronounced words won't be forgiven! However, I didn't realize &quot;it's a kid's game&quot; was such key info. As I said, some words/letters are less than perfect in certain styles of Fruity Loops' synthetic speech (i.e. synth human vs. synth child vs. robo-voice). I may have to rely on multiple styles in the game... Thanks again for the answer and insight." CreationDate="2010-10-30T03:15:52.107" UserId="1794" />
  <row Id="5974" PostId="4947" Text="The shimmer effect can be just changing the shading on the original sphere. That's good for my current goal. Thanks." CreationDate="2010-10-30T04:30:23.973" UserId="1632" />
  <row Id="5975" PostId="4886" Text="First you are very right about the game dynamics and details that makes a difference in hack and slash games. And for Diablo example thats true. I know the sprite concept is same for many tile based h&amp;s,frp and mmorpg games like ultima online. But what I was wondering is warcraft style motions. If you zoom in enough to see the creatures feet, you will see that there can be sloped tiles and while one foot of the creature is on a higher ground other one can be on lower ground and no collisions. May be hack&amp;slash is not the correct word for my question." CreationDate="2010-10-30T07:59:38.780" UserId="2360" />
  <row Id="5976" PostId="4979" Text="@Joe - But will it support the full XNA 4.0 API?" CreationDate="2010-10-30T09:35:17.233" UserId="2862" />
  <row Id="5978" PostId="4974" Score="2" Text="@dotalchemy - Nice info but I'm leaving this question open for the future, when MS does add support to XNA for Kinect we should be the first ones to know." CreationDate="2010-10-30T09:36:59.857" UserId="2862" />
  <row Id="5980" PostId="4977" Score="1" Text="I believe the new Xbox 360 S models also use a different drive bay, so if you buy the 4G you'll have to buy the new 250GB drive to develop using XNA, and not one of the older, cheaper ones." CreationDate="2010-10-30T11:26:34.477" UserId="744" />
  <row Id="5981" PostId="4977" Text="However, XNA games will _run_ just fine on models without hard drives (assuming you have some other kind of storage). You just can't do development deployments." CreationDate="2010-10-30T11:27:54.273" UserId="744" />
  <row Id="5982" PostId="4979" Score="2" Text="Yes. They're identical. (Technically, it doesn't support the full API - no Xbox 360 does, since the consumer OS doesn't accept mice, for example - but it won't support any less than other Xboxes.)" CreationDate="2010-10-30T11:29:53.583" UserId="744" />
  <row Id="5984" PostId="5000" Text="You cannot deploy to the 4GB Slim without buying MS's special hard drive. You'd be better off buying an older Xbox (which is probably why you asked your other question about deployment)." CreationDate="2010-10-30T11:51:18.840" UserId="744" />
  <row Id="5985" PostId="5003" Score="3" Text="I would also alter the title; currently it looks like an auto spambot. Maybe 'How to develop a concept and gain funding' might be good?" CreationDate="2010-10-30T13:28:17.743" UserId="1156" />
  <row Id="5986" PostId="1634" Score="1" Text="Interesting perspective.  Swinging hammers metaphor, lol." CreationDate="2010-10-30T14:10:00.153" UserId="998" />
  <row Id="5988" PostId="5003" Text="Since I can't seem to edit my comment, I would also like to say @gary: It may be business oriented, but trying to get a game concept funding is quite a different process to most business type ideas. If I worded that right and read the right stuff." CreationDate="2010-10-30T14:12:06.137" UserId="1156" />
  <row Id="5990" PostId="5006" Text="+1 for the Sloperama link. Definitely a must-read for anyone pursuing a career in the game industry." CreationDate="2010-10-30T14:42:22.697" UserId="2290" />
  <row Id="5992" PostId="4972" Text="Those units are far too small to call it a spiral model. You're probably wasting a lot of time, or not really doing a spiral (or maybe both)." CreationDate="2010-10-30T15:10:00.890" UserId="744" />
  <row Id="5993" PostId="4972" Text="+1 for Spiral, But I think you can simplify your process for solo development =)" CreationDate="2010-10-30T15:56:00.883" UserId="2910" />
  <row Id="5994" PostId="4834" Text="Would you be searching for skydome textures perhaps ?" CreationDate="2010-10-30T16:34:19.227" UserId="889" />
  <row Id="5995" PostId="1020" Text="We had a GUI project and we had to build a random 2D maze on the GUI. This is exactly how I did it and I never realized I was using Kruskals lol.  I definitely realized I had used a graph." CreationDate="2010-10-30T16:46:04.023" UserId="2910" />
  <row Id="5996" PostId="5012" Text="It sounds like this is a setup for pure server authority which I hate. If your ping to the server is low it plays fine. But when the ping gets too high, the actions on your screen are delayed. I much prefer the method that the source engine uses, the client runs physics and things locally and any action immediately shows up, but the server still checks it to make sure people are not hacking, and if there are any inconsistencies in what should have happened, the server sends the correct state to the player and overrides the clients simulation with new data." CreationDate="2010-10-30T17:27:34.773" UserId="962" />
  <row Id="5997" PostId="5002" Text="+1 interesting, haven't heard of this concept coming from a Java background." CreationDate="2010-10-30T18:15:14.943" UserId="891" />
  <row Id="5998" PostId="5008" Text="That second point is a particularly good one!  I'm getting caught up in the details of my own 'engine' too, rather than my own game which is far more important!" CreationDate="2010-10-30T18:47:54.857" UserId="631" />
  <row Id="5999" PostId="5019" Text="I'd like to say it's generally true but not always the case e.g. lineage II came out in 2003, and for it's time had great graphics. http://www.youtube.com/watch?v=JVXlC1hQ1X0&amp;feature=fvst" CreationDate="2010-10-30T18:58:56.063" UserId="1386" />
  <row Id="6000" PostId="5022" Text="that is a really cool demo but tells me nothing about the implementation itself" CreationDate="2010-10-30T19:14:36.410" UserId="2921" />
  <row Id="6002" PostId="5023" Score="1" Text="Except for the XNA question, this is a better question for Gaming SE - But the answer is yes, with some power adapters and appropriate TV hookups a US Xbox will work anywhere. I believe India is 230V/50Hz AC, which is not the US standard of 120V/60Hz, so an adapter will be required." CreationDate="2010-10-30T19:53:05.047" UserId="744" />
  <row Id="6003" PostId="5023" Text="http://gaming.stackexchange.com - I agree with Joe, the Gaming SE would likely give you better answers." CreationDate="2010-10-30T19:59:02.103" UserId="189" />
  <row Id="6005" PostId="5022" Score="2" Text="They mentioned in one sentence - it's based on UW's crowd flow research, which you can find at http://grail.cs.washington.edu/projects/crowd-flows/." CreationDate="2010-10-30T20:20:23.353" UserId="744" />
  <row Id="6006" PostId="5012" Score="5" Text="@AttackingHobo: You're just describing client prediction. You can have client prediction and server authority together just fine, and it doesn't preclude the architecture described in the Zoidcom manual at all." CreationDate="2010-10-30T20:28:16.670" UserId="744" />
  <row Id="6007" PostId="5025" Score="1" Text="Games like Age Of Conan, Vanguard, Aion were all high-tech when they were released." CreationDate="2010-10-30T20:41:07.747" UserId="1386" />
  <row Id="6009" PostId="5025" Score="2" Text="Indeed - the &quot;MMOs run on low-spec systems&quot; mantra seems to be an artifact of the fact MMOs have a long lifespan, so the most popular ones are always many years past release. I can't think of any AAA MMO that was not spec-competitive with other top-spec AAA titles at its release." CreationDate="2010-10-30T20:47:41.943" UserId="744" />
  <row Id="6010" PostId="5027" Text="You're looking at a 6 year old game and saying it doesn't have high requirements for today's computers. That's absolutely true, but WoW was _not_ a min-spec darling when it came out in 2004. Aion was a commercial success, as long as you don't compare it to a game that's had six years to accrue a social circle and nearly outsells every other PC game combined." CreationDate="2010-10-30T21:21:24.003" UserId="744" />
  <row Id="6016" PostId="5003" Text="Deleted my comment before realizing you responded to it... to make you not look crazy, it went something like this: pitch the idea to someone to get funded or start a company. (The question was poorly written at the time of me commenting so my comment was very general.)" CreationDate="2010-10-31T03:42:51.360" UserId="1794" />
  <row Id="6017" PostId="5025" Text="I said &quot;often,&quot; not &quot;always.&quot;  I'm not just counting AAA MMOs.  Plenty of MMOs are top-of-the-line when released; plenty are low-spec, including many, many free-to-play B-grade games." CreationDate="2010-10-31T04:16:44.827" UserId="953" />
  <row Id="6018" PostId="5012" Text="@AttackingHobo @Joe: And Zoidcom actually supports client-side prediction^^" CreationDate="2010-10-31T05:13:23.683" UserId="229" />
  <row Id="6019" PostId="4771" Score="1" Text="Looks cool. I'll try this out some time." CreationDate="2010-10-31T06:33:30.823" UserId="2004" />
  <row Id="6020" PostId="5008" Text="I agree entirely there, I suffer from it all the time. And the gamedev.net forums, which I look around, are full of people saying 'I know some C++/Java/C/Whatever, how can I make a game engine?'" CreationDate="2010-10-31T09:24:36.803" UserId="1156" />
  <row Id="6022" PostId="5025" Text="I don't think it's useful to compare B-grade MMOs to A-grade non-MMOs and then conclude MMOs have worse graphics. There are plenty of B-grade non-MMOs with &quot;bad&quot; graphics too." CreationDate="2010-10-31T09:39:09.303" UserId="744" />
  <row Id="6023" PostId="5035" Text="CW is now a mod-only feature. Converted. Also consider flagging your post with that reason if you want us to get to it faster. " CreationDate="2010-10-31T12:43:47.303" UserId="51" />
  <row Id="6024" PostId="5035" Text="Will do-thanks!" CreationDate="2010-10-31T13:15:23.547" UserId="1156" />
  <row Id="6025" PostId="5035" Score="2" Text="Huh... I thought he was just overlooking the box, but you're right, @Tetrad, wiki is now mod-only. Seems strange, why wouldn't they allow users to apply it themselves?" CreationDate="2010-10-31T13:23:09.907" UserId="165" />
  <row Id="6026" PostId="5046" Text="What programming language are you using? Knowing this will allow people to provide answers and code snippets that are easier for you to understand." CreationDate="2010-10-31T17:04:42.283" UserId="2290" />
  <row Id="6027" PostId="5046" Text="I'm using C#, but i can understand other &quot;major&quot; languages ;)!" CreationDate="2010-10-31T17:24:11.010" UserId="2494" />
  <row Id="6028" PostId="5047" Score="1" Text="Why are you saying JavaScript is a bad choice? Sure for a AAA it would be a bad choice, but for a simple online game, it **is** a good choice." CreationDate="2010-10-31T17:25:43.507" UserId="962" />
  <row Id="6029" PostId="5035" Score="3" Text="[Missing in Action: the Wiki button](http://meta.stackoverflow.com/questions/67581/community-wiki-checkbox-missing-in-action). Apparently it was causing *confusion and pain* to users - next to go will be the *Search* button..." CreationDate="2010-10-31T17:31:34.047" UserId="165" />
  <row Id="6030" PostId="5022" Text="The flowfield algorithm seems pretty interesting, and definitely seems to do a much better job of pathing than most algorithms, but I wish there was public documentation on how the system itself worked, not just how the system it's based on works. Naturally, there are a lot of questions developers should ask before implementing a core system like this, but, in this case, it seems the only way to answer those questions is to implement the system first. :(" CreationDate="2010-10-31T17:37:24.790" UserId="2290" />
  <row Id="6031" PostId="4998" Text="Thanks for pointing out a few examples of Sound and Physics engines. " CreationDate="2010-10-31T17:45:01.923" />
  <row Id="6032" PostId="5052" Text="Thanks! Worked out" CreationDate="2010-10-31T18:13:34.747" UserId="2898" />
  <row Id="6033" PostId="5044" Text="The graphics engine for Eve is custom and written in C/C++, so by these requirements it wouldn't be &quot;in Python&quot;." CreationDate="2010-10-31T18:13:58.227" UserId="395" />
  <row Id="6034" PostId="5046" Text="Have a look at the 2D Level design/editing/saving question: http://gamedev.stackexchange.com/q/3107/450" CreationDate="2010-10-31T18:34:56.850" UserId="450" />
  <row Id="6035" PostId="4998" Text="Unlike most software libraries, gaming-related libraries are often proprietary, mainly because the problem they solve are hard to solve, but also because the software built is not software for the industry, but for the entertainment, and with a tons of other reasons: unlike traditional software, game code always evolve because the language available on the platform are not always all-featured C++, but also, the speed of execution changes a lot, and there are a lot of different things that becomes available when a faster machine is there (without thinking about embedded consoles)." CreationDate="2010-10-31T19:14:11.730" UserId="1829" />
  <row Id="6036" PostId="4998" Text="I agree that thinking about making an engine based on existing robust libraries is a noble task and idea, but in the absolute, the fact that the game programming task evolves a lot and the fact that platforms will always be an implementation barrier, you will quickly understand why applications like Unity are the only way to abstract those problems: code alone will not ease the task of the programmer. The best way I can think about when easing the task, is come of with your own basics to handle the task, but making maintainable enough, obviously meaning doing it the K.I.S.S. way." CreationDate="2010-10-31T19:22:08.060" UserId="1829" />
  <row Id="6039" PostId="5053" Text="Hi Ivo. I think this is a good topic, but it's not clear what your code is doing - for example where does serverCurrentPosition, serverNextPosition, timeBetweenTicks come from?" CreationDate="2010-11-01T00:26:16.913" UserId="1386" />
  <row Id="6040" PostId="4925" Text="&quot;undocumented and incorrect behaviour&quot; may vary even for different reasons so better avoid it at all cost. &quot;undocumented and incorrect behaviour&quot; in some corner cases may be deeper in system stack so even changing a version of Windows may affect it (from real live - some game used freed memory which cased it to crash after using on newer Windows. If game is popular it probably will have a quirk to solve it. If it is not - well you may not be so lucky)." CreationDate="2010-11-01T00:36:49.333" UserId="1398" />
  <row Id="6042" PostId="5045" Text="It doesn't have an option to import .x files..." CreationDate="2010-11-01T03:02:58.420" UserId="2933" />
  <row Id="6043" PostId="5045" Text="It should be on the top menu bar, under Tools -&gt; DirectX Mesh Tools... -&gt; Import .x file" CreationDate="2010-11-01T03:22:22.770" UserId="2290" />
  <row Id="6044" PostId="5033" Text="Like the tune says: Sad but true! thanks a lot for the insight, i think ill keep in the old school of directX" CreationDate="2010-11-01T04:09:53.343" UserId="2837" />
  <row Id="6045" PostId="5062" Score="1" Text="Not nearly specific enough." CreationDate="2010-11-01T05:41:12.277" UserId="189" />
  <row Id="6046" PostId="5062" Text="Possible duplicate: http://gamedev.stackexchange.com/questions/4277/what-are-good-js-libraries-for-game-dev-html5" CreationDate="2010-11-01T05:42:50.933" UserId="189" />
  <row Id="6047" PostId="5053" Text="That's send in the update data that comes from the server." CreationDate="2010-11-01T06:28:21.393" UserId="1713" />
  <row Id="6048" PostId="4796" Score="1" Text="Someone should warn you that whatever you are trying to do with this information that you claim is &quot;needed&quot; for your game is probably not the right way to accomplish your goals." CreationDate="2010-11-01T07:40:58.790" UserId="2781" />
  <row Id="6049" PostId="4925" Text="I agree, BUT with dynamic linking you don't have control over finding and fixing it. With static linking you do." CreationDate="2010-11-01T08:32:47.897" UserId="1088" />
  <row Id="6050" PostId="5066" Score="1" Text="@Joe: are they really dead, i still see young kids playing bike and car races on plastic arcade bikes and cars in video game centers...And also I didn't get you when you said they are highly competitive. what is the competition if you set up your own video game centre where there are no others in proximity?." CreationDate="2010-11-01T09:09:10.780" UserId="1251" />
  <row Id="6051" PostId="5022" Text="Although a very impressive video, it seems like overkill for RTS games that deal with fewer units." CreationDate="2010-11-01T10:20:26.533" UserId="2612" />
  <row Id="6052" PostId="4868" Text="I remember Roller Coaster Tycoon 3 had a player called Clint Bushton O_o" CreationDate="2010-11-01T11:48:56.140" UserId="2957" />
  <row Id="6053" PostId="3108" Text="This is pretty much exactly how &quot;Excite Bike&quot; did it's custom maps back on the Nintendo.  http://vc.nintendolife.com/games/nes/excitebike" CreationDate="2010-11-01T12:25:35.257" UserId="2316" />
  <row Id="6054" PostId="5062" Score="1" Text="Do you mean Javascript/HTML only, or do you count Flash, Java, Game Maker, and so on as in-browser?  Are you only interested in real-time games?  Are you interested in back-end frameworks?" CreationDate="2010-11-01T12:25:45.707" UserId="953" />
  <row Id="6055" PostId="4992" Score="1" Text="lol hey gary.  didn't know you were active in making games!" CreationDate="2010-11-01T12:27:51.447" UserId="2316" />
  <row Id="6056" PostId="5025" Text="I concur.  However, I'm offering a reason why the querent may have that impression.  In my (not-at-all-scientific) estimation, B-grade MMOs tend to advertise much more (and to a wider audience) than B-grade games." CreationDate="2010-11-01T12:28:22.023" UserId="953" />
  <row Id="6057" PostId="5070" Text="Having Penny Arcade comic about your game does wonders, of course. But that's not exactly a &quot;game design&quot; issue (-8" CreationDate="2010-11-01T12:41:44.940" UserId="2710" />
  <row Id="6058" PostId="5070" Text="Well no, but if they LIKE it, then yeah, it is.  So make game they like, and they'll give you free PR.  :D" CreationDate="2010-11-01T12:45:17.557" UserId="2316" />
  <row Id="6059" PostId="4992" Text="Hey Stephen! Small world! It's a sort of hobby right now. My first game was released as a beta version three weeks ago (soon to have sound as you can see). I'd say try it out but I've noticed your iphone updates on LinkedIn. ;) Best of luck with your app dev!" CreationDate="2010-11-01T13:17:47.280" UserId="1794" />
  <row Id="6061" PostId="5076" Text="**&quot;There are too many different opinions and good advices out there. You will be ripped in parts if follow every complain you will encounter by feedback. That does not mean feedback is worthless.&quot;** I totally agree, I can't stress enough how idiotic is to &quot;just do whatever the users ask&quot; (like Blizzard does)." CreationDate="2010-11-01T14:23:05.943" UserId="2188" />
  <row Id="6062" PostId="4992" Text="same to you, although I don't own a smartphone - just borrowing one!" CreationDate="2010-11-01T14:43:45.333" UserId="2316" />
  <row Id="6063" PostId="5077" Score="3" Text="Just FYI, SVN (Subversion) is a type of VCS (Version Control System), as is Mercurial; or more specifically, Mercurial and Git are DVCSes (Distributed VCS). And I highly recommend Mercurial! Kiln is totally free for two people startups: http://www.fogcreek.com/kiln/" CreationDate="2010-11-01T14:50:31.737" UserId="189" />
  <row Id="6064" PostId="5077" Text="@Ricket: Thanks for the explanation! I've updated it to say VCS instead of SVN ^^" CreationDate="2010-11-01T14:56:01.590" UserId="89" />
  <row Id="6065" PostId="5068" Score="3" Text="I prefer to take a wait-and-see approach.  Converted to CW for now." CreationDate="2010-11-01T15:02:26.853" UserId="51" />
  <row Id="6066" PostId="765" Text="A bit late to the party, but I'm converting this to CW because this is really just a &quot;list of X&quot; type questions where most of the answers are one-offs without the long-tail discussion that really adds value." CreationDate="2010-11-01T15:09:33.913" UserId="51" />
  <row Id="6067" PostId="5079" Text="Thank you! I'll be looking at the site you provided and see if I can't get a good book on the development technique so that we can use it ourselves (eventually)." CreationDate="2010-11-01T15:20:15.007" UserId="89" />
  <row Id="6068" PostId="5080" Text="Thanks! I've relayed this question to my partner and we'll be discussing if we can't find the time to do this sort of programming ^^" CreationDate="2010-11-01T15:20:38.890" UserId="89" />
  <row Id="6069" PostId="5072" Text="I think this is the best way to express this idea. I love MC because it alternately caters to my desires for: Building big projects, exploring dangerous places, dungeon crawling, roleplaying, experimenting with the simulation abusing the system, conquering the world, and on and on." CreationDate="2010-11-01T15:25:57.497" UserId="2491" />
  <row Id="6070" PostId="5078" Score="1" Text="+1 Personal stories is a great way to put it. Games with good personal stories, I find, are often very popular and wonderfully replayable. And make great pub talk!" CreationDate="2010-11-01T15:29:08.817" UserId="2491" />
  <row Id="6071" PostId="5016" Text="I have a vague half-notion of what tangent-space is, but I don't know how to take your advice and *do* anything with it.  But that's probably entirely my fault.  As for the second paragraph--I was trying to avoid doing branching code in HLSL, because my amateur understanding says that branching code is a Very Bad Thing in HLSL.  Though it sounds like it may be unavoidable." CreationDate="2010-11-01T15:39:08.483" UserId="1872" />
  <row Id="6072" PostId="3999" Text="The algorithm samples the surrounding points and cross multiplies (or is it the dot-product?) the slopes to get the vector perpendicular to the slopes.  At least, that's my vague recollection--I'm at work and can't check it ATM." CreationDate="2010-11-01T15:41:07.810" UserId="1872" />
  <row Id="6073" PostId="766" Text="There was a question on here about &quot;What should my game engine library have&quot; and I thought the very best answer was &quot;It should have all the parts you needed in both your first and second games.&quot;" CreationDate="2010-11-01T15:44:42.620" UserId="2491" />
  <row Id="6074" PostId="5044" Score="1" Text="@coderanger, true - but the condition (*famous game* &amp;&amp; *pure Python*) == **null** - so I dropped the *pure* condition, whereas you dropped the *famous* condition. :) (Unless Galcon is famous, but I suspect Eve Online is moreso)." CreationDate="2010-11-01T15:58:07.687" UserId="165" />
  <row Id="6075" PostId="4972" Text="@Joe Wreschnig Not sure what you mean.  Each spiral is a design-build-test-(internal) release step.  I mostly left a lot out to make it fairly easy to understand.  The first spiral usually involves a good bit more than opening a window like the game's main menu and overall structure.  It also focuses on non programming related tasks like source control and deployment setup.  Also as an hobbyist it is very informal and more focusing on doing this or that than strict discipline. " CreationDate="2010-11-01T16:55:50.830" UserId="2447" />
  <row Id="6076" PostId="5070" Text="it was already pretty big before the penny-arcade feature. That just fanned the flames." CreationDate="2010-11-01T18:19:48.330" UserId="1477" />
  <row Id="6077" PostId="4986" Text="Entropia Universe is very fun, although not very safe to play with the USD wavering so much in value. (If you're scared of losing your invested money unless you play for pure fun. :)" CreationDate="2010-11-01T18:32:13.473" UserId="1199" />
  <row Id="6078" PostId="5088" Text="Personally I think this is a bad question since it's all speculative, but instead of closing it outright I'll just convert to CW." CreationDate="2010-11-01T19:01:51.913" UserId="51" />
  <row Id="6079" PostId="5068" Text="So this kind of an unofficial pre-mortem?" CreationDate="2010-11-01T19:07:10.953" UserId="370" />
  <row Id="6080" PostId="4950" Text="Frogato looks very close to what I'm looking for, it's a bit verbose though, but still very interesting. An equivalent example in Lua would rock :)" CreationDate="2010-11-01T19:20:42.303" UserId="2708" />
  <row Id="6081" PostId="5089" Text="Multitouch doesn't have to mean touchscreen. Apple got a lot of the multitouch tech from FingerWorks which made multi-touch-based keyboards, not displays." CreationDate="2010-11-01T20:27:14.300" UserId="395" />
  <row Id="6082" PostId="5089" Text="@coderanger very true, but then you have the disconnect between screen and input, which requires a mouse pointer. Also, Apple is the only mainstream company that 'got' multitouch right - says a lot about the quality of the industry and convinces me even more that mainstream multitouch won't happen." CreationDate="2010-11-01T20:33:30.930" UserId="849" />
  <row Id="6083" PostId="5083" Text="Flagging this for CW." CreationDate="2010-11-01T20:35:19.727" UserId="1156" />
  <row Id="6084" PostId="5078" Text="wish i could vote this up more then once" CreationDate="2010-11-01T20:39:15.753" UserId="1477" />
  <row Id="6085" PostId="5083" Text="-1, Can you be more specific in what you're looking for?  Are you looking for an actual simultaneous user editing environment for textures?  A network supported multi-user code IDE?  Or just something more mundane like some cloud storage so people can work on &quot;the same file&quot; at different times?" CreationDate="2010-11-01T20:41:39.000" UserId="51" />
  <row Id="6086" PostId="766" Score="4" Text="Then again, I made the &quot;mistake&quot; of making an engine first, but now I have a nice, well-designed engine and am working on actual games. Your mileage may vary." CreationDate="2010-11-01T20:50:13.987" UserId="2081" />
  <row Id="6087" PostId="5089" Text="Whats wrong with having a cursor? Its been a pretty good abstraction so far, so just streamlining the input process is unlikely to make it worse. Take a look at the [TouchStream](http://www.extremetech.com/article2/0,3973,1039254,00.asp) keyboard that FingerWorks used to make. The idea is to minimize hand movement by use the entire surface for input. At a very simple level you can think of it as a touchpad and keyboard in one." CreationDate="2010-11-01T21:03:40.317" UserId="395" />
  <row Id="6088" PostId="5088" Text="Also Elite Beat Agents (and all DS games) don't use multitouch since the DS isn't equipped for it. Any DS game that asks for multiple inputs (usually two) actually is just checking for a single input in the middle of them since thats what the hardware returns if there are multiple contacts." CreationDate="2010-11-01T21:05:08.897" UserId="395" />
  <row Id="6089" PostId="945" Score="2" Text="Even though it's the last, I think MMORPG need to go further down. Awesome list. +1" CreationDate="2010-11-01T21:06:34.430" UserId="2958" />
  <row Id="6090" PostId="4188" Score="1" Text="The SDK is released, and is available through Steam." CreationDate="2010-11-01T21:07:28.897" UserId="2968" />
  <row Id="6091" PostId="5093" Text="Except you'll need something in the middle, between the app and raw storage APIs. Otherwise it's like giving open access to a file system. So for that you can use Amazon EC2 or any old server, write some sort of web service which sends and receives save files and stores them in S3 (based on a unique identifier or have users sign up for an account). Then have your app interact with the web service." CreationDate="2010-11-01T21:23:27.483" UserId="189" />
  <row Id="6092" PostId="4968" Text="Is a bounty on a CW question really appropriate?" CreationDate="2010-11-01T21:26:05.327" UserId="744" />
  <row Id="6093" PostId="5088" Score="1" Text="@coderanger Oh yeah, I realize EBA is single-touch. I was referring to hypothetical titles which would have similar gameplay, but utilize multi-touch for multiple notes at a time. Technika does that." CreationDate="2010-11-01T21:29:54.417" UserId="2289" />
  <row Id="6094" PostId="5066" Text="@Vishnu: If you live in the US (or want a mostly US market), you can sell to Global VR (and a handful of much smaller places). If you live in Japan (or want a mostly Japanese market), you have a few more options. If you live anywhere else, or don't like those options, you have to start a company that develops, publishes, _and directly distributes_ the games - which are huge and heavy - and that's a lot more work than just writing games." CreationDate="2010-11-01T21:35:15.830" UserId="744" />
  <row Id="6095" PostId="5089" Text="@coderanger Nothing is wrong with having a cursor if the game is suited for it already. Or maybe even if not, as I can see Multitouch even useful in FPS games which don't have a mouse pointer but a crosshair. I just don't believe that the hardware vendors are up for it and that we'll have the chicken/egg problem: No Games =&gt; No Hardware, No Hardware =&gt; No Reason to make games. I think RUSE was the only Triple-A Multitouch game. Maybe we see Multitouch on Apple machines as there is one standard Multitouch Device, but on Windows? I'm still sure it won't happen." CreationDate="2010-11-01T21:35:38.763" UserId="849" />
  <row Id="6096" PostId="5066" Text="@Vishnu: And if you want you want to set up your own video game center, you're going to need not just the above, but people skilled in restaurant management, bartenders, DJs, and so on, because the only video game centers that make sustainable money these days in America are FECs (http://en.wikipedia.org/wiki/Family_Entertainment_Center)." CreationDate="2010-11-01T21:36:39.433" UserId="744" />
  <row Id="6097" PostId="5066" Score="3" Text="And finally, when all is said and done, you're going to be competing with the big flashy machines like Dance Dance Revolution or Street Fighter IV, and all the classics like Area 51, SF2, or Cruisin', _and_ all the stupid redemption machines. Most non-FECs are going to have two or three machines at best, and they're going to pick those which are guaranteed to make money. It's not an indie-friendly environment." CreationDate="2010-11-01T21:39:06.543" UserId="744" />
  <row Id="6098" PostId="5093" Text="It really depends on the complexity of the files, and where the OP intends to implement the code -- it would not be unreasonable to have a small parser inside each `version` of the application, so it can both serialize and deserialize the data to the web service persistence tier (S3 or whatever it ends up being). Updated the post to include my thoughts on it." CreationDate="2010-11-01T21:39:08.827" UserId="1198" />
  <row Id="6099" PostId="5022" Score="1" Text="@Kragen: You really only need two units before plain A* (especially waypointed) causes them to bump into each other over and over, and you need some kind of system to work around it." CreationDate="2010-11-01T21:46:03.430" UserId="744" />
  <row Id="6100" PostId="5089" Text="I don't think games will advance the state of multitouch hardware, but PCs will benefit from it sooner or later and since it will likely become an important input device for PCs in general, it will be important for games." CreationDate="2010-11-01T22:05:26.933" UserId="395" />
  <row Id="6101" PostId="4968" Score="1" Text="This is a really broad question.  With how many games have online modes, it's basically &quot;what revenue models exist for games.&quot;" CreationDate="2010-11-01T22:23:49.453" UserId="953" />
  <row Id="6102" PostId="4868" Score="1" Text="Joe, they are simply helping give a starting point. Instead of bashing those who are asking questions or helping me find a starting place, you can simply leave a -1 vote and move on." CreationDate="2010-11-01T22:41:57.637" UserId="2817" />
  <row Id="6103" PostId="5016" Text="There's no branching: I assume you have a cube with a normal map on each of the faces. Now you basically unfold this cube onto a sphere ... the easiest thing you might want to do is to place a sphere inside your cube, and trace rays against the cube and bend the normal then. Assuming your normal frequency is uniform on a spherical surface (i.e. non-uniform on a cube-face), this should give you a ready-to-use normal map for a sphere.&#xA;&#xA;Though I still don't understand why you have that cube? Can't you work a sphere right away?" CreationDate="2010-11-02T01:41:35.513" UserId="2919" />
  <row Id="6104" PostId="5092" Text="+1 for mentioning Dropbox, this program has been incredibly awesome to me as well." CreationDate="2010-11-02T02:08:45.523" UserId="2910" />
  <row Id="6105" PostId="5067" Text="It's already so, that the objects don't stop, they continue to move on until the receive the next update. Also, using Hardware Acceleration on the HTML canvas seems to reduce the jitter effect quite a bit. Maybe I just got crazy after working on that thing for so long." CreationDate="2010-11-02T03:01:17.937" UserId="1713" />
  <row Id="6106" PostId="5059" Text="Hm, I did something like that in an earlier version ,floating point imprecision made it really bad at times, I have quite big timespans betwenn the updates, up to 300ms for some objects, but maybe I just did it wrong, I gonna give it a shot when I find some free time :)" CreationDate="2010-11-02T03:04:24.127" UserId="1713" />
  <row Id="6107" PostId="5092" Text="Careful using Dropbox for multi-user things though. If two people edit something at the same time, you end up with two copies of it, one renamed. It can cause more trouble than it's worth, to have to open and compare the two copies and hand-merge them. Not that it's Dropbox's fault at all (this is the best thing it could possibly do) but obviously it can't make assumptions and merge things for you like a version control system does. You'd be better off even with something old like CVS (check in, check out) or else you'll replicate it by sending emails: &quot;I'm working on this, don't touch it!&quot;" CreationDate="2010-11-02T03:13:14.333" UserId="189" />
  <row Id="6108" PostId="5104" Text="I have found several code examples online, but still cannot find a specification document or a general explanation of the features of the language." CreationDate="2010-11-02T03:14:15.357" UserId="2870" />
  <row Id="6109" PostId="5066" Text="@joe: That's a strong comment, i guess.Thanks for the reply anyways" CreationDate="2010-11-02T04:34:08.593" UserId="1251" />
  <row Id="6110" PostId="5103" Text="Thanks for this, I might have to try it some day." CreationDate="2010-11-02T05:44:16.180" UserId="2100" />
  <row Id="6111" PostId="5103" Score="1" Text="This question is about developing arcade games, not building an emulator cabinet." CreationDate="2010-11-02T08:34:19.700" UserId="744" />
  <row Id="6112" PostId="5067" Text="That's quite possible. If turning on acceleration makes frame rate higher, then probability of handling the update info at exactly the right moment increases." CreationDate="2010-11-02T08:46:55.743" UserId="2710" />
  <row Id="6113" PostId="4596" Text="thankyou for th N tutorials" CreationDate="2010-11-02T10:59:51.313" UserId="1251" />
  <row Id="6114" PostId="5059" Text="floating point precision really shouldn't come into this at all! Did you read my linked answer on stackoverflow? It covers all the details of implementing this kind of thing." CreationDate="2010-11-02T12:03:15.527" UserId="1687" />
  <row Id="6115" PostId="5118" Text="I don't really know C#, but this architecture is often used in C and C++ where the language's normal reference type (pointers) aren't safe to use if the object was destroyed. There are several ways to deal with it, but they all involve a layer of indirection, and this is a common solution. (A list of backpointers as Kylotan suggests is another - which you pick depends on if you want to spend memory or time.)" CreationDate="2010-11-02T12:32:49.667" UserId="744" />
  <row Id="6116" PostId="5093" Text="It's a simple plist file for each thing.  Would something like Amazon EC2 or S3 offer a searchable API?  Like if I have uploaders tag their files as  &quot;level 30&quot; or whatever, could I then search for all &quot;level 30&quot; files?" CreationDate="2010-11-02T13:47:24.323" UserId="2316" />
  <row Id="6117" PostId="5118" Text="C# is garbage collected, so it does not matter if you abandon instances. For unmanaged (ie: by the garbage collector) resources there is the `IDisposable` pattern, which is very similar to marking an object as `IsDead`. Obviously if you need to pool instances, rather than have them GC'd, then a more complicated strategy is required." CreationDate="2010-11-02T14:16:04.537" UserId="288" />
  <row Id="6118" PostId="5103" Text="Understood, but my point stands that someone may find it useful." CreationDate="2010-11-02T14:23:38.767" UserId="1198" />
  <row Id="6119" PostId="5093" Text="I believe they expose a Dictionary type interface (key,value pairs) and as such searching may be difficult if you don't have the key. That said, I know that Azure offers `SQL Azure` which functions exactly like a SQL database (minus a few enterprise features) which would allow you to search. If your data is small, using one of these SQL Azure instances should not greatly increase the cost ($9.99/month for 1GB database iirc)." CreationDate="2010-11-02T14:26:40.530" UserId="1198" />
  <row Id="6120" PostId="1612" Text="These days you really do need a degree just to match the competition / requirements." CreationDate="2010-11-02T14:45:06.253" UserId="1319" />
  <row Id="6121" PostId="5124" Text="On the same forum page : &quot;For me, I use System.Net as the building base for my network component.&#xA;&#xA;I like how its enough of low-level that can provide me with stuff like &quot;socket&quot;, &quot;bind()&quot;, etc.&#xA;&#xA;But also you can use any other network library, it's up to individual's tastes. :)&quot;" CreationDate="2010-11-02T15:17:59.860" UserId="2862" />
  <row Id="6122" PostId="5124" Score="1" Text="Your confusion is understandable, but on Windows XNA can use any networking component because on Windows XNA is just .NET code; however, on Xbox you are forced to use Live because the Xbox's implementation of the .NET Framework doesn't contain any network implementation except for the Live gaming network. " CreationDate="2010-11-02T15:21:21.247" UserId="1198" />
  <row Id="6123" PostId="5121" Text="Have traps instead of towers underground ;)" CreationDate="2010-11-02T15:26:23.300" UserId="1352" />
  <row Id="6124" PostId="5121" Text="On a side note. I'm making a much more complex TD game than this ;) With economy managment as well. Kind of like a RTS-TD." CreationDate="2010-11-02T15:38:32.713" UserId="1352" />
  <row Id="6125" PostId="5121" Score="5" Text="Not a real answer, but: The base question is really &quot;When does it stop to be fun?&quot; and that can mainly be answered with playtesting. Does any of the elements feel tacked on? Is any of the elements so overpowered that you should always use it? Or on the contrary, are any of the elements so underpowered that there is no reason ever to use it? (Important is 'feel': It does not matter how much Excel Data you have that confirms that the element is balanced and makes sense, if it 'feels' wrong then it has to be changed or removed)" CreationDate="2010-11-02T15:51:24.737" UserId="849" />
  <row Id="6126" PostId="5127" Text="Lots of good comments, thanks.  There's actually diplomatic actions you can take against your own people - such as forced labor, or raise taxes.  In that case, an opponent rolls the dice for your people.  Otherwise, the populace is left pretty much to their own devices.  You build &amp; raise towns and muster troops, but that's pretty much it.  I want the game to be more about the heroes running the civs, instead of the populace." CreationDate="2010-11-02T16:18:27.553" UserId="2316" />
  <row Id="6127" PostId="5127" Text="If you are new to the site you have to build a small amount of reputation by asking or answering questions before you gain access to other features. You gain rep when someone upvotes you, like I have done because your answer was well thought out and relevant." CreationDate="2010-11-02T16:25:24.877" UserId="962" />
  <row Id="6129" PostId="4188" Text="Good to know.  Thanks for the update!" CreationDate="2010-11-02T16:28:14.870" UserId="136" />
  <row Id="6130" PostId="4997" Text="thanks :) I was able to implement a solution using the code from the second link" CreationDate="2010-11-02T16:31:49.787" UserId="171" />
  <row Id="6133" PostId="5127" Text="It seems like an army-based game approach, with politics to enrich gameplay. So, the final result depends on how politics are to affect player actions. Since &quot;heroes&quot; are &quot;running the civs,&quot; politics are probably mostly P2P, with other effects being marginal. Again, balance: under high taxes, does a city revolt or refuse to work? But with PVP politics/diplomacy, you can list all diplomatic actions in a table and assign the result. If you don't like tables, I understand: just assign each action a value and allow modifications (e.g. peace-treaty(-1) prisoner general(+2)), and roll the dice." CreationDate="2010-11-02T16:54:33.750" UserId="2991" />
  <row Id="6134" PostId="5127" Text="On further thought, the assigning values method could support negative mods which the opponent could play against you, like: Blackmail, -1. And you could then have &quot;Espionage missions&quot; which could destroy the blackmail card. But all that is up to you." CreationDate="2010-11-02T16:57:02.920" UserId="2991" />
  <row Id="6135" PostId="5121" Text="@Michael, that's a real answer.  I mean, I am asking when too much gameplay gets in the way of fun.  I'm looking to do simple and creative, without getting as far as emergent like minecraft." CreationDate="2010-11-02T16:59:56.177" UserId="2316" />
  <row Id="6136" PostId="5124" Score="1" Text="`XNA Games on 360 use and are required to use Live` - Absolutely wrong. MSDN itself confirms that Xbox 360 games can use System Link (which is LAN) or LIVE game servers for multiplayer gameplay. Highly uninformed answer. Open up the very MSDN article you linked and goto the &quot;XNA Creators Club and Xbox LIVE Membership Requirements&quot; section and read the initial paragraph." CreationDate="2010-11-02T17:01:37.533" UserId="2862" />
  <row Id="6137" PostId="5068" Score="3" Text="I think this is a perfect game design question.  Any game design question is going to seem &quot;subjective&quot; by the standards of a technically-oriented person, but there can be useful answers that are not quantitative but are still not opinions.  My only issue with the question is that it is a bit general." CreationDate="2010-11-02T17:21:36.570" UserId="953" />
  <row Id="6138" PostId="1139" Text="-1 Writing engines as a way to get into gamedev isn't much good. You don't know what to put into the engine, for example. http://scientificninja.com/blog/write-games-not-engines" CreationDate="2010-11-02T17:34:06.857" UserId="1156" />
  <row Id="6139" PostId="1199" Score="4" Text="I really liked the last one. Expect nothing in return. +1!" CreationDate="2010-11-02T18:50:29.017" UserId="2958" />
  <row Id="6140" PostId="5124" Text="I made the assumption that the question was regarding an Internet based game; since in my experience, system-link on LAN is a very rare scenario..." CreationDate="2010-11-02T19:49:27.053" UserId="1198" />
  <row Id="6141" PostId="5133" Score="2" Text="-1, not specific enough.  What platform/language/engine/framework/whatever are you using?  You say scrolling in all directions, do you mean the game is top-down?  Why is both the car and the background moving?  Do you have some images you can share to show the effect you want?  Depending on your needs the math is going to be very different.  " CreationDate="2010-11-02T20:08:42.237" UserId="51" />
  <row Id="6142" PostId="5124" Text="That's a curious assumption since the purpose of my question was to ask for possibilities, and your answer closed down a whole wide field of open possibilities in networking. Luckily I didn't believe you instantly and researched for myself. Otherwise the lot of us would be left believing that Xbox 360 has virtually no networking capabilities apart from comm with LIVE servers." CreationDate="2010-11-02T20:18:21.633" UserId="2862" />
  <row Id="6143" PostId="5133" Text="Wow... ok, simply a top down game, with scrolling on all directions" CreationDate="2010-11-02T20:31:18.703" UserId="2494" />
  <row Id="6144" PostId="5118" Text="The IsDead flag is something I've used with success in the past; I just like the idea of the game crashing if I fail to check for a dead state rather than continuing on gleefully, with potentially bizarre and hard-to-debug results.  Using a database lookup would be the former; IsDead flag the latter." CreationDate="2010-11-02T20:41:12.157" UserId="2735" />
  <row Id="6145" PostId="5133" Score="2" Text="if(up key is down) move everything down." CreationDate="2010-11-02T20:43:17.787" UserId="1156" />
  <row Id="6146" PostId="5113" Text="Yeah, in my current implementation, every list or single object that wants a reference to a game entity needs to  subscribe to its destroyed event and react accordingly.  This might be just as good or better in some ways than the ID lookup." CreationDate="2010-11-02T20:46:58.903" UserId="2735" />
  <row Id="6147" PostId="5133" Score="1" Text="Your not going to get to much support when you pose questions like that. First, they indicate lazyness. I typed &quot;Create a side scrolling game&quot; in google and got a ton of hits, which tells me you have not done that. No one here on any of the Stack Exchanges is going to give a bit of information without seeing that you have put forth an effort yourself. You should first begin to solve the problem, research it, work on it more. Then asks specifics like &quot;I cannot seem to buffer off screen images correctly&quot; or &quot;Or my camera's wont follow correctly&quot;. Good luck." CreationDate="2010-11-02T20:47:26.003" UserId="2910" />
  <row Id="6148" PostId="5092" Text="Thanks Bryan :)" CreationDate="2010-11-02T21:01:11.597" UserId="422" />
  <row Id="6149" PostId="5092" Text="Ricket: definitely agree. My GF has been burned by that before and lost a chunk of work. I have added a note to my answer. Thanks for pointing that out!" CreationDate="2010-11-02T21:03:19.850" UserId="422" />
  <row Id="6150" PostId="5135" Score="2" Text="Don't even consider using TorqueX, you have been warned http://gamedev.stackexchange.com/questions/2934/what-has-your-experience-been-with-torque-products/2950#2950" CreationDate="2010-11-02T21:56:22.110" UserId="891" />
  <row Id="6151" PostId="5135" Score="1" Text="&quot;Does XNA have basic object transformation, lighting and mesh/texture importing functionality&quot;I know this is snarky, but a quick glance over the XNA docs would answer this" CreationDate="2010-11-02T22:02:35.080" UserId="1597" />
  <row Id="6152" PostId="5137" Text="thanks! After visiting wikipedia for GLUT, I found SDL. It seems more appealing to me. However, it would be nice to hear some opinions on the matter since I have no idea which is better. " CreationDate="2010-11-02T22:44:17.450" UserId="2998" />
  <row Id="6153" PostId="5137" Text="I found this: http://www.gamedev.net/community/forums/topic.asp?topic_id=444230 . It talks about the pros and cons of SDL vs GLUT vs GLFW vs Native." CreationDate="2010-11-02T22:54:02.120" UserId="1352" />
  <row Id="6154" PostId="5133" Text="Ok guys, i'm sorry for the &quot;bad&quot; style of my question. In particular i'm asking a good &quot;start point&quot; to understand how to move &quot;the background&quot; and not my sprite... &#xA;" CreationDate="2010-11-02T23:13:38.100" UserId="2494" />
  <row Id="6155" PostId="5129" Text="I'm likely missing something, but I've been playing around with the SDK and reading Kael's walkthrough, and I still am unable to find the source code for the core game library that you mentioned.  " CreationDate="2010-11-03T01:44:38.207" UserId="2968" />
  <row Id="6156" PostId="5118" Score="1" Text="@vargonian With the Disposable pattern, what usually happens is that you check IsDisposed at the top of each function and property in a class. If the instance is disposed you throw `ObjectDisposedException` (which will generally &quot;crash&quot; with an unhanded exception). By moving the check to the object itself (rather than checking the object externally), you allow the object to define its own &quot;am I dead&quot; behaviour and remove the burden of checking from callers. For your purposes you could implement `IDisposable`, or make your own `IsDead` flag with similar functionality." CreationDate="2010-11-03T01:46:22.107" UserId="288" />
  <row Id="6157" PostId="5112" Text="Google Docs is completely amazing for collaborative editing, especially after the update earlier this year. If only it could become a code editor..." CreationDate="2010-11-03T03:42:41.353" UserId="189" />
  <row Id="6158" PostId="5135" Score="1" Text="@Chris I agree... Or, you could take a quick glance and answer it for easy reputation! :)" CreationDate="2010-11-03T03:45:19.557" UserId="189" />
  <row Id="6159" PostId="5134" Text="Yes, it's certainly better to design the game for multi-touch. But the OP was asking about a Javascript (HTML5 Browser-Game) implementation that would also work on Smartphones/iPad." CreationDate="2010-11-03T07:58:10.447" UserId="20" />
  <row Id="6160" PostId="5113" Score="1" Text="In my book, this is the exact opposite of a robust solution. Compared with lookup-by-id, you have MORE code, with MORE places for bugs, MORE opportunities to forget something, and a possibility to destroy object WITHOUT informing everyone to boot. With lookup-by-id, you have a little bit of code that almost never changes, a single point of destruction and a 100% guarantee that you'll never access a destroyed object." CreationDate="2010-11-03T08:23:21.137" UserId="2710" />
  <row Id="6161" PostId="5150" Score="1" Text="I think a working example would be helpful to understand the problem." CreationDate="2010-11-03T10:44:04.460" UserId="20" />
  <row Id="6162" PostId="5113" Text="With lookup-by-id, you have extra code in every single place you need to use the object. With an observer-based approach you have no extra code except when adding and removing items from lists, which is likely to be a handful of places in the entire program. If you reference items more than you create, destroy, or move them between lists, then the observer approach will result in less code." CreationDate="2010-11-03T11:09:29.663" UserId="1101" />
  <row Id="6163" PostId="5132" Text="The leadership Dice mechanic is borrowed from Kingsburg (FFG).  I want to minimize the amount of math involved - the die is the number rolled, or it's spent.  The card provides a number, and then discarded.  You have n troops on the field, you pay x pieces of gold for y more troops - and the gold goes back into the stock.  I think there's a definite time and place for beancounting mechanics, but I want to make the game a bit more pick-up-and-play than that." CreationDate="2010-11-03T12:38:33.517" UserId="2316" />
  <row Id="6164" PostId="5150" Text="I agree on a working example; I can't figure out why already-emitted tiles don't speed up with the player.  It seems like it would result in a strange, elastic feel to the environment since changes in speed would take time to propagate." CreationDate="2010-11-03T12:39:09.990" UserId="953" />
  <row Id="6165" PostId="5146" Text="Thanks.  I'll see how I can roll these different things into the game over time.  It's a really good answer.  Did you get 7 from [7±2](http://en.wikipedia.org/wiki/The_Magical_Number_Seven,_Plus_or_Minus_Two) or some other heuristic?" CreationDate="2010-11-03T12:50:01.817" UserId="2316" />
  <row Id="6166" PostId="5149" Text="Thanks Joe. Luckily for me you knew my intent :)" CreationDate="2010-11-03T13:15:50.553" UserId="1386" />
  <row Id="6167" PostId="5122" Text="No! Please don't explain it in a help button! Better show the player step by step, start with classic td maps, then introduce tap defence, some more maps, then introduce the next feature, etc." CreationDate="2010-11-03T13:43:18.027" UserId="1149" />
  <row Id="6168" PostId="5146" Text="even for a hardcore game it's probably a bad idea to go past 7, but some things may be grouped together in one umbrella, especially if you never do them at the same time. Climbing and swimming grouped together as moving around the world for example. Especially if you use the same control scheme for both." CreationDate="2010-11-03T14:11:11.793" UserId="1477" />
  <row Id="6169" PostId="5122" Score="1" Text="why not do both?" CreationDate="2010-11-03T14:11:50.780" UserId="1477" />
  <row Id="6170" PostId="5122" Score="1" Text="both is fine, I know sometimes I run through a tutorial and first think, I already know how to do this, why are they showing me this, or two I forget and can't find the information anywhere" CreationDate="2010-11-03T14:13:21.143" UserId="2301" />
  <row Id="6171" PostId="5150" Text="are you just moving the background and keeping the player in the middle? ..." CreationDate="2010-11-03T14:15:03.840" UserId="2301" />
  <row Id="6172" PostId="5156" Text="as far as your penalties go, the mud dragon realms works in a vein similar to this. You get wounded on various body parts and different actions take skill penalties based on how wounded relevant locations are. This can be dangerous as in some cases once you start losing it can become difficult to make a come-back if you get hit hard enough." CreationDate="2010-11-03T14:19:14.587" UserId="1477" />
  <row Id="6173" PostId="5156" Text="My game will incorporate numerous ways of healing, and there's a party involved so someone on your team will likely be playing the role of 'medic.'  The effectiveness of medicine, however, won't be subject to random effects.  That's a bit too harsh, IMO." CreationDate="2010-11-03T14:22:45.070" UserId="2316" />
  <row Id="6174" PostId="119" Score="4" Text="I like this answer, but I think it neglects the complexity caused by the many users trying to access the same game state at the same time, especially in crowded areas.  The multithreaded state management for that is frightening." CreationDate="2010-11-03T14:23:00.637" UserId="2319" />
  <row Id="6175" PostId="5161" Score="6" Text="Then what is the point of seeing source code to a platform you will not be able to see the API or documentation for?  There are tons of open source PC games if you want a start." CreationDate="2010-11-03T15:14:20.967" UserId="891" />
  <row Id="6176" PostId="5161" Score="4" Text="Sonys SDK is protected by an NDA by the way, so there may be problems releasing any meaningful source code." CreationDate="2010-11-03T15:19:24.217" UserId="849" />
  <row Id="6177" PostId="5121" Score="1" Text="[&quot;No matter what they say I've done, well I ain't never had *too much fun* &quot;](http://artists.letssingit.com/trace-adkins-lyrics-i-aint-never-had-too-much-fun-wvjjrmb)" CreationDate="2010-11-03T16:25:09.680" UserId="165" />
  <row Id="6178" PostId="5129" Text="Whoops, it seems I was wrong (or at least premature).  I edited my response accordingly." CreationDate="2010-11-03T16:36:46.683" UserId="136" />
  <row Id="6179" PostId="5159" Text="Well, exhaustion and pain *should* affect the defenses, even though I can see how that starts you on a slippery slope to defeatism.  I'm thinking about some sort of threshold, (like an injury threshold) where you take penalties for X wounds *over* the threshold.  I was also thinking of &quot;stim packs&quot; that increase this threshold to provide some 'healing' that isn't permanent but can help a character get out of a really tight jam." CreationDate="2010-11-03T17:11:57.807" UserId="2316" />
  <row Id="6180" PostId="5129" Text="Not releasing good ways for players to mod the AI will kill Civ5. The current AI is craptastic." CreationDate="2010-11-03T17:32:36.833" UserId="1352" />
  <row Id="6181" PostId="5136" Score="1" Text="A whole game in 2 pages? I doubt that. And most APIs come with some line drawing function. Oh, and looking at OpenGL/DirectX is veering wildly away from 'shortest way'." CreationDate="2010-11-03T17:49:17.207" UserId="1156" />
  <row Id="6182" PostId="5146" Text="Yeah, that's good old magical 7±2 (-8" CreationDate="2010-11-03T19:13:55.527" UserId="2710" />
  <row Id="6183" PostId="5113" Text="There probably are more places that reference objects than places that create/destroy ones. However, each reference requires only a tiny bit of code, or none at all if lookup is already wrapped by property (which should be most of the time). Besides, you CAN forget to subscribe for object destruction, but you CAN'T forget to look an object up." CreationDate="2010-11-03T19:19:33.400" UserId="2710" />
  <row Id="6184" PostId="5165" Text="Excellent insight. For those reasons, I'd suggest keeping offensive capability unrelated to damage sustained, or at least making damage a sub-linear correlation, e.g. a combatant at 50% damage is 80-90% combat effective, while a combatant who's nearly dead is still 60-70% combat effective." CreationDate="2010-11-03T19:46:15.927" UserId="2653" />
  <row Id="6185" PostId="5158" Text="More specifics on the nature of your game could be helpful. For example, depending on theme and style either a single, detailed image could be fitting or a tiled one would. Heck, if it's an abstract game like geometry wars, a procedural background might work best." CreationDate="2010-11-03T19:48:24.833" UserId="2653" />
  <row Id="6186" PostId="5173" Text="What machine are you using?" CreationDate="2010-11-03T21:14:05.517" UserId="3004" />
  <row Id="6188" PostId="5173" Text="Windows with C++ using SFML so far (SFML is subject to change; C++ is not). We are not aiming for portability atm." CreationDate="2010-11-03T22:09:55.250" UserId="89" />
  <row Id="6189" PostId="5036" Text="Mmmh I wonder what was wrong in what I said... Was too hard to put down a comment?" CreationDate="2010-11-03T22:19:33.553" UserId="2930" />
  <row Id="6190" PostId="5036" Text="BTW, I'd like to highlight that A* uses heuristic approach. Thanks for the -2." CreationDate="2010-11-03T22:23:54.063" UserId="2930" />
  <row Id="6192" PostId="5175" Score="2" Text="Images also have a pitch (or stride), which is the amount of bytes between the end of one line and the start of the next line of pixels. Nobody else has mentioned this so I could be mistaken." CreationDate="2010-11-03T22:57:40.387" UserId="1386" />
  <row Id="6193" PostId="4930" Text="I think the real difference would be whether you are able to come up with better solutions than already exist. Learning how to use something already created is easier than creating it yourself. I also find that you can learn how something works easily, but knowing WHY it works is harder and leads to a much deeper understanding which lets you modify things faster and more error free." CreationDate="2010-11-03T23:06:45.857" UserId="2187" />
  <row Id="6195" PostId="5176" Score="1" Text="It may help your various searches as you progress to know that SimCity is generally considered a Simulation game, not an RTS, and that Civilization, as a turn-based and not real-time game, generally won't be considered an RTS but just a Strategy game." CreationDate="2010-11-04T02:21:29.730" UserId="953" />
  <row Id="6198" PostId="5183" Score="2" Text="modetn object orientated gui application development is not actually that different from games programming, the toolkit is just doing a lot of the work for the programmer. In gamedev the effeciency of a more custom solution for the main event loop (game loop in gamedev terms) is important. And so the developer codes it himself rather than relies on a generic toolkit provided variant." CreationDate="2010-11-04T09:03:56.143" UserId="2691" />
  <row Id="6200" PostId="5187" Text="You are oldschool, I haven't heard it referred to as smallpox in a long time. Respect ;)" CreationDate="2010-11-04T09:23:25.400" UserId="678" />
  <row Id="6201" PostId="5185" Score="2" Text="&quot;Threading increases the risk of deadlocks&quot; is one of those mantras I hate. Threading increases the risk of race conditions. Locks and other blocking operations, which are tools to solve race conditions (but not the only ones!), increase the risk of deadlocks." CreationDate="2010-11-04T09:27:50.120" UserId="744" />
  <row Id="6202" PostId="5177" Text="This is correct except for your first sentence - the texture's format on disk can be any highly compressed format, and so it does not take the same space on disk as in VRAM except for disk formats that are direct serializations of the memory formats." CreationDate="2010-11-04T09:33:13.097" UserId="744" />
  <row Id="6204" PostId="5175" Score="1" Text="Usually &quot;pitch&quot; refers to the length of a scanline in bytes (as in Freetype and SDL), and &quot;stride&quot; refers to the space between elements, which may be pixels or scanlines (as in OpenGL and Python's 3rd slice argument). Both values are necessary to do image processing, but &quot;usually&quot; pitch = width * bytes_per_pixel and stride = 0. The terms are often used loosely and confused, so it's best to check the API docs for your library of choice." CreationDate="2010-11-04T09:47:54.783" UserId="744" />
  <row Id="6205" PostId="5183" Text="@ewanm89: i disagree with what you said game programmers are equivalent in skill to general programmers. In an ordinary programmer's coding life, whatever he does is atleast a concept that is well-defined in the software programming universe be it sql updations or web application development. But a game programmer has to &quot;invent&quot; each and every line of code in his game which according to me is a lot more tougher than conventional programming" CreationDate="2010-11-04T10:09:52.747" UserId="1251" />
  <row Id="6206" PostId="5183" Text="Also being a game programmer is the result of a creative genius instinct making Out-of-the-box ideas.Whereas a conventional programmer never does make a totally-impacting software by self, unless he belongs to the category of &quot;Linus Torvalds&quot;ian human being." CreationDate="2010-11-04T10:14:36.490" UserId="1251" />
  <row Id="6207" PostId="5183" Score="2" Text="If an app developer depends on writing his sql updates or web frameworks from scratch, sure there's not much thinking - but these days frameworks takes care of that tediousness and the focus is on solving the business problems that no-one else has solved - which requires creativity and a lot of work to be done well, just like games. And then try writing high-frequency trading systems where nanoseconds count and then come back and say it doesn't require as much or even more skill than general game development... " CreationDate="2010-11-04T10:24:54.060" UserId="2239" />
  <row Id="6208" PostId="5183" Text="@oskar: hmmmm, no comments, but +1" CreationDate="2010-11-04T10:32:23.347" UserId="1251" />
  <row Id="6209" PostId="5183" Score="3" Text="Vish, that's a pretty conceited argument to be making. Not to mention, utterly false. Game programming, application programming, web service programming, Os programming, high-performance large-scale programming etc all have their quirks. All measure success in  different manner. If anything, time pressure and a certain only-the-results-matter-we-don't-need-to-maintain-it attitude ensures that game code is among the worst piece of spaghetti-infested crap I've ran into." CreationDate="2010-11-04T10:38:50.243" UserId="678" />
  <row Id="6210" PostId="4930" Text="I prefer &quot;how it works&quot; compared to &quot;why it works&quot;, even if it means the same... I like to think about &quot;don't reinvent the wheel&quot;, and take care of what is important when there is a need for an application, not try to understand how a kernel is made, or how a compiler is made. There are some differences between a autodidact and a student who gets a degree. Either you explore knowledge yourself as an adventure, or you just follow a guide so you can learn about points the guide decided to teach you. The quality of both way can very a lot, but it's essentially politics and opinions." CreationDate="2010-11-04T10:46:02.080" UserId="1829" />
  <row Id="6211" PostId="5177" Text="Of course it can, but check the assets used in games built with Unreal Engine, Source, etc. They aren't usually compressed on disk, because nowadays there's more than enough disk space to leave resources uncompressed; and the space saved doesn't make up for the extra RAM and CPU time needed to decompress the files on each load." CreationDate="2010-11-04T10:48:17.017" UserId="2798" />
  <row Id="6212" PostId="5192" Score="1" Text="-1 http://blog.stackoverflow.com/2010/09/good-subjective-bad-subjective/ What kind of questions should I not ask here?&#xA;&#xA;Avoid asking questions that are subjective, argumentative, or require extended discussion. This is not a discussion board, this is a place for questions that can be answered!" CreationDate="2010-11-04T11:18:12.270" UserId="891" />
  <row Id="6213" PostId="5192" Score="2" Text="I don't agree at all : it's about features/paradigms that are importants to game programmers. What's the discussion here?" CreationDate="2010-11-04T11:23:44.887" UserId="364" />
  <row Id="6214" PostId="5165" Text="This is an excellent answer, thanks.  I hadn't given thought to what happens when combat drags on... and players are reduced to less than useful.  To help combat this, I was thinking of using a Wound Threshold... which I'll explain in my edit above." CreationDate="2010-11-04T11:52:09.340" UserId="2316" />
  <row Id="6215" PostId="5194" Text="Lets give you an example that don't work nicely for games : functional programming. Okay you cited LISP, so you see what I mean. So it's not all languages that are adequate. In fact, even Flash have quircks that make game engine go over the environnement to make it's own game loop for example." CreationDate="2010-11-04T12:38:07.473" UserId="364" />
  <row Id="6217" PostId="5173" Score="2" Text="If you're going for old-school Zelda on the NES used 1-screen only maps.  Small maps help players focus the scope of their intent (i.e. in a dungeon, you're dealing with your room only.  In diablo, monsters didn't move up&amp;down floors) and allow them to feel completion if they've searched the entire area that open-space games like FAllout3 and Oblivion don't give you." CreationDate="2010-11-04T12:49:27.287" UserId="2316" />
  <row Id="6218" PostId="5194" Text="That has a little more to do with the &quot;OS&quot; of flash.  In an event-driven OS like on the iPhone, you don't need a game loop." CreationDate="2010-11-04T12:50:41.140" UserId="2316" />
  <row Id="6219" PostId="5194" Text="Plus, many great games were coded in BASIC - snake comes to mind.  Functional programing was used exclusively to code games like Mario and a lot of the early stuff.  I seriously doubt the 8-bit NES has a OO compiler." CreationDate="2010-11-04T12:55:44.160" UserId="2316" />
  <row Id="6220" PostId="838" Text="Just like [water world.](http://en.wikipedia.org/wiki/Waterworld)  BAD." CreationDate="2010-11-04T13:00:25.387" UserId="2316" />
  <row Id="6221" PostId="761" Text="+1 the developer commentary is AMAZING." CreationDate="2010-11-04T13:00:45.043" UserId="2316" />
  <row Id="6222" PostId="803" Text="Or provide some way of overcoming them, like in Wii Mario." CreationDate="2010-11-04T13:01:47.443" UserId="2316" />
  <row Id="6223" PostId="5185" Text="@Joe.  Amen brotha!" CreationDate="2010-11-04T13:03:29.407" UserId="2316" />
  <row Id="6224" PostId="5194" Score="1" Text="Just because you don't know how to do it doesn't mean it can't be done: http://www.gamasutra.com/view/feature/2985/postmortem_naughty_dogs_jak_and_.php?page=2 (see 5. GOAL rules!) Naughty Dog wrote Jak and Daxter in LISP, and that's a AAA Game. It's not exactly an RPG, but I don't see a reason why an RPG cannot be done when something like Jak &amp; Daxter can." CreationDate="2010-11-04T13:09:19.170" UserId="13" />
  <row Id="6225" PostId="5194" Text="@Michael, they wrote it in (Game Object Assembly Lisp).  Not strait LISP, and [they admit that it sucked.](http://www.gamasutra.com/view/feature/2985/postmortem_naughty_dogs_jak_and_.php?page=3)" CreationDate="2010-11-04T13:15:24.713" UserId="2316" />
  <row Id="6226" PostId="5194" Text="@Michael, if I could get a decent AI written in LISP running alongside a OO program to progressively generate levels and content based on the choices by the player *I would use it in a heartbeat.*" CreationDate="2010-11-04T13:19:54.753" UserId="2316" />
  <row Id="6227" PostId="5194" Text="I agree with Michael Barth. Checkout this ant colony simulation written in clojure by rich hickey http://clojure.googlegroups.com/web/ants.clj?gda=94_1_zoAAADKqc_OBXvAPFRl94RaAIUvPwqfUIV34XrJiBVGxD2ITe9OU0NQiFWgQuhmPR7veGf97daDQaep90o7AOpSKHW0 " CreationDate="2010-11-04T14:12:02.833" UserId="267" />
  <row Id="6228" PostId="5187" Text="In Freeciv/CivII you may increase the settler population cost: it's not a real solution but it helps. Some other answers are much better though." CreationDate="2010-11-04T14:40:20.737" UserId="2188" />
  <row Id="6229" PostId="5195" Text="The resource production is *already* proportional to the population, and that is exactly the problem: two size 1 cities produce as much as one size 2 city. He wants the size 2 city to be better instead." CreationDate="2010-11-04T14:42:39.207" UserId="2188" />
  <row Id="6230" PostId="5187" Text="@Lo'oris: Indeed; increasing the cost of the settler is a partial solution; but it only treats the symptoms, not the disease; and it leads to a bit of a plot hole: If I send two &quot;guys&quot; two squares over; why does only one of them arrive? In early game this might make sense, but later on it's pretty damning." CreationDate="2010-11-04T14:44:25.820" UserId="3015" />
  <row Id="6231" PostId="5170" Text="By midpoint elevation I mean a situation where you can only set and store the elevation for the midpoint; if two hexes have different enough elevations, edges around them would be lifted to match the elevations of their faces. (e.g. 1,1 has an elevation of 3; 1,2 has an elevation of 5: the face 1,1:1,2 has an elevation of 4 when rendered)." CreationDate="2010-11-04T14:47:20.557" UserId="3015" />
  <row Id="6232" PostId="5188" Text="Getting rid of cities completely isn't really an option; I think. It's to crazy, too stark. But the option of perhaps having more than one queue per city is an intriguing possibility, as is empowering improvements (irrigation is pretty weaksauce. ;)" CreationDate="2010-11-04T14:48:50.540" UserId="3015" />
  <row Id="6233" PostId="5193" Text="Well, it's a developmental issue, isn't it? A civilization starts as an ICS but but the sprawl is incorporated into cities as agriculture kicks off, and then as urbanism becomes a chore; you get suburbs, creating suburban sprawl. Annexing is definitely a part of the solution, I think. I just need to think a bit about the mechanics of it. ;)" CreationDate="2010-11-04T14:53:35.027" UserId="3015" />
  <row Id="6235" PostId="5188" Text="My basic theory is that if players get more or less the same benefits in a single city than they do in multiple, ICS will just be a waste of settler building. " CreationDate="2010-11-04T15:00:55.630" UserId="678" />
  <row Id="6236" PostId="5188" Text="And yes, I agree, getting rid of cities is pretty radical. But you can also think of it in another way: it's a way to embrace the ICS instead of fighting it. Every square is its own lightweight city, with control schemes and structures designed specifically for this kind of gameplay, instead of the players choking in the city management overhead." CreationDate="2010-11-04T15:01:18.453" UserId="678" />
  <row Id="6237" PostId="5195" Text="oh, sorry, I left that out." CreationDate="2010-11-04T15:12:20.090" UserId="2316" />
  <row Id="6238" PostId="5187" Text="I'd suggest making this question community wiki. There might be a good answer to &quot;what rules should be in place?&quot;, if someone does or has done a real analysis of many 4X games (unlikely), but whether it _should_ be a viable strategy is definitely subjective." CreationDate="2010-11-04T15:27:04.347" UserId="744" />
  <row Id="6239" PostId="5176" Score="1" Text="-1. There are too many questions here, most unrelated to the title question, and &quot;How does an RTS engine work?&quot; is probably too general to answer other than by &quot;here's an RTS game's source code&quot;." CreationDate="2010-11-04T15:29:09.383" UserId="744" />
  <row Id="6240" PostId="5187" Text="@Joe Wreschnig: That last bit isn't really part of the question per se; it's more of a lead-in." CreationDate="2010-11-04T15:29:31.440" UserId="3015" />
  <row Id="6241" PostId="5187" Text="A lead-in to what?" CreationDate="2010-11-04T15:31:37.977" UserId="744" />
  <row Id="6242" PostId="5194" Text="@Stephen: Yeah, it wasn't straight LISP, but I don't think it was that much different. Also, one of the main reasons it sucked was, that there was only a single person who understood it all, which is always bad -- independent of the language you use. Last but not least, just wanted to say: It's possible. Can't say much about how good it is :)" CreationDate="2010-11-04T15:31:54.593" UserId="13" />
  <row Id="6243" PostId="5187" Text="Well, to the answer. Basically shorthand for &quot;Or is my thinking completely upside down? Is the question irrelevant because ICS should be a completely viable strategy?&quot; The intent of the sentences is now clarified." CreationDate="2010-11-04T15:33:04.043" UserId="3015" />
  <row Id="6244" PostId="5198" Text="Indeed. An intriguing idea." CreationDate="2010-11-04T15:35:21.450" UserId="3015" />
  <row Id="6245" PostId="5177" Score="1" Text="I think you'll find that varies from engine to engine. Many of the larger engines - especially those that work on consoles - will use a disk format identical or close to the memory format. But it's pretty easy to find PC-only games shipping with PNG or JPEG assets. If you have to go to disk for a load that's going to dominate your time anyway. Plus, Mike specifically mentions PNG and JPEG as the disk format." CreationDate="2010-11-04T15:35:56.290" UserId="744" />
  <row Id="6246" PostId="5195" Text="@Stephen Furlani: A pretty big thing to leave out. ;)" CreationDate="2010-11-04T15:36:22.760" UserId="3015" />
  <row Id="6247" PostId="5187" Text="If it's leading to answers, it's part of the question. I still think this is CW." CreationDate="2010-11-04T15:38:53.823" UserId="744" />
  <row Id="6248" PostId="5170" Score="1" Text="It's not a non-issue at runtime because you'll need to be able to calculate paths for movement, height differences for combat advantage, and so on. It might be a non-issue at runtime because a dozen more floats per hex aren't really that bad on most platforms, but the data still needs to be there to use the map." CreationDate="2010-11-04T15:40:50.980" UserId="744" />
  <row Id="6249" PostId="5195" Text="yes, sorry, I meant to imply some sort of gaussian population/resource curve." CreationDate="2010-11-04T15:47:16.410" UserId="2316" />
  <row Id="6250" PostId="5192" Text="If allowed, list questions like this should be CW. But I'm -1ing because I think this is a ridiculous question. No programming language feature is more or less game oriented than any other." CreationDate="2010-11-04T16:00:12.853" UserId="744" />
  <row Id="6251" PostId="5196" Text="Just because 10fps is acceptable for your game doesn't make it a good idea, especially on a device with power constraints like an iPhone. You could be doing zero redraws, let the GPU side handle rasterization, and actually let the program spend some time sleeping, so the phone doesn't get hot or run out of battery life." CreationDate="2010-11-04T16:06:53.737" UserId="744" />
  <row Id="6252" PostId="40" Text="@Ricket Yes, a _graphics_ engine, but not a game engine which is what he most probably meant as this is strongly emphasized in the ogre docs. Also the singleton (anti)pattern certainly has nothing to do with it being an engine or not." CreationDate="2010-11-04T16:17:30.960" UserId="267" />
  <row Id="6253" PostId="5186" Score="3" Text="Some illustrative math: 10MB of Tile*s gets you a square with 1619 tiles per side. The original Zelda's maps were 256 tiles on the long side and less than half that on the short side - so your map could be more than 36x larger than the first Zelda's with that memory usage. Are you really prepared to make that much _content_? (No.)" CreationDate="2010-11-04T16:18:59.653" UserId="744" />
  <row Id="6254" PostId="5192" Text="CW &lt;&lt; agreed, forgot about it.&#xA;&quot;No programming language feature is more or less game oriented than any other.&quot; &lt;&lt; Can you explain this poin? I didn't ask for a programming language but for programming paradigms that are important for a game programmer and that should be considered seriously if you wanted to implement a language made with games in mind. PHP is made with web in minde, so there ARE  languages with target domain in mind, whatever the final usage is." CreationDate="2010-11-04T16:26:27.510" UserId="364" />
  <row Id="6255" PostId="5192" Text="Maybe the question should be reformulated then? " CreationDate="2010-11-04T16:27:58.663" UserId="364" />
  <row Id="6256" PostId="5187" Text="Just set the game to take place in space.  Potential colony (&quot;city&quot;) locations are inherently limited to sectors containing habitable star systems ;)." CreationDate="2010-11-04T16:34:15.007" UserId="136" />
  <row Id="6257" PostId="5187" Text="What actually is 'smallpox'? I take it we're not referring to the actual disease, but some symbolism." CreationDate="2010-11-04T16:38:55.517" UserId="1156" />
  <row Id="6258" PostId="1271" Score="2" Text="These book are excellent, talk about solving common problems in game design, however a disclaimer must be placed. These are NOT beginners books. Only when I nearly completed my BS in Computer Science did these book really shine for me." CreationDate="2010-11-04T17:09:54.633" UserId="2910" />
  <row Id="6259" PostId="5187" Text="@Joe Only admins can make questions CW, so there is no point in arguing about it with the question author.  See http://meta.stackoverflow.com/questions/67039/what-can-we-do-to-make-community-wiki-better/67192#67192.  If you feel strongly about it, you can flag the question for moderator attention, but I think you'll find that this no longer meets the definition of CW." CreationDate="2010-11-04T17:13:20.707" UserId="2968" />
  <row Id="6260" PostId="5196" Text="@Joe Wreschnig...???  I said it draws on demand, when the player moves the screen, otherwise the background image for the UIImageView *doesn't get redrawn*, thus saving processing power.  Your comment doesn't make sense." CreationDate="2010-11-04T17:14:13.103" UserId="2316" />
  <row Id="6261" PostId="5194" Text="Right, which is why I said that it would be a horrible choice, not an impossible one." CreationDate="2010-11-04T17:16:10.840" UserId="2316" />
  <row Id="6262" PostId="5196" Text="I'm not making a claim about the fps your game requires. I'm saying, OpenGL can provide 60fps for such a thing trivially (really, you don't even talk about &quot;redraws&quot; with static scenes and OpenGL) - if you only need 10fps then using OpenGL lets you not waste battery power for the other &quot;50 frames&quot;. Your drawing method is wasteful in a world with GPU acceleration. That's probably OK on a PC, but not when you're draining a battery." CreationDate="2010-11-04T17:42:47.083" UserId="744" />
  <row Id="6263" PostId="5192" Text="http://blog.stackoverflow.com/2010/09/good-subjective-bad-subjective/ Thus, questions that are not answerable — discussions, debates, opinions — should be closed as subjective. It seems simple enough: Fact good; opinion and discussion bad. But why?&#xA;&#xA;Most forums and chat rooms have a scale problem. As in, they don’t. The more people that join the discussion, the more noise each of those connections bring. So the forums get progressively noisier and noisier, and suddenly one day … you stop learning." CreationDate="2010-11-04T17:44:13.253" UserId="891" />
  <row Id="6264" PostId="5192" Text="As if there was no question with several interesting answers. " CreationDate="2010-11-04T17:53:03.207" UserId="364" />
  <row Id="6265" PostId="5207" Text="Dynamic generation does seem like a pretty good idea, as long as the player doesn't notice. Otherwise I think they would feel quite cheated. I love the floodfill idea, though." CreationDate="2010-11-04T19:14:52.550" UserId="1705" />
  <row Id="6266" PostId="5207" Score="2" Text="Well, your entire proposal is in some sense cheating the player. Don't blame me for refining the math to not require a world model. ;) But you can use design tricks to make it more palatable - for example, the exit is placed a priori, but a key required to use it is generated in the method I described, or placed on a monster that only spawns after exploring X rooms / killing X monsters, or opening the door requires flipping X switches, one in each room, etc..." CreationDate="2010-11-04T19:19:25.707" UserId="744" />
  <row Id="6267" PostId="5210" Text="Converted to CW, this is just a list of items, not necessarily an &quot;expertise&quot; type question." CreationDate="2010-11-04T20:14:39.667" UserId="51" />
  <row Id="6268" PostId="5210" Text="@Tetrad: Thanks.  That seemed the thing to do, I guess a rating of 1 doesn't let me start one. :)" CreationDate="2010-11-04T20:16:54.007" UserId="3051" />
  <row Id="6269" PostId="5212" Text="I've always had trouble getting into Dwarf Fortress so I didn't know flowing water was a part of it.  I'll have to check that out.  Thanks!" CreationDate="2010-11-04T20:19:21.943" UserId="3051" />
  <row Id="6270" PostId="5211" Text="As I said, I'm looking for something close, even if it doesn't meet all of my requirements. I realize that I've listed a fairly steep list of requirements; but something close, which works in Java or Flash instead, might be acceptable, or something which I'm able to hook leaderboards into would be fine. The most important requirements are that I can easily implement an online board game, with as wide a reach as possible. The rest are &quot;nice to have&quot;, but not necessary." CreationDate="2010-11-04T20:20:31.803" UserId="3053" />
  <row Id="6271" PostId="5210" Score="1" Text="@chaosTechnician, actually end users can't mark things as CW anymore.  See this: http://meta.stackoverflow.com/questions/392/should-the-community-wiki-police-be-shut-down" CreationDate="2010-11-04T20:28:08.717" UserId="51" />
  <row Id="6272" PostId="5213" Text="I know you could electrify the water, and there by all the enemies that stood on/in it. So that made the water a gameplay feature." CreationDate="2010-11-04T20:55:52.570" UserId="2958" />
  <row Id="6273" PostId="5217" Text="+1 Wetrix was the first thing that came to mind. " CreationDate="2010-11-04T21:05:27.380" UserId="154" />
  <row Id="6275" PostId="5150" Text="@bummzack: I've prepared an example that can be seen here: http://bit.ly/9Kqomy&#xA;@Gregory Weir, @Spooks: The full-blown version, as described above, had some elastic feel in it but to simplify things I've fixed player's position at the center of the screen just to show the main problem which is inproper tile generation frequency.&#xA;&#xA;Nonetheless I've decided to completely rebuild the generation mechanism which I believe was fundamentally flawed. I've described a proper way in an answer to this question." CreationDate="2010-11-04T21:15:38.303" UserId="2080" />
  <row Id="6276" PostId="5216" Text="Great suggestions!  Looks like a lot of different uses for liquid are used there.  Should help me come up with some good stuff." CreationDate="2010-11-04T21:22:44.313" UserId="3051" />
  <row Id="6277" PostId="5217" Text="I can't believe I forgot out Wetrix.  My brothers hated when I'd play that game.  Thanks for the reminder!" CreationDate="2010-11-04T21:23:32.597" UserId="3051" />
  <row Id="6278" PostId="5214" Text="Wow.  That game looks really cool.  Probably deeper than I wanted to take the concept but certainly good for inspiration/ideas.  Thanks!" CreationDate="2010-11-04T21:24:29.133" UserId="3051" />
  <row Id="6279" PostId="5215" Text="Looks pretty cool.  Seems water does play a big part in it. :)  I'll have to check it out." CreationDate="2010-11-04T21:25:04.313" UserId="3051" />
  <row Id="6281" PostId="5207" Text="I tried a floodfill approach. It does a good job of connecting every room and produces short branches, but it doesn't actually produce the longest possible path to the exit even if the exit is the last node visited (or, in my implementation, the farthest one). (example added to my question)" CreationDate="2010-11-04T21:43:41.277" UserId="1705" />
  <row Id="6282" PostId="5207" Text="I'm all for key/switch-based mazes, though. It just seems easier to implement that sort of thing with trees, because then if you have two branches, you can detect which branch leads to the exit, block it, and put the key in the other branch." CreationDate="2010-11-04T21:47:38.653" UserId="1705" />
  <row Id="6283" PostId="5207" Text="But I do admit that I was wrong in thinking that it was an &quot;A to B&quot; pathfinding problem. I realize it makes more sense to find the exit as a result of the algorithm rather than as a goal." CreationDate="2010-11-04T21:51:46.853" UserId="1705" />
  <row Id="6284" PostId="5209" Text="@jpaver This has to be DE most complete and desirable answer that a newbie to game dev could've wished. The amazing thing is that you made it possible !! Many, MANY thanks!!" CreationDate="2010-11-04T23:49:35.750" UserId="1129" />
  <row Id="6286" PostId="4996" Text="I wish there's a way to mark two correct answers" CreationDate="2010-11-05T10:48:28.810" UserId="2132" />
  <row Id="6287" PostId="5215" Score="1" Text="As I understand it, the actual 'playing with water' is not part of the main gameplay, however. I think it's a bonus feature, or an unlockable, something like that." CreationDate="2010-11-05T10:55:11.267" UserId="1101" />
  <row Id="6288" PostId="5196" Text="@Joe, I'm still not sure what you're saying.  It draws an image.  Then the image is left alone until the player reaches a boundary, and then re-draws a new image.  How does that waste battery life?  It only &quot;draws&quot; on demand, and the rest of the time the view is drawn using UIImageView's native drawing algorithm." CreationDate="2010-11-05T11:35:26.957" UserId="2316" />
  <row Id="6289" PostId="5205" Score="1" Text="I was going to suggest Primm too :-), +1 , I think backtrack is an important part of a lot of games too... check diablo 2." CreationDate="2010-11-05T11:39:02.800" UserId="2708" />
  <row Id="6290" PostId="5187" Text="@Duck: creating many size-1 cities (as opposed to let them grow as intended by the developers, who clearly didn't notice this problem in the first place)" CreationDate="2010-11-05T12:42:10.733" UserId="2188" />
  <row Id="6291" PostId="5187" Text="@Joe: we tested this rule in many Longturn games, but later they removed it saying that smallpox was pointless anyway due to rapture being much a better tactic apparently." CreationDate="2010-11-05T12:43:50.187" UserId="2188" />
  <row Id="6292" PostId="5208" Text="This guy has an amazing HTML5 [Javascript NES emulator.](http://benfirshman.com/projects/jsnes/)  He might be a good guy to ask about engines." CreationDate="2010-11-05T12:45:39.913" UserId="2316" />
  <row Id="6296" PostId="4930" Text="I always found learning the theory to be more challenging and take longer to assimilate.  Doing the practical work is usually a piece of cake compared to the topics your learn in Computer Science.  Then again, this is my experience and it can vary between students and schools." CreationDate="2010-11-05T14:23:23.813" UserId="2812" />
  <row Id="6297" PostId="5192" Text="There are plenty of such questions - they're not just appropriate for Stack Exchanges." CreationDate="2010-11-05T15:18:02.103" UserId="744" />
  <row Id="6298" PostId="5192" Text="Are you sure? AFAIK, there are plenty of such legitimate questions in StackOverflow.com and other stackexchange website. It's not a debate here, i'm asking for paradigms. They are not fighting ones another..." CreationDate="2010-11-05T15:26:46.687" UserId="364" />
  <row Id="6299" PostId="4930" Text="I find it is the opposite, I always find the theory easy, but practicing is frightening me. Of course, when you want to learn a topic and you feel you don't know enough, you HAVE to jump on occasions to learn about something, curiosity is the most important quality. And don't forget it takes time for a brain to wire everything there is about a topic, it takes time." CreationDate="2010-11-05T15:44:17.700" UserId="1829" />
  <row Id="6303" PostId="5226" Score="1" Text="That app needs to be downloaded on the Xbox itself, not the PC, right? So not sure how one would go around to do that &quot;for you&quot;..." CreationDate="2010-11-05T17:27:10.420" UserId="2239" />
  <row Id="6304" PostId="5236" Score="4" Text="The horror! Please replace someway all these horrible cases with a simple `event.keyCode-96`... (don't forget to check the range, ofc)" CreationDate="2010-11-05T17:47:48.513" UserId="2188" />
  <row Id="6305" PostId="5244" Text="Let's say for a generalised graphics engine, for example one that fulfils the same needs as Ogre or Unity." CreationDate="2010-11-05T19:45:59.443" UserId="1386" />
  <row Id="6306" PostId="5244" Text="I'm going to attempt a reword to make it clear what I'm looking for." CreationDate="2010-11-05T19:49:05.820" UserId="1386" />
  <row Id="6307" PostId="5243" Score="1" Text="-1, The question is way too vague to be useful.  If you had a specific system with some background information on how it worked there might be an answer there on how to speed things up.  But as it stands it's about as useful and insightful as &quot;how can I make my fps go up&quot;." CreationDate="2010-11-05T19:51:40.453" UserId="51" />
  <row Id="6308" PostId="5243" Text="&quot;how can I make my fps go up&quot; is *exactly* what I'm looking for. I think the answers would be very useful." CreationDate="2010-11-05T19:54:56.467" UserId="1386" />
  <row Id="6309" PostId="5227" Text="@Ricket - Can you find the &quot;queue&quot; somewhere and try to download it someplace?" CreationDate="2010-11-05T19:54:58.707" UserId="2995" />
  <row Id="6310" PostId="5243" Text="-1: 'Quickly' on what?  PC, Mobile, WebBrowser, or Console?  'Modern' is waaay to vague." CreationDate="2010-11-05T19:55:03.237" UserId="2316" />
  <row Id="6311" PostId="5243" Text="I've specified modern PC game, although I think many of the approaches may be platform independent." CreationDate="2010-11-05T19:56:38.463" UserId="1386" />
  <row Id="6312" PostId="5236" Score="1" Text="you can also do `case (int)'0'` or `case (int)'+'` which might help in readability." CreationDate="2010-11-05T19:56:41.643" UserId="2316" />
  <row Id="6313" PostId="5224" Text="try using [bicubic interpolation instead of bilinear?](http://en.wikipedia.org/wiki/Bicubic_interpolation) I have no idea if that's your problem, but it LOOKS like it is." CreationDate="2010-11-05T20:05:57.250" UserId="2316" />
  <row Id="6314" PostId="5245" Text="I'm well aware of 'make games, not engines'. Are you saying it's not possible to describe any of 'optimizing cache/making good use of paralleism/having good algorithms' without me making the purpose of the graphics engine more specific?" CreationDate="2010-11-05T20:06:05.033" UserId="1386" />
  <row Id="6315" PostId="5245" Text="Yep, you can't optimize without a specific target in mind, optimizing code for an X86 machine will be horrible in PS3's Cell, hell if you go deep enough optimized code for Intel chips will be slower in AMD ones. It's the same for algorithms, some might be &quot;faster&quot; on theory but very inefficient in cache use while another &quot;slower&quot; one end up faster because it has better cache use, and they both can be slower on another hardware architecture with different kinks." CreationDate="2010-11-05T20:18:55.013" UserId="715" />
  <row Id="6316" PostId="3615" Score="2" Text="Just an aside, hexes can be mapped to a 2-dimensional array. Picture a square grid, then shift every even column half a step down. You've got an offset square grid now, which is isomorphic to a hex grid." CreationDate="2010-11-05T20:22:59.973" UserId="2653" />
  <row Id="6317" PostId="5226" Text="Well I assumed they'd give you a installer file (on the PC, on the LIVE marketplace site) which you could just send over to me!!" CreationDate="2010-11-05T20:38:23.540" UserId="2995" />
  <row Id="6318" PostId="5068" Text="Real answer? Just luck and the right content to the right time, with a community base (classic client). No real aim at all, sitting in nowhere with no quest generates some kind of addictiveness." CreationDate="2010-11-05T21:24:46.673" UserId="2063" />
  <row Id="6319" PostId="5246" Text="I use action script3 " CreationDate="2010-11-05T22:52:14.890" UserId="2167" />
  <row Id="6320" PostId="5246" Text="please explain more what you mean . thanks for your help ." CreationDate="2010-11-05T22:52:50.927" UserId="2167" />
  <row Id="6321" PostId="5237" Text="For the first part I gauss it will work well but I'll use many function for every button . Maybe if I can make the button move to the next frame it 'll make sense . " CreationDate="2010-11-05T22:54:56.747" UserId="2167" />
  <row Id="6322" PostId="5237" Text="For the second part I use As3 , and there  isn't any errors when I use backspace before entering any numbers. Thanks for your help." CreationDate="2010-11-05T22:57:21.583" UserId="2167" />
  <row Id="6323" PostId="5227" Text="@Edwardian - Found it. See edit. Sorry!" CreationDate="2010-11-06T00:42:15.267" UserId="189" />
  <row Id="6324" PostId="5248" Text="Can you go into detail a bit more? It's an intriguing idea but probably a new one. An example would do wonders. While we're on the topic of style and standards... Isn't a tl;dr line redundant to the title? Your question isn't very long and by clicking on it we chose to read it ;)" CreationDate="2010-11-06T01:22:43.003" UserId="189" />
  <row Id="6325" PostId="5248" Text="@Ricket: The whole TL;DR thing is sort of my style. K)" CreationDate="2010-11-06T01:24:57.153" UserId="3015" />
  <row Id="6326" PostId="5144" Text="So I solved the issue after some thought: only collisions between different *types* of objects really matter.  So I created a collision manager that has a collision delegate for pairs of classes.  This seems to work for now.  Thanks anyway!" CreationDate="2010-11-06T02:07:25.600" UserId="1400" />
  <row Id="6327" PostId="5247" Text="A very elegant solution in principle. Next time I should try to think of something like this before going for convoluted techniques." CreationDate="2010-11-06T04:47:47.880" UserId="1705" />
  <row Id="6328" PostId="5126" Text="Agreed; a short, original idea is much more appealing to me as a player, than a long list of features. However, &quot;Tap Defense&quot; in particular seems very similar to the whole &quot;Bowmaster&quot; subgenre, where you fire upgradeable arrows from your castle at incoming enemies.&#xA;&#xA;I once planned a &quot;rythm tower defense&quot;: a TD where you had to keep up with the beat and create musical combos with your towers, a la Patapon. Didn't get very far." CreationDate="2010-11-06T05:07:43.923" UserId="1705" />
  <row Id="6329" PostId="5252" Text="XML also comes with XML-schemas which allow you do define and validate your XML format. Really useful if you plan to open your XML data for editing by third parties." CreationDate="2010-11-06T08:09:19.393" UserId="20" />
  <row Id="6330" PostId="5251" Text="&quot;You can find many great XML parsers that are proven to be robust, fast and leak-free.&quot; Not really. At best, pick two - for most XML parsers I've seen, you get one." CreationDate="2010-11-06T10:42:46.980" UserId="744" />
  <row Id="6331" PostId="1265" Text="Shouldn't we create a format for posting the books? &#xA;One book with a linked title and a short description of why it's recommended and what it's about per answer?" CreationDate="2010-11-06T12:01:39.193" UserId="1199" />
  <row Id="6332" PostId="1306" Text="Would you mind posting the Clean Code and The Pragmatic Programmer as two new ansers?" CreationDate="2010-11-06T12:05:21.293" UserId="1199" />
  <row Id="6333" PostId="5252" Text="XML is a pain to write by hand, while CSS is much much much more friendly. That said, I agree that writing a parser when there's one ready is just stupid." CreationDate="2010-11-06T13:24:02.613" UserId="2188" />
  <row Id="6334" PostId="5257" Score="1" Text="Instant +1 for the &quot;screw XML&quot; ^_^" CreationDate="2010-11-06T13:27:42.140" UserId="2188" />
  <row Id="6335" PostId="5204" Text="If you force the player to take the longest path possible, you are actually building a straight path that pretends to be complex. This is bad." CreationDate="2010-11-06T13:31:55.570" UserId="2188" />
  <row Id="6336" PostId="1265" Text="I think the answers should be game development specific and not &quot;generally accepted best practices for every coder&quot; type books, such as Code Complete and Clean Code. Yes, those are good books, but this list should be specific." CreationDate="2010-11-06T14:06:27.243" UserId="2535" />
  <row Id="6337" PostId="5225" Text="I love this book! I often just open it to an arbitrary page and start reading." CreationDate="2010-11-06T14:31:58.630" UserId="2535" />
  <row Id="6338" PostId="1265" Text="I agree on that, Stack Overflow already has a great list for general purpose programming books and other subjects that're programming related (lacking game dev.). That's why I placed them beneath the line." CreationDate="2010-11-06T14:39:38.947" UserId="1199" />
  <row Id="6339" PostId="5261" Text="What do you mean by &quot;category&quot;? I suppose you don't mean game genre like RPG, Puzzle, Shooter, etc." CreationDate="2010-11-06T15:28:04.427" UserId="13" />
  <row Id="6340" PostId="5261" Text="Yes not genre, i mean are they classified as casual or any other." CreationDate="2010-11-06T16:04:42.490" UserId="1345" />
  <row Id="6341" PostId="5260" Text="-1, legal question." CreationDate="2010-11-06T17:18:46.740" UserId="744" />
  <row Id="6342" PostId="5204" Text="It's not bad (it's the basis of the rail shooter genre, for example), but you need to be aware you're doing it and design the rest of your game to work well with it." CreationDate="2010-11-06T18:07:13.270" UserId="744" />
  <row Id="6343" PostId="5252" Text="Lo'oris, you shouldn't be writing the XML by hand. It should come from a tool or exported from Excel. " CreationDate="2010-11-06T19:32:36.970" UserId="154" />
  <row Id="6344" PostId="5252" Text="&lt;range value=1/&gt; and &lt;sprite path=&quot;/isophex/artillery.png/&gt; would be more &quot;XMLally correct&quot;." CreationDate="2010-11-06T20:11:12.350" UserId="2437" />
  <row Id="6345" PostId="5251" Text="and writing parsers for small custom formats isn't all that hard :)" CreationDate="2010-11-06T20:23:32.067" UserId="1178" />
  <row Id="6346" PostId="5251" Text="No, it's not, but it is an extra effort :)" CreationDate="2010-11-06T20:30:40.007" UserId="849" />
  <row Id="6348" PostId="5230" Text="xoffset and yoffset are to calculate in the way GIMP divides images into grids, but my program all works on one tile so x and y offset would be 0" CreationDate="2010-11-07T00:08:01.553" UserId="3060" />
  <row Id="6349" PostId="993" Score="1" Text="The only kind of version that I find acceptable is if you die enough the game either recommends turning the difficulty down in a menu, or the game unlocks a lower difficulty level. Having the game dynamically change difficulty is frustrating." CreationDate="2010-11-07T01:12:44.283" UserId="962" />
  <row Id="6350" PostId="3380" Text="FYI: I went with a stack of data.  I pop the next item and load it into memory.  I get the % by saying (Number of popped items/Total stack items)" CreationDate="2010-11-07T03:36:05.950" UserId="47" />
  <row Id="6351" PostId="5276" Score="2" Text="-1, subjective unless there are specific needs that you're looking in one over another.  Also why are you just limited to those two options?  There are a lot of free/low cost engines out there (like Unity).  " CreationDate="2010-11-07T08:18:36.527" UserId="51" />
  <row Id="6352" PostId="5276" Text="There are also a lot of &quot;which engine should I use&quot; questions already out there.  Like this one: http://gamedev.stackexchange.com/questions/351/pros-and-cons-of-various-3d-game-engines" CreationDate="2010-11-07T08:21:28.490" UserId="51" />
  <row Id="6353" PostId="5264" Text="This is the only correct answer, nobody but a lawyer reading the actual exact language of the contract can answer this and any real lawyer is not going to advise you on this without doing it &quot;officially&quot; and through the proper channels." CreationDate="2010-11-07T10:49:10.223" UserId="142" />
  <row Id="6354" PostId="5280" Text="OK , I'll use Mocha score. I gauss it's the best one ." CreationDate="2010-11-07T11:55:49.993" UserId="2167" />
  <row Id="6355" PostId="5252" Text="@Raveline: There is no consensus on whether element cdata or attribute values is &quot;more XMLally correct&quot;. Attribute values will more often require escaping, and are not as extensible." CreationDate="2010-11-07T12:31:20.593" UserId="744" />
  <row Id="6356" PostId="5252" Text="@wkerslake: People say that but it doesn't really hold up to scrutiny. If you're always generating it from a tool, XML is a bad choice because it's bloated and slow to parse. If you need to read or write it by hand, XML is a bad choice because it's bloated and noisy. XML is only a good choice if you need interoperability with other XML formats or supporting environments." CreationDate="2010-11-07T12:34:00.057" UserId="744" />
  <row Id="6357" PostId="5277" Text="Duplicate of http://gamedev.stackexchange.com/questions/1497/where-can-i-find-good-well-organized-examples-of-game-code." CreationDate="2010-11-07T12:38:09.310" UserId="744" />
  <row Id="6358" PostId="5109" Text="In general, that's accurate enough, but we need to take other things into account first.  If there are a lot of objects being quickly created and destroyed, and our hash function is good, the hashtable might be a better fit than a vector.  If you're in doubt, though, go with the vector." CreationDate="2010-11-07T14:11:20.533" UserId="29" />
  <row Id="6359" PostId="3937" Text="I don't have the rep to vote against closing (not that there is such a thing :) but I think the question should be kept *open* - see the [Legal questions discussion](http://meta.gamedev.stackexchange.com/questions/283/proper-solution-for-legal-questions) for my reasons. " CreationDate="2010-11-07T14:30:30.270" UserId="165" />
  <row Id="6360" PostId="5109" Text="Yes, I have to agree: vector is not *absolutely* faster than a hash-table. But it is faster 99% of the time (-8" CreationDate="2010-11-07T14:55:17.857" UserId="2710" />
  <row Id="6361" PostId="5288" Text="The iPhone can be developed for with Windows and C++, if you want." CreationDate="2010-11-07T15:57:07.837" UserId="1156" />
  <row Id="6362" PostId="5288" Score="2" Text="@The Communist Duck: Really? You can develop everywhere, but the official SDK is still only available on Mac OS X last time I checked, meaning you do need a Mac for final deployment and submission. (Or you can jailbreak it, but I assume if askers doesn't mention jailbreaking, they'd rather not do it.)" CreationDate="2010-11-07T16:46:32.380" UserId="744" />
  <row Id="6363" PostId="5288" Score="1" Text="-1, Subjective.  iPhone: mac/objective-c, c++/opengl es; Android: mac, pc/java, c++/opengl es; WP7: pc/c#/directx?; RIM: don't bother.  Is cost your only concern or are you trying to reach a larger audience or be able to go multiplatform later?  There are differences in the stores, the number and breadth of platforms (hardware and software) you have to/can support." CreationDate="2010-11-07T16:50:32.683" UserId="51" />
  <row Id="6364" PostId="5288" Text="http://www.dragonfiresdk.com/index.htm This seems to give the impression that you can, though I'm not entirely sure." CreationDate="2010-11-07T17:00:05.783" UserId="1156" />
  <row Id="6365" PostId="5279" Text="-1, wrong question.  &quot;How can I make my score-based game addictive&quot; is a very different question than &quot;how can I improve my end of level stats screen&quot;." CreationDate="2010-11-07T17:10:09.180" UserId="51" />
  <row Id="6366" PostId="5279" Score="1" Text="Wouldn't it have been more efficient to just rename the question than to vote down?" CreationDate="2010-11-07T17:13:49.673" UserId="1156" />
  <row Id="6368" PostId="5278" Score="3" Text="Since (from my understanding) the game is multiplayer and supports PvP, there is a likelihood that most gameplay information is not stored on the client. If that is accurate, then every time data is read from the table, it will will have to be deserialized before being remotely useful. As a result, this format makes querying items by their properties VERY expensive; for example: if you want to retrieve all the items that are of type &quot;weapon&quot;, you'd have to retrieve every item, deserialize each one, then manually filter for for the &quot;weapon&quot; type, as opposed to running a simple query." CreationDate="2010-11-07T17:20:46.173" UserId="2290" />
  <row Id="6369" PostId="5263" Text="But there is a wide gap between traditional mobile games made in J2ME or BREW, and iPhone/Android mobile games. I was hoping there would be a way to differentiate these two categories of mobile games." CreationDate="2010-11-07T17:48:09.897" UserId="1705" />
  <row Id="6370" PostId="5277" Score="3" Text="Do you actually understand my question? I wish **game engines** (not just **games**). And I requested **Must be object oriented**. In the thread that you said, the answers are for **games only** (Doom3, Prototype, etc.) And also there is a graphic toolkit (OpenSceneGraph) but there is nothing specific about &quot;game engines&quot; on that thread... You can close or delete my question if you don't like it, but I don't understand the down vote... :( My question **is not** the same" CreationDate="2010-11-07T17:51:04.060" UserId="3020" />
  <row Id="6371" PostId="5204" Text="It's also easier to control the pace of the game when the levels are mostly linear. It makes it possible to add, for example, a recovery room after a particularly difficult monster room. If there wasn't a main path, the distribution of challenges and rewards would be random." CreationDate="2010-11-07T17:51:10.657" UserId="1705" />
  <row Id="6373" PostId="5278" Score="1" Text="From my experience, all items are read into in-memory cache at the start of the game anyway. So you only deserialize them once at startup, and do not use the database at all afterwards. If this is not so in this case, then I agree, storing serialized objects is a bad idea." CreationDate="2010-11-07T17:52:59.967" UserId="2710" />
  <row Id="6374" PostId="5277" Score="2" Text="To clarify even more, I'm not interested on game-specific code. I want general purpose game engines." CreationDate="2010-11-07T18:01:54.810" UserId="3020" />
  <row Id="6379" PostId="5279" Text="OK I'll do my best to fix it ." CreationDate="2010-11-07T18:41:47.333" UserId="2167" />
  <row Id="6382" PostId="5279" Text="Alright, undid my -1." CreationDate="2010-11-07T18:46:36.097" UserId="51" />
  <row Id="6385" PostId="5288" Score="1" Text="The dragonfiresdk lets you dev in windows using their SDK but not the iOS SDK. The final app, which you hand them your project, will be built for the iPhone using their macs. Unfortunately, it means you will have a hard time testing on the device which is critical for iPhone development." CreationDate="2010-11-07T18:53:40.033" UserId="656" />
  <row Id="6386" PostId="5279" Text="Now this feels almost like dup of http://gamedev.stackexchange.com/questions/4532/what-should-a-game-have-in-order-to-keep-humans-playing-it." CreationDate="2010-11-07T18:58:43.887" UserId="744" />
  <row Id="6389" PostId="5256" Text="that's work thank you ." CreationDate="2010-11-07T19:53:57.213" UserId="2167" />
  <row Id="6390" PostId="5288" Text="@Tetrad: I'm looking to develop more for myself than anything else, so I don't really have any interest in actually reaching a wide audience. So I guess yeah cost is my main concern since it's purely for a hobby. " CreationDate="2010-11-07T19:56:40.983" UserId="982" />
  <row Id="6391" PostId="5289" Text="Yeah that seems like the best bet. I do have java experience, do you know what game development is like on the android?" CreationDate="2010-11-07T19:57:20.217" UserId="982" />
  <row Id="6394" PostId="5302" Text="I have Ati on laptop :/ Thx :/ I will check this" CreationDate="2010-11-07T20:29:26.010" />
  <row Id="6395" PostId="5302" Text="So what can I use ? Test collision mouse-ray with triangles from meshes ?" CreationDate="2010-11-07T20:35:35.427" />
  <row Id="6396" PostId="5299" Text="Thanks, this is extremely helpful. I like how cocos2d-android (java) is based off cocos2d-iphone (objective-c) which is based off cocos2d (python) :P I'm pretty sure the MS fee is free for me since I'm a student (I know i get the xbox one free). I guess what it's going to come down to is me finding which phone I prefer (Win7 or Android)... (I'm taking a bunch of animation courses next semester that use OpenGL so that makes me lean towards Android)" CreationDate="2010-11-07T20:38:20.510" UserId="982" />
  <row Id="6397" PostId="5303" Score="3" Text="Could you try rephrasing the question? It's not making any sense to me." CreationDate="2010-11-07T22:42:30.950" UserId="1386" />
  <row Id="6398" PostId="5277" Text="There is not a huge difference between good game code and good game engine code. A game is just a game engine with a particular data set. Certain engines might excel at particular tasks, but any game of sufficient complexity contains an engine." CreationDate="2010-11-07T22:47:58.663" UserId="744" />
  <row Id="6400" PostId="825" Score="3" Text="Just make sure the animations are relatively quick. Nothing kills the mood like having to watch a checker take 4 seconds to slide. I would much rather slide it with my mouse pointer." CreationDate="2010-11-07T23:14:00.210" UserId="2535" />
  <row Id="6401" PostId="5279" Score="1" Text="@Maged, GUESS, its spelled guess, not gauss!" CreationDate="2010-11-07T23:15:28.197" UserId="962" />
  <row Id="6402" PostId="5302" Text="Yeah, you'll have to do you own picking. If you want tight results use triangle picking, or you can test against bounding boxes/spheres if you don't need that much precision." CreationDate="2010-11-07T23:19:20.133" UserId="2798" />
  <row Id="6403" PostId="5277" Score="3" Text="There is a difference: Not all games run over a general purpose engine. Doom3 has a FPS specific engine, Prototype is different, and so on... May be they have things in common (resource management, scripting...) but this is not relevant to my question. My question starts with the phrase &quot;I have coded several C++ games&quot;. I reiterate: My need is to find a good general purpose game engine source code. Not a game source to search for reusable code." CreationDate="2010-11-07T23:28:12.533" UserId="3020" />
  <row Id="6405" PostId="5275" Text="I don't really see a lot of flexibility coming out of that system.  For example, if I wanted a glass vial, able to be used as a weapon, and to be 'sharp'... ...I would be out of luck.  Plus, for every new type of item, I would have to actually create database structure for it.  Even if there were only going to be one or two of the type." CreationDate="2010-11-08T01:45:11.817" UserId="284" />
  <row Id="6406" PostId="5293" Text="how far did you go with the development so far? I've started to look at the Unity3D framework as its cross-platform including mobile devices and there are a bunch of tutorials for effects there too. www.unity3d.com" CreationDate="2010-11-08T02:28:43.617" UserId="3115" />
  <row Id="6408" PostId="5022" Score="1" Text="Based on the video, Starcraft 2's pathfinding looks like this. Does SC2 use flowfield?" CreationDate="2010-11-08T03:44:31.683" UserId="907" />
  <row Id="6409" PostId="5275" Text="The points you bring up are very valid, and highlight additional examples of why relational databases are not a good fit for this specific situation. The model I presented merely shows the best way of laying out the data in such a manner that memory is conserved and SQL functionality is retained. In order to store items that are of multiple types, the best way to represent that data under this model would be to create a potion_weapon table with the appropriate potion and weapon properties. Again, this solution is NOT ideal, but it's the most elegant solution when using a relational database." CreationDate="2010-11-08T03:56:21.080" UserId="2290" />
  <row Id="6410" PostId="5316" Text="Related: http://gamedev.stackexchange.com/questions/2282/what-kind-of-databases-are-usually-used-in-an-mmorpg" CreationDate="2010-11-08T04:53:56.993" UserId="189" />
  <row Id="6414" PostId="5319" Text="Really? I only made the switch because WPF is all the rage. I don't mind WinForms at all actually...never really cared for XAML. Binding is pretty cool though....gotta figure out the equivalent of binding in WinForms..." CreationDate="2010-11-08T06:14:52.027" UserId="800" />
  <row Id="6415" PostId="5253" Text="pretty impressive list .good work" CreationDate="2010-11-08T06:51:48.263" UserId="1251" />
  <row Id="6416" PostId="5316" Score="1" Text="An issue with some noSQL databases is that they cannot do queries unpredicted at &quot;design&quot; time in a fast way on huge datasets like event logs: http://gamedev.stackexchange.com/q/4465/450  Please keep in mind that noSQL databases require the same techniques against query injection normal than normal databases do." CreationDate="2010-11-08T07:18:26.527" UserId="450" />
  <row Id="6417" PostId="5323" Text="+1 Drawing less is definitely and unfortunately the way to go here, although with a second canvas for the background layer and a dirty flagged approach you can gain up to 50% more performance in some cases." CreationDate="2010-11-08T07:41:18.117" UserId="1713" />
  <row Id="6419" PostId="5328" Text="Some more information about what environment you're using might be appropriate - HTTP transfers data over sockets, so the question isn't really HTTP vs. sockets but HTTP vs. a custom protocol; how useful and difficult a custom protocol is depends on what your language environment offers and how high-level the socket interface is." CreationDate="2010-11-08T10:15:00.197" UserId="744" />
  <row Id="6420" PostId="5277" Score="1" Text="Doom 3 has an &quot;FPS specific engine&quot; but also has all the parts a generic engine needs - as you say, resource management and scripting, 3D rendering, physics, and so on. It's a generic engine _and more_, not somehow less." CreationDate="2010-11-08T10:17:27.727" UserId="744" />
  <row Id="6421" PostId="5328" Text="@Joe Wreschnig: The implication is that the socket interface here could be one from any number of environments: Android, iOS, .NET, WebSockets. I'll try to clarify. It is such, however, that the HTTP interface for any given environment is almost *always* higher level than the HTTP offers." CreationDate="2010-11-08T10:22:56.573" UserId="3015" />
  <row Id="6422" PostId="5126" Text="As I said, it's just a matter of personal taste.  You can go for a completely different idea if you prefer.  My suggestion is to brainstorm a long list of possible variations, and then choose only one, your favorite one, and discard the rest." CreationDate="2010-11-08T10:40:48.300" UserId="2091" />
  <row Id="6423" PostId="5241" Text="From what I can see there, it's a really cool game!" CreationDate="2010-11-08T12:34:21.090" UserId="2188" />
  <row Id="6424" PostId="4796" Text="-1 You are asking for code, which should not be done here. Try posting your question here http://stackoverflow.com/" CreationDate="2010-11-08T13:09:11.943" UserId="1251" />
  <row Id="6425" PostId="5335" Text="+1 (hoping this is not FUD :P since I don't know NoSQL at all...)" CreationDate="2010-11-08T13:52:16.280" UserId="2188" />
  <row Id="6426" PostId="5247" Text="Well, elegant maybe but it's going to be a processor hog.  O(n^2) won't scale well with large maps." CreationDate="2010-11-08T14:53:52.867" UserId="2316" />
  <row Id="6431" PostId="5330" Score="1" Text="I wouldn't exactly call pre-Doom3 id tech object oriented, though." CreationDate="2010-11-08T16:46:51.623" UserId="51" />
  <row Id="6432" PostId="5335" Text="These are all great reasons to avoid NoSQL until you actually have a need for it. Especially #3. Unless you have zillions of users already (and refuse to shard anything), you'll probably be much more productive with MySQL." CreationDate="2010-11-08T16:57:45.630" UserId="2015" />
  <row Id="6433" PostId="5335" Score="3" Text="1. You'd use: &quot;for x in db.user.find({&quot;level&quot;: {&quot;$gt&quot; : 30}})&quot;&#xA;&#xA;2. Technically, what you wrote is a script as well, so I'm not quite sure what your point is.&#xA;&#xA;3. It is VERY possible to make an MMO using SQL, and in fact, many MMOs have been developed using the technology. NoSQL technology is fairly new and has already been adopted by services like Amazon, Google, and Facebook for it's performance and flexibility.&#xA;&#xA;4. In NoSQL you would need to write your own constraints, but that's simply the cost of added flexibility." CreationDate="2010-11-08T17:10:15.673" UserId="2290" />
  <row Id="6434" PostId="5335" Score="1" Text="I agree with your statement of thinking twice. That's partially what I am doing here with this question :)" CreationDate="2010-11-08T17:10:42.693" UserId="1311" />
  <row Id="6435" PostId="5326" Text="Yes, I've heard about couchdb too, in fact, even on the mongodb's website, they commonly do comparison to it. I think that I need to research on couchdb vs mongodb." CreationDate="2010-11-08T17:15:27.633" UserId="1311" />
  <row Id="6436" PostId="5322" Text="In the example that you wrote using sql, how would you, at a high level, model it using nosql? " CreationDate="2010-11-08T17:17:44.200" UserId="1311" />
  <row Id="6437" PostId="5330" Score="2" Text="Nope, not object-oriented, but as I said, it's worthy of study. I mean c'mon, just because it's procedural doesn't mean it will give you eye cancer if you look at it! ;)" CreationDate="2010-11-08T17:41:27.963" UserId="3146" />
  <row Id="6439" PostId="5335" Score="8" Text="SQL is not a sliver bullet. NoSQL is not a silver bullet.  Think twice before using any technology." CreationDate="2010-11-08T17:54:21.017" UserId="2447" />
  <row Id="6440" PostId="5322" Text="Updated my answer to provide one possible model in NoSQL" CreationDate="2010-11-08T18:06:08.630" UserId="2290" />
  <row Id="6441" PostId="5344" Score="1" Text="http://careers.stackoverflow.com/" CreationDate="2010-11-08T18:20:39.943" UserId="3159" />
  <row Id="6442" PostId="1670" Score="1" Text="and of course, there's a lot of existing code ready for reuse out there. You get to start from scratch if you migrate away from what works for you. If C/C++ ever stops providing you with the ability to make those games, then I'd see change - not until then." CreationDate="2010-11-08T18:26:32.523" UserId="3160" />
  <row Id="6443" PostId="5344" Text="Aside from Diadistis' redirection, you might like to get in touch with a skilled pixel artist at [DeviantArt](http://www.deviantart.com/)" CreationDate="2010-11-08T18:37:00.180" UserId="2698" />
  <row Id="6444" PostId="5335" Score="3" Text="Regarding 3, the problem is not so much that SQL is _slow_, but that SQL is _laggy_. Generally speaking, SQL databases get excellent throughput at the expense of latency. For a web-based game, that's probably what you want! For a real-time networked game, it's probably not, and most &quot;WoW-like&quot; MMOs that use SQL use a caching layer in front of it that removes most of the benefits of SQL, which is why NoSQL is a big step up for them." CreationDate="2010-11-08T19:11:15.103" UserId="744" />
  <row Id="6445" PostId="5322" Score="1" Text="-1, your answer shows only static data. The whole debate over SQL vs. NoSQL for game databases involves highly dynamic data. The best thing to do would be to show a NoSQL transaction that trades something between two players - a very common occurrence, and one most games get wrong regardless of which type they choose." CreationDate="2010-11-08T19:13:20.873" UserId="744" />
  <row Id="6446" PostId="5322" Text="(And in particular, I'm not familiar with MongoDB, but if as you say atomic operations occur only on single entities - it's really unsuitable for transactional logic in multiplayer games.)" CreationDate="2010-11-08T19:14:20.607" UserId="744" />
  <row Id="6447" PostId="5316" Score="1" Text="@nhnb: One nice way of restating your point is &quot;use a relational database for relation data, and use an object/document database for object/document data&quot;. Unfortunately I don't think most people have experience with or spend a lot of time thinking about modelling, which leads to bad designs no matter which they choice." CreationDate="2010-11-08T19:17:56.763" UserId="744" />
  <row Id="6448" PostId="5277" Score="2" Text="@Joe Wreschnig I'm inclined to agree with @Dani on this topic. Although all games are powered by some form of an engine, the architectural patterns used for a &quot;one-off&quot; engine and an engine designed to work on multiple titles are quite different, even if they both have scripting, resource management, 3D rendering, etc. components. Additionally, looking at the code for a game built on an engine developed by the same studio is probably not the wisest choice, as it will not give you a true indication of how flexible and easy to use the engine is in a 3rd party environment." CreationDate="2010-11-08T19:20:41.567" UserId="2290" />
  <row Id="6449" PostId="5319" Text="I don't have a good site suggestion so I'll just provide this google search:&#xA;http://www.google.com/search?hl=en&amp;source=hp&amp;q=DataBinding+WinForms&amp;btnG=Google+Search&amp;aq=f&amp;oq=&amp;aqi=g6" CreationDate="2010-11-08T19:48:45.873" UserId="2766" />
  <row Id="6450" PostId="5277" Text="@Ari: That's true. But I don't think anyone would look at id Tech and claim it's a one-off engine just because a particular release also has a game. And describing it as an &quot;FPS-specific engine&quot; makes me think Dani is confused - there is no engine that is absolutely clean and performant for all types of games, and the set of things that make it an FPS engine are _in addition_ to the code that all game engines share, not _in place_ of it." CreationDate="2010-11-08T20:07:42.037" UserId="744" />
  <row Id="6452" PostId="2072" Score="1" Text="I believe win32/COM is emulated on Vista and Win 7.  Not recommended for High performance..." CreationDate="2010-11-08T20:17:54.723" UserId="2316" />
  <row Id="6453" PostId="5322" Text="I strongly disagree that &quot;the whole debate over SQL vs. NoSQL for game databases involves highly dynamic data&quot; as there is a lot (if not more) static to moderately dynamic data that goes into games online/multiplayer games. Atomic operations happen at the (highest) document level, and since documents can be embedded within each other, there is less of a need for multi-document operations." CreationDate="2010-11-08T20:25:52.107" UserId="2290" />
  <row Id="6454" PostId="5335" Text="@Joe Wreschnig +1 for laying that out in a very easy to understand manner. Out of curiosity, is there any particular reason you don't think web-based games could benefit from NoSQL?" CreationDate="2010-11-08T20:32:37.623" UserId="2290" />
  <row Id="6455" PostId="5335" Text="I might as well just make this an answer, coming soon..." CreationDate="2010-11-08T20:33:16.437" UserId="744" />
  <row Id="6457" PostId="5277" Score="1" Text="@Joe Wreschnig It seems I was unclear in my last comment. I was basically recommending to look at 3rd party games built on an engine, instead of 1st party games. I agree that there are conceptual components that all engines share/have in common, but in terms of implementation those components end up being VERY different. For example, a resource manager for an FPS is very different than that of an RTS, even though, in theory, they perform the same function." CreationDate="2010-11-08T20:54:38.233" UserId="2290" />
  <row Id="6458" PostId="5335" Text="@Joe Wreschnig in MMO like WOW (one of them I am developing now) you need to model the world in your server memory. We don't have to make a cache, we already have it as a side effect. This world is working as a cache so we have to process only 100 transaction per second. You don't need to use fast database here. So you can use database that can have a lot of features, such as SQL. And we use this features! Belive me :) And I forget to notice that SQL databases is fits for ingame-database. For resource database (like items descriptions) you must use XML or PlanText file in order to versioning." CreationDate="2010-11-08T20:56:18.640" UserId="3132" />
  <row Id="6459" PostId="5335" Score="1" Text="@Andrew: I addressed your concern on the question Ricket linked; in summary, many transactions in MMOs need to be done cross-server, and many single-server changes still need transactional memory and need to be pushed atomically and as quickly as possible to prevent upset and confused players. I don't think SQL's features (or lack of them) really come into play - it's really all about making the interface between your code and your data store as painless as possible." CreationDate="2010-11-08T20:59:28.867" UserId="744" />
  <row Id="6460" PostId="5335" Score="1" Text="@Ari Patrick  Amazon, Google, and Facebook use MySQL too. Check this out http://highscalability.com/blog/2010/11/4/facebook-at-13-million-queries-per-second-recommends-minimiz.html AFAIK this firms are using both SQL and NoSQL approaches in different services." CreationDate="2010-11-08T20:59:52.160" UserId="3132" />
  <row Id="6461" PostId="5322" Score="1" Text="@Ari: There's a lot more static data, but no one cares about the throughput for writes to it, because no one writes to it - no writes, no transactions, no ACID, no real database question, even if you happen to store it in one. That question is then easy to answer - just keep it in memory. Certainly &quot;How can we load static data faster?&quot; is an interesting question, but I don't think it's at all related to questions of SQL vs. NoSQL. -- As for multi-document operations, does this mean your database would have one document with e.g. all players in it?" CreationDate="2010-11-08T21:08:30.807" UserId="744" />
  <row Id="6462" PostId="5335" Text="@Andrew Frolov Re-reading my comment, I see how it seems like I'm saying &quot;Amazon, Google, and Facebook ONLY use NoSQL&quot; when what I was trying to get across was that the services use NoSQL as an essential layer. This brings up an interesting point that SQL and NoSQL do not have to be used exclusively (although I believe this option is probably overkill for the situation the question presents)." CreationDate="2010-11-08T21:11:26.327" UserId="2290" />
  <row Id="6463" PostId="5335" Text="@Andrew Frolov You can version control SQL databases, in fact you should ALWAYS version control your development databases, regardless of the type." CreationDate="2010-11-08T21:18:15.350" UserId="2290" />
  <row Id="6464" PostId="5277" Text="@Joe: I'm making a game engine + editor. So, the only way that I have to see a general-purpose engine example is deep searching into finished game codes? If this is your opinion, post it as a clear answer: &quot;If your are making a general-purpose engine, don't look for general-purpose examples. Is best that you look at game code cuestion and investigate many hours inside the source code of Doom3 to extract reusable code&quot;. This is the answer that I should accept?" CreationDate="2010-11-08T21:18:35.537" UserId="3020" />
  <row Id="6465" PostId="5335" Text="I do) (10 characters)" CreationDate="2010-11-08T21:23:31.127" UserId="3132" />
  <row Id="6466" PostId="5322" Text="More than likely, you would have a database of players, with individual player documents. In terms of atomicity, different flavors of NoSQL have slightly different setups. Here is some of the atomicity documentation for MongoDB, which is the NoSQL implementation mentioned by the OP: http://www.mongodb.org/display/DOCS/Atomic+Operations" CreationDate="2010-11-08T21:29:35.647" UserId="2290" />
  <row Id="6467" PostId="5289" Score="1" Text="the Android Emulator and the Android Development Tools plugin for Eclipse are both excellent.  Also the community is quite helpful as well" CreationDate="2010-11-08T21:32:13.273" UserId="2301" />
  <row Id="6468" PostId="5322" Text="So either I can put all my players in the same document and have crazy contention, or I can put them in different documents and have &quot;pseudo-atomic&quot; (barf) operations at best? NoSQL can be a step _up_ from SQL, but this ain't it." CreationDate="2010-11-08T21:48:18.057" UserId="744" />
  <row Id="6469" PostId="5342" Text="+1 Great engine. Thanks Tetrad! I already know it, but I never used nor seen it's source code. Do you know whether it has integrated AI (ie. Path finding, etc.)" CreationDate="2010-11-08T22:02:45.467" UserId="3020" />
  <row Id="6470" PostId="5322" Text="@Joe Wreschnig &quot;By default a multi-update will allow some other operations (which could be writes) to interleave. Thus, this will only be pseudo-atomic (pseudo-isolated). To make it fully isolated you can use the $atomic motifier&quot; Unless I'm reading that wrong, MongoDB is not pseudo-isolated at best, it's isolated at best." CreationDate="2010-11-08T22:04:38.100" UserId="2290" />
  <row Id="6471" PostId="5322" Text="Atomicity and isolation are not the same. See the comment by &quot;Matt&quot; near the bottom of the page. (It also sounds like it enforces isolation by a db-wide lock, again defeating the point.)" CreationDate="2010-11-08T22:07:31.153" UserId="744" />
  <row Id="6472" PostId="5322" Text="And incidentally, this failure of atomicity is _exactly_ what leads to item duping if you have a one document = one player model." CreationDate="2010-11-08T22:08:58.907" UserId="744" />
  <row Id="6473" PostId="5277" Text="I agree with Ari. For example, Doom3 is a commercial game (although now it is open source) and it's developers are required to optimize to the max to be market-competitive. So the way to handle resources, cache, actors, graphics and almost all the code is customized and optimized for this kind of game. General-purpose engines do exist (it's true) and I know that these are not as optimized as specific-game engines, but it does not matter for me because I'll not use it: I'll only study it." CreationDate="2010-11-08T22:25:30.273" UserId="3020" />
  <row Id="6474" PostId="5350" Score="2" Text="Linux on the PS3 is no longer available as OtherOS support in the PS3 loader has been disabled. There is litigation pending to try and force Sony to reactivate it. Anyway, OtherOS disabled various hardware on the system to prevent people from writing things that take full advantage of the console without Sony getting their cut." CreationDate="2010-11-08T22:32:45.903" UserId="395" />
  <row Id="6475" PostId="5354" Text="You used to be able to buy a Cell/BE evaluation board through IBM directly, not sure if they still have them." CreationDate="2010-11-08T22:37:35.330" UserId="395" />
  <row Id="6476" PostId="5342" Score="1" Text="I think it's all just rendering related." CreationDate="2010-11-08T23:20:07.120" UserId="51" />
  <row Id="6477" PostId="5356" Score="1" Text="Yep, don't think there's any more to it than this. Nicely explained." CreationDate="2010-11-09T00:10:08.203" UserId="2100" />
  <row Id="6478" PostId="5321" Text="I really have never looked at JSON that much, as I was happy with XML (How much easier could it really be).. turns out JSON is pretty amazing... but like XML not sure how will it would work if it was very data heavy" CreationDate="2010-11-09T00:27:26.430" UserId="2301" />
  <row Id="6479" PostId="5322" Text="@Joe Wreschnig Before I comment further on atomicity, I'd like to perform some tests on my end, to verify Matt's results and do some further research. I know NoSQL has been used in a number of production environments, so I would like to see how others have overcome this issue, if in fact it still exists." CreationDate="2010-11-09T00:29:57.117" UserId="2290" />
  <row Id="6480" PostId="5277" Text="Well, there could be &quot;true&quot; general-purpose engines, I suppose, but the only way to do this is by either anticipating every game type ever, or by providing a lowest-common-denominator of which functionality will be welcome for all games. In fact, if you think about it, SDL would be considered a game engine by that definition, even though it is clearly not! You're better off looking at examples of successful engines (especially those relevant to the type of game you are making, but don't restrict yourself) and gleaning what insights you can." CreationDate="2010-11-09T00:38:15.653" UserId="3146" />
  <row Id="6481" PostId="5316" Score="1" Text="@Pran In response to your question &quot;Is NoSQL a valid option for web based games?&quot; I believe the answer is yes. NoSQL databases have been used for web-based games before (such as FarmVille) and offer a lot of flexibility. The main point of contention for this question seems to be &quot;which is better (NoSQL or SQL)?&quot;. Each system has pros and cons, but both are perfectly legitimate options. If you're looking for a detailed list of the advantages of one system over the other, you may want to pay the Programmers StackExchange a vist. :)" CreationDate="2010-11-09T00:41:35.340" UserId="2290" />
  <row Id="6482" PostId="5351" Text="+1 Thanks for the comparison of both options. Furthermore, you make a good point by saying that static data should not be in the database." CreationDate="2010-11-09T00:57:53.103" UserId="1311" />
  <row Id="6483" PostId="5263" Score="1" Text="A gap in quality maybe, but I have seen some pretty awesome older cell phone games, and I have seen some really bad iPhone and Android games." CreationDate="2010-11-09T02:20:27.947" UserId="962" />
  <row Id="6484" PostId="1031" Text="Amazon Cloudhosting can solve much of the hardware problems mentioned here, but then there is the money issue :o)" CreationDate="2010-11-09T03:11:11.020" UserId="3115" />
  <row Id="6486" PostId="5320" Text="Yes tired of the if statements!  I was actually trying to get the gyst of it working and then refine it into something prettier as you suggested.  I'm working on setting up the sprite sub-class now, we will see how it works.  I will add the setStatus method you suggested.  The hash code I'm refering to supposedly would allow me to ensure I reference the same touch in all the touch methods (cctouchesBegan/Moved/Ended/Canceled) by calling the [touch hash].  I just don't know the proper way to store the hash (in the ccTouchesBegan) and how to reference it later in the other methods.  " CreationDate="2010-11-09T03:25:54.343" UserId="1037" />
  <row Id="6488" PostId="5341" Text="really nice answer :)" CreationDate="2010-11-09T08:53:00.060" UserId="3089" />
  <row Id="6489" PostId="4796" Text="You should not ask for code here? Since when?" CreationDate="2010-11-09T09:40:25.697" UserId="678" />
  <row Id="6490" PostId="5322" Score="1" Text="@Ari: Please don't confuse NoSQL, which is an idea, and MongoDB, which is a particular database. At my last job we shipped two games on a NoSQL database and got _excellent_ concurrency with low-latency. But our NoSQL database also supported multi-document transactions with field-level locking. NoSQL is not a single &quot;thing&quot; like SQL, it just refers to any database not using SQL (and usually not using relational schemes)." CreationDate="2010-11-09T09:47:23.263" UserId="744" />
  <row Id="6491" PostId="5316" Text="@Pran: If you want a broader view, ask on real Stack Overflow, not the debacle that is Programmers SE." CreationDate="2010-11-09T09:53:37.030" UserId="744" />
  <row Id="6492" PostId="5363" Score="2" Text="Irrespective of the merits of his answer, is there any reason to be rude?" CreationDate="2010-11-09T11:16:15.973" UserId="1586" />
  <row Id="6493" PostId="5161" Text="See the list of open source games on Wikipedia: http://en.wikipedia.org/wiki/List_of_open-source_video_games" CreationDate="2010-11-09T11:40:19.380" UserId="2538" />
  <row Id="6494" PostId="5152" Text="+1 , that is neat " CreationDate="2010-11-09T11:49:30.460" UserId="1251" />
  <row Id="6495" PostId="5363" Text="Good point. I'll remove it." CreationDate="2010-11-09T13:00:03.490" UserId="678" />
  <row Id="6496" PostId="5303" Text="Cisco, I think what the OP means is: how can I take the x and y of a point on a heightmap to mean the x and z coordinates? Which is sort of what a heightmap already does." CreationDate="2010-11-09T13:47:38.767" UserId="1156" />
  <row Id="6497" PostId="5369" Text="I don't know about &quot;hardly anyone&quot; - while small teams usually don't have that specific title, large studios hire people with the title &quot;game designer&quot; with a promotion path that leads to titles like &quot;lead designer&quot;, not &quot;executive producer&quot;. The game developer salary surveys (http://gamedeveloperresearch.com/2010-salary-survey.htm) call out &quot;design&quot; as a title separate from production or art or programming. As the link in my answer says - often, the managers are too busy managing, programmers too busy programming, and you just need a designer to do &quot;the other stuff&quot;." CreationDate="2010-11-09T14:23:01.157" UserId="744" />
  <row Id="6498" PostId="5369" Text="I'd say that (whatever the job title may be) many of these people are in practice doing a mixture of design and production. It's clear from the tutorial example in Jim Mummery's article: to solve the problem, he has to manage the artists and programmers, find time in the schedule, and so on." CreationDate="2010-11-09T14:32:37.573" UserId="3162" />
  <row Id="6499" PostId="1031" Score="5" Text="And a whole boatload of money would probably solve a lot of the probelms.  Now we only need to find the money." CreationDate="2010-11-09T14:58:02.217" UserId="3185" />
  <row Id="6500" PostId="4796" Text="@roe He could be writing an android game and is trying to auto tune his game for the amount of memory he is allowed to allocate." CreationDate="2010-11-09T15:03:19.097" UserId="2447" />
  <row Id="6501" PostId="143" Score="3" Text="Well, the position of the player only needs to be sent to the players who are close enough to be affected by that player. Players dont need to know about players (and probably shouldn't know about players) that they can't actually see or interact with. " CreationDate="2010-11-09T15:08:12.503" UserId="3185" />
  <row Id="6502" PostId="5328" Text="You could deliver something else (your custom serialization) over HTTP. Or just gzip the payload." CreationDate="2010-11-09T17:35:47.423" UserId="3162" />
  <row Id="6503" PostId="5344" Text="@Axidos: It's dangerous to suggest that; DA's pixel gallery is flooded with poor quality work, because many people misunderstand the medium and techniques." CreationDate="2010-11-09T17:41:28.457" UserId="2081" />
  <row Id="6504" PostId="5368" Score="3" Text="Here is an excellent resource on breaking into the game industry, in general, as well as some designer specific info: http://www.sloperama.com/advice.html" CreationDate="2010-11-09T17:54:05.637" UserId="2290" />
  <row Id="6505" PostId="5277" Text="I agree. SDL is only a multimedia library. May be &quot;engine&quot; is an ambiguous term, so my question may be ambiguous." CreationDate="2010-11-09T18:25:00.017" UserId="3020" />
  <row Id="6506" PostId="5277" Text="Here is an article defining the term &quot;game engine&quot; (You may read the definition only) : [game engine at wikipedia](http://en.wikipedia.org/wiki/Game_engine) and here is a list of known game engines: [list of game engines at wikipedia](http://en.wikipedia.org/wiki/List_of_game_engines). To show the difference, there is another list of FPS-specific game engines: [FPS game engines at wikipedia](http://en.wikipedia.org/wiki/List_of_first-person_shooter_engines). I have edited my question to add this definition links. Remember my question: I want to know what engine is the best to learn from it." CreationDate="2010-11-09T18:25:18.563" UserId="3020" />
  <row Id="6507" PostId="5344" Text="@Jon Purdy: Hence why I said _skilled_; he'll need to dig deep and search. Great pixel artists do exist there, they're just buried under gallons of [CENSORED]. I'm glad the answers have provided alternate sites! I wasn't sure if there were any." CreationDate="2010-11-09T18:36:12.463" UserId="2698" />
  <row Id="6508" PostId="5378" Text="Problem is, this is all tick based, there's no intermediate position. It's a networking multiplayer game and sending all the positions of 600+ ships in a full game will kill all networking. There are only events which transmit a tickOffset, the rest is calculated based on the current world tick and the offset." CreationDate="2010-11-09T20:30:05.887" UserId="1713" />
  <row Id="6509" PostId="5378" Text="I edited my response." CreationDate="2010-11-09T21:14:39.273" UserId="962" />
  <row Id="6510" PostId="3394" Text="I ended up using a stack.  Just popped off each thing I needed to load.  Thanks!" CreationDate="2010-11-09T21:23:43.333" UserId="47" />
  <row Id="6511" PostId="5382" Score="1" Text="Then how to relax it? What I could imagine is modifying the T that I plug into the bezier path stuff. I would need to scale it somehow to first grow slower to 0.5 and then faster to 1. So the ship decelerates from it's original speed to a fixed one at the middle of the curve and then accelerates again from this speed to the speed at the end of the curve? " CreationDate="2010-11-09T22:22:54.307" UserId="1713" />
  <row Id="6512" PostId="5382" Text="I think it will look more realistic if the spaceship accelerates from its original speed to somewhere around the midpoint of the transfer and then decelerates to the new orbit." CreationDate="2010-11-09T22:32:17.260" UserId="3162" />
  <row Id="6513" PostId="5382" Text="Still I'm stuck on how to plug the acceleration into the whole thing, I need to modify the T somehow :/" CreationDate="2010-11-09T23:40:18.327" UserId="1713" />
  <row Id="6514" PostId="5387" Text="Apparently Gareth answered the same way as I was typing that. Nothing to see here... move along." CreationDate="2010-11-09T23:48:11.250" UserId="154" />
  <row Id="6515" PostId="5387" Text="Glad to see I'm not alone on this!" CreationDate="2010-11-09T23:51:27.830" UserId="3162" />
  <row Id="6516" PostId="2072" Text="I guess it depends how much of the GUI you'll use in the game. If it's just for the menu system then who really cares, if you're using it extensively in the frame rate crucial section then it needs some work and thought." CreationDate="2010-11-10T00:32:48.373" UserId="728" />
  <row Id="6517" PostId="5369" Score="1" Text="&quot;Hardly anyone does game design full time&quot; - Depends on how you define design, but full time design has been my role for the last decade." CreationDate="2010-11-10T00:47:09.307" UserId="154" />
  <row Id="6518" PostId="5320" Text="oh, i see what you mean now.&#xA;&#xA;i think you'll find that its not really necessary to associate each touch that way, in fact i think it may be possible to have some touches start and you never get a cancel or end for them. &#xA;&#xA;but if you want to do it, just create a map object in your class and then you can add touches to it as you suggest. the trick would be generating the key, and im not sure the info you get about the touch events has any state in it that would let you pull that off. " CreationDate="2010-11-10T00:59:41.803" UserId="3142" />
  <row Id="6519" PostId="5390" Text="except I've never seen poker played with a double deck, and in a casino, IIRC, black jack is played with a double deck... just sayin" CreationDate="2010-11-10T01:11:49.587" UserId="3182" />
  <row Id="6520" PostId="5342" Score="1" Text="Ogre is a graphics rendering library only. Object-Oriented Graphics Rendering Engine." CreationDate="2010-11-10T03:38:28.917" UserId="2967" />
  <row Id="6521" PostId="5394" Text="Thanks! Let me try this and get back to you. Don't think I ever would have found that answer you linked, never referred to it as tinting while doing directX stuff." CreationDate="2010-11-10T03:41:56.057" UserId="3199" />
  <row Id="6522" PostId="5389" Text="Thanks for the description and using the provided nomenclature, I will be able to find more ressources on it. " CreationDate="2010-11-10T04:07:45.090" UserId="1311" />
  <row Id="6523" PostId="5394" Text="Awesome, thanks!" CreationDate="2010-11-10T06:04:01.013" UserId="3199" />
  <row Id="6524" PostId="5394" Text="Also, I accepted this as the answer. I'd upvote but I don't have the rep yet." CreationDate="2010-11-10T06:05:13.553" UserId="3199" />
  <row Id="6525" PostId="5373" Score="1" Text="Good work on figuring that out. I suggest that you post your findings as an answer to your question." CreationDate="2010-11-10T07:40:21.377" UserId="20" />
  <row Id="6526" PostId="5391" Score="2" Text="I would use the term &quot;luxury&quot; rather than &quot;overhead&quot;. Designers aren't over-bureaucratic middle management. They're a position that if you can afford to have, you probably should have. As described in my link - &quot;designers often have the answers when others don’t [because they] have the luxury of time to think about it.&quot; Having someone (competent) focused entirely on the game design is going to result in a better game." CreationDate="2010-11-10T08:24:40.840" UserId="744" />
  <row Id="6527" PostId="5396" Score="2" Text="It certainly isn't obsolete but Java3D is a PITA and for games it's a very poor choice. Imo the book is really nice to learn the basic concepts of game programming and that stuff but if you already know all that and your focus is 3D you'll probably be disappointed." CreationDate="2010-11-10T09:48:43.977" UserId="267" />
  <row Id="6528" PostId="5392" Text="This is the way most games solve the d-pad controller problem it seems. It sucks for precision platforming though." CreationDate="2010-11-10T09:54:12.807" UserId="1352" />
  <row Id="6529" PostId="5397" Score="2" Text="&quot;IMHO, its always better if you know about the old technology and how it evolved well in hand before you start learning the new technology.&quot;&#xA;&#xA;Well, I'm certainly glad I didn't start learning .NET 1.1 when 2.0 was out.&#xA;&#xA;Anyway, with java the biggest recent change was the introduction of generics in 1.5. So if the book is older than that you won't be learning any good templates." CreationDate="2010-11-10T09:58:10.590" UserId="1352" />
  <row Id="6533" PostId="5391" Text="The lack of any care about game design is the reason most OS or free games just suck some serious ass." CreationDate="2010-11-10T11:44:19.497" UserId="2188" />
  <row Id="6534" PostId="5391" Text="Lack of care isn't the same as lack of resources. I'd say the two big sources of problems with free games are that they are underbudgeted or overambitious, which amount to the same thing. Adding another person, whose job it is to think up &quot;more game&quot;, may only exacerbate the problem." CreationDate="2010-11-10T12:07:08.860" UserId="744" />
  <row Id="6535" PostId="3055" Text="I would be interested into those articles = )..." CreationDate="2010-11-10T13:45:05.577" UserId="3071" />
  <row Id="6536" PostId="5388" Text="The audience will be the casual &quot;freemium&quot; player.  I think at least building towers and tapping is OK." CreationDate="2010-11-10T13:56:21.977" UserId="2316" />
  <row Id="6537" PostId="5405" Text="Actually I was up and running with OSX in a virtual machine on my laptop in a short afternoon. No issues, I just found development to be something too difficult for my workload at the time. http://lifehacker.com/5583650/run-mac-os-x-in-virtualbox-on-windows - I would've had serious buyer's remorse if I had spent $699 for that." CreationDate="2010-11-10T14:00:16.900" UserId="189" />
  <row Id="6538" PostId="5400" Text="typo: *its* specs" CreationDate="2010-11-10T14:20:10.200" UserId="2188" />
  <row Id="6539" PostId="5396" Text="@Raoul: thank you for introducing me to a new acronym." CreationDate="2010-11-10T14:20:30.663" UserId="2870" />
  <row Id="6540" PostId="5386" Text="Also, implementing Pathing for a small screen like that is trivial.  Zoom and scroll the game map, then Tap and path!" CreationDate="2010-11-10T15:08:26.020" UserId="2316" />
  <row Id="6541" PostId="5404" Score="1" Text="Flash has re-released their iPhone packager, although my experience with it (using it command-line, not through CS5) was a frustrating one." CreationDate="2010-11-10T15:13:41.973" UserId="953" />
  <row Id="6542" PostId="5400" Text="thx. =) I get those right 70% of the time. I blame DainBramage." CreationDate="2010-11-10T15:35:23.860" UserId="1352" />
  <row Id="6543" PostId="5408" Text="The advanced graphics course is using the same book as the intro class which I already have. " CreationDate="2010-11-10T15:44:44.323" UserId="853" />
  <row Id="6544" PostId="5404" Text="Oh! ok, have checked the packager for iphone at adobe website. The update is available since October 11, as Apple lifted the third party developer restirctions. This means its recent activity. No need for a specific Mac system then. Flash will do work for me,isn't it? " CreationDate="2010-11-10T15:45:43.370" UserId="3212" />
  <row Id="6545" PostId="5408" Text="Also, you bring up another question. Does/Can  pre-rendered graphics be used in game dev? If not, then I have no use for the class really." CreationDate="2010-11-10T15:47:18.407" UserId="853" />
  <row Id="6546" PostId="3055" Text="have an e-mail you can be reached at?" CreationDate="2010-11-10T16:03:27.417" UserId="1477" />
  <row Id="6547" PostId="5400" Text="no GLSL support though :(, but it looks like I can convert cg shaders to glsl automatically, might give that a try." CreationDate="2010-11-10T16:30:32.180" UserId="1024" />
  <row Id="6548" PostId="5398" Text="I've downloaded glslDevil but I can't get most of the features to work. The tracing works, and the stepping through shaders but I can't see the values of variables." CreationDate="2010-11-10T16:31:47.597" UserId="1024" />
  <row Id="6549" PostId="5418" Text="In this game it happens.. Packets are added, removed, moved (for example, some time ago, we've decided to move all GM-Commands related packets to an &quot;extended packet&quot;, this would probably happen again when we rewrite the guilds system.. &#xA;&#xA;Editing commands/functions (changing its functionality) is less likely, but that isn't the point.&#xA;&#xA;You say that from now on, we shouldn't remove any package, delete commands just let them unreacheable server side?&#xA;&#xA;&#xA;Thanks for your answer!" CreationDate="2010-11-10T17:45:53.437" UserId="1871" />
  <row Id="6550" PostId="5418" Text="Yep, deprecate and leave them there. Eventually old stuff can be removed, but that is usually after a year or two." CreationDate="2010-11-10T18:36:03.340" UserId="395" />
  <row Id="6551" PostId="5402" Text="Just as a some more food for googling/researching: The way you do it is exactly how id's Quake Games recorded Demos, by capturing Server Packages. As far as I am aware they simply never resolved the compatibility issues." CreationDate="2010-11-10T18:42:02.220" UserId="849" />
  <row Id="6552" PostId="5411" Score="2" Text="Yeah, and you shouldn't use this site like a dicussion board ;) (see http://gamedev.stackexchange.com/faq). Your first sentence should be a comment to the appropriate answer and the rest could be edited into the original question or you could ask a new question, but it's definitely not an answer to your question." CreationDate="2010-11-10T18:59:55.010" UserId="13" />
  <row Id="6553" PostId="5400" Text="You're right about that, but I think the advantages outweights the disadvantages. Besides, FX composer is a pretty nifty app." CreationDate="2010-11-10T19:53:57.583" UserId="1352" />
  <row Id="6554" PostId="5403" Score="2" Text="In short: Yes, but be careful that it's really worth the trouble. If you work on a platform that's even moderately unstable *a cause de* not being a Mac, that can easily cost you the time equal to what it would take you to earn the price of a Mac Mini." CreationDate="2010-11-10T20:16:00.767" UserId="3015" />
  <row Id="6555" PostId="5414" Text="Similar question: http://gamedev.stackexchange.com/questions/2659/creating-a-working-game-with-unity3d" CreationDate="2010-11-10T20:23:24.980" UserId="51" />
  <row Id="6556" PostId="5411" Text="You're right, I understand now and I've read the FAQ&gt; My apologies!" CreationDate="2010-11-10T21:09:26.770" UserId="3214" />
  <row Id="6559" PostId="5391" Text="Programmers and Artists are machines dedicated to their ability of creating what they get as input. The ultimate idea comes from the Designer. He has the vision.&#xA;He his the mastermind, but no brain can function without body, so you need a team." CreationDate="2010-11-10T21:37:38.870" UserId="2063" />
  <row Id="6561" PostId="5424" Text="-1, this is exactly the view of game designer that we need to move away from, because it's nothing like reality. The brain is the director / executive producer / lead designer (titles and exact roles vary from company to company), and even they don't work in a vacuum of their own vision and ideas." CreationDate="2010-11-10T21:56:58.923" UserId="744" />
  <row Id="6562" PostId="5379" Score="3" Text="&quot;If you have played GTA 4, then you have probably been drunk at some stage.&quot; Because you must have been drunk to play a GTA game, eh? ;)" CreationDate="2010-11-10T22:04:20.467" UserId="2081" />
  <row Id="6563" PostId="5424" Score="1" Text="I respect this view (even though it's kinda diametrically opposed to mine). It's visionary designers who give us stuff like *Nobi Nobi Boy* and the industry needs a few of them to explore new frontiers. The main trouble with visionaries is that they can have difficulty explaining their unique vision to the people who actually have to implement it. (Not a problem for a visionary like Jeff Minter, who writes his own code.)" CreationDate="2010-11-10T22:34:18.970" UserId="3162" />
  <row Id="6564" PostId="5424" Text="I once watched Keita Takahashi explain Nobi Nobi Boy with a talk given by his dog hand puppet. I'm not sure if that constitutes having difficulty explaining his vision or the opposite. :)" CreationDate="2010-11-11T00:54:18.563" UserId="1101" />
  <row Id="6565" PostId="5391" Text="Most programmers also have vision too. That's often why they got into programming - so that they didn't have to try and convince someone else to implement that vision for them." CreationDate="2010-11-11T00:55:20.090" UserId="1101" />
  <row Id="6566" PostId="5406" Text="Totally right. There are often questions about how a combat system &quot;should&quot; work, as if there are some intrinsic rules, but in fact everything in the game, not just combat but every system, needs to be weighted and balanced to produce the results that the designer has decided they want." CreationDate="2010-11-11T00:56:42.787" UserId="1101" />
  <row Id="6567" PostId="5418" Text="Also, some extra planning would help. The better you plan out your packets now, the fewer changes you'll need to make in future." CreationDate="2010-11-11T01:00:07.993" UserId="1101" />
  <row Id="6568" PostId="5383" Text="Are you going to factor in the friction coefficient of the handle's grip material?" CreationDate="2010-11-11T02:42:34.577" UserId="2856" />
  <row Id="6569" PostId="5397" Text="What I actually meant by &quot;learning&quot; was not that it would make a difference if i learnt .net 1.1 before .net 2.0. What i meant was if you learnt the technology used before as compared to now. Like if i gave an example , if i had been using structure pointers to refer to a game object in an old technology, now i am using classes for referring to the same game object. So i meant this, knowing (not learning) the old things does provide you with an edge over knowing only the new things" CreationDate="2010-11-11T04:04:42.977" UserId="1251" />
  <row Id="6570" PostId="5408" Text="They certainly can, and the techniques will become more relevant as graphics processors become more powerful.  It used to be standard practice to use prerendered backgrounds in games such as Resident Evil 1 and FFVII, but it now looks a bit shabby.  And the people making the prerendering tools are rarely the people making the game.  But yes, you could use some of the techniques in game dev.  They just aren't as useful as focused game graphics techniques would be." CreationDate="2010-11-11T05:08:48.683" UserId="953" />
  <row Id="6571" PostId="5433" Text="This looks very promising. That table looks very handy for the future. Thanks!" CreationDate="2010-11-11T05:14:54.070" UserId="312" />
  <row Id="6573" PostId="5432" Text="Thanks Gregory! this is why i needed to know what can be the implications using Flash. But still want to know the what CS5 has to offer. So i'll just check it out by myself before actually starting game development on that platform. " CreationDate="2010-11-11T10:33:00.237" UserId="3212" />
  <row Id="6574" PostId="5413" Text="+1 &quot;I've self-taught both OpenGL and cocos2d over the past year, but I don't think I could have self-taught Design (or at least, been motivated enough to learn on my own&quot;  Yeah, the best programmer's have always had very motivating teachers." CreationDate="2010-11-11T10:49:04.953" UserId="1251" />
  <row Id="6575" PostId="5434" Text="Hey! Thanks a ton for sharing your experience. That's what i needed. I guess i will have to buy a Mac system and get along with iOS app programming. :)" CreationDate="2010-11-11T13:23:35.233" UserId="3212" />
  <row Id="6576" PostId="5413" Text="@Vish, There's a big difference between learning a toolset and learning a skillset.  Sometimes it's hard to know the difference." CreationDate="2010-11-11T13:24:29.720" UserId="2316" />
  <row Id="6577" PostId="73" Text="With all the licensing and corporate stuff around consoles, now I can wonder if the gaming industry really deserves its revenue compared to the movie industry... Making a game requires a lot of resources, but I'm not sure it can compete that much with a popular entertainment such as movies." CreationDate="2010-11-11T13:34:17.087" UserId="1829" />
  <row Id="6578" PostId="5438" Text="I might consider testing that if you can provide a way of doing this within a function that takes `t` :)" CreationDate="2010-11-11T16:37:54.380" UserId="1713" />
  <row Id="6579" PostId="1306" Text="it is done, with 2 other books added" CreationDate="2010-11-11T16:42:56.613" UserId="889" />
  <row Id="6580" PostId="5418" Text="The problem is that the game is always changing. We add a new packet almost every month (we add new features).&#xA;And yet, we have to do a lot of changes to the old packets rewriting features and so.. But I guess we can leave the methods there and wait a year to remove them." CreationDate="2010-11-11T16:51:41.320" UserId="1871" />
  <row Id="6581" PostId="5418" Text="Well you can also just say that you aren't going to promise demos will work &quot;forever&quot; until 1.0 or a similar stable release." CreationDate="2010-11-11T16:52:42.433" UserId="395" />
  <row Id="6582" PostId="169" Score="5" Text="Yeah, that's a good point. I can usually finish 90% of a game in a few days, but the final product seems to take forever." CreationDate="2010-11-11T17:26:21.003" UserId="3234" />
  <row Id="6583" PostId="5445" Score="7" Text="+1 for interesting perspective." CreationDate="2010-11-11T17:58:38.570" UserId="2290" />
  <row Id="6584" PostId="5427" Score="3" Text="This is going to take a while to digest. But wow, amazing answer to your own question." CreationDate="2010-11-11T17:59:32.967" UserId="962" />
  <row Id="6585" PostId="5434" Text="@GamDroid, you don't have to buy a Mac, you can either make a make a hackentosh, which is hacking a PC to install MacOSX natively, or there are ways to run it in Virtulization." CreationDate="2010-11-11T18:02:48.703" UserId="962" />
  <row Id="6586" PostId="5425" Text="MonoTouch only runs on Macs.  Or so it says." CreationDate="2010-11-11T18:57:58.783" UserId="1156" />
  <row Id="6587" PostId="5442" Text="Incredible link and answer, thanks! Since we're here talking about and enjoying LUA, what possibilities are there for 3D? I see youtube videos of PSP stuff made in LUA so it must be possible, but not sure if it hooks to OpenGL or what. Any resources?" CreationDate="2010-11-11T19:11:07.243" UserId="3214" />
  <row Id="6588" PostId="5442" Text="I'm not familiar with any existing 3D Lua frameworks worth recommending, but the process for constructing such a framework is the same as constructing a 2D one. Essentially you'd need to learn a programming language that can bind with Lua, and develop your framework in that language, creating the appropriate hooks for lua to access the functionality required. It's a pretty complex process, so it's not something I would dive straight into, but for more information on how to bind lua to different programming languages, check out: http://lua-users.org/wiki/BindingCodeToLua" CreationDate="2010-11-11T19:41:21.983" UserId="2290" />
  <row Id="6589" PostId="5447" Text="Are we talking puzzles as in those sokoban style block pushing bits, to get through a cave?" CreationDate="2010-11-11T20:21:23.470" UserId="1156" />
  <row Id="6590" PostId="5449" Text="+1 for listing a solution many people would overlook" CreationDate="2010-11-11T20:32:46.910" UserId="2290" />
  <row Id="6591" PostId="5288" Text="5ound: Thanks for clearing that up, I wasn't sure." CreationDate="2010-11-11T20:51:20.560" UserId="1156" />
  <row Id="6592" PostId="5451" Score="1" Text="Are you talking about randomly generating crack images to overlay on top of a material, or do you actually mean procedurally cracking an existing object?" CreationDate="2010-11-11T21:48:36.120" UserId="51" />
  <row Id="6593" PostId="3483" Text="RedDwarf is a Java network game &quot;framework&quot;, but mainly the server part. Not really a game engine at all." CreationDate="2010-11-11T22:05:04.193" UserId="189" />
  <row Id="6594" PostId="5447" Text="Puzzles in Adventure games: http://tvtropes.org/pmwiki/pmwiki.php/Main/AdventureGame." CreationDate="2010-11-11T22:29:36.247" UserId="1677" />
  <row Id="6595" PostId="5449" Score="1" Text="I'd be curious if the person voting me down actually thinks this is unreasonable, or is just voting me down because it's not a &quot;real answer&quot; (even though my previous employer shipped 3.5 MMOs without anti-cheat packages, had our data formats cracked wide open, and to my knowledge never had anyone gain a measurable advantage by hacking the client)." CreationDate="2010-11-11T22:52:32.650" UserId="744" />
  <row Id="6596" PostId="5451" Text="I just need help with the generation of a crack image, but I am going to use it to break/crack existing objects." CreationDate="2010-11-12T00:15:28.007" UserId="962" />
  <row Id="6597" PostId="5455" Text="I'm going to go out on a limb and say because you will eventually get a cease and desist order because you do not own the rights to create a Star Wars game?" CreationDate="2010-11-12T00:31:21.650" UserId="891" />
  <row Id="6598" PostId="5455" Text="Actually, the project is completely legal as the user has to have the original client software and we are creating everything on the backend from our own code." CreationDate="2010-11-12T00:40:42.217" UserId="2787" />
  <row Id="6599" PostId="5104" Text="Initially I was going to direct you to Bohemia Interactive's wiki entries on scripting (http://community.bistudio.com/wiki/Category:Scripting_Topics) but it seems as if they are still under development. :/" CreationDate="2010-11-12T00:40:50.273" UserId="2290" />
  <row Id="6600" PostId="5455" Score="4" Text="A third party server most likely violates the EULA." CreationDate="2010-11-12T00:58:14.243" UserId="891" />
  <row Id="6601" PostId="5104" Text="@Ari Patrick: Thanks for your help! Those wiki entries seem to describe the SQF format which is used for runtime behaviors. I found another [SQF reference](http://community.bistudio.com/wiki/SQF_syntax) in that same wiki. However, I am interested on the bio2s scripts used in their terrain and model generation tools. I found examples in [this tutorial](http://developer.vbs2.com/onlinehelp/Content/Adding_Models/How_to/AMHT_Thermal_Imaging_How.htm) and this [forum thread](http://forums.bistudio.com/archive/index.php/t-70517.html) where they call these files Oxygen or O2 scripts. " CreationDate="2010-11-12T02:44:57.347" UserId="2870" />
  <row Id="6602" PostId="5404" Text="If you downvote, please explain why you downvoted..." CreationDate="2010-11-12T02:49:03.280" UserId="189" />
  <row Id="6603" PostId="5104" Text="A few more examples from the [Armed Assault Info forum](http://forum.armedassault.info/index.php?showtopic=1392&amp;mode=threaded&amp;pid=32162)." CreationDate="2010-11-12T02:59:46.073" UserId="2870" />
  <row Id="6604" PostId="5455" Score="1" Text="Duplicate of &quot;Finding other programmers to help on a project&quot; http://gamedev.stackexchange.com/questions/2791/finding-other-programmers-to-help-on-a-project ?" CreationDate="2010-11-12T04:06:09.230" UserId="290" />
  <row Id="6605" PostId="5466" Text="Sorry, didn't see this post before editing my original question. From browsing this week, I got really turned off by Python after not finding enough documentation on the subject matter at hand. Even the tutorials by NeHe (nehe.gamedev.net) stop at tutorial 10 for Python. Gonna go through the motions with C++. Please see my new, updated question. Thanks!" CreationDate="2010-11-12T06:02:07.863" UserId="3214" />
  <row Id="6606" PostId="5467" Text="When I asked for ways to learn openGL ( http://gamedev.stackexchange.com/questions/1128/what-is-the-best-way-to-learn-open-gl ) people said that nehe was really outdated. After reading the superbible and playing around I can say its true, opengl has changed a lot. " CreationDate="2010-11-12T06:36:04.233" UserId="666" />
  <row Id="6607" PostId="5463" Text="The best way I have had the difference described to me is this: Computer scientists tell you how you can do something, while Software engineers tell you what you need to do. Its not a perfect analogy, obviously, but it illustrates the main difference between the two disciplines." CreationDate="2010-11-12T06:41:07.530" UserId="2187" />
  <row Id="6608" PostId="5467" Score="2" Text="NeHe's tutorials are badly outdated. They teach you fixed function pipeline which is not supported in modern OpenGL core profile." CreationDate="2010-11-12T07:26:13.807" UserId="999" />
  <row Id="6609" PostId="5467" Score="1" Text="To be fair, I do visualization work for a living and a staggering portion of our customers are still on OpenGL 1.4 hardware -- or worse!" CreationDate="2010-11-12T09:01:57.053" UserId="678" />
  <row Id="6610" PostId="5390" Text="IMHO this hits it perfectly. Just want to add designers also do balancing which is most of the time underrated job." CreationDate="2010-11-12T10:55:38.410" UserId="919" />
  <row Id="6611" PostId="90" Score="52" Text="Months? Are you insane?" CreationDate="2010-11-12T10:56:08.147" UserId="3257" />
  <row Id="6612" PostId="5465" Score="2" Text="-1, there are more than enough &quot;getting started&quot; questions for standard environments already." CreationDate="2010-11-12T11:22:38.527" UserId="744" />
  <row Id="6613" PostId="5424" Text="@Joe I talked about the kind of designers Gareth describes. I meant &quot;designers&quot; as visionaries, as what they are in my eyes. Or should be." CreationDate="2010-11-12T11:39:45.910" UserId="2063" />
  <row Id="6614" PostId="5424" Score="1" Text="@daemonfire: That's a very small number of the people with the title and skill set of a game designer." CreationDate="2010-11-12T11:54:49.627" UserId="744" />
  <row Id="6616" PostId="5465" Score="1" Text="On one hand this is a dupe of a lot of existing questions.  Like [this one](http://gamedev.stackexchange.com/questions/41).  On the other hand this question isn't really answerable.  The scope of game development is huge and it really doesn't matter where you start as long as you start somewhere." CreationDate="2010-11-12T12:29:26.203" UserId="51" />
  <row Id="6617" PostId="5474" Text="All valid points, but keep in mind: &quot;We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil&quot;. You should limit such optimizations to the spots where they are really necessary. In all other places, strife for a clear and simple design." CreationDate="2010-11-12T12:48:08.380" UserId="13" />
  <row Id="6618" PostId="1428" Text="+ 1, I would vote-up this one a hundred times if I could!" CreationDate="2010-11-12T13:08:47.027" UserId="3071" />
  <row Id="6619" PostId="5464" Text="Where did you read that?" CreationDate="2010-11-12T13:08:58.930" UserId="1581" />
  <row Id="6620" PostId="5424" Text="if designer is ~= director... then the true greats would be able to explain to people how to implement it. e.g Steven Spielberg vs Uwe Boll" CreationDate="2010-11-12T13:16:20.777" UserId="3182" />
  <row Id="6621" PostId="5368" Text="Just as a side note, I gave this link to the *someone* and they've practically decided this is not a good direction for them. I didn't really think it was anyways. But I couldn't speak eloquently on the topic." CreationDate="2010-11-12T13:18:30.540" UserId="3182" />
  <row Id="6622" PostId="5474" Text="@Michael: On today's systems, with fast caches and slow memory and multiple cores, memory allocations are about the most expensive thing you can do." CreationDate="2010-11-12T13:24:39.187" UserId="744" />
  <row Id="6623" PostId="5474" Score="2" Text="@Michael: You'd be hard pressed to find any high performance commercial game engine not doing as much as they possibly can to optimize their memory allocation patterns. Here's a long talk about the subject of realtime android games. It's a bit old, but most of it should still apply: http://www.youtube.com/watch?v=U4Bk5rmIpic " CreationDate="2010-11-12T13:39:43.833" UserId="1352" />
  <row Id="6624" PostId="5464" Text="probably here: http://developer.android.com/guide/practices/design/performance.html  Note how it says: To summarize: use the enhanced for loop by default, but consider a hand-written counted loop for performance-critical ArrayList iteration." CreationDate="2010-11-12T13:41:13.223" UserId="1352" />
  <row Id="6625" PostId="5477" Text="If I had to guess, I would say the percentage by count/size is 5-10% at most, but if you weight by &quot;coolness&quot;, the percentage is 90-95%. But I don't have any numbers to back this up." CreationDate="2010-11-12T13:50:44.937" UserId="744" />
  <row Id="6626" PostId="5474" Text="Sure, don't get me wrong: I didn't want to disagree with your answer. I just wanted to point out that you should optimize judiciously and at the right spots. There is no benefit in using Arrays over Collections at a spot that has a minimal impact on performance (say 1%). (Also discussed more elaborately here: http://developer.android.com/guide/practices/design/performance.html#optimize_judiciously )" CreationDate="2010-11-12T14:18:11.810" UserId="13" />
  <row Id="6627" PostId="5479" Score="2" Text="If it's an extremely variable number, prove it with concrete examples, not guesses." CreationDate="2010-11-12T14:25:41.997" UserId="744" />
  <row Id="6628" PostId="5479" Text="@Joe Wreschnig: Kettle, meet pot. Consider the degree to which you substantiate your own comment, perhaps?" CreationDate="2010-11-12T14:30:51.560" UserId="3015" />
  <row Id="6629" PostId="5474" Text="I find myself agreeing to this here post in this case:&#xA;http://programmers.stackexchange.com/questions/14856/best-practices-that-you-disagree-with/14882#14882&#xA;&#xA;Besides, the difference between using an enhanced for loop and a regular one is neglible for most programmers. As most programmers might even be more familiar with the regular for statement." CreationDate="2010-11-12T14:50:50.793" UserId="1352" />
  <row Id="6630" PostId="5463" Text="Yeah thanks for reminding about saying that I was interasted in it. My mom wanted me to go to bed and I wanted to type it real quick." CreationDate="2010-11-12T15:02:03.423" UserId="2522" />
  <row Id="6631" PostId="5463" Text="And also what your saying, in the last paragraph, is that Software engineering kinda of gives you a overlay of what you need from computer science?          " CreationDate="2010-11-12T15:04:32.313" UserId="2522" />
  <row Id="6632" PostId="5474" Text="@Michael Barth, That quote is completely irrelevant in game development. Most of the time, anything that is sped up will increase the performance of the game. A lot of time it is easier to figure out the faster way to do something and then use the optimization everywhere, than it is to write slow code, and fix later." CreationDate="2010-11-12T15:21:16.490" UserId="962" />
  <row Id="6633" PostId="5475" Text="i didnt know how to map the grass texture on an hexagon, and stupidly rejected the solution. After a little bit of thinking, I found how to do a triangle strip with (i think) a good UV mapping. Will try this evening. Thanks" CreationDate="2010-11-12T15:24:09.843" UserId="338" />
  <row Id="6635" PostId="5474" Score="2" Text="@AttackingHobo: I disagree. Optimizing blindly is not benficial, which is what your statement sounds like to me (correct me if I got it wrong). Chris Pruett also stated in the Google IO Video linked above: &quot;Choose flexbility over speed every day of the week...until the gameplay is damaged.&quot; and I agree with this." CreationDate="2010-11-12T15:48:57.437" UserId="13" />
  <row Id="6636" PostId="5465" Text="By the sounds of it 'basic syntax for classes...', you haven't really got a huge grip on the language. If this is the case, I would seriously reconsider 3D. Also, is there any reason why you haven't mentioned an engine, such as Ogre3D?" CreationDate="2010-11-12T16:01:34.290" UserId="1156" />
  <row Id="6637" PostId="5467" Text="They are outdated, yes. But the writers are good - the book they wrote (Beginning OpenGL Game Programming) is a great read and not outdated." CreationDate="2010-11-12T16:02:54.303" UserId="1156" />
  <row Id="6638" PostId="5474" Text="@Nailer: I agree with that post, too. I think we're talking past each other a little bit. I've watched the Google IO talk just now and I see that you should avoid memory allocation in the main loop or other performance critical sections for the reasons stated above. But not 100% of game code is performance critical, though most of it surely is. All I wanted to say is, that you should know where performance is critical and where it is not and act (or program) accordingly." CreationDate="2010-11-12T16:19:46.417" UserId="13" />
  <row Id="6639" PostId="5474" Text="Hehe, no hard feelings ;)" CreationDate="2010-11-12T16:34:27.037" UserId="1352" />
  <row Id="6640" PostId="5479" Score="1" Text="I made my response a comment, not an answer, because it was a guess. Also, I lead off and finished by saying I had no evidence." CreationDate="2010-11-12T17:20:28.990" UserId="744" />
  <row Id="6643" PostId="5488" Text="I was relying on having the mesh for built in collision detection with Unity, but there's nothing to stop me from just testing collision/pathing against a custom data structure. However, I still need to create a visible mesh for displaying the terrain, and this is what I need to optimize." CreationDate="2010-11-12T19:18:07.320" UserId="3267" />
  <row Id="6644" PostId="5485" Text="I'm only creating the mesh for sides of cubes that have empty air next to them. As far as not drawing meshes that the player can't see...I thought about excluding any chunks that didn't have any visible blocks, such as underground caves or holes that led into the ground at an angle. I would definitely not be able to rely on my meshes for collision/pathing at that point, though." CreationDate="2010-11-12T19:21:17.703" UserId="3267" />
  <row Id="6645" PostId="5489" Text="How amazingly on time." CreationDate="2010-11-12T19:28:21.920" UserId="14" />
  <row Id="6646" PostId="5487" Text="Not sure this is a real question, more of a news discussion." CreationDate="2010-11-12T19:33:30.007" UserId="395" />
  <row Id="6647" PostId="5488" Text="One other point...as you can see by the screenshot...there's not a whole lot of this terrain that is flat. The meshes are generally rough surfaces of cubes, but I think there is some room for optimizing the mesh faces/vertices. It seems like an octree would be best for data which has a lot of similiar blocks of data, instead of of &quot;jaggy&quot; data. Or is this not correct?" CreationDate="2010-11-12T19:35:04.260" UserId="3267" />
  <row Id="6648" PostId="5488" Text="@Gatorfrog: Remember, empty space is a data too. if it's jaggy then sure, there will be lots of bits signalling its empty. The octree is just there for you to figure out which chunks you should decompress before you render them. Empty space will just be a bunch of zeroes. My dayjob involves working with a very sophisticated voxel rendering library. My next post will describe what they do." CreationDate="2010-11-12T19:53:27.723" UserId="1352" />
  <row Id="6649" PostId="5488" Text="The library i work with does the following:&#xA;Creates chunks of data and store them in a flat file database. Each chunk has an id. Each cube consists of many chunks. For each chunk there are created a certain number of levels of detail. Where the highest level of detail has 100% of the voxels, the second highest has 25% of all the voxels and then divide by 4 all for each subsequent level. Chunks that are close to you can be visualized using the highest level of detail." CreationDate="2010-11-12T19:56:32.930" UserId="1352" />
  <row Id="6650" PostId="5488" Text="all data is shipped in a compressed form from the RAM to the VRAM where it is inflated by GPGPU compression algorithms running in CUDA. This saves a lot of memory bandwith. So: CHeck where the player is and get high level of detail chunks there, the things furthest away can easily be visualized using one of the lower LODs. " CreationDate="2010-11-12T19:59:19.497" UserId="1352" />
  <row Id="6651" PostId="5488" Text="The dudes who wrote this library are some of the best graphics programmers in the world and have been programming computer graphics for almost 20 years." CreationDate="2010-11-12T20:01:40.167" UserId="1352" />
  <row Id="6652" PostId="5488" Text="So, for chunks that are starting to be slightly foggy because they are past a certain distance, as in my screenshots, it doesn't matter if creatures exactly appear to be following the terrain. You are saying I should simply draw a less detailed mesh for these chunks, and generate a more detailed one as the chunks get closer? Would this be a problem if I decided not to have fog at all, as chunks further away would look odd?" CreationDate="2010-11-12T20:03:54.367" UserId="3267" />
  <row Id="6653" PostId="5487" Text="-1, ridiculous speculation." CreationDate="2010-11-12T20:05:06.570" UserId="744" />
  <row Id="6654" PostId="5488" Text="What I am talking about is mostly about the data-structure you're going to save the data in. Anyway, since a chunk with the second highest lod will have 25% of the cubes of the highest lvel you can get away with rendring a lot less cubes. Let's call the highest level of detail LOD0 and the second highest LOD1, LOD2 and so on." CreationDate="2010-11-12T20:07:30.513" UserId="1352" />
  <row Id="6655" PostId="5487" Text="http://meta.gamedev.stackexchange.com/questions/275/speculative-questions-off-topic" CreationDate="2010-11-12T20:09:15.463" UserId="51" />
  <row Id="6656" PostId="5488" Text="LOD1 will be the same as LOD0 only that 4 and 4 cubes will &quot;melt&quot; together and appear as one. At a distance, this is hardly noticable. I will say that i'm not sure how rendering performance will be in a polygonal world. Remember, I'm working with a voxel rendering libary. I can try to create a drawing for you." CreationDate="2010-11-12T20:09:44.903" UserId="1352" />
  <row Id="6657" PostId="5468" Text="I searched and found good reviews for the 5th edition of the book you mentioned, so I will definitely check it out. I will also put in the work to get a better grasp of C++ before I start doing work in 3D. " CreationDate="2010-11-12T20:12:25.243" UserId="3214" />
  <row Id="6658" PostId="5488" Text="I believe I see what you mean, Nailer. Honestly...the data structure is taking up a very small portion of memory, compared to the mesh data. a 512x512x128 world of blocks, or 33 million+ blocks, takes up about 33 megs. The meshes take up a lot more, I suppose because they contain information on vertex colors, uvs, vertices, etc. I guess I was hoping that there was an algorithm out there that progressively and quickly could &quot;merge&quot; verticies for similar blocks. Maybe I'll have to come up with something that will do eh? :)" CreationDate="2010-11-12T20:19:02.120" UserId="3267" />
  <row Id="6659" PostId="5488" Text="Posted a pic. As you see a cube of 4x4x4(64) will be down to 2x2x2(8) at medium distance and 1 at long distance. Notice how colors are averaged between the chunks." CreationDate="2010-11-12T20:22:48.027" UserId="1352" />
  <row Id="6660" PostId="5488" Text="Oh and btw, have you tried just keeping 8 vertices in memory then transforming that one cube around instead of saving baggillions of vertices in the VRAM? I guess that might be slower, i'm not entirely sure." CreationDate="2010-11-12T20:27:44.217" UserId="1352" />
  <row Id="6661" PostId="5479" Text="There are several free to play pay to win games out there doing well for themselves.  " CreationDate="2010-11-12T20:55:30.353" UserId="2447" />
  <row Id="6662" PostId="5435" Text="MVC can work well for FPSes see http://www.gamasutra.com/features/20050414/rouwe_01.shtml for at least one reference." CreationDate="2010-11-12T21:02:31.643" UserId="2447" />
  <row Id="6663" PostId="5488" Text="I'm not sure that is something I can do with Unity, I can ask around  their community though. However, it might be a bit slow, as the cpu would be doing a lot more work as opposed to the gfx card." CreationDate="2010-11-12T21:07:45.770" UserId="3267" />
  <row Id="6664" PostId="5472" Score="1" Text="The site's design inspires such questions :D" CreationDate="2010-11-12T21:11:01.683" UserId="2344" />
  <row Id="6665" PostId="5488" Text="*DX11 has hardware geometry instancing.&#xA;*Matrix computations could be done on the GPU&#xA;*Shaders could fake the furthest away boxes. Just a few suggestions." CreationDate="2010-11-12T21:40:24.003" UserId="1352" />
  <row Id="6666" PostId="5492" Text="Wow that 2nd to last link you gave me was incredible. The DirectX tutorials right from the MSDN seem to be concise and filled with only the information needed to progress to the next step of DirectX. Fantastic, thanks! [I can't vote you up yet, but will when I get 15 reputation :)]" CreationDate="2010-11-12T22:56:45.910" UserId="3214" />
  <row Id="6667" PostId="239" Score="8" Text="Not every MMORPG needs to be the next WoW. Even &quot;utterly flopping&quot; with 10-100k users paying $5/month is still as much as half a million dollars a month. Sure there is hosting fees and such, but the number of people subscribing to an MMO is much higher than the number of people actually playing it at any given time. A game with 100k users would rarely get more than 10k connections at a time. How about you try showing what those numbers were at launch. Half a million a month can certainly pay for some expansion." CreationDate="2010-11-12T23:15:19.263" UserId="3271" />
  <row Id="6668" PostId="5453" Text="Do you have any examples or more theory on this kind of method, your answer is a bit vague." CreationDate="2010-11-12T23:38:01.787" UserId="962" />
  <row Id="6669" PostId="5479" Text="@Joe Wreschnig: And I'm presenting a number of takes on the issue; none of which are being presented as hard fact, but merely for your consideration. At no point am I claiming that my numbers are final; in fact; I'm claiming that they very much are not. I am, however, trying to present a *useful* answer, i.e. one that is not merely a long list of statistics. I'm sorry if that offends you." CreationDate="2010-11-13T00:59:12.153" UserId="3015" />
  <row Id="6670" PostId="5463" Text="I actually think it goes the other way (though I'm biased - I'm a CS teacher) CS gives you more than adequate preparation for SE after you have some experience. It doesn't seem to go the other way very often." CreationDate="2010-11-13T03:00:23.977" UserId="2634" />
  <row Id="6671" PostId="5484" Text="Often, Software engineering is considered a discipline within computer science. (It is in our program.) As I've said in my other post, CS folks often also move into SE." CreationDate="2010-11-13T03:02:13.990" UserId="2634" />
  <row Id="6672" PostId="5438" Text="-but in game programming you don't use t as a variable. You're already basically in a parametric situation, because you're simply calculating the new dx and dy for the ship.  Here's an example of orbiting two planets (in Flash)  http://www.aharrisbooks.net/flash/fg2r12/twoPlanets.html - and here's the same thing in Python: http://aharrisbooks.net/pythonGame/ch09/twoPlanets.py" CreationDate="2010-11-13T03:09:25.793" UserId="2634" />
  <row Id="6673" PostId="5497" Score="1" Text="Related: http://gamedev.stackexchange.com/questions/20/where-can-i-find-free-sprites-and-images" CreationDate="2010-11-13T03:28:17.000" UserId="51" />
  <row Id="6674" PostId="5453" Text="Do you have a reference image for the kind of effect you are looking for?" CreationDate="2010-11-13T04:38:15.447" UserId="312" />
  <row Id="6675" PostId="5489" Text="*bleep* I'm not a mod on here... I was going to clean up the link... oh but @Noctrine is" CreationDate="2010-11-13T09:36:26.730" UserId="3182" />
  <row Id="6676" PostId="5434" Text="AttackingHobo made a good point. Although getting a Mac is definitely worth it. And you can go the other way round too: Running Windows on a Mac is probably easier than hacking the PC to run OS X." CreationDate="2010-11-13T10:49:47.100" UserId="20" />
  <row Id="6677" PostId="3241" Text="It is definitely not a good blog to follow, because Notch struggles since thousands of years with bugs, he 'd fixed already. The blog has only a few developement relevant entries, you ll rather find Minecraft Fan Videos or things like &quot;sorry I could not fix bug A, because I ll go to bed now&quot;.&#xA;WoW I am really impressed." CreationDate="2010-11-13T11:51:01.737" UserId="2063" />
  <row Id="6678" PostId="5507" Text="What do you mean by &quot;make the class static&quot;? C++ doesn't have static classes. Do you mean only have static methods? Why bother having a class instead of a namespace then?" CreationDate="2010-11-13T11:53:58.257" UserId="744" />
  <row Id="6679" PostId="5499" Text="OT: I can't help by reading &quot;bullshit&quot; on &quot;BS&quot;" CreationDate="2010-11-13T13:04:25.190" UserId="2188" />
  <row Id="6680" PostId="5507" Score="1" Text="@Joe: Well, the question is not focused on C++ as I understood it. In C# or Java you can make static classes and I'am referring to those. Also, as I said, static classes aren't an optimal solution most of the time, but in rare cases it could work like a global." CreationDate="2010-11-13T13:05:24.097" UserId="13" />
  <row Id="6681" PostId="5434" Text="I disagree that getting a MAC is worth it; Twice the money for twice as slow, no thank you." CreationDate="2010-11-13T16:40:37.997" UserId="962" />
  <row Id="6682" PostId="5512" Text="+1! Very nice pattern!" CreationDate="2010-11-13T19:19:00.683" UserId="3283" />
  <row Id="6683" PostId="5501" Score="2" Text="&quot;Hiring is kind of a black box. It really depends on the person who's looking at your resume/CV.&quot; Good quote for being next to Crashworks's &quot;yes it certainly helps&quot; and my &quot;no&quot;." CreationDate="2010-11-13T20:05:02.670" UserId="744" />
  <row Id="6684" PostId="5522" Text="@joe wreschnig: Indeed I use b2distancejoint. And all initial distances are exactly what they should be. Furthermore there is no ground (at least not in the screen anywhere) so that doesn't interfere. You see the same effect when applying gravity. If you fix 1 point of the rope to the mouse, and the rest is dragged down by gravity, if the gravity is sufficiently high, the rope get's pulled down in the same unequidistant manner." CreationDate="2010-11-13T20:56:53.090" UserId="1697" />
  <row Id="6685" PostId="5511" Score="1" Text="[math.stackexchange.com](http://math.stackexchange.com)!" CreationDate="2010-11-14T00:21:13.757" UserId="998" />
  <row Id="6686" PostId="425" Text="Personally I like [Guile](http://www.gnu.org/software/guile/), it has great integration with C. Only problem is the speed, but with the 2.0 release in the next couple of months that should improve too." CreationDate="2010-11-14T01:38:22.067" UserId="3298" />
  <row Id="6687" PostId="5527" Score="1" Text="-1 hard to figure out what specifically you're asking about.  Are you asking about different names for &quot;ranks&quot;?  Some algorithms for determining XP per level?  How does &quot;novice&quot; fit anywhere in Diablo/WoW?" CreationDate="2010-11-14T06:46:28.773" UserId="51" />
  <row Id="6688" PostId="2795" Text="Ive used V8 a few times before in my projects. IMO Javascript is the most ideal language to use for game scripting. The event-based nature and prototype-based objects makes everything so easy. :)" CreationDate="2010-11-14T11:53:52.177" UserId="3271" />
  <row Id="6689" PostId="5524" Text="I haven't done any wide program comparisons, but math up through basic linear algebra as well as a statistics course is required for the CS B.Sci. degrees I know about. What you get out of a math minor is usually a little more linear algebra - or like my answer says, sometimes nothing. The choice between an M.Sci. and just going to work is really a toss-up in my experience. The most common reasons I see programmers with M.Sci. is because it helped them immigrate. They were just as good (or bad) as people with a couple years work experience on average." CreationDate="2010-11-14T12:06:30.887" UserId="744" />
  <row Id="6690" PostId="5416" Text="This statement is incorrect: &quot;Unreal has a default first person camera, character controller, collision detection and AI. You have none of that in Unity3D&quot;" CreationDate="2010-11-14T12:23:12.027" UserId="825" />
  <row Id="6691" PostId="5416" Score="7" Text="In fact, Unity includes components for all of these functionalities built in, and many more as downloadable plugins. You do have to customize and code to get specific functionality, but you can come super close to fully-functional with a combination of these components. It's not quite as fleshed out as Unreal though because you don't start off with a functional gun, but I personally think it's easier to get a game in general (non FPS) going in Unity. A lot of this is semantics though - you do need to actually program to get anything going." CreationDate="2010-11-14T12:29:56.030" UserId="825" />
  <row Id="6692" PostId="5447" Text="Oh, so Crimson Room style." CreationDate="2010-11-14T16:30:09.000" UserId="1156" />
  <row Id="6693" PostId="5527" Text="I'm stuck between names (in which case, http://gamedev.stackexchange.com/questions/1811/what-name-should-i-give-each-difficulty-level) or what you should get at each level." CreationDate="2010-11-14T16:32:14.087" UserId="1156" />
  <row Id="6694" PostId="5523" Score="1" Text="'There is no open source game engine available on Android'. I'm sorry, but I'm voting down for this. There are quite clearly open source game engines for Android. Anyway, Unreal and Unity are definitely **not** open source." CreationDate="2010-11-14T16:34:15.877" UserId="1156" />
  <row Id="6695" PostId="5533" Score="1" Text="Thanks so much :-) just the answer I needed. I'd vote you up but I have 1 rep :-P" CreationDate="2010-11-14T17:01:46.587" UserId="3304" />
  <row Id="6696" PostId="5447" Text="LucasArts-Sierra-of-90th-style. :)" CreationDate="2010-11-14T17:13:56.287" UserId="1677" />
  <row Id="6697" PostId="3996" Text="Not to be annoying, but seriously - PACMAN wouldnt take an hour to write down in a Spreadsheet if your tiles are &quot;visible&quot;." CreationDate="2010-11-14T17:23:41.280" UserId="3115" />
  <row Id="6698" PostId="5533" Text="No worries! :) Glad it helped..." CreationDate="2010-11-14T20:06:25.440" UserId="3305" />
  <row Id="6699" PostId="5540" Score="5" Text="Very thorough answer. An excellent help sir." CreationDate="2010-11-14T20:32:37.897" UserId="2819" />
  <row Id="6700" PostId="5540" Text="Wow. Awesome answer, dude." CreationDate="2010-11-14T23:30:47.467" UserId="3283" />
  <row Id="6702" PostId="5546" Score="8" Text="PS3 and Wii don't use OpenGL for AAA titles. There are other libraries with much more direct access to the HW." CreationDate="2010-11-15T00:05:46.200" UserId="501" />
  <row Id="6703" PostId="5463" Text="Ok I see what you mean now." CreationDate="2010-11-15T00:45:56.060" UserId="2522" />
  <row Id="6704" PostId="5475" Text="i still get a few quirk on my mapped hexagon, but its works. thanks again" CreationDate="2010-11-15T00:49:42.680" UserId="338" />
  <row Id="6705" PostId="5183" Text="I said application programming, web development is very different in how it works due to http connections being stateless and the fact that it's little more than an interface to a data store. The way a gui works is actually the same, and from time to time a programmer may need to delve into the api." CreationDate="2010-11-15T01:06:06.987" UserId="2691" />
  <row Id="6706" PostId="5183" Text="A game and a gui are both event based programming at the end of the day. The difference is that event/gameloop tends to need to be more customized for the game developer for performance reasons." CreationDate="2010-11-15T01:07:19.480" UserId="2691" />
  <row Id="6707" PostId="5540" Text="Exactly in line with my experience.  Well put." CreationDate="2010-11-15T01:11:22.037" UserId="2585" />
  <row Id="6708" PostId="5183" Text="As for the need for making software by oneself. Most game developers work in teams. As does Linus Torvalds, he is lead programmer mostly now, he started two project and manages development of one project, the other he gave over to another team." CreationDate="2010-11-15T02:11:50.197" UserId="2691" />
  <row Id="6709" PostId="4946" Text="This does not solve the problem it actually compounds it." CreationDate="2010-11-15T02:43:29.027" UserId="919" />
  <row Id="6710" PostId="5540" Text="+1, Exactly in line with my experience as well." CreationDate="2010-11-15T02:55:01.027" UserId="2354" />
  <row Id="6711" PostId="5506" Text="I have no desire to work in a game that would be on a HD generation console and arcade style game is kind of what I would want to work on." CreationDate="2010-11-15T04:37:58.787" UserId="853" />
  <row Id="6712" PostId="5551" Text="Unless you want to be more specific, possibly about particular genres or something, HTML has been a viable game development platform for years and still is." CreationDate="2010-11-15T05:20:41.477" UserId="395" />
  <row Id="6713" PostId="5540" Text="Not quite how I remember it, but it helps when your training partner actually teaches you things ;-)" CreationDate="2010-11-15T05:22:56.220" UserId="395" />
  <row Id="6714" PostId="5416" Score="1" Text="Perhaps it is better to say that other game engines has a more tightly coupled sub-systems than Unity3D. When you start a new Unity3D project and does not import any of assets, you get a blank slate. Something which I consider a good thing. Perhaps this skewed my view on a little on why I think there aren't default subsystems. There are, just that they aren't suitable for the projects I have to do. And this is one of the good things about Unity3D. It's easy to leave out the default ones and code your own if you so inclined." CreationDate="2010-11-15T06:32:11.230" UserId="2132" />
  <row Id="6715" PostId="5551" Score="1" Text="I am not arguing with HTML, I understand with CSS and Js and HTML alone we can do a lot for simple games. But I am more specifically talking about canvas based games. Say pingpong... or tetris... The issue is with rendering the canvas everytime an element in introduced into the canvas, CPU works way more than I have seen games work on native code." CreationDate="2010-11-15T06:42:41.923" UserId="3326" />
  <row Id="6716" PostId="3865" Text="Nice entry level tutorials." CreationDate="2010-11-15T07:46:52.063" UserId="2819" />
  <row Id="6718" PostId="5549" Text="Nope, I didn't mean that. Levels are OK, the game is playable, but when you run it, you're immediately playing, there's no menus and when you win/lose you only get a string on stdout and/or the next level is loaded - most of the simple games I wrote are like this. What I'm not able to do is writing menus and stuff which are non-in-game... Of course very simple menu (only 1 menuscreen with few static entries) aren't hard to do, but when I want something a little more sophisticated, I get lost." CreationDate="2010-11-15T08:10:08.597" UserId="3282" />
  <row Id="6720" PostId="5551" Score="3" Text="-1, speculative and ranty." CreationDate="2010-11-15T08:53:39.237" UserId="744" />
  <row Id="6721" PostId="5560" Text="DLLBind is what UDK uses to bind native code to UnrealScript dynamically; as the page notes, people with access to real UE3 use Native Classes, and the question is about UE1, not UE3 or UDK." CreationDate="2010-11-15T10:58:57.850" UserId="744" />
  <row Id="6722" PostId="5558" Score="2" Text="There's not enough information here - there's always a tradeoff between time, money, and people involved when trying to achieve a certain quality. With unlimited time, one skilled person can make a fine RPG; if they can find free hosting, the same for an MMORPG. What kind of schedule are you dealing with and how much money do you have, as well as defining &quot;good content&quot;, are necessary to answer the question." CreationDate="2010-11-15T11:16:26.033" UserId="744" />
  <row Id="6723" PostId="5551" Text="@Joe Thanks for telling me why :)" CreationDate="2010-11-15T11:19:14.347" UserId="3326" />
  <row Id="6724" PostId="5554" Score="5" Text="I would augment bullet point 1 with &quot;knowledge of one programming language *that uses pointers*.&quot;  Pointers are such a fundamental requirement to understanding what is going on with a language that never having experience with them can be a huge disadvantage when going to a language that needs them.  C++ is extremely prevalent for non-web-games, so you might as well start there." CreationDate="2010-11-15T12:20:49.867" UserId="51" />
  <row Id="6725" PostId="5542" Text="-1, If you have a problem with writing things like &quot;menus, cutscenes..., world map..., replays&quot;, those should be **separate questions**.  This question right now is too vague and I can't see how it could possibly accomplish anything." CreationDate="2010-11-15T12:23:27.977" UserId="51" />
  <row Id="6726" PostId="5572" Text="+1 - working from bug/task list/schedule is an incredibly different experience than working on your own. It can't be emphasized enough." CreationDate="2010-11-15T12:34:39.083" UserId="744" />
  <row Id="6727" PostId="5540" Text="@coderanger: I don't think either of us got much help from our training partner. ;)" CreationDate="2010-11-15T12:36:08.727" UserId="744" />
  <row Id="6728" PostId="5541" Score="1" Text="It's worth pointing out that because your Z-Buffer uses 0-1 floating point for depth, it really doesn't matter *too* much what your specific values are for distance and clipping plane since it all gets normalized in the end.  What matters is that you only have a certain amount of total precision and when you try to stuff a ton of different distance points into your depth buffer you might start getting z-fighting issues." CreationDate="2010-11-15T12:40:10.553" UserId="51" />
  <row Id="6729" PostId="5550" Score="1" Text="It's pretty easy to tell who uses what on the PC. On consoles it's a bit trickier - a lot of the smaller games do use the OpenGL ES variants available." CreationDate="2010-11-15T12:41:53.230" UserId="744" />
  <row Id="6730" PostId="5542" Text="In general I get stuck on anything that doesn't regard the game itself, while you're playing it. With &quot;world map&quot; I meant the &quot;cutscene&quot; where you select the level (think of SuperMario...). I always get stuck with all of these stuff. Guess it's because of lack of experience, so I'm asking if this is a common thing, and if there's some reference to look at when implementing the stuff needed to a game BUT the game play." CreationDate="2010-11-15T12:52:46.627" UserId="3282" />
  <row Id="6731" PostId="5541" Text="@Tetrad thanks for this clarification" CreationDate="2010-11-15T13:56:22.140" UserId="3294" />
  <row Id="6732" PostId="5574" Text="Interesting, I will have to read up on that. However, I'm trying to stay away from triangle meshes - and deal purely with outline edges (as for collision purposes, any interior/enclosed edges attached to a vertex on the outline can cause unwanted collisions). But maybe a triangle mesh as an intermediate step, before filtering out interior edges, is a possible approach?" CreationDate="2010-11-15T16:01:45.397" UserId="659" />
  <row Id="6733" PostId="5477" Text="@Iain, do you need further ideas or answers?  I know I didn't directly answer your question, because I think you needed to look at the problem a little differently." CreationDate="2010-11-15T16:17:20.817" UserId="2316" />
  <row Id="6734" PostId="5448" Text="Great, unusual, eye-opening answer!" CreationDate="2010-11-15T16:42:45.273" UserId="1113" />
  <row Id="6735" PostId="5576" Text="&quot;Games developed for should run on mobile devices as well as laptops and cross-platform without much to-do.&quot; Just like games written for regular GL port between iPhone and Windows and Mac and X11 and all models of graphics cards just fine." CreationDate="2010-11-15T17:02:08.317" UserId="744" />
  <row Id="6736" PostId="5576" Text="@Joe Wreshnig, I don't think so.  OpenGL ES is different than OpenGL for the machines.  ES has a significantly stripped down library.  Also, [Apple doesn't support all versions of OpenGL.](http://developer.apple.com/graphicsimaging/opengl/capabilities/) so you can't expect that the graphics will be the same regardless of the system, unless you target for compatibility." CreationDate="2010-11-15T17:03:52.603" UserId="2316" />
  <row Id="6737" PostId="5475" Text="@PATRY I strongly suggest Cocos2d.  They've saved me a TON of dev work." CreationDate="2010-11-15T17:09:33.767" UserId="2316" />
  <row Id="6738" PostId="5571" Text="In my opinion, paid solutions are only necessary if you you cant deliver a service yourself, e.g. because of lack of bandwidth. While it saves you time at first, recurrent billing and lack of possibility to add a feature yourself are major drawbacks of paid solutions, and I don't think they are profitable on the long run. However, this is my opinion, and probably there are quite a few short-term people out there." CreationDate="2010-11-15T17:23:50.120" UserId="3341" />
  <row Id="6739" PostId="5574" Score="1" Text="gluTessellate has an outline only mode as well `GLU_TESS_BOUNDRY_ONLY`.  The link I provide has a short section specifically about CSG." CreationDate="2010-11-15T17:41:00.357" UserId="370" />
  <row Id="6740" PostId="5568" Score="1" Text="There is &quot;thousands&quot; more Flash games because Flash has a 10 year head start. Canvas is already equally as capable as Flash, so it seems obvious to me that it will pass Flash before too long. Also, Canvas can already do hardware-accelerated 3D using WebGL, so it's passed Flash in that aspect. Supporting the &quot;de-facto standard&quot; is exactly what causes developers so much grief. Microsoft thought they could get away with letting IE stagnate, and they DID for years because developers kept supporting it. But developers are finally starting to get fed up with IE and are switching to better browsers." CreationDate="2010-11-15T17:42:03.553" UserId="3271" />
  <row Id="6741" PostId="3986" Text="TCP handles real-time just fine, if you manage your packets properly. No point in sending 10 packets to the same destination within a few milliseconds, when you can group them together." CreationDate="2010-11-15T17:59:57.070" UserId="3271" />
  <row Id="6742" PostId="5569" Score="1" Text="First of all, till IE9 is released(and or, if you wish, people upgrade to it) is not infinite time. Then after that, even tho there are a lot of people who won't upgrade till they change their OS, that is not ALL the people." CreationDate="2010-11-15T18:54:49.390" UserId="666" />
  <row Id="6743" PostId="5571" Text="Well sure.  Instead of debating you on this I'll point you to this article that sums up some points on the matter.  http://www.joelonsoftware.com/articles/fog0000000007.html" CreationDate="2010-11-15T18:55:18.183" UserId="51" />
  <row Id="6745" PostId="5574" Text="Wow, that looks surprisingly powerful, I'd never realised that glu contained that functionality. It looks like it's an option (despite my tool being D3D-based), but I'm still quite curious about the algorithms that would be involved in a DIY solution" CreationDate="2010-11-15T18:58:43.390" UserId="659" />
  <row Id="6746" PostId="5558" Text="Related: http://gamedev.stackexchange.com/questions/90/why-is-so-hard-to-develop-a-mmo" CreationDate="2010-11-15T19:01:39.223" UserId="51" />
  <row Id="6747" PostId="5561" Text="Definitely, the difference between an offline RPG and an MMORPG is vast. An offline RPG can be fairly simple tech-wise, but building a scalable MMO is one of the toughest engineering tasks in game development. And as far as content creation goes - with an offline RPG, you need tens or low hundreds of hours of gameplay. With an MMO, people will expect to play for tens or hundreds of days!..." CreationDate="2010-11-15T19:02:11.467" UserId="659" />
  <row Id="6748" PostId="3421" Text="Would the person(s) that marked this answer down please add a comment explaining why so we can all benefit from your viewpoint? :)" CreationDate="2010-11-15T19:26:51.137" UserId="1232" />
  <row Id="6749" PostId="5574" Text="There isn't really anything novel in OpenGL's tessellator.  I imagine any advanced tessellator could do similar things.  Also DirectX11 features hardware tessellation, I don't know if it has the advanced features needed for CSG but it would be worth a look." CreationDate="2010-11-15T19:30:01.010" UserId="370" />
  <row Id="6750" PostId="90" Score="4" Text="Maybe you want a DMO?  Diminutive Multi-player Game." CreationDate="2010-11-15T19:56:12.670" UserId="2260" />
  <row Id="6751" PostId="5592" Text="@downvoter, comments please on why?  I provided anecdotal results on games which retain players on both sides of the fence." CreationDate="2010-11-15T20:51:08.583" UserId="2316" />
  <row Id="6752" PostId="5593" Text="Why would I do 1-3-1 in this situation? Why not 1-2-1? Why not 1-2-3-1, which is more efficient than 1-3-1-X if 1-3-1 alone won't kill the target?" CreationDate="2010-11-15T21:03:45.070" UserId="744" />
  <row Id="6753" PostId="5593" Text="@Joe Wreschnig: Thanks for pointing that out. Was a mistake in my example. Simplified it now to just 2 cases." CreationDate="2010-11-15T21:15:23.723" UserId="2992" />
  <row Id="6754" PostId="5602" Text="Yes, it's just for the level editor, to build a clean and fairly efficient collision mesh on export. It doesn't need to be real-time, as yes, I expect that would be quite costly :)" CreationDate="2010-11-15T21:56:48.177" UserId="659" />
  <row Id="6755" PostId="90" Score="3" Text="I might take months. 60 of them, more or less." CreationDate="2010-11-15T22:01:08.670" UserId="98" />
  <row Id="6756" PostId="5603" Text="@bluescrn: the problem is that DPCT can be very misleading. Say for example we add 2 more spells to the mix&#xA;&#xA;Fireball: 3000 damage, 3 second cast, 6 second cooldown, DPCT: 1000&#xA;Spell #2: 20 damage, 4 second cast, 4 second cooldown, DPCT: 5&#xA;Spell #3: 3 damage, 3 second cast, 3 second cooldown, DPCT: 1&#xA;&#xA;(remember, cooldown begins the moment the spell is cast)&#xA;&#xA;Even though Spell #3 has a lower DPCT it will result in higher DPS (1-3-1-3...) than Spell #2 (1-2-1-2...).&#xA;" CreationDate="2010-11-15T22:30:58.710" UserId="2992" />
  <row Id="6757" PostId="5561" Text="You're right, but unspecific questions usually get unspecific answers. Also: MMORPG or RPG alone doesn't say much about content or hours of gameplay (let alone fun). Sure, MMORPGs usually tend to be way more complex and content-rich than offline games but the opposite can just as well be the case." CreationDate="2010-11-15T22:38:04.417" UserId="20" />
  <row Id="6758" PostId="5593" Text="But now the greedy solution isn't 1221 unless your greedy algorithm sucks. Picking 121 still gives higher DPS when you do a greedy selection including the remaining cooldown time. I think you're inventing a problem where there is none." CreationDate="2010-11-15T22:54:21.180" UserId="744" />
  <row Id="6759" PostId="5597" Text="I really have no idea what you're trying to get at here, but no modern game engine has functions like castSpell1 and castSpell2." CreationDate="2010-11-15T22:56:37.950" UserId="744" />
  <row Id="6762" PostId="5523" Text="ok, i'm not clear. The quality of Open Source game engines on Android is far from Unreal or Unity. " CreationDate="2010-11-15T23:03:57.873" UserId="721" />
  <row Id="6763" PostId="5593" Score="1" Text="Greedy, as in choose the highest available dps spell whenever possible. Disregarding other logic ie. waiting." CreationDate="2010-11-15T23:06:29.957" UserId="2992" />
  <row Id="6764" PostId="5593" Text="Just to muddy the water.  Consider a spell that does ∞ damage, but takes 50 seconds to cast.  It's dps/dpct is ∞, but it is should never be picked if the target can be kill with other means in less than 50 seconds." CreationDate="2010-11-15T23:30:23.313" UserId="370" />
  <row Id="6765" PostId="5593" Text="@caspin: You're absolutely right. Definitely a case which should be accounted for but might be out of scope of this question" CreationDate="2010-11-15T23:36:51.707" UserId="2992" />
  <row Id="6766" PostId="5598" Text="Thanks for the response Samaursa.  I currently use the same approach you do using Ogre3D and a wrapper that binds an Ogre Entity with a Havok Rigid Body for example.  How much of the scene would you build on the programming side of things.  Lets say if you were to make a rope bridge?  Would you model it all in Havok Content Tools or piece it together in code?" CreationDate="2010-11-16T00:06:07.400" UserId="891" />
  <row Id="6767" PostId="5598" Score="1" Text="Ideally, I would piece it all in code with a simple world editor, with all the modeling (including hulls, rigid bodies and constraints) done in Maya/Max. If you are talking about highly complex levels, that is definitely the way to go. Otherwise (and this is what I did before a world editor) create simple naming conventions, such as `Box_Mesh` and `Box_RB`. Both are meshes in Maya. Box_Mesh is imported separately so that you can instance it. Box_RBs are imported via `hkx` and then tied with `Box_Mesh` by simply attaching an entity that is a `Box_RB` - `_Rb` + `_Mesh`." CreationDate="2010-11-16T00:56:19.903" UserId="2287" />
  <row Id="6768" PostId="5612" Score="1" Text="If the contents of a node don't necessarily completely fill a node then I can't see how you could use your octree for occlusion" CreationDate="2010-11-16T01:21:26.787" UserId="1386" />
  <row Id="6769" PostId="5498" Text="Good places to start, thanks." CreationDate="2010-11-16T02:11:02.130" UserId="284" />
  <row Id="6770" PostId="5592" Text="Thank you so much for the link. It provided a rather extensive reading list that I'm sure will keep me busy for some time to come. " CreationDate="2010-11-16T03:40:08.177" UserId="2687" />
  <row Id="6771" PostId="5527" Text="@Tetrad: Yes Sorry! I'm new to game designing and I guess I'm using the wrong terminology. I meant different names for the ranks." CreationDate="2010-11-16T04:26:34.970" UserId="3296" />
  <row Id="6772" PostId="3996" Text="@BerggreenDK : can you explain,please?" CreationDate="2010-11-16T04:29:24.803" UserId="1251" />
  <row Id="6773" PostId="5593" Score="1" Text="You should link to the dupe at http://math.stackexchange.com/questions/10414/math-wizardry-formula-for-selecting-the-best-spell" CreationDate="2010-11-16T05:43:50.700" UserId="2781" />
  <row Id="6774" PostId="5610" Score="3" Text="Have you tried the bloom postprocess sample? http://create.msdn.com/en-US/education/catalog/sample/bloom" CreationDate="2010-11-16T05:54:03.777" UserId="288" />
  <row Id="6777" PostId="5578" Text="Thanks, I will be on the look out! I hate writing my own framework for simple flash based games I am building... Plus I have read somewhere that canvas takes way more processing power to import an image onto it that just drawing an image... I am importing most of my images which results in very laggy performance on older machines... I would hate for people to have a bad UX so I am looking for a lib which allows me to draw complex images or renders the images I import with better optimization! But I guess thats being too hopeful... :)" CreationDate="2010-11-16T07:16:28.213" UserId="3326" />
  <row Id="6778" PostId="5599" Score="1" Text="I've used this extensively.  It works, it's fast, it comes with the code, and the paper explains in great detail what the algorithm does." CreationDate="2010-11-16T07:47:06.107" UserId="1738" />
  <row Id="6779" PostId="5612" Text="You can use the octree contents as occluders, and the octree nodes as occludees.  The aggregate pixel coverage of several partially filled nodes (i.e., partial in that it doesn't map to the full pixel footprint of the octree node cube) can easily form a large occluder, and this can block octree nodes that are further away from the camera." CreationDate="2010-11-16T08:03:45.117" UserId="1738" />
  <row Id="6780" PostId="5597" Text="@Joe Wreschnig I meant them as being his own methods in his custom game classes, this is just an abstract example, not a detailed one." CreationDate="2010-11-16T08:20:47.603" UserId="2819" />
  <row Id="6781" PostId="5597" Score="1" Text="@kymully: Right, that's not how spells work in modern engines. There's one castSpell function that takes an object whose fields are read from a file. Such a switch statement would be impossible to maintain in any real engine, and some kind of planning algorithm is required." CreationDate="2010-11-16T09:33:28.870" UserId="744" />
  <row Id="6782" PostId="5593" Text="The term &quot;greedy&quot; doesn't have any implication for what your scoring does, just that you only look at local state. A score that took the remaining cooldown into account is still greedy, and obviously better." CreationDate="2010-11-16T09:37:09.613" UserId="744" />
  <row Id="6783" PostId="5621" Score="4" Text="+1 and a reminder to myself to link here next time someone tries to tell me how great the singleton pattern is for asset managers." CreationDate="2010-11-16T09:41:00.887" UserId="744" />
  <row Id="6784" PostId="5597" Text="@Joe Wreschnig I understand. I was merely giving a way in which to solve the problem. This example is written in java, not intended for an engine or specific framework. But if it can't be implemented as you say, my answer is void." CreationDate="2010-11-16T10:41:54.040" UserId="2819" />
  <row Id="6785" PostId="5628" Text="+1, but I would even replace GetStatValue with a lookup table of some sort to avoid maintaining that switch statement." CreationDate="2010-11-16T11:41:08.553" UserId="744" />
  <row Id="6786" PostId="5628" Text="The problem with this method is that you can only have generic data-driven attacks - you can't have anything that uses special logic. You will end up with a very generic set of items (as you get in warcraft" CreationDate="2010-11-16T12:28:37.563" UserId="119" />
  <row Id="6787" PostId="5512" Text="+1. Good answer and thanks for the service locator pattern link. That's a very interesting read." CreationDate="2010-11-16T13:07:48.193" UserId="20" />
  <row Id="6788" PostId="5628" Score="1" Text="@Iain: That is very easily solved by simply adding more data to allow this. E.g., you might have a SpecialAttack subclass which does more things, or calculates damage in an entirely different way. It's just a matter of identifying the behavior you need, and then expressing that as data." CreationDate="2010-11-16T13:13:15.893" UserId="3318" />
  <row Id="6789" PostId="5592" Text="@Aerathis, glad I could help." CreationDate="2010-11-16T13:15:42.530" UserId="2316" />
  <row Id="6790" PostId="5561" Text="Indeed, MMO means massively multiplayer. It doesn't necessarilly mean masses of content. Imagine if you took the levelling areas and quests out of WoW and made it just a dungeon-crawling game - you could do away without about 80% of the content." CreationDate="2010-11-16T13:32:49.410" UserId="93" />
  <row Id="6791" PostId="5631" Score="1" Text="-1, not only is this not data-driven, it's deep hierarchy rather than component-driven. It's the worst possible solution." CreationDate="2010-11-16T13:44:12.267" UserId="744" />
  <row Id="6792" PostId="5628" Score="2" Text="@Iain: In addition to just adding more fields, you can also solve that by some of the data fields being expressions or code blocks in e.g. Lua. Good use of orthogonal components also makes more interesting results." CreationDate="2010-11-16T13:44:53.013" UserId="744" />
  <row Id="6793" PostId="5633" Score="3" Text="Please split your questions up into separate questions." CreationDate="2010-11-16T14:35:00.940" UserId="744" />
  <row Id="6794" PostId="5627" Score="1" Text="Also good bets were going 2d and using tiles for level creation. They dramatically reduce the cost of content creation!" CreationDate="2010-11-16T14:51:47.923" UserId="678" />
  <row Id="6795" PostId="5608" Text="+1 for insight." CreationDate="2010-11-16T15:00:04.907" UserId="2698" />
  <row Id="6796" PostId="5636" Text="Nice, makes perfect sense.  I can't wait to implement it and see how it goes, Thank You very much!" CreationDate="2010-11-16T15:41:25.480" UserId="3368" />
  <row Id="6797" PostId="5637" Text="Coroutines sounds like a good way to do it, but after some searching it seems that coroutines are supported in Java" CreationDate="2010-11-16T15:44:22.027" UserId="215" />
  <row Id="6798" PostId="5638" Text="Checking for conditions all the time would mean a lot of variables saying things like `doesPlayerWantToPickUpItem`, `whatItem`, `isPlayerGoingToPlayDanceAnimationWhenDoneWalking` and I don't want to have to deal with a variable for every possible action to be performed next. Please read my edit in the original post for clarification on what I want to accomplish." CreationDate="2010-11-16T16:01:20.733" UserId="215" />
  <row Id="6799" PostId="5621" Text="I also found the Game State Management Demo at the XNA Web Site which uses exactly this (1 global Content Manager and a 2nd one on Screens that need it). Not very intuitive, but it'll do :)" CreationDate="2010-11-16T16:07:12.240" UserId="849" />
  <row Id="6800" PostId="5632" Score="4" Text="The same way you would code any game logic? Scripting is just a way of making it easier to change game code, without full recompile." CreationDate="2010-11-16T16:39:48.843" UserId="1156" />
  <row Id="6801" PostId="1098" Text="'I'm looking for something more organized and maintainable than &quot;hardcode them all as conditions.&quot; '. Though this is definitely a good K.I.S.S. method for a small game." CreationDate="2010-11-16T16:49:33.203" UserId="1156" />
  <row Id="6803" PostId="1143" Text="Gimp also supports multiple views with different zoom levels (`View-&gt;New View`)." CreationDate="2010-11-16T16:58:39.283" UserId="1289" />
  <row Id="6804" PostId="5641" Text="Thanks for the insight. Yep, there is DirectInput, but I haven't begun the book yet so I don't know its current state. I know the networking API provided by DirectX is now deprecated, not sure about the rest. " CreationDate="2010-11-16T17:02:54.133" UserId="3214" />
  <row Id="6805" PostId="5642" Text="Yes this is what I thought. I probably won't have too many issues converting to DirectX 10. As for your post, are you implying DirectX 10 and 11 are Vista+ only?" CreationDate="2010-11-16T17:03:40.513" UserId="3214" />
  <row Id="6806" PostId="5644" Text="If the book concentrates on the fixed-function pipeline, I'd say that's an extra reason to avoid following it... " CreationDate="2010-11-16T17:18:15.243" UserId="1091" />
  <row Id="6807" PostId="5642" Score="1" Text="Yes. While there are attempts at getting DX10 to work on XP, official support requires Vista as the underlying driver model is quite different." CreationDate="2010-11-16T17:19:11.343" UserId="1091" />
  <row Id="6808" PostId="4796" Text="@stonemetal; sure he could, but that's only borderline game development, and much more simply android programming (i.e. more appropriate for stackoverflow)" CreationDate="2010-11-16T17:31:56.553" UserId="653" />
  <row Id="6809" PostId="5476" Text="cocos2d in in objective-C, doesn't it ? I'm working in java, for a PC version. If i someday finsih the game, perhaps i'll be doing a mobile version, but currently this is *way* out of my league. Thanks" CreationDate="2010-11-16T17:51:32.307" UserId="338" />
  <row Id="6810" PostId="5648" Score="1" Text="How is this different than, say, Second Life?" CreationDate="2010-11-16T18:00:49.980" UserId="51" />
  <row Id="6811" PostId="5648" Text="@Tetrad I thought about it. It has another purpose, more simlish. I wish to create another world, but in more traditional RPG way. But their model is great for learning from, yeah." CreationDate="2010-11-16T18:10:56.490" UserId="3334" />
  <row Id="6812" PostId="5644" Text="Not sure if it does, but he took the time to convert the code from the 2006 book to compile with Visual Studio 2008 so I'd say its still a good book to learn from! Link -&gt; http://www.cjgraphic.com/?page=rts-book" CreationDate="2010-11-16T18:13:05.113" UserId="3214" />
  <row Id="6813" PostId="5476" Text="Ah, sorry.  yeah, Cocos2d is an objective-C library.  They also have a [Python library](http://www.cocos2d.org) for non-mobile deployment, I think." CreationDate="2010-11-16T19:38:42.823" UserId="2316" />
  <row Id="6814" PostId="5653" Text="Well specifically, I feel that the most natural way to become a designer/director is through being a programmer first. In 20 years, assuming C++ is still the way to go for games (I didn't even think of that) I feel not having a C++ project on my resume while going for a Game Design/Progaming Job is going to prevent me from getting a job." CreationDate="2010-11-16T19:50:03.770" UserId="2910" />
  <row Id="6815" PostId="5653" Text="It depends on what job you're applying for.  Generally console development requires C++, but, for example, you could be using an engine and do all your work in a scripting language instead." CreationDate="2010-11-16T19:54:42.223" UserId="51" />
  <row Id="6816" PostId="5652" Score="1" Text="Showing off code and showing off art or design are very different.  What specifically are you looking for examples of?" CreationDate="2010-11-16T19:58:15.263" UserId="51" />
  <row Id="6817" PostId="5655" Score="4" Text="Pretty sure the question was asking about the best way to show off things, not just showing off impressive lists." CreationDate="2010-11-16T19:58:54.543" UserId="51" />
  <row Id="6818" PostId="3147" Text="The Sonory technology sounds very nice.  I have never heard something like that.  It's really like the motor was alive.  Physical Modeling Synthesis is extremely complex to develop.  There are a lot of white papers on the subject." CreationDate="2010-11-16T20:32:35.913" UserId="2777" />
  <row Id="6819" PostId="5648" Text="This sounds almost like a fantasy-oriented version of Nomic." CreationDate="2010-11-16T21:03:44.480" UserId="395" />
  <row Id="6820" PostId="5602" Text="See my update. BTW I always avoid developing my own code (or evaluating any 3-rd party stuff) for the algorithms already implemented in Windows built-in libraries." CreationDate="2010-11-16T21:06:51.793" UserId="3355" />
  <row Id="6821" PostId="5666" Text="yeah that was what I was looking at... for the most part I didn't find that many 2d platformer type resources..." CreationDate="2010-11-16T21:34:21.383" UserId="1636" />
  <row Id="6822" PostId="5657" Score="1" Text="I would downvote for &quot;I googled this for you&quot; but upvote for a decent list... so, +0! :-P" CreationDate="2010-11-16T21:37:49.613" UserId="189" />
  <row Id="6824" PostId="5665" Text="Well are there any commercial games in the public domain? Like donated 16 bit stuff from the days of the original famicom (nes) " CreationDate="2010-11-16T21:40:11.070" UserId="1636" />
  <row Id="6826" PostId="5657" Text="Haha, well it took me a while to find those. There are a lot of programmers committing web design crimes on the internet. " CreationDate="2010-11-16T22:57:12.260" UserId="2345" />
  <row Id="6827" PostId="5652" Score="2" Text="I disagree, even something that is not typically a visual, such as AI, can be shown in a way that is pleasing to the eye. Example: http://processing.org/learning/topics/flocking.html" CreationDate="2010-11-16T23:01:46.217" UserId="2345" />
  <row Id="6828" PostId="5657" Score="2" Text="I'd kind of like to see these broken out so we can vote on them individually." CreationDate="2010-11-16T23:30:00.183" UserId="1289" />
  <row Id="6830" PostId="5657" Text="http://www.mutualdestruction.net/ is a good example in my opinion.  The site itself isn't anything fancy (which is fine; it stays out of my way), but they guy plainly shows the sorts of things he has done, there is some variation in the projects (e.g. they aren't all FPS games), and he provides evidence that he can get things done both by himself and on a team." CreationDate="2010-11-16T23:34:55.827" UserId="1289" />
  <row Id="6831" PostId="5625" Score="2" Text="This answer is incorrect. You cannot use custom shaders *on Windows Phone*. The Reach profile on other platforms supports Shader Model 2.0. http://blogs.msdn.com/b/shawnhar/archive/2010/03/12/reach-vs-hidef.aspx" CreationDate="2010-11-16T23:40:07.510" UserId="288" />
  <row Id="6832" PostId="5657" Text="I agree with Steve, it would be nice to have these separate.  " CreationDate="2010-11-17T00:07:34.117" UserId="2345" />
  <row Id="6833" PostId="5669" Text="Thanks for the great input! The twist I'm taking with my Alchemy-like game is adding rpg elements (levels, exp, hp, mp, spells, etc.). " CreationDate="2010-11-17T00:35:26.907" UserId="47" />
  <row Id="6834" PostId="2732" Text="What a rational policy! I can't believe someone thinks $20 is too much. (I just wish you had the font I was looking for…)" CreationDate="2010-11-17T00:46:56.637" UserId="3171" />
  <row Id="6835" PostId="5664" Score="2" Text="The key words &quot;obscure&quot;, &quot;non-trivial&quot;, &quot;means that it's impossible for me to truly secure things&quot; make me think he knows this already. He was asking about making it more difficult for the opportunistic cracker, not making it 100% secure." CreationDate="2010-11-17T00:51:27.777" UserId="1232" />
  <row Id="6836" PostId="5672" Text="thanks, this is good to know" CreationDate="2010-11-17T01:50:55.437" UserId="982" />
  <row Id="6837" PostId="5631" Score="2" Text="Just because this particular method isn't data-driven doesn't make it a bad choice and the hierarchy wouldn't be that deep anyways.  It is simple but still powerful (the UnrealEngine is a perfect example of this) if done correctly (ie. no hard-coded values).  Sure it has its downsides, but further down the development cycle of a data-driven system I'm sure its downsides are show.  I think your basic OOP design is still a valid solution in this and if he wants on the fly editing of default values, it can be implemented on top of a hierarchy system just as easily." CreationDate="2010-11-17T03:10:57.827" UserId="631" />
  <row Id="6838" PostId="5664" Score="1" Text="As jpaver says, I'm aware it's not possible. I'm not even trying to make it difficult, really, just not simple." CreationDate="2010-11-17T03:15:09.840" UserId="2653" />
  <row Id="6839" PostId="5670" Text="I don't know why, but XOR is never in my 'toolbox' of things I tend to think of. I've really got to change that. Strange that something so simple can be so useful." CreationDate="2010-11-17T03:16:56.050" UserId="2653" />
  <row Id="6841" PostId="5587" Text="Thank you, this was very helpful, but not 100% the answer I was looking for." CreationDate="2010-11-17T04:05:12.337" UserId="3354" />
  <row Id="6842" PostId="5625" Text="My bad. I have been using XNA 4 only for Windows Phone games, and assumed that the entire Reach profile didn't support custom shaders." CreationDate="2010-11-17T04:33:14.360" UserId="2798" />
  <row Id="6843" PostId="5669" Score="1" Text="How is this gonna be any different than Puzzle Quest? You have to find some element that is new, or an old element that you can make even better." CreationDate="2010-11-17T04:38:41.893" UserId="3214" />
  <row Id="6844" PostId="5664" Text="All it takes is one person to crack it and release the hack for even the best encryption to be cracked for all. The only thing good encryption will do is slightly increase the time for being hacked. " CreationDate="2010-11-17T04:42:40.243" UserId="962" />
  <row Id="6845" PostId="5675" Score="2" Text="I think your question could be better phrased as &quot;How do I apply A* to a complex and dynamic 3D environment?&quot;" CreationDate="2010-11-17T04:47:40.320" UserId="962" />
  <row Id="6847" PostId="1581" Text="also you could use www.flazx.com It has lots of ebooks on game development and also on almost every topic in computer science" CreationDate="2010-11-17T09:11:19.287" UserId="1251" />
  <row Id="6848" PostId="5684" Text="i am eagerly waiting for the answers to come up" CreationDate="2010-11-17T09:59:38.150" UserId="1251" />
  <row Id="6849" PostId="4681" Text="I remember using this tutorial when doing my Masters dissertation on the simulation of natural phenomena. I used the &quot;hill&quot; example to create the sky dome over my 3D world. Excellent introduction to the concept of terrain generation." CreationDate="2010-11-17T10:04:33.207" UserId="129" />
  <row Id="6850" PostId="5686" Text="Yes I know I'm asking two different questions here. But I'm looking for options for what I can do to have presence in the gaming community. And well, selling games is an option, but I'm looking for &quot;How to's&quot;. Also I will check out the licensing stuffs. Thanks!  " CreationDate="2010-11-17T10:11:30.427" UserId="3212" />
  <row Id="6851" PostId="5669" Text="@shadowprotocol well, Puzzle Quest is more built on top of Bejeweled where there is gem swapping (mine is about placing runes on a board adjacent to similar runes in color or symbol).  I'm more focused on the actual puzzle play than the heavy RPG elements that Puzzle Quest has (moving around a world map, quests, dialog, etc etc).  Mainly to keep things as simple as possible (for both the player and developer ;) )." CreationDate="2010-11-17T10:14:27.873" UserId="47" />
  <row Id="6852" PostId="5685" Text="I also get that a lot. So asked a question in the community as to what skills a professional game programmer should have. Got some nice answers focussing on C++ as better language for developing games. check.. http://gamedev.stackexchange.com/questions/5552/what-is-the-basic-skill-set-that-a-professional-game-programmer-needs-to-have  " CreationDate="2010-11-17T10:16:18.610" UserId="3212" />
  <row Id="6853" PostId="5685" Text="@GamDroid: I am not interested in knowing what makes a professional 2d game programmer. I am interested in knowing about Visual C++ and why is it so talked about on." CreationDate="2010-11-17T10:34:58.637" UserId="1251" />
  <row Id="6854" PostId="5688" Text="If I ask you which would be the most appropriate language to learn for a 2d game programmer to enter the 3d game programming industry.Would you answer, Visual C++?" CreationDate="2010-11-17T10:45:09.217" UserId="1251" />
  <row Id="6855" PostId="5688" Score="2" Text="In the mainstream development industry, yes." CreationDate="2010-11-17T10:56:11.103" UserId="1091" />
  <row Id="6856" PostId="5688" Text="also, in around 2 years from now I would like to enter a well-known 3d game development company as a Gameplay Engineer. So what would you recommend I should surely learn?" CreationDate="2010-11-17T10:58:46.623" UserId="1251" />
  <row Id="6857" PostId="5688" Score="2" Text="In terms of languages, C++, primarily - it's not going anywhere any time soon. I'd suggest it also wouldn't hurt to be familiar with scripting languages - Lua, Python, etc." CreationDate="2010-11-17T11:05:32.340" UserId="1091" />
  <row Id="6858" PostId="5631" Score="1" Text="Not everything has to be data-driven - it depends on the scale of the game. It's probably a bit arrogant to think that my answer is &quot;wrong&quot;, but thank you for your honesty. I think this is just a clash of styles between what works for me, making Flash games every day, and your more traditional model of development. I can tell you my approach is much faster to implement and you have better compile-time checking. Your comment re. Lua assumes the asker is working on a platform that would support that." CreationDate="2010-11-17T11:07:11.077" UserId="119" />
  <row Id="6859" PostId="607" Score="1" Text="&quot;Trusted client&quot; is not an approach, it's a mistake." CreationDate="2010-11-17T11:08:23.557" UserId="2188" />
  <row Id="6861" PostId="5688" Score="8" Text="Visual C++ is not a language, it's an IDE." CreationDate="2010-11-17T11:43:32.140" UserId="999" />
  <row Id="6862" PostId="5688" Score="1" Text="Yes, though it's probably the most used IDE, so it's worth getting to know that at the same time as learning C++." CreationDate="2010-11-17T11:52:17.680" UserId="1091" />
  <row Id="6864" PostId="5688" Text="Well, which will be the best (considering the trade-off between knowledge and time spent) a.) Learning 3d game programming with books,ebooks,google and self-taught techniques or b.) Learning 3d game programming with an online course(expensive but has highly acclaimed staff)" CreationDate="2010-11-17T12:40:19.900" UserId="1251" />
  <row Id="6865" PostId="5685" Score="2" Text="Btw: Visual C++? Not just plain C++?" CreationDate="2010-11-17T12:59:26.927" UserId="469" />
  <row Id="6866" PostId="5685" Text="The Visual C++ editor is cool, but the language Visual C++ (that is: C++ with Win32 GUI API and stuff like that, both with MS Visual C++ or Borland C++ Builder) is pretty confusing and should not be used for games (it is too bloated, and using GDI is slower than using say, SDL, to control the window)" CreationDate="2010-11-17T13:00:46.753" UserId="469" />
  <row Id="6867" PostId="5691" Text="Copyright can protect the actual source or data, but not the game &quot;concepts&quot;, that (rightly) can't be copyrighted." CreationDate="2010-11-17T13:17:03.757" UserId="2188" />
  <row Id="6868" PostId="5687" Text="1) That is why, if I'd manage this game (and I probably won't), I'd only relied on offshore artists. Core team just has to organize all this. 2)3) Yep, economic model is just, like, 0% thinked out." CreationDate="2010-11-17T13:19:33.547" UserId="3334" />
  <row Id="6869" PostId="5691" Text="It's possible to copyright &quot;look and feel&quot; - or at least attempt to do so. It's also possible (though it seems to be rare these days) to patent game mechanics." CreationDate="2010-11-17T13:42:12.567" UserId="1091" />
  <row Id="6870" PostId="5692" Text="If you don't want people to install a .exe, Unity and Silverlight should not be an option, since they require the user to install their player/plugin/whatever. Flash and Java are instead almost always already available if they are supported by the machine, so they'd be fine." CreationDate="2010-11-17T13:54:01.980" UserId="2188" />
  <row Id="6871" PostId="5691" Score="1" Text="Copyright and patents are two completely different and unrelated things. You don't &quot;copyright&quot; things: copyright is automatic. And it does *not* cover &quot;look and feel&quot; of course. Patents are a mess and it is possible to patent pretty much anything, even if it doesn't make sense: in the end, who throws more money into the lawsuit will win regardless of any possible common sense (so just give up)." CreationDate="2010-11-17T13:55:54.473" UserId="2188" />
  <row Id="6872" PostId="5692" Text="@Lo'oris: Java is not installed on my machine. I seen MS push Silverlight on some of their gaming (and nongaming) sites and unity is apparently becoming popular but its still in the web rather then 'install' each game itself." CreationDate="2010-11-17T14:04:53.203" UserId="1047" />
  <row Id="6874" PostId="5659" Score="2" Text="Yes the 3d space shooter [Ascension wars][1] by [Digial roar][2] runs on facebook.&#xA;&#xA;&#xA;  [1]: http://apps.facebook.com/ascensionwar/&#xA;  [2]: http://www.digitalroar.net/" CreationDate="2010-11-17T14:07:14.143" UserId="1477" />
  <row Id="6875" PostId="5672" Score="1" Text="This is not an answer. Should make it a comment." CreationDate="2010-11-17T14:08:36.810" UserId="1477" />
  <row Id="6876" PostId="5691" Text="Perhaps my comment was badly worded, but I stand by the sentiment. People have been successfully sued for copying the look and feel of software. People have also successfully defended themselves, and in many other cases people have settled when challenged. But it's certainly not safe to assume that copyright does not apply to look and feel." CreationDate="2010-11-17T14:27:20.500" UserId="1091" />
  <row Id="6877" PostId="5511" Text="Great Answer, thanks!" CreationDate="2010-11-17T14:37:35.337" UserId="1910" />
  <row Id="6878" PostId="5500" Text="What are you working in, if you don't mind my asking...?" CreationDate="2010-11-17T14:39:09.440" UserId="1910" />
  <row Id="6879" PostId="5692" Score="1" Text="@acid: it is irrelevant that Java is not installed in *your* machines: it's installed in most. MS can push silverlight as much as they want, but it will still be an optional install on OSX and not even an option on other platforms. Browser-side Unity *still* requires the user to install its plugin, as it is not installed by default pretty much anywhere (maybe some future versions of Chrome will have it?)." CreationDate="2010-11-17T15:01:40.330" UserId="2188" />
  <row Id="6880" PostId="5682" Score="1" Text="Right on.  To build on that last paragraph a bit, dynamic obstacles really call for more than just waypoints and A*:  http://www.ai-blog.net/archives/000152.html" CreationDate="2010-11-17T15:14:06.010" UserId="1289" />
  <row Id="6881" PostId="5700" Text="Thats my guess, too. But i need to be as sure as i can. If anybody knows for sure i'd appreciate a comment about it. Cheers." CreationDate="2010-11-17T15:25:32.773" UserId="1214" />
  <row Id="6882" PostId="5692" Score="3" Text="-1, lots of scattershot questions here.  Be specific and have a singular question." CreationDate="2010-11-17T15:26:51.313" UserId="51" />
  <row Id="6883" PostId="5700" Text="@Tetrad: Whats the policy about crossposting. i.e. asking this same question on Stack Overflow, too. I've seen questions there about GC, too. Would not want to miss the knowledge of ppl over there who dont look here. Any suggestion? " CreationDate="2010-11-17T15:27:38.910" UserId="1214" />
  <row Id="6884" PostId="5700" Text="@robo Do whatever you want.  If you get an answer over there that works be sure to bring it over here and mark it as accepted, though." CreationDate="2010-11-17T15:29:18.553" UserId="51" />
  <row Id="6886" PostId="5509" Text="Great answer! +1" CreationDate="2010-11-17T15:31:34.320" UserId="1910" />
  <row Id="6887" PostId="5685" Text="I removed references to 'visual c++' from your question since that was just confusing the question.  &quot;Visual C++&quot; to most games programmers means just the IDE, and you're asking about C++ the language itself." CreationDate="2010-11-17T15:32:29.197" UserId="51" />
  <row Id="6888" PostId="5502" Text="So what you are saying is that if I have a minor in math on my resume, I'd better be able to back that minor up with actual math skills during interview to make it a valuable addition on the resume?" CreationDate="2010-11-17T15:32:57.593" UserId="1910" />
  <row Id="6889" PostId="5685" Text="Also, -1, slight duplicate: http://gamedev.stackexchange.com/questions/339/what-are-the-most-commonly-used-programming-languages" CreationDate="2010-11-17T15:33:08.557" UserId="51" />
  <row Id="6890" PostId="5692" Text="@Lo'oris: Whats funny is just today after i asked this question someone mention unity on chrome possibly by default. Flash isnt on firefox or IE8 by default. So really all 4 require install. It would be cool if native client on chrome would work with unity. @Tetrad: Theres one main questions the rest are subs" CreationDate="2010-11-17T15:58:39.023" UserId="1047" />
  <row Id="6891" PostId="5699" Text="hmm, good link, +1" CreationDate="2010-11-17T16:01:25.030" UserId="1047" />
  <row Id="6892" PostId="5685" Text="Between that question and http://gamedev.stackexchange.com/questions/5651/am-i-hurting-myself-by-not-knowing-c-for-game-design I feel like we covered it all already." CreationDate="2010-11-17T16:18:02.753" UserId="744" />
  <row Id="6893" PostId="5708" Score="3" Text="Welcome, but you might want to rephrase your question - there is a rule of 'not asking how to make an entire game'. Maybe 'What resources exist for solitaire like games?'" CreationDate="2010-11-17T18:06:50.943" UserId="1156" />
  <row Id="6894" PostId="5665" Text="http://gamedev.stackexchange.com/questions/20/where-can-i-find-free-sprites-and-images Potential duplicate?" CreationDate="2010-11-17T18:07:51.643" UserId="1156" />
  <row Id="6895" PostId="5665" Text="I'm asking about a specific type of 2d game. &quot;2d platformer&quot;. Because I took a look at that answer and did not find many of the necessary resources." CreationDate="2010-11-17T18:19:12.727" UserId="1636" />
  <row Id="6896" PostId="5694" Score="1" Text="&quot;The patent law says it is illegal to patent ideas, including software and game rules&quot; - board games mechanics have been patented since before the 20th, in the US. I still don't recommend trying to do it - patenting is a long, expensive, complicated process, compared to the automatic coverage of copyright, and as the coverage is broader, makes you something of an asshole to other designers." CreationDate="2010-11-17T20:29:22.287" UserId="744" />
  <row Id="6897" PostId="5684" Score="3" Text="If you release it on the internet, it will get copied. If you release it commercially, it will get copied. If you do anything except hoard it, it will get copied. The best you can really do is put a GPL or some license on it to attempt to dissuade people." CreationDate="2010-11-17T20:30:52.863" UserId="1156" />
  <row Id="6898" PostId="5694" Score="1" Text="IIRC board game mechanics are not patentable. You can make a direct copy of the Monopoly rules and sell it in a box. What you can't do is use and of the character names, or artwork. Of course IANAL." CreationDate="2010-11-17T21:30:58.020" UserId="154" />
  <row Id="6899" PostId="5712" Score="1" Text="iPhone/iPad development requires Mac OSX for deployment/debugging. Android can be developed anywhere." CreationDate="2010-11-17T21:46:40.833" UserId="1198" />
  <row Id="6900" PostId="5694" Text="@wkerslake: Board games have been and are being patented, Monopoly one of the more famous among them.  (Of course, Monopoly's has long since expired.) Example from 2002: http://www.google.com/patents/about?id=y3cUAAAAEBAJ ; famous example from 1904: http://www.google.com/patents?vid=748626 ." CreationDate="2010-11-17T22:26:53.683" UserId="744" />
  <row Id="6901" PostId="5677" Text="I like the idea of incorporating a checksum!" CreationDate="2010-11-17T22:43:45.177" UserId="2653" />
  <row Id="6902" PostId="5711" Score="1" Text="The &quot;can I make iPhone games on Windows&quot; question is here: http://gamedev.stackexchange.com/questions/5403/can-we-develop-a-game-for-iphone-on-windows-platform" CreationDate="2010-11-17T22:55:38.413" UserId="51" />
  <row Id="6903" PostId="5502" Text="Yes, exactly so." CreationDate="2010-11-17T22:59:32.860" UserId="1573" />
  <row Id="6904" PostId="5712" Score="1" Text="@Nate: Yeah, but the only question in there (outside of the title) was &quot;Are the development tools better on Mac or Windows for Android&quot; But I'll add something for mac." CreationDate="2010-11-17T23:03:44.820" UserId="14" />
  <row Id="6905" PostId="5692" Score="1" Text="Writing the game in raw Javascript with a HTML5 Canvas is an option. There are a few proof of concept games written as such lying around. On all browsers but IE you can use HTML5 WebSockets to connect to servers." CreationDate="2010-11-17T23:46:09.050" UserId="2425" />
  <row Id="6906" PostId="5502" Score="2" Text="I guess that's true of anything you put on your resume. The important thing is that your minor should be something you are good at and truly interested in. It is much better to have a history minor and really love talking about Ancient Rome for hours, than to have a math minor because it seemed like the thing to do. My minors were in english and theatre, and they still ended up helping me out a lot in my career. " CreationDate="2010-11-17T23:47:37.877" UserId="1573" />
  <row Id="6907" PostId="5710" Text="At least 10 years ago, the M$VC++6.0 Language was still buggy, and the .NET version after that had other bugs. It was not even full compatible to the standard. And the libs from M$ were (probably still are?) extremely catastrophic: You had to circumvent different bugs in the libs, depending on the VC++ version, and to convert between the slow O(n²) implementation of CString and the fast O(n) implementation of std::string, that you wanted to use." CreationDate="2010-11-18T00:15:34.880" UserId="3108" />
  <row Id="6908" PostId="612" Text="I would write an interpreter or jit-compiler in haskell for sth like lisp/scheme or bash or python or lua or erlang (anything without its standard libs) in one or two days. I would not suggest to write an interpreter in i.e. C++ or Java, as long as it is not for interpreting sth lisp like. But that was not the question, anyway." CreationDate="2010-11-18T00:33:54.203" UserId="3108" />
  <row Id="6909" PostId="5672" Score="1" Text="well I *think* its an answer because it provides *help* to the asker..." CreationDate="2010-11-18T01:58:16.777" UserId="3405" />
  <row Id="6910" PostId="5374" Score="1" Text="This is not at all true.  MVC defines the separation of state (the model) from the user interface (the view and controller).  An &quot;engine&quot; is a generic framework on which games can be built, and could contain the base elements for the model, view, and controller." CreationDate="2010-11-18T02:43:53.333" UserId="2116" />
  <row Id="6911" PostId="5713" Text="You will need lots of money, however. Money to hire lawyers, money to sue people for copyright infringement, money to apply for trademarks and patents in every country in the world, and money to sue more people." CreationDate="2010-11-18T02:44:45.457" UserId="656" />
  <row Id="6912" PostId="5502" Text="Thanks for expounding!" CreationDate="2010-11-18T03:16:52.597" UserId="1910" />
  <row Id="6914" PostId="5710" Score="2" Text="well, somebody above pointed out that the &quot;cryptic&quot; part of the code i actually found in c++ was not really part of the language and that it was a required coding effort while programming in visual c++ ide with win32 api" CreationDate="2010-11-18T04:45:14.047" UserId="1251" />
  <row Id="6915" PostId="5660" Text="yea, i too felt bad when Oracle bought sun ! I was a hardcore java fan" CreationDate="2010-11-18T04:47:10.190" UserId="1251" />
  <row Id="6916" PostId="5712" Text="@noctrine: android works best in what?" CreationDate="2010-11-18T04:50:40.873" UserId="1251" />
  <row Id="6917" PostId="5685" Text="@speeder: well I thought directx game programming was done using C++ nad the Win32 Api? Then what API do you suggest I use along with this C++?" CreationDate="2010-11-18T05:04:52.883" UserId="1251" />
  <row Id="6918" PostId="5660" Score="1" Text="I liked this answer because of the comment on the perceived hierarchy of languages. I'll probably continue to do my initial project in XNA, for the most part I really like C#. But I'll make my next project in C++. All the other comments where also very encouraging." CreationDate="2010-11-18T06:50:18.523" UserId="2910" />
  <row Id="6919" PostId="5726" Score="1" Text="You should add a note that the Y-component (and X too for that matter, but that's not really interesting for the question) of the velocity could be negative (being downward motion on the Y axis), and adding a negative value to the position will make it move downward. This doesn't feel obvious from the way you put it. +1" CreationDate="2010-11-18T08:18:22.470" UserId="653" />
  <row Id="6920" PostId="5704" Text="Good idea. :-) You may want to look into predicate occlusion queries (required for DX10 hardware, and I expect there is an OGL extension).  The predication can help prevent stalls, removing a lot of the downside.  Once again, the main motivation here is if you are rendering millions of triangles per frame." CreationDate="2010-11-18T09:48:29.870" UserId="1738" />
  <row Id="6921" PostId="5589" Text="Thanks very much for this. I'd like to know; is it fast enough to use on relatively high poly models colliding with other objects of the same ilk?" CreationDate="2010-11-18T11:10:00.877" UserId="3304" />
  <row Id="6922" PostId="5589" Text="That Equaliser project looks incredible! I *must* try this some time!" CreationDate="2010-11-18T11:13:48.517" UserId="3304" />
  <row Id="6923" PostId="5589" Text="@JamWaffles, I don't know if it's high performance.  I'm sure there's an OpenCL implementation that would be lightning fast, but that's beyond me.  Equalizer is a great project.  Distributed graphics is impressive when you see your scene rendering on a wall of 12 monitors.  :D" CreationDate="2010-11-18T12:53:49.627" UserId="2316" />
  <row Id="6924" PostId="5692" Text="@acid: sigh. Everyone knows what Flash is, and most people have it already installed. Only a few game developers know what Unity is, and most people do not have it already installed. But if you want to twist the truth, you're the one that will have to face his delusions." CreationDate="2010-11-18T14:38:12.800" UserId="2188" />
  <row Id="6925" PostId="5729" Score="2" Text="I'm sorry but I don't understand what type of games are you referring to.  Double Dragon?  Super Mario?  R-type?  All of those feature side scrolling, but the gameplay is completely different in each case." CreationDate="2010-11-18T15:28:49.643" UserId="2091" />
  <row Id="6926" PostId="5703" Score="1" Text="RAII is perfectly acceptable(and should be encouraged) in game code.  " CreationDate="2010-11-18T15:52:10.903" UserId="2447" />
  <row Id="6927" PostId="5710" Text="The VS part was meant as a side note about the original VS mention, sorry if I'm not up to date. But anyway the question is about: 1) why is C++ preferred and 2) 3D programming tutorial. Is my answer wrong on the question's actual topics?" CreationDate="2010-11-18T16:20:47.373" UserId="3431" />
  <row Id="6928" PostId="5689" Text="Rule of thumb I use: If it needs releasing, don't bother too much. If it's scalable, try your best to keep it organised." CreationDate="2010-11-18T16:50:45.260" UserId="1156" />
  <row Id="6929" PostId="5710" Score="1" Text="&quot;Visual Studio's C++ was just as fast as C# and GNU C++ was faster&quot; really? Whenever I've tested the performance of C++ on MS vs GNU, i've always seen the MS binaries perform better. Admittedly, the non-release MS code runs slower, is that what you mean? If so, how is that relevant?" CreationDate="2010-11-18T16:53:28.110" UserId="1742" />
  <row Id="6930" PostId="5735" Text="I know what FOSS is but what is Floss? Google keeps taking me to dental floss." CreationDate="2010-11-18T16:57:37.327" UserId="2620" />
  <row Id="6931" PostId="5735" Text="Hehe, it's the same: FLOSS stands for Free-Libre-Open-Source Software.." CreationDate="2010-11-18T17:03:37.680" UserId="3446" />
  <row Id="6932" PostId="5733" Text="+1, why was this -1?" CreationDate="2010-11-18T17:11:34.190" UserId="2620" />
  <row Id="6933" PostId="5710" Text="Anyway, I'm removing the controversial VC++ is slow statement." CreationDate="2010-11-18T17:16:25.617" UserId="3431" />
  <row Id="6934" PostId="402" Text="@BananaRaffle +1, thank you." CreationDate="2010-11-18T17:29:54.913" UserId="2620" />
  <row Id="6935" PostId="5700" Text="I found the following related questions at SO about this. a) http://stackoverflow.com/questions/4069148/one-game-center-account-for-two-ios-apps and with a slightly different angle b) http://stackoverflow.com/questions/4018028/game-center-api-in-app-purchases-api-two-different-user-accounts-for-a-single So i believe the answer is: It is not possible. If i find out otherwise during the production of our current title I will (hopefully remember to) update here. " CreationDate="2010-11-18T17:46:45.787" UserId="1214" />
  <row Id="6936" PostId="5735" Score="2" Text="Could we have a title change to just open source tools or something similar? I'm just wondering it could generate more interest with a more understandable title." CreationDate="2010-11-18T17:52:46.640" UserId="1156" />
  <row Id="6937" PostId="5735" Text="Also, maybe separate OpenSteer and the motion capture one into answers?" CreationDate="2010-11-18T17:53:04.957" UserId="1156" />
  <row Id="6938" PostId="5729" Score="1" Text="I agree with CeeJay, are we talking shmup or adventure scrollers? The ideas behind Mario are totally different than say a shump." CreationDate="2010-11-18T17:54:27.857" UserId="1156" />
  <row Id="6939" PostId="5735" Text="I edited the title to include Open Source instead of FLOSS." CreationDate="2010-11-18T17:54:56.593" UserId="962" />
  <row Id="6940" PostId="2052" Text="Effective, but boring.  I would much prefer to play a game against opponents that I have come to know (enemies, or friends, or casual acquaintances on chat) than against random unknowns, especially ones that may or may not be active opponents at any point." CreationDate="2010-11-18T18:06:59.990" UserId="284" />
  <row Id="6941" PostId="1951" Text="This seems like a weird description of the problem to me.  What are players who get third parties to play the game getting out of it?  Certainly that's gotta cut down a lot of their fun.  I can see the fun of multi-accounting by yourself, but having someone else multi-account for you doesn't seem to add to the fun unless you get something back, like money for being at the top." CreationDate="2010-11-18T18:10:38.693" UserId="284" />
  <row Id="6942" PostId="5735" Text="@AttackingHobo: Thanks for the edit. I thought FLOSS was more widespread (guess too much time spent on freegamedev.net :D)" CreationDate="2010-11-18T18:13:00.040" UserId="3446" />
  <row Id="6943" PostId="1777" Score="1" Text="Having a reputation system would help with the case you describe (e.g. you can only get rep from others, so getting it from yourself just moves it back and forth uselessly).  Also, if each friend has two accounts, isn't ip detection actually going to be useful at least some of the time?" CreationDate="2010-11-18T18:13:06.507" UserId="284" />
  <row Id="6944" PostId="5735" Text="@Commie Duck: I guess I could put them into answers, but I don't see the benefit. They're there to be a guide, so to avoid common tools like Blender/PyGame/Bullet etc" CreationDate="2010-11-18T18:18:44.527" UserId="3446" />
  <row Id="6945" PostId="1988" Text="Useful, even if it isn't a standalone method." CreationDate="2010-11-18T18:32:55.713" UserId="284" />
  <row Id="6946" PostId="5729" Score="1" Text="Also, define &quot;addicting&quot; because &quot;addicting&quot; and &quot;compelling&quot; and &quot;fun&quot; are not all synonyms. Additionally, these all vary from person to person, so state your target audience; a game that's addicting to 10-year-olds may not fare so well with core gamers or grandmas." CreationDate="2010-11-18T18:51:57.440" UserId="458" />
  <row Id="6947" PostId="5733" Score="3" Text="There's plenty of discussion elsewhere on this site about why MVC is generally not an appropriate pattern for games; what stonemetal describes isn't even MVC, it's just abstraction; and &quot;Use MVC&quot; is not an answer, since MVC is a description of a whole class of architectures and not a particular way to separate concerns (nor the only way to do it)." CreationDate="2010-11-18T19:06:06.153" UserId="744" />
  <row Id="6948" PostId="5735" Score="2" Text="The benefit of putting them in as answers is that we can edit and vote on them as answers. That's the point of CW." CreationDate="2010-11-18T19:08:20.143" UserId="744" />
  <row Id="6949" PostId="5710" Text="The 3D programming tutorial you linked is pretty bad. Also, C++ is pretty cryptic - anything with a standard pushing 900 pages is." CreationDate="2010-11-18T19:10:31.067" UserId="744" />
  <row Id="6950" PostId="5733" Score="1" Text="  MVC should give him A) a wikipedia article to read B) a number of variations on how to approach the solution that have been shown to work C) I mention the way I would set it up where the model exposes a high level interface that the controller maps low level input(real or synthetic) to high level action and directly manipulates the model rather than some eventing system." CreationDate="2010-11-18T19:21:29.410" UserId="2447" />
  <row Id="6954" PostId="5744" Text="There are already a ton of getting started questions out there.  This one is almost the same as this one: http://gamedev.stackexchange.com/questions/5465/starting-programming-in-3d-with-c" CreationDate="2010-11-18T19:44:57.043" UserId="51" />
  <row Id="6955" PostId="5744" Text="o crap vague -.- thanks sorry i've been looking for the same question well wrong tags on search maybe" CreationDate="2010-11-18T19:45:24.293" UserId="3452" />
  <row Id="6956" PostId="5445" Score="2" Text="+1 but I think Massive would be a huge amount of playing area and can hold a lot of people (not meaning it always does)" CreationDate="2010-11-18T19:58:51.917" UserId="2301" />
  <row Id="6958" PostId="5716" Text="Not going to work, if its all client side, one could just level up once, capture the packets from other clients that confirm a valid move, and then just replay those packets when needed for whatever hack is attempted. " CreationDate="2010-11-18T21:47:14.060" UserId="962" />
  <row Id="6959" PostId="5710" Text="@Joe Wresching: The link was just the first 5 lessons of the tutorial... See http://nehe.gamedev.net/ Well, I don't deny C++ is difficult to learn. The thing is that in most languages I miss something C++ does better, if I'm using a static language like C# it's decent metaprogramming, if I'm using a dynamic language like Python which I miss is the speed of C++ without having to make code *really* cryptic. It's a trade off. If doing simple games without the worry about portability or handheld dev then you can use Darkbasic, etc. Today most dev companies _do_ want to dev for PS3, Wii, PSP, tho" CreationDate="2010-11-18T22:45:09.423" UserId="3431" />
  <row Id="6960" PostId="5747" Score="1" Text="I wouldn't start out with Tetris, it is a bit more complicated than you think. I would start with a simple game of pong. Add scoring, AI, and slowly make it more complicated. Then maybe start a Tetris like game." CreationDate="2010-11-18T23:30:56.857" UserId="962" />
  <row Id="6961" PostId="5735" Score="1" Text="When he said it, I believe he meant individual answers." CreationDate="2010-11-19T00:54:08.123" UserId="14" />
  <row Id="6962" PostId="1816" Text="Sorry, I missed your reply. It's a first person shooter/tactical action game called &quot;Derelict&quot; with a Sci-Fi horror theme. I used the wide range of ranks primarily for indicating difficulty rather than roleplay, but since the game is set during a surprise attack on a military space transport there are both Privates and Generals present." CreationDate="2010-11-19T03:20:12.577" UserId="619" />
  <row Id="6964" PostId="5738" Text="I think I understand what you mean, except for you choice of a `queue` as datatype to store this. Could you explain why?" CreationDate="2010-11-19T09:04:35.817" UserId="3444" />
  <row Id="6965" PostId="5738" Text="Well between 2 input event polling from the model, the controller may have pushed several action events, and it's important to keep the order of user input. That's why I chose a FIFO data structure. Actually you may also need to specify at what exact time the input happened." CreationDate="2010-11-19T09:33:26.047" UserId="1859" />
  <row Id="6966" PostId="5767" Text="+1 Good answer. Some of the speed or threading concerns don't really apply in this context though (ActionScript3 doesn't support threading and a lot of speed improving mechanisms that work in C++ don't apply when using AS3)." CreationDate="2010-11-19T11:05:47.130" UserId="20" />
  <row Id="6967" PostId="5753" Text="All true, however how would I get say, 5 players to agree on how many laps there should be in the next race, and stuff?" CreationDate="2010-11-19T11:35:35.057" UserId="3422" />
  <row Id="6968" PostId="5767" Text="I don't know much about the AS3VM, but in most dynamic languages, the cost of passing/receiving/using a local is still faster (array lookup) than the cost of looking up a global (hash lookup), and _much_ faster than calling a function (craploads of stuff) to get at it. So I think that advice still applies." CreationDate="2010-11-19T11:51:51.413" UserId="744" />
  <row Id="6969" PostId="5703" Text="@stonemetal: RAII encourages delayed and therefore unpredictable resource allocation. Whether that should be encouraged or not depends on the size of your game and your target platforms (and the resource in question); on average I would not encourage it. Furthermore, RAII in C++ is most commonly used with heap allocation, because C++'s OO makes stack allocation too hard." CreationDate="2010-11-19T12:05:07.947" UserId="744" />
  <row Id="6970" PostId="5735" Text="@Noctrine: Yes, but that would imply that the best answer is that which names &quot;the best&quot; project, when I believe the best answer would be the one that lists more -relevant- projects than others" CreationDate="2010-11-19T12:16:22.397" UserId="3446" />
  <row Id="6971" PostId="5770" Text="Its pretty bad.. But with webworkers, I get SO errors..." CreationDate="2010-11-19T12:56:44.133" UserId="3326" />
  <row Id="6972" PostId="5754" Text="@jeffora: Wow, nice library. I'll take a closer look at it. Thanks!" CreationDate="2010-11-19T12:56:44.613" UserId="3446" />
  <row Id="6973" PostId="5770" Text="If you get stack overflows then just switch from your recursive solution to an iterative based one." CreationDate="2010-11-19T14:37:29.250" UserId="1713" />
  <row Id="6974" PostId="5703" Score="1" Text="In what way does RAII encourage delayed resource allocation?  When I use GLFW I make a class called GLFWRAII that calls GLFW's init function in the constructor and calls GLFW's clean up routine in the destructor. I allocate it on the stack at the beginning of main, it in no way delays anything nor does anything unpredictable.  Other uses might be to allocate at the beginning of a level and clean up at the end of a level.  Poorly using  a technique doesn't make it a poor technique.  Nothing about RAII suggest unpredictable resource allocation other than poor use." CreationDate="2010-11-19T14:38:48.460" UserId="2447" />
  <row Id="6975" PostId="5756" Text="The question has changed substantially since I made this answer, enough that it doesn't seem worth it to edit it." CreationDate="2010-11-19T14:58:02.340" UserId="953" />
  <row Id="6976" PostId="5692" Text="@Lo'oris: Just saying 1) All of them DO require a install if anyone wants to get technical (at least in firefox and IE) so there isnt a benefit to choosing one due to install base 2) Just talking about unity3d VS Flash. Flash install base is insane with 95% of the net and &gt; 100mil, BUT unity3d has 30mil installs which is not a laughing matter. So Unity 'should not be an option' is BS. SilverLight i am sure will catch on." CreationDate="2010-11-19T15:36:30.653" UserId="1047" />
  <row Id="6977" PostId="5692" Text="One additional thing. I'm making a game so gamers will be playing. It wont be used for ads and etc. So many ppl dont need it. Regardless 30mil is a large number and StarCraft2 which everyone wants/has had 11mil copies sold. So, theres more unity installs then SC2. I'd say its good. Especially when considering korea. I should get back to focusing on the actual question. I do want to use unity for client and C# for serverside which is nice cause its all .net. But i heard 2d in unity is hard and overkill if you dont already know it." CreationDate="2010-11-19T15:43:55.653" UserId="1047" />
  <row Id="6978" PostId="5775" Text="Thanks Nick, but those two are (besides totally awesome) quite...mundane, let say. I was gearing towards more &quot;exotic&quot; libraries." CreationDate="2010-11-19T16:36:00.337" UserId="3446" />
  <row Id="6979" PostId="5758" Text="I guess Doodlejump has it easier than Canabalt as the maximum jump height never changes, it only needs to give the player some platform within that jump range and it's fine. Thanks for the link, interesting stuff." CreationDate="2010-11-19T16:59:40.900" />
  <row Id="6980" PostId="3726" Text="@Kylotan: Because you could have a savvy community bettering the drivers, instead of being at the mercy of ATI/NVidia's ebb and flow feelings vis-a-vis the Linux community. Their focus, with good reason, is to support the Windows platform. Linux is, at best, secondary." CreationDate="2010-11-19T17:02:30.943" UserId="2232" />
  <row Id="6981" PostId="3726" Text="It will never happen. The corporate line is that they believe allowing the open-source community to build drivers exposes too many secrets to competitors." CreationDate="2010-11-19T17:03:56.920" UserId="2232" />
  <row Id="6982" PostId="5766" Text="Please re-word the part &quot;How can I determine the point of view, using three angles and the radius&quot;. What is the radius in this case?" CreationDate="2010-11-19T17:10:15.150" UserId="2287" />
  <row Id="6984" PostId="5623" Text="Thank you for the ohloh links -- good way to get some project meta info." CreationDate="2010-11-19T17:30:01.773" UserId="3358" />
  <row Id="6985" PostId="5778" Score="1" Text="Your second suggestion is a pretty trivial layer over XMPP, the problem isn't getting it made, it's getting everyone to support it." CreationDate="2010-11-19T17:30:06.467" UserId="744" />
  <row Id="6986" PostId="5639" Text="Good info, thank you." CreationDate="2010-11-19T17:30:27.153" UserId="3358" />
  <row Id="6987" PostId="5756" Score="2" Text="Apart from the title, nothing changed in the question." CreationDate="2010-11-19T17:33:16.250" UserId="20" />
  <row Id="6988" PostId="5780" Text="-1, there is no way this is the most needed project, given that nearly every other project suggested here is a prerequisite of it." CreationDate="2010-11-19T17:33:31.347" UserId="744" />
  <row Id="6989" PostId="5746" Text="+1 for a simple in-place shuffle.  This is the technique I have used when I needed to access all of the elements in a sequence exactly once, but in a randomized order." CreationDate="2010-11-19T17:54:59.203" UserId="136" />
  <row Id="6990" PostId="5756" Score="1" Text="@Gregory Weir What? Nothing has changed other than the title. -1" CreationDate="2010-11-19T18:05:39.153" UserId="962" />
  <row Id="6991" PostId="5735" Text="Seems that it would more imply the project that is most interesting. But I get your reasoning." CreationDate="2010-11-19T18:39:09.237" UserId="14" />
  <row Id="6993" PostId="5726" Text="The Y-component in Super Mario 1 also depended on how long you held down the jump button; releasing the button would immediately set y velocity to 0 even if Mario had some previous upward momentum. Also, falling tends to have a max negative-Y velocity (you can think of this as &quot;terminal velocity&quot;) for gameplay reasons. Lastly, there are a LOT of ways to handle the X-component -- Mega Man sets X as constant -1, 0 or +1 based on joystick position, Mario modifies progressively like gravity, Castlevania doesn't allow direction changes in mid-air at all." CreationDate="2010-11-19T19:00:17.940" UserId="458" />
  <row Id="6995" PostId="445" Text="For a list of commercial games for Linux see: http://lin-app.com/category/games and http://www.penguspy.com/" CreationDate="2010-11-19T19:27:58.490" UserId="3473" />
  <row Id="6996" PostId="5753" Text="You can add a hidden internal voting system on laps and other things as well. This way, players can choose the race options without being called names =)" CreationDate="2010-11-19T19:30:47.537" UserId="2910" />
  <row Id="6997" PostId="5780" Text="Every? There are lots of decent open networking libraries (you don't need a distributed version), open modellers exist already (Blender), I don't see the need for EA STL, game engines exist, etc. The only viable competitor project IMO is the digital distribution which would be cool. I can understand not voting for it, but downvote? Much of gaming is happening online, yet there is not even anything close to a viable, open platform for the ecosystem around an MMO." CreationDate="2010-11-19T19:50:19.663" UserId="2232" />
  <row Id="6998" PostId="5763" Text="In addition to Love2D, there is also a Javascript-based derivative called LoV8 that might be worth looking at.&#xA;http://code.google.com/p/lov8/" CreationDate="2010-11-19T20:28:26.923" UserId="3271" />
  <row Id="6999" PostId="5617" Text="I really like your ideas. I believe the trophy system could easily be attached to your first ideas: the faction-based system. If you have killed alot of Orcs, you wont earn much experience fighting them and you will get attacked everytime you passes by one." CreationDate="2010-11-19T20:39:01.600" UserId="2413" />
  <row Id="7000" PostId="5751" Score="1" Text="The scoring system here is almost inconsequential compared to the moment-to-moment gameplay design.  How the cars look and feel, track design, additional mechanics (powerups, weapons, etc)." CreationDate="2010-11-19T20:58:02.137" UserId="51" />
  <row Id="7001" PostId="5783" Text="True, I may need to change that." CreationDate="2010-11-19T21:12:04.943" UserId="3422" />
  <row Id="7002" PostId="5753" Text="Not a bad idea." CreationDate="2010-11-19T21:12:33.087" UserId="3422" />
  <row Id="7003" PostId="5782" Text="Thanks slf, impressive list indeed, though I was aiming at more &quot;exotic&quot; libraries, targeting say AI or human motion. Physics libraries are good too, as long as they handle fluid and particles (and not just good ol' rigid bodies mechanics)" CreationDate="2010-11-19T21:50:17.133" UserId="3446" />
  <row Id="7004" PostId="5772" Text="Also, you could try to create a Camera class (I was refraining myself from using OOP, but what the heck...), which handles the drawing. In each loop, you could pass a reference to the world to it, and then the camera would take care of the rest. Something like:  camera.draw(w) ===&gt; void draw(World w) { for (Entity e: w.entities){ e.draw(e.posX/30, e.posY/30);}" CreationDate="2010-11-19T22:10:52.050" UserId="3446" />
  <row Id="7005" PostId="5782" Text="added exotics :)" CreationDate="2010-11-19T22:36:34.363" UserId="3449" />
  <row Id="7006" PostId="5788" Score="1" Text="This question is somewhat vague as written. If you think your second half has a more appropriate question then you should make that, possibly with some re-wording, your question. &quot;What are the limits of XNA's rendering capabilities?&quot; If that is what you are actually asking with your 2nd question. It is somewhat unclear." CreationDate="2010-11-19T22:39:34.990" UserId="1477" />
  <row Id="7007" PostId="5735" Text="I'm voting to close because this question is quickly degenerating into &quot;list all the open source game libraries you know of&quot;. Even for CW lists, I'd prefer more focused questions; and CW lists should really have one answer per answer." CreationDate="2010-11-19T22:40:27.413" UserId="744" />
  <row Id="7008" PostId="5789" Text="Thank you very much, Tetrad. That's all I need to hear. Well, this article too: http://forums.create.msdn.com/forums/t/29306.aspx" CreationDate="2010-11-19T22:42:00.053" UserId="3476" />
  <row Id="7009" PostId="5791" Text="Thanks I didn't know this." CreationDate="2010-11-19T22:49:17.337" UserId="3214" />
  <row Id="7010" PostId="5536" Text="Thanks for marking it as the answer! :o) Hope you will enjoy it." CreationDate="2010-11-19T23:24:49.307" UserId="3115" />
  <row Id="7011" PostId="5794" Text="http://unity3d.com/gallery/" CreationDate="2010-11-19T23:35:11.263" UserId="3115" />
  <row Id="7012" PostId="5794" Score="2" Text="-1, Unity is nice and all, but it really doesn't answer the question" CreationDate="2010-11-20T00:00:05.283" UserId="51" />
  <row Id="7013" PostId="5794" Text="-1 Completely irrelevant answer to the question asked. And flash is pretty awesome for game design if you use blitting; flash can handle thousands of highly detailed 2d sprites on the screen at once at 60 frames per second." CreationDate="2010-11-20T00:02:10.850" UserId="962" />
  <row Id="7014" PostId="326" Score="5" Text="link's dead. &#xA;:O" CreationDate="2010-11-20T00:07:02.843" UserId="982" />
  <row Id="7015" PostId="5735" Text="@Joe W.: As you wish, though I thought my 2nd edit &amp; comments narrowed the scope of possible answers. I was aiming for CW list because someone may know a certain project that could add value to a game, that I couldn't have thought of otherwise. Say, I might have asked for the best AI Frameworks out there, effectively leaving out interesting things like the ones -later- added by slf." CreationDate="2010-11-20T00:29:16.973" UserId="3446" />
  <row Id="7016" PostId="5782" Text="@slf: Now, that's what I'm talking about ;D" CreationDate="2010-11-20T00:30:00.420" UserId="3446" />
  <row Id="7017" PostId="5735" Text="@Gastón: Google does a better job collecting tangentially-related links than we ever will. This site is good at concrete questions and answers." CreationDate="2010-11-20T00:46:43.570" UserId="744" />
  <row Id="7018" PostId="5735" Score="1" Text="@Joe W.: I did my bit of research before putting my question over here. However, I wanted to hear other people's thought on the subject, rather than wander aimlessly through the Internet. Still, thanks for sharing your opinion." CreationDate="2010-11-20T01:03:44.277" UserId="3446" />
  <row Id="7019" PostId="5794" Score="1" Text="Geee! I was just try to help guys as he wrote: &quot;Alternatively, does anyone have any other free/cheap software recommendations to use in place of Flash Professional?&quot; - I read that as &quot;free alternative to Flash&quot;, not the program itself but the platform. Sorry! Dont be so angry. Just trying to help. I love Flash too." CreationDate="2010-11-20T02:22:38.403" UserId="3115" />
  <row Id="7020" PostId="5794" Score="1" Text="Btw. regarding Unity3D vs Flash. Yes you can blit nice games with Flash now. But I like the Physics engine and the 3D engine will provide much stronger 3D than I can ever do with the current Flash player." CreationDate="2010-11-20T02:26:12.287" UserId="3115" />
  <row Id="7021" PostId="4811" Score="1" Text="Gee cant remember what those assemblers where called back then in the late eighties, but I am kinda curious to what you might be developing or why." CreationDate="2010-11-20T02:28:13.813" UserId="3115" />
  <row Id="7022" PostId="3950" Text="Also check out this site: answers.unity3d.com (its a pure Unity3D developer site for specific Unity questions)" CreationDate="2010-11-20T02:33:12.403" UserId="3115" />
  <row Id="7023" PostId="3397" Text="http://answers.unity3d.com/ is a specific forum for Unity3D developers." CreationDate="2010-11-20T02:34:16.210" UserId="3115" />
  <row Id="7024" PostId="3996" Text="Did you see my answer yet?" CreationDate="2010-11-20T02:38:01.573" UserId="3115" />
  <row Id="7025" PostId="4204" Score="1" Text="I already guessed myself that it should be possible somehow, it just isn't obvious at all where you find anything related to upgrades in the editor. Especially there is not &quot;upgrades section&quot; nor anything about &quot;starting values&quot; of any kind." CreationDate="2010-11-20T03:55:12.197" UserId="2355" />
  <row Id="7026" PostId="326" Text="+1 Flash Develop is fantastic. Donate if you can and love it." CreationDate="2010-11-20T04:49:51.407" UserId="1534" />
  <row Id="7027" PostId="5796" Text="It's not an answerm but a better opensource project hosting site imho is Github(http://github.com)" CreationDate="2010-11-20T06:25:53.693" UserId="95" />
  <row Id="7028" PostId="5692" Text="@acid: you're delusional, I'm not going to waste my time with you any more, sorry." CreationDate="2010-11-20T08:55:24.507" UserId="2188" />
  <row Id="7029" PostId="5755" Text="Please notice that randomized levels are in most occasions clearly inferior to well-designed levels. Just compare **Abduction** to **Abduction 2** and you'll notice the HUGE gap." CreationDate="2010-11-20T09:10:38.423" UserId="2188" />
  <row Id="7030" PostId="326" Text="-1, now that the link is dead this answer is worthless." CreationDate="2010-11-20T09:21:34.343" UserId="744" />
  <row Id="7031" PostId="5766" Text="the radius is the distance between the eye and the point of view , doesn't matter if this is the point of view who move around, but matter if it's the opposite " CreationDate="2010-11-20T10:11:06.650" UserId="3461" />
  <row Id="7032" PostId="5592" Text="@Stephen: I downvoted because they're not anecdotes, they're statements, shallow and not backed by personal stories, professional experience, or academic research." CreationDate="2010-11-20T11:49:44.077" UserId="744" />
  <row Id="7033" PostId="5736" Score="1" Text="@BerggreenDK: Thankyou for your explanation.I'm marking your answer as correct." CreationDate="2010-11-20T14:05:35.627" UserId="1251" />
  <row Id="7034" PostId="5788" Text="@lathomas64: The meaning of my question might be vague to game developers who have a lot of experience in XNA development. Given as is, it produced two answers that for me, as a total beginner, gave a lot of information. I'm sorry that others (presumably a lot more experienced) didn't find it useful, but it sure opened my eyes when it comes to XNA capabilities. Thank you for your suggestion, I totally understand your point of view." CreationDate="2010-11-20T14:06:08.770" UserId="3476" />
  <row Id="7035" PostId="2059" Text="Would this hypothetical open-source distribution system include **DRM**? That's really the whole point of Steam - an online distributor that maintains *maximum control* over the delivered software - which is the *antithesis* of open-source, of course (of course...). (Note, I don't have a problem with DRM, if done reasonably un-obtrusively/non-destructively)." CreationDate="2010-11-20T14:18:58.783" UserId="165" />
  <row Id="7036" PostId="326" Text="@Joe Link works fine here." CreationDate="2010-11-20T14:44:07.440" UserId="10" />
  <row Id="7037" PostId="5792" Text="Thanks for editing my original question :] - also, I think something needs to be said about the quality of games that show up during PyWeek (I had NO idea Pyglet programmers are among these applicants..same with Pygame.org).  I will download source of these games and take a look as an additional resource of learning. Thanks!" CreationDate="2010-11-20T14:59:09.187" UserId="3214" />
  <row Id="7038" PostId="326" Score="1" Text="It's now working again for me. (The whole of devmag.org.za disappeared yesterday.)" CreationDate="2010-11-20T15:21:05.363" UserId="744" />
  <row Id="7039" PostId="5747" Text="I don't think there's a great deal of difference in Linux and any other development platform. You miss C# and .NET if you don't use Mono, but thia also happens on Mac." CreationDate="2010-11-20T16:28:40.100" UserId="1156" />
  <row Id="7040" PostId="5692" Text="@Lo'oris: um... all the numbers i got from wikipedia and windows no longer includes java which is why i and many others dont have it by default... Just saying your first comment is not true..." CreationDate="2010-11-20T16:45:39.430" UserId="1047" />
  <row Id="7041" PostId="5719" Text="+1 although i dont like the idea of using a non statically compile language for a game. I hate runtime errors" CreationDate="2010-11-20T16:47:44.500" UserId="1047" />
  <row Id="7042" PostId="5736" Text="@Vish Great thanks, but keep asking if you have more questions. Game development and algorithm crushing is my favorite hobby." CreationDate="2010-11-20T17:00:08.653" UserId="3115" />
  <row Id="7043" PostId="2059" Text="Steam DRM is only enabled by the choice of the publisher. For example, once you download any of our (Cryptic) games, you can uninstall Steam and never use it again. Also keep in mind that I am talking about the platform itself being open, not the games (though obviously have a DRM-free option for open games would be preferable)." CreationDate="2010-11-20T18:40:05.843" UserId="395" />
  <row Id="7044" PostId="5610" Text="That's a brilliant example. I haven't gone into the code yet but it's for the Reach profile and looks great. Thanks for the link." CreationDate="2010-11-20T18:47:00.080" UserId="2100" />
  <row Id="7045" PostId="5809" Text="Between the two, I'm sure I'll be able to sort something out. Thank you!" CreationDate="2010-11-21T01:01:12.140" UserId="2100" />
  <row Id="7046" PostId="5719" Text="I'm going to try canvas/javascript since its small. unless a friend wants to talk me into learning flash or unity. " CreationDate="2010-11-21T01:23:59.320" UserId="1047" />
  <row Id="7047" PostId="5315" Text="is this a game question? otherwise you could try at stackoverflow.com which is more general programming related. " CreationDate="2010-11-21T02:22:29.877" UserId="3115" />
  <row Id="7048" PostId="3695" Score="1" Text="If I can READ it, my browser already has a copy. Then I can also save it somewhere else. Anything you allow to be read, can also be copied." CreationDate="2010-11-21T02:36:18.913" UserId="3115" />
  <row Id="7049" PostId="3706" Text="minifier doesnt help him. I believe most &quot;serious&quot; people knows how to &quot;expand&quot; those scripts again." CreationDate="2010-11-21T02:37:53.577" UserId="3115" />
  <row Id="7050" PostId="5649" Text="If I needed to grab something from the above solution; I would connect true WebSocket too and try to make a &quot;fake client&quot;, or use a Firebug debugging tool in a browser and just stop the script to checkout the values." CreationDate="2010-11-21T02:40:01.390" UserId="3115" />
  <row Id="7051" PostId="5818" Score="2" Text="Since they haven't publicly released anything (to my knowledge), I doubt you'll find any additional detail beyond your existing links. " CreationDate="2010-11-21T02:45:45.927" UserId="51" />
  <row Id="7052" PostId="5820" Text="ohhh yes and the reason for testing Unity3D for me, is that its totally free to use 95% of the features - forever! so if I never get finished with a game I dont have to buy the PRO license first." CreationDate="2010-11-21T02:48:24.787" UserId="3115" />
  <row Id="7054" PostId="5818" Score="1" Text="Since their technology is secret, then any answer is just speculation. " CreationDate="2010-11-21T03:32:29.880" UserId="656" />
  <row Id="7055" PostId="5794" Text="@BerggreenDK Unity does not provide the same application scope (WWW) as Flash. This is part of why your answer, yet detailed and helpful in other contexts, is invalid here." CreationDate="2010-11-21T03:59:03.327" UserId="2819" />
  <row Id="7056" PostId="4768" Text="Indeed. AFAIK, the popup dialogue boxes in Fable III were written with XNA." CreationDate="2010-11-21T04:02:57.053" UserId="2819" />
  <row Id="7057" PostId="5278" Text="Hmmm, the only thing is that this leaves me with an interface -required- in order to edit the data, which would be inconvenient." CreationDate="2010-11-21T04:05:29.220" UserId="284" />
  <row Id="7058" PostId="5794" Text="@kymully sorry, I dont understand that comment? &quot;application scope WWW&quot; ? Do you mean its not standard installed or? Because you can do WWW requests (POST/GET) and also compile for Webplayer (Mac/PC). Please explain your point with other words. :o)" CreationDate="2010-11-21T05:13:45.847" UserId="3115" />
  <row Id="7059" PostId="1375" Text="Make it work online. Cross platform indeed." CreationDate="2010-11-21T05:36:28.307" UserId="3115" />
  <row Id="7060" PostId="5736" Text="LOL! just found this link: http://thetoolsmiths.org/2009/02/24/sweating-the-small-stuff/" CreationDate="2010-11-21T05:37:48.383" UserId="3115" />
  <row Id="7061" PostId="5794" Text="@BerggreenDK Breaking it down, there is greater WWW (world wide web) scope for Flash as it is a commonly used browser plugin." CreationDate="2010-11-21T05:46:02.713" UserId="2819" />
  <row Id="7062" PostId="5812" Text="Really? &quot;The _one_ user interface element&quot;? What about trees, lists, menu bars, sliders, progress bars, spinners, combo boxes, resizable windows, resizable panes, rich-text widgets, and tabs, just to name a few? Your library is no different than the half dozen other also-never-finished ones on pygame.org." CreationDate="2010-11-21T09:55:50.580" UserId="744" />
  <row Id="7063" PostId="5822" Score="1" Text="&quot;your average garden-variety sorting is a problem that's already been solved&quot; - Not really. Timsort was invented as recently as 2002, burstsort in 2003, etc. I've been hearing &quot;sorting is a solved problem&quot; since I started studying CS in the early 90s, and yet we have so much better sorting algorithms now than then." CreationDate="2010-11-21T10:09:19.350" UserId="744" />
  <row Id="7064" PostId="5770" Text="@Ivo In that case the search becomes to long! I have the most optimized way to search for the validity possible with that function!" CreationDate="2010-11-21T12:26:42.530" UserId="3326" />
  <row Id="7065" PostId="5760" Text="There is also processing.js, a port of Processing to javascript. ( http://processingjs.org/ )" CreationDate="2010-11-21T12:36:26.813" UserId="2091" />
  <row Id="7066" PostId="5824" Text="What you are saying about voxels is true, but Unlimited Detail states it uses point clouds." CreationDate="2010-11-21T14:34:15.540" UserId="1386" />
  <row Id="7067" PostId="5787" Text="Does it really need to be pyglet then, if you're just looking for game logic combined with graphical code? And for that matter, python at all?" CreationDate="2010-11-21T14:40:32.867" UserId="1156" />
  <row Id="7068" PostId="5649" Text="You can't make a fake client unless you can somehow predict what unique ids are currently available, as they are generated at page load time and tossed at script connection time. Also, stopping the script and looking at the values is difficult, since you are eval'ing an anonymous function. Like I said, there are still ways to get at the code, it's just more difficult. For the most part, enough so that your code should be &quot;safe enough&quot;. You can't do much more than that with client-side code." CreationDate="2010-11-21T16:29:00.417" UserId="3271" />
  <row Id="7069" PostId="5719" Text="IMO, non-statically compiled languages are better for big projects like games, because you can more easily take pieces out of them and do unit tests and such. With a self-contained Flash object it becomes more difficult to debug condition-specific errors." CreationDate="2010-11-21T16:32:33.987" UserId="3271" />
  <row Id="7070" PostId="5824" Score="3" Text="Point clouds are basically variable-density voxels; the difficulties in animation and shadowing still apply." CreationDate="2010-11-21T16:36:31.380" UserId="744" />
  <row Id="7071" PostId="5752" Text="excanvas.js deals with IE7+ reasonably well, if your graphics aren't too complex." CreationDate="2010-11-21T16:45:03.307" UserId="3271" />
  <row Id="7073" PostId="5794" Text="aaah, yes - I totally agree. Silverlight and Unity3D are way behind. But - as I realised that HTML5+JS seems to be one of the new &quot;easy client&quot; for every platform (including iParanoid platform from Apple) - I've looked upon speed in terms of games and I think most people will &quot;accept&quot; a 2 MB plugin if the game is worth it. I would never use Unity3D for EVERYTHING - only games and &quot;special 3D apps&quot;." CreationDate="2010-11-21T18:44:22.017" UserId="3115" />
  <row Id="7074" PostId="5838" Score="1" Text="I don't know, but it *is* known, since unofficial servers exist." CreationDate="2010-11-21T19:17:50.257" UserId="2188" />
  <row Id="7075" PostId="5838" Score="3" Text="The [Pirate Servers](http://news.softpedia.com/news/Blizzard-Wins-88-Million-Dollars-In-Pirate-Server-Lawsuit-152494.shtml) may be running Windows (or not), but that doesn't guarantee that Blizzard uses it. A pirate server just has to *emulate* the functions that WoW performs (combat resolution, etc), and over HTTP - it could be running on *AmigaDos* for all we know :) . And this is isn't really all that game *development* -related, is it - maybe move it to the game site?" CreationDate="2010-11-21T19:38:02.350" UserId="165" />
  <row Id="7076" PostId="5839" Score="1" Text="Probably, but I will give you that example (offtopic) Dreamworks, Pixar and others use Maya on UNIX." CreationDate="2010-11-21T19:45:54.360" UserId="3219" />
  <row Id="7077" PostId="5840" Text="XNB files are just binary data with a special header that are readen by a game programmed with XNA. Why would you want to open them? And what do you want to do with the contents?" CreationDate="2010-11-21T20:40:25.300" UserId="2798" />
  <row Id="7078" PostId="5840" Text="I've got an XNB file containing some images which I'd like to extract." CreationDate="2010-11-21T21:06:48.893" UserId="3282" />
  <row Id="7079" PostId="5812" Text="Wow. That was a touch angry, huh? That's the one user element that I want that I didn't add. I can build anything I want.  I haven't built the other things because I don't need them. You're free to add your own tools to my framework (which is designed to be expandable), or build your own toolkit.  If you want to support me to finish this project, I'm willing to talk about it.  However, like most developers, I have to pay the bills, so the projects I can earn a living on get the highest priority.  " CreationDate="2010-11-21T21:13:58.103" UserId="2634" />
  <row Id="7080" PostId="5841" Text="It's what I needed. Thanks!" CreationDate="2010-11-21T21:59:21.247" UserId="3282" />
  <row Id="7081" PostId="5839" Score="1" Text="Those are not game companies, so I'm not sure I see the connection. Pixax and friends do not develop Maya itself, and something like Renderman is far far less complex than an MMO." CreationDate="2010-11-22T00:55:36.347" UserId="395" />
  <row Id="7082" PostId="5756" Text="I think I was thinking of the title here;  I remember the original title being something like &quot;How should I do this?&quot;  It's totally possible that I misread the initial title/question when I made the answer." CreationDate="2010-11-22T04:17:59.240" UserId="953" />
  <row Id="7083" PostId="5843" Text="I really like your proposal and would like to give it a go. but when I say HTML5, I think it makes it quite reasonable to assume that I am not looking to support all browsers... Its just an experiment to build something unique and useful from all the new tech... :) But you are right in saying its about the efficient algorithm... I concur...! :)" CreationDate="2010-11-22T05:19:21.510" UserId="3326" />
  <row Id="7084" PostId="5768" Text="i will get in quaternion soon as the solution i found is limited for certain type of rotation . But quaternions seems  hard to get :(" CreationDate="2010-11-22T08:29:45.677" UserId="3461" />
  <row Id="7085" PostId="5845" Score="1" Text="pathfinding..? doesn't that sound awfully overkill?" CreationDate="2010-11-22T10:09:13.230" UserId="653" />
  <row Id="7086" PostId="5845" Text="Depending on the game it may not have to be very complicated, but by definition this is a pathfinding problem." CreationDate="2010-11-22T10:43:19.267" UserId="3505" />
  <row Id="7087" PostId="5837" Text="+1. This is the only answer that uses a relational database as a relational database. Anything other than this or the other extreme of Nevermind's blob suggestion and just using the DB as a data store, are horrible plans." CreationDate="2010-11-22T10:56:55.777" UserId="744" />
  <row Id="7088" PostId="5812" Text="It's not angry. I'm just pointing out your project is no different than PyUI or PGU. It's an unmaintained API to lay out simple buttons. It's not a &quot;good, modern widget toolkit&quot;." CreationDate="2010-11-22T11:07:22.397" UserId="744" />
  <row Id="7089" PostId="5845" Text="Please see the image in the update - the game is incredibly simple, so there aren't any physics really." CreationDate="2010-11-22T12:10:26.197" UserId="3506" />
  <row Id="7090" PostId="5592" Text="@Joe, fair enough.  You should give comments if you're going to downvote." CreationDate="2010-11-22T13:28:20.077" UserId="2316" />
  <row Id="7091" PostId="5802" Score="2" Text="did you sort that list of tuned specific algorithms?" CreationDate="2010-11-22T14:24:42.473" UserId="3449" />
  <row Id="7092" PostId="5592" Text="@Stephen: I used to, but three times I've had people revenge-downvote all my questions/answers in response. Now I only do it if asked." CreationDate="2010-11-22T14:30:50.440" UserId="744" />
  <row Id="7093" PostId="5592" Text="@Joe, I'm sorry.  The voting system is intended to be used to provide quality answers, and your vote was appropriate since I didn't really answer the question, but pointed to other stuff.  I just wanted to know why.  Plus, I didn't think the OP knew what 'anecdote' actually meant." CreationDate="2010-11-22T15:37:59.353" UserId="2316" />
  <row Id="7094" PostId="5848" Text="Err, I've already got a database in use &amp; integrated with the rest of the site." CreationDate="2010-11-22T16:17:48.363" UserId="284" />
  <row Id="7095" PostId="5848" Text="Oh right, you are using some shitty stateless language." CreationDate="2010-11-22T16:20:20.717" UserId="3505" />
  <row Id="7097" PostId="5253" Text="Who's giving the negative response for TorqueX? I don't see any answers that say that." CreationDate="2010-11-22T17:22:36.360" UserId="946" />
  <row Id="7098" PostId="5851" Score="1" Text="I like the idea, 'cause it allows an item to hold it's own traits, and I don't know that I'm going to need to search the database for the traits, but I'm not really sure how to make that work in a relational context.  I guess that each bit would map to the incremental ids of the traits in the database... " CreationDate="2010-11-22T18:24:59.160" UserId="284" />
  <row Id="7099" PostId="5852" Text="Your idea is basically a binary search tree, if you want to know. I used it; it does make rather nice dungeons and is easy. :)" CreationDate="2010-11-22T19:01:11.160" UserId="1156" />
  <row Id="7100" PostId="5851" Text="I guess bitmasking is more useful for a fixed number of traits, though?" CreationDate="2010-11-22T19:03:07.550" UserId="284" />
  <row Id="7101" PostId="5835" Text="Well, I will create the code and classes and all that in code only first... ...just gotta translate that into the existing database structure after." CreationDate="2010-11-22T19:05:24.570" UserId="284" />
  <row Id="7102" PostId="5851" Text="Very much so. What happens if you've used up your last &quot;bit&quot;? How easy is it to increase the data type to gain bit and percolating that through your app layer, or to add a column and do the same? Also, is your particular database engine well-tuned for indexing for bit operations? It's best in a relational database to stay atomic with data columns. Don't lump multiple domains into one column. You can't tap into the platform's benefits." CreationDate="2010-11-22T19:40:18.110" UserId="2232" />
  <row Id="7104" PostId="5854" Score="1" Text="Oh right, the minimum spanning tree, of course! Good idea, thanks." CreationDate="2010-11-22T19:41:08.140" UserId="1859" />
  <row Id="7105" PostId="5788" Text="If C# isn't powerful enough for a card game, why would it have directX bindings at all?" CreationDate="2010-11-22T19:47:28.250" UserId="1156" />
  <row Id="7106" PostId="5845" Text="I agree with eBusiness. Plus, if this is a &quot;learning&quot; game, may as well start learning pathfinding." CreationDate="2010-11-22T19:49:08.323" UserId="2232" />
  <row Id="7107" PostId="5692" Score="1" Text="In order of prevalence, Flash, Java, Silverlight and Unity. Silverlight has great penetration, due to being included in WIndows Update, especially on any kind of gamer system (casual and up). Canvas-capable browsers would be on the lower end, but still most browsers are newer vesions on gamer systems. What to use is a moot point, and Lo'oris is a little off in his warnings." CreationDate="2010-11-22T19:55:30.303" UserId="2232" />
  <row Id="7108" PostId="5855" Text="If you are going to refer to them collectively, don't even bother talking about databases. NoSQL is not an entity that can be discussed meaningfully, it is a useless mass reference that SQL fanbois use in order to apply the flawed logic that if one database of this defined group lack a feature then all of them lack that feature." CreationDate="2010-11-22T19:56:20.300" UserId="3505" />
  <row Id="7109" PostId="5855" Text="NoSQL is the term that NoSQL pushers chose to adapt. I don't know why, it's not very descriptive. But it's not some kind of pejorative. Having worked with several, I think alphadogg's description of them is fair." CreationDate="2010-11-22T20:01:12.653" UserId="744" />
  <row Id="7110" PostId="5852" Score="2" Text="FYI: A complete graph has edges between *all* pairs of vertices, so (assuming duplicate edges are not allowed) you can't remove any edges and still have a complete graph. The right term is a [connected graph](http://mathworld.wolfram.com/ConnectedGraph.html)." CreationDate="2010-11-22T20:16:12.040" UserId="3318" />
  <row Id="7111" PostId="5855" Text="Maybe my comment was a bit harsh, still, I hate that name and grouping, it's impossible to have a qualified debate about the finer details of different database systems when people keep this simplified world view." CreationDate="2010-11-22T20:17:05.360" UserId="3505" />
  <row Id="7112" PostId="5855" Text="@eBusiness: I find your comment amusing, given that it is the anti-RDBMS camp, if there is one, that self-anointed their group of technologies as &quot;NoSQL&quot;. Admittedly, many of them would like to see that name deprecated, in hindsight. Especially as many of them are finally layering SQL over their physical implementations. As for talking about them, I didn't take your comment as harsh, or I have thick skin, your choice! :) I mean, one can talk about the Tea Party, why not the NoSQL group of databases?" CreationDate="2010-11-22T20:42:59.327" UserId="2232" />
  <row Id="7113" PostId="5857" Score="1" Text="What happens when you introduce a new trait? How often could this happen? What would be the downstream effects on your code maintenance workload? Contrast with storing it as a many-to-many whereby your object instances are dynamically built up (via your choice of ORM) to hold that data." CreationDate="2010-11-22T20:46:28.593" UserId="2232" />
  <row Id="7114" PostId="5861" Text="Both computer and pen-and-paper games. I've also had some experience with creating pen-and-paper games (with some success), but none of my fighting systems were satisfactory in that they were either biased towards the player, enemy, didn't take into account the player's weapons or traits enough, or were too random, etc. " CreationDate="2010-11-22T21:59:38.433" UserId="3403" />
  <row Id="7115" PostId="5859" Score="3" Text="There's no universally good system. Your core design, and how you tweak it during balance, is tied fundamentally to how you want your game to feel." CreationDate="2010-11-22T22:12:59.357" UserId="744" />
  <row Id="7116" PostId="5855" Text="That's fair, I recognize that the relationship is totally many to many.  The thing that's stopping me from creating it in truly normalized style is the thought that the &quot;stuff&quot; that would make up an item is then going to be spread across at least two tables.  I don't like the idea of being unable to create atomic inserts, I think." CreationDate="2010-11-22T22:36:09.840" UserId="284" />
  <row Id="7117" PostId="5857" Text="Thanks, that's a good point, adding new traits isn't going to be trivial.  You've added to my analysis paralysis. :p" CreationDate="2010-11-22T22:42:40.060" UserId="284" />
  <row Id="7118" PostId="5862" Text="That sounds great! Thanks for sharing, I will be ordering this book later this week =P" CreationDate="2010-11-22T22:45:36.037" UserId="666" />
  <row Id="7119" PostId="5837" Text="+1 But these approaches seem kind inflexible.  I apologize if I sound inconsistent, but I want to be able to create the database structures for items essentially once... ...and then code more features for items, make more inserts into the database for items, but not have to change the database again in the future (with infrequent exceptions, of course)." CreationDate="2010-11-23T00:16:08.177" UserId="284" />
  <row Id="7120" PostId="5836" Text="This is terrible design, never do it. You'd be better off just not using a database." CreationDate="2010-11-23T01:16:25.260" UserId="323" />
  <row Id="7121" PostId="5867" Score="1" Text="+1 for `Formulas are overrated, sometimes you just need to jam some numbers in and play it by ear.`" CreationDate="2010-11-23T03:31:36.680" UserId="1004" />
  <row Id="7122" PostId="5692" Text="@alphadogg: Is java still so widespread? AFAIK XP SP2 on has never included java by default" CreationDate="2010-11-23T04:01:13.220" UserId="1047" />
  <row Id="7123" PostId="5856" Text="Excellent answer. This is why i asked. I heard unity3d is very nice for development and i heard its hard for 2d. I dont know any of the tech but unity gets a + because i know .NET so that MIGHT help. But i heard flash is easy too." CreationDate="2010-11-23T04:03:17.663" UserId="1047" />
  <row Id="7124" PostId="5870" Score="4" Text="There is no be-all-end-all guide. There are techniques and practices that people can use but at the end of the day a lot of it is totally subjective. What matters to your customers is the game, not the code. " CreationDate="2010-11-23T04:44:23.213" UserId="51" />
  <row Id="7125" PostId="5870" Text="@Tetrad - that may be true, but even if there isn't a perfect guide, there must be something that can teach basic architecture." CreationDate="2010-11-23T05:19:23.803" UserId="3531" />
  <row Id="7126" PostId="5852" Text="Binary search tree, connected graph, right. I'm so bad with conventional name of things." CreationDate="2010-11-23T08:53:36.607" UserId="1859" />
  <row Id="7127" PostId="5253" Text="@George - See the first comment on my question. It links to this page where this community practically puts you off ever looking into Torque - http://gamedev.stackexchange.com/questions/2934/what-has-your-experience-been-with-torque-products/2950#2950" CreationDate="2010-11-23T10:47:59.050" UserId="2995" />
  <row Id="7128" PostId="5870" Score="2" Text="The amount that is 2D-specific in a 2D game engine - especially at the architectural level - is insignificant. You still need to load game data, process input, run a physics simulation, and in most cases texture polygons. That you're using Box2D and quads rather than Bullet and triangles doesn't matter. (In other words, this is already covered by every &quot;best practices&quot; question on this site.)" CreationDate="2010-11-23T10:59:23.247" UserId="744" />
  <row Id="7132" PostId="5873" Text="-1. That's a perfect example of how a 2D game engine is the same as a 3D one, and it's not even a particularly well-designed engine." CreationDate="2010-11-23T11:34:16.217" UserId="744" />
  <row Id="7133" PostId="5865" Score="1" Text="I'm not even reading, just go there --&gt; http://gamebalanceconcepts.wordpress.com/2010/07/07/level-1-intro-to-game-balance/ &lt;--" CreationDate="2010-11-23T12:58:31.153" UserId="2188" />
  <row Id="7134" PostId="5861" Text="At some point, you can only learn about systems out there, and what may lead to certain biases. After a while, you must salt and pepper to taste. :)" CreationDate="2010-11-23T13:26:02.000" UserId="2232" />
  <row Id="7135" PostId="5855" Text="Don't get too bogged down on the &quot;three tables&quot; thing. IOW, premature optimization is... premature. Anyways, there are lots of things you can do in modern databases to control your joins, such as proper indexing, materialized indexes, etc. Views can hide the complexity.And, quite frankly, two joins is not even close to a number to worry about. Also, you can get creative at the code level too, with caching and other techniques." CreationDate="2010-11-23T13:29:45.570" UserId="2232" />
  <row Id="7136" PostId="5275" Text="@Ari: No disrespect intended, but his problem is precisely why the relational approach is more valid, not less. It's well-known that NoSQL (or NoRel) databases are great for high-volume reads, distributed/highly-available data, or poorly-defined schemas. This case is simply a classic many-to-many association, and dbs like Mongo don't do this as well as an RDBMS. See http://stackoverflow.com/questions/3332093/how-to-implement-mongoid-many-to-many-associations" CreationDate="2010-11-23T13:36:15.067" UserId="2232" />
  <row Id="7137" PostId="5856" Text="Thanks. If you are a .NET dev targeting browsers on the Windows platform, you can't go wrong with either Silverlight or Unity. Unity gives you the additional option of having other targets than the browser too." CreationDate="2010-11-23T13:38:35.643" UserId="2232" />
  <row Id="7140" PostId="5253" Text="@Edwardian Thanks! I didn't see that initially." CreationDate="2010-11-23T16:24:26.543" UserId="946" />
  <row Id="7141" PostId="1786" Text="@RCIX: Have you even tried lisp? From what I'm reading there it doesn't seem like you've even looked at it — only heard of it." CreationDate="2010-11-23T16:42:06.747" UserId="3298" />
  <row Id="7142" PostId="5865" Text="first thought is you should find yourself a copy of a D&amp;D dungeon masters guide from either second or third edition. Good resources for already play tested / balanced XP awarding systems." CreationDate="2010-11-23T16:51:23.543" UserId="1742" />
  <row Id="7143" PostId="316" Score="4" Text="Actually it does, you just have to make the movement relative.  So if both spheres are moving you just subtract the velocity of one of the spheres from both of them so you have one &quot;moving&quot; sphere and one &quot;stationary&quot; sphere.  Then you can use the above." CreationDate="2010-11-23T17:37:00.693" UserId="51" />
  <row Id="7144" PostId="5818" Score="1" Text="you could always try `nmap` against a known server" CreationDate="2010-11-23T17:47:12.307" UserId="1067" />
  <row Id="7145" PostId="5876" Text="Could you provide more details about this SDK?  What are some of it's plusses / minuses / benefits / drawbacks?" CreationDate="2010-11-23T18:48:51.317" UserId="3449" />
  <row Id="7146" PostId="5845" Text="I agree on the learning stuff, and maybe I'm confused here. So let me ask you this, would you consider [maze generation](http://en.wikipedia.org/wiki/Maze_generation) a &quot;path finding problem&quot;? If so, I agree. The point is, if you're free to define the layout, rather than finding a way through an existing one, the problems can be vastly simplified. See Richards solution, which is an excellent demonstration of this." CreationDate="2010-11-23T18:49:41.613" UserId="653" />
  <row Id="7147" PostId="5880" Text="This is definitely the best solution, +1." CreationDate="2010-11-23T18:55:32.853" UserId="653" />
  <row Id="7148" PostId="1876" Text="re:soscastoa I think most people know that as sohcahtoa (replacing 'sloped side' with the more specific, if admittedly more obscure, 'hypotenuse'). Flows off the tongue easier, and I think thus easier to remember." CreationDate="2010-11-23T19:11:41.657" UserId="2653" />
  <row Id="7149" PostId="4971" Score="2" Text="http://www.gamasutra.com/view/news/31685/Microsoft_XNA_Will_Support_Kinect_Eventually.php" CreationDate="2010-11-23T19:19:39.580" UserId="51" />
  <row Id="7150" PostId="5876" Text="They haven't published any documentation publicly, so I doubt anyone here has more information (or if they do, they likely can't share it). It's probably the standard platform holder crap - demos, video recording, unlocks, achievements, etc. It's not like it's a replacement for anything else you'd do." CreationDate="2010-11-23T19:26:03.003" UserId="744" />
  <row Id="7151" PostId="5861" Text="Yeah, true. Thanks for the help." CreationDate="2010-11-23T20:39:22.093" UserId="3403" />
  <row Id="7152" PostId="568" Score="1" Text="Please finish this book, it is incredibly good so far. I would definitely be willing to Donate for a complete version :)" CreationDate="2010-11-23T20:50:15.313" UserId="2787" />
  <row Id="7153" PostId="5876" Text="Details? You have to apply @ their website.&#xA;Plus / Minus?&#xA;None, as far as I can say. You just wrap your code to be interpretable by the OnLive Cloud.&#xA;You do not have to worry about that much performance etc. as I belief." CreationDate="2010-11-23T21:00:19.033" UserId="2063" />
  <row Id="7154" PostId="5876" Text="&quot;check out our partner page or email us at partners@onlive.com to request the OnLive SDK&quot;&#xA;The quote says everything" CreationDate="2010-11-23T21:00:38.537" UserId="2063" />
  <row Id="7155" PostId="1786" Text="@Joe: I haven't actually tried it, but i've seen a lot of it. Everything I see indicates it simply wasn't designed to be used as A: an introductory programming language (which is what it will be for at least a few people) or B: one that is very lightweight (something you also want in your scripting languages)." CreationDate="2010-11-23T22:21:38.653" UserId="1004" />
  <row Id="7156" PostId="5882" Text="I feel a bit silly asking this, but can you describe what you envision the workflow using this framework to be? It sounds really neat, but I am not sure how to approach it." CreationDate="2010-11-23T23:54:43.197" UserId="2100" />
  <row Id="7157" PostId="5692" Score="2" Text="Flash v9 and higher is around 95%. Java v1.6.x is on 70% of systems. Silverlight on 55%. I think it's obvious Unity is likely fourth." CreationDate="2010-11-24T00:55:10.890" UserId="2232" />
  <row Id="7158" PostId="5882" Score="1" Text="Well, you define the serialization in their persistence editor. (it really easy, you just import your object assembly and check some boxes on the structures/classes and the fields/properties you want persisted) Once you've done that, you can just initialize an object space that will serialize/deserialize your objects. It's pretty neat and fast to get up and running." CreationDate="2010-11-24T01:54:36.470" UserId="3547" />
  <row Id="7159" PostId="5882" Score="1" Text="You can also look at this project on codeplex for a better example of how to build content outside of visual studio. (http://xnadevru.codeplex.com/wikipage?title=XNA%20Content%20Builder%20(XCB)&amp;ProjectName=xnadevru)" CreationDate="2010-11-24T02:07:34.980" UserId="3547" />
  <row Id="7160" PostId="5888" Text="i have edited my question.Can you elaborate on the triangle mesh concept,please? Or provide links to articles for the same?" CreationDate="2010-11-24T08:08:23.713" UserId="1251" />
  <row Id="7161" PostId="5895" Text="Wow ! That is one heavy piece of information. Might as well mark this as the answer unless I find more informative replys before tomorrow. Thankyou. Thanks a million." CreationDate="2010-11-24T11:43:32.297" UserId="1251" />
  <row Id="7162" PostId="5897" Text="Can you link to some &quot;more&quot; informative article?" CreationDate="2010-11-24T12:35:22.057" UserId="1251" />
  <row Id="7163" PostId="5897" Text="If you mean about the gameplay element, then not really as this is stuff that usually only gets more playable by tweaking variables and watching the response. If you mean about the rendering, then again, this is actually too simple to have a paper about it, it's just my immediate impression on playing the first level." CreationDate="2010-11-24T13:04:53.440" UserId="1742" />
  <row Id="7164" PostId="5897" Text="after reading this reply for more than 3-4 times I wish I could award you more points. Man the way you present things are really cool" CreationDate="2010-11-24T13:09:09.907" UserId="1251" />
  <row Id="7165" PostId="5897" Text="oh I din't see you comment. saw it just now :)" CreationDate="2010-11-24T13:10:48.300" UserId="1251" />
  <row Id="7166" PostId="5901" Text="decided to use gui .." CreationDate="2010-11-24T13:25:25.243" UserId="3560" />
  <row Id="7167" PostId="5901" Text="we are logically sound. Have done many AI programs but we are not much informed about the user interface and database connectivity thing ...thought about the minimax ... i think modified alfa beta prunning will be better ... there is team of 6, 3 of us are fully dedicated towards the project" CreationDate="2010-11-24T13:29:15.303" UserId="3560" />
  <row Id="7168" PostId="5901" Text="1 more thing we wanted to make it in 2D only not 3D !!! " CreationDate="2010-11-24T13:30:38.393" UserId="3560" />
  <row Id="7169" PostId="5901" Text="Alpha beta pruning would be much better, and would enable you to do deeper searches. When you say database are you talking about an actual database (e.g. an SQL database?). Why are you considering using a database (you can just keep the game in memory)?." CreationDate="2010-11-24T13:32:45.297" UserId="1386" />
  <row Id="7170" PostId="5901" Text="saw the board notations as u suggested above. Was thinking about the 2D array implementation. but 1D also wont make much difference." CreationDate="2010-11-24T13:33:40.043" UserId="3560" />
  <row Id="7171" PostId="5901" Text="Yeah was talking about actual databases.yeah can keep it in memory if that is not possible in 2 months." CreationDate="2010-11-24T13:36:57.733" UserId="3560" />
  <row Id="7172" PostId="5901" Text="Thank you very much sir. Your advise really boosted us :) !!!" CreationDate="2010-11-24T13:50:33.267" UserId="3560" />
  <row Id="7173" PostId="5901" Text="Can someone suggest some C# or java books to refer." CreationDate="2010-11-24T13:54:34.387" UserId="3560" />
  <row Id="7174" PostId="5899" Score="3" Text="-1, a really localized question and heavily dependent on the team makeup" CreationDate="2010-11-24T14:43:04.470" UserId="51" />
  <row Id="7175" PostId="5885" Score="2" Text="-1, There are a lot of &quot;which phone should I use&quot; questions.  In fact here's one that's almost exactly the same as yours: http://gamedev.stackexchange.com/questions/5288/whats-the-best-phone-for-game-development" CreationDate="2010-11-24T14:44:21.613" UserId="51" />
  <row Id="7176" PostId="5885" Score="4" Text="That question was asked over a full week ago... things change so fast, it should be asked again!!!" CreationDate="2010-11-24T14:49:04.907" UserId="2212" />
  <row Id="7177" PostId="5889" Score="2" Text="-1, not nearly enough information about whatever framework you're using, and even if there was more it doesn't come across as a good question." CreationDate="2010-11-24T14:54:37.283" UserId="51" />
  <row Id="7179" PostId="5901" Text="@Kiran: try www.flazx.com It has books on almost every branch of Computer Science." CreationDate="2010-11-24T15:09:12.147" UserId="1251" />
  <row Id="7180" PostId="5905" Text="Ah! That explains the awful music in Braid! Honestly, I would have liked it better without music." CreationDate="2010-11-24T15:11:53.577" UserId="678" />
  <row Id="7181" PostId="5899" Text="you really need to say if you want to do AI or not." CreationDate="2010-11-24T15:37:49.463" UserId="2188" />
  <row Id="7182" PostId="5886" Text="I didn't think of the infancy of the platform as a pro. I could always go back and start developing for Android. I'm still a hobbyist, so hopefully Windows Phone 7 will have an extensive enough API for a simpler 2D game. (like pac man, etc)" CreationDate="2010-11-24T15:52:05.503" UserId="3547" />
  <row Id="7183" PostId="5885" Text="Sorry for asking it again. I searched for a similar topic, but I didn't think of searching on the terms of &quot;phone&quot;. I'll try to do more extensive searches in the future." CreationDate="2010-11-24T15:53:00.977" UserId="3547" />
  <row Id="7184" PostId="5891" Score="1" Text="You can also make applications with WPF and Silver light for Windows Phone 7, or at least I think that. I feel like developing for Android would be the harder route, and I just feel like going down the easier path at the moment." CreationDate="2010-11-24T15:55:09.977" UserId="3547" />
  <row Id="7185" PostId="5275" Text="@alphadogg How is this a many-to-many relationship? In the database, weapons know about weapon types, but weapon types have no need to know about the weapons they are associated with. If for some reason you want to know all the weapons that are of a specific weapon type, you would simply write a query that iterates over the weapon document collection." CreationDate="2010-11-24T16:16:21.160" UserId="2290" />
  <row Id="7186" PostId="5908" Score="1" Text="-1 since it doesn't actually answer the question. What if OP is trying to learn?" CreationDate="2010-11-24T16:21:27.070" UserId="1156" />
  <row Id="7187" PostId="5904" Score="1" Text="+1 There are also simple game engines around that support all three platforms, like FlatRedBall" CreationDate="2010-11-24T16:24:54.860" UserId="2239" />
  <row Id="7188" PostId="5905" Text="I think being an indie developer makes all the difference - you can't hire a million &lt;currency&gt; sound company on a contract. You need to find freelancers and much smaller time people." CreationDate="2010-11-24T16:28:24.397" UserId="1156" />
  <row Id="7189" PostId="5908" Text="That's why i said &quot;unless you are experimenting&quot;. If the focus is learning about collision response instead of shipping a game, he's obviously right to keep hacking away at it. I've just seen too many good projects fall by the wayside when the developer got sidetracked by issues like these not to warn him about the morass he's wading into." CreationDate="2010-11-24T16:32:12.587" UserId="678" />
  <row Id="7190" PostId="5812" Text="I'm agreeing with you that the complete library doesn't exist (and I thought the others were too complex) I think the answer is for you to build the library you want rather than to dismiss the efforts of those who have freely given their work to the community. My library is admittedly tiny, because I didn't need anything else. I'd love it if you wanted to add the features you desire to this or any other library, because I agree a 'full-fledged' GUI library could be useful. However, games usually don't have the same needs as other GUI apps." CreationDate="2010-11-24T16:37:08.650" UserId="2634" />
  <row Id="7193" PostId="5889" Text="wow .... talking about iPhone it is obvious to use native iPhone SDK ...." CreationDate="2010-11-24T16:52:05.013" UserId="3554" />
  <row Id="7196" PostId="5911" Score="2" Text="The trick is, you want the problem to still be hard. If the rules you generate admit 90% of the possible combinations as valid answers, it's no longer an interesting puzzle." CreationDate="2010-11-24T17:05:37.100" UserId="744" />
  <row Id="7197" PostId="5909" Score="1" Text="I don't think it would be very interesting to play. After you solve it *once*, doing it again with different rules wouldn't be much different from playing sudoku." CreationDate="2010-11-24T17:14:30.703" UserId="2188" />
  <row Id="7199" PostId="5904" Text="I didn't know FlatRedBall supported Android development. I'm guessing that's new, but I haven't really used it in a while." CreationDate="2010-11-24T17:40:18.670" UserId="3547" />
  <row Id="7200" PostId="5837" Text="If you want the relational database to know about your fields and optimize the representation of them, you need to add them somewhere. It's like static types. If you want your compiler to know about your fields and optimize the representation of them, you need to declare types. The alternative is a dynamically typed approach, used by some of the document databases, or by encoding your data into the relational database in some way. The database won't know what the fields are or be able to optimize their storage, but you'll gain some flexibility." CreationDate="2010-11-24T17:41:35.143" UserId="2472" />
  <row Id="7202" PostId="5911" Text="I guess that is a valid point - but isn't the solution just to lower the number of clues given?" CreationDate="2010-11-24T17:43:59.400" UserId="1156" />
  <row Id="7203" PostId="5911" Score="1" Text="No. Underspecification is more likely to lead to many valid conclusions. Overspecification is likely to lead to one very obvious conclusion. A good logic puzzle avoids both." CreationDate="2010-11-24T17:45:55.147" UserId="744" />
  <row Id="7204" PostId="5899" Score="3" Text="Closing because it's too localized, and not specific enough.  Basically asking &quot;How do I make game X&quot;, which is off topic. http://meta.gamedev.stackexchange.com/questions/171/how-to-make-an-entire-game-x-off-topic" CreationDate="2010-11-24T17:46:55.147" UserId="51" />
  <row Id="7205" PostId="5911" Text="Ah yes, I missed that somehow. I will try and add a better solution if I can think of one." CreationDate="2010-11-24T17:48:12.143" UserId="1156" />
  <row Id="7206" PostId="5909" Score="2" Text="On the other hand, people do hundreds of sudoku before getting bored with them. And if you tie the answers to some kind of action-in-world rather than just typing in a number or name, people won't even complain it's sudoku." CreationDate="2010-11-24T18:01:32.163" UserId="744" />
  <row Id="7207" PostId="5036" Text="Your answer amounts to, &quot;Ditch A* and its ilk and roll your own&quot;.  That can be the beginning to a reasonable answer but you provide very little info other than the suggestion.  It think the reason for down voting is you don't make it clear how difficult your solution would be to implement.  I do not doubt that a super genius given unlimited time could hand code/tune a pathing algorithm for a given RTS that would be superior to A* on a navmesh.  But &quot;genius&quot; and &quot;unlimited&quot; are very hard to come by." CreationDate="2010-11-24T18:10:56.100" UserId="370" />
  <row Id="7208" PostId="5692" Text="@alphadogg: Thanks dude :D" CreationDate="2010-11-24T18:20:54.877" UserId="1047" />
  <row Id="7209" PostId="1786" Text="@RCIX: I will agree with you on A, that it wasn't designed to be introductory programming language. But I have to disagree about B, Scheme is a **very** lightweight programming language, perfectly suitable for game scripting – in fact their's a version designed just for embedding: [GNU Guile](http://www.gnu.org/software/guile/)." CreationDate="2010-11-24T18:48:54.867" UserId="3298" />
  <row Id="7211" PostId="590" Text="If he was making a pool game his *&quot;game design absolutely needs it&quot;*." CreationDate="2010-11-24T19:11:44.410" UserId="370" />
  <row Id="7212" PostId="5909" Text="This reminds me of this game: http://www.nick.com/games/series.html" CreationDate="2010-11-24T19:38:34.150" UserId="2091" />
  <row Id="7213" PostId="5822" Text="Fair enough, Joe. What I meant by &quot;garden-variety&quot; is that, for the purposes of a simple sort of, say, a list of &lt;100 items (as found in a high-score table or inventory item list), you don't need a whole lot of optimization; quicksort or even bubble sort would work just fine and you don't really need to have bleeding-edge sorting algorithms for that." CreationDate="2010-11-24T19:45:31.943" UserId="458" />
  <row Id="7214" PostId="5906" Score="1" Text="Can you clarify the type of game? &quot;Top down 2D&quot; could mean a lot of things: a Zelda-style action-adventure game, a vertical-scrolling shooter, or a pocket billiards game. All of these would have very different standard styles of handling collisions!" CreationDate="2010-11-24T19:48:22.470" UserId="458" />
  <row Id="7216" PostId="5921" Text="This is actually incorrect. A production Xbox can only connect through XLSP gateway servers. A devkit can open arbitrary sockets, not sure if that is what you were getting at." CreationDate="2010-11-25T01:20:18.023" UserId="395" />
  <row Id="7217" PostId="5909" Score="2" Text="I would suggest taking a look at [Everett Kaser](http://kaser.com)'s games - he has made a *ton* of games of this nature, in particular [Sherlock](http://kaser.com/sherwin.html) which was inspired by that very puzzle, but also some of the other games, like [Honeycomb Hotel](http://kaser.com/hotel.html) or his latest game, [Mrs. Hudson](http://kaser.com/mh.html). It might help you to see this sort of thing in action." CreationDate="2010-11-25T01:59:32.333" UserId="3318" />
  <row Id="7218" PostId="5922" Text="Which would explain why we are being charged a premium for this content now." CreationDate="2010-11-25T02:16:29.323" UserId="14" />
  <row Id="7219" PostId="5921" Text="The system is technically capable of connecting to any remote location (think of homebrew applications), but official licensed titles are likely required to use secure connections to Microsoft servers." CreationDate="2010-11-25T02:29:03.690" UserId="2077" />
  <row Id="7220" PostId="1047" Text="+1 for saying what I want to say. My first game was http://palmgadget.com/palmgo.html It could be done because I love the game Go and I really use it to record _my_ games in club. &quot;Scratching Your Own Itch&quot; first." CreationDate="2010-11-25T04:45:44.087" UserId="3556" />
  <row Id="7221" PostId="5921" Text="They don't need to be MS servers, anyone (well, any licensed Xbox developer) can run their own XLSP gateway. It is exceedingly painful though, so fewer and fewer people are going that route." CreationDate="2010-11-25T05:31:56.977" UserId="395" />
  <row Id="7222" PostId="5922" Text="Ditto on Netflix, I shudder to think of how complex that system must be on the server end." CreationDate="2010-11-25T05:32:27.930" UserId="395" />
  <row Id="7223" PostId="5926" Text="Okay, let's say I need a server-side application running. What kind of server do I need? I have a site hosted, I guess that I need to upload EXE there and run it somehow and &quot;listen&quot; for ingoing messages and issue outgoing messages in return? How do I deploy and run the exe on server?" CreationDate="2010-11-25T06:26:13.087" UserId="3559" />
  <row Id="7224" PostId="5917" Text="atm I'm using PHP pages on a server, they receive messages as parameters (e.g. post_msg.php?t=Player1?m=Hello_World?a=mainlobby will construct SQL query to add message by Player1 to Main room). The biggest drawback is need to constantly query server to get new messages from other players :(  See above comment for more questions please" CreationDate="2010-11-25T06:31:10.163" UserId="3559" />
  <row Id="7225" PostId="5828" Text="`&quot;Is there some sort of algorithm to figure out how to clip them without external sprite grid information?&quot;`  Why not just make  some external sprite grid information?  It would probably take a lot more time to solve programmatically than just having some meta data that you author by hand." CreationDate="2010-11-25T06:47:20.823" UserId="51" />
  <row Id="7226" PostId="5926" Score="2" Text="@Kromster yes, you need to deploy an executable to the server that can keep a socket connection open to your clients. This isn't something that you can do on a typical shared-host. Best would probably be some dedicated server (or virtual-server) where you get root access." CreationDate="2010-11-25T07:05:58.087" UserId="20" />
  <row Id="7227" PostId="5926" Text="I wonder if there are any servers that provide services like one I need at once. E.g. I've heard some games used IRC for lobby setup, perhaps there are other ready solutions?" CreationDate="2010-11-25T07:38:57.750" UserId="3559" />
  <row Id="7228" PostId="5590" Text="Hey. Agreed - also, note that C++ is noted for being a language which is bloated with features, which interact in irksome ways. There is an argument to be made that sometimes it is better to use a simple and well-understood subset of C++ that isn't too far off plain old C, in order to produce programs that are more maintainable." CreationDate="2010-11-25T07:49:40.057" UserId="3498" />
  <row Id="7229" PostId="5928" Text="So instead of preventing inter-penetration this method allows it but provides resistance, almost like the objects are being compressed?" CreationDate="2010-11-25T08:15:33.943" UserId="1386" />
  <row Id="7230" PostId="5332" Text="Thanks.  This is what I was looking for.  I can't get direct specs, but the phone models are enough to get what I need." CreationDate="2010-11-25T08:48:59.703" UserId="2509" />
  <row Id="7231" PostId="4796" Text="Eh I figure true that stackoverflow is for code and android development. But gamedev.stackexchange.com is for game development.  It can be code, concepts, or whatever game related.  So that makes this a perfectly relevant place to post this question." CreationDate="2010-11-25T08:51:31.807" UserId="2509" />
  <row Id="7232" PostId="5917" Text="@Kromster: you can keep doing it this way... or maybe you can do something that, you know, actually works. The chat lobby isn't the first thing you are doing in your game, isn't it?" CreationDate="2010-11-25T09:11:44.583" UserId="2188" />
  <row Id="7233" PostId="5917" Text="As I've mentioned everything else is working good enough :) You may want to check our SVN (http://code.google.com/p/castlesand/)" CreationDate="2010-11-25T09:30:40.820" UserId="3559" />
  <row Id="7234" PostId="5933" Score="2" Text="See http://en.wikipedia.org/wiki/The_Mythical_Man-Month on why man-hours / man-months aren't always meaningful." CreationDate="2010-11-25T10:13:52.250" UserId="1386" />
  <row Id="7235" PostId="5933" Score="1" Text="The amount of factors involved in development time makes assigning  figures to a question like this a guessing game." CreationDate="2010-11-25T10:16:09.923" UserId="1386" />
  <row Id="7236" PostId="5934" Score="2" Text="essentially, this answer is saying, it depends, and its not always the same, even for same category games (since every project is going to be different). Only experience in the industry will give you some gut feeling." CreationDate="2010-11-25T10:38:15.790" UserId="1835" />
  <row Id="7237" PostId="5934" Text="Essentially, this comment sum-up nicely what I meant. :)" CreationDate="2010-11-25T10:47:34.750" UserId="364" />
  <row Id="7238" PostId="5894" Text="I guess this is as good an answer as I'll get. Thanks." CreationDate="2010-11-25T11:48:43.333" UserId="452" />
  <row Id="7239" PostId="5851" Score="1" Text="If you wanted a lookup table in the DB for the traits (probably a good idea as you can then add them dynamically to any editor then) then it would just have something like this: id,bitmask,description.  1,1,&quot;Holdable&quot;; 2,2,&quot;Weapon&quot;; 3,4,&quot;Breakable&quot;, etc.  With regards to the fixed number, yes this is true.  But if you use a 64bit int you should have plenty of scope." CreationDate="2010-11-25T12:03:42.800" UserId="2022" />
  <row Id="7240" PostId="5936" Score="1" Text="2 years is right, but AAA teams ballooned beyond a maximum size of 40 years ago." CreationDate="2010-11-25T12:31:29.603" UserId="744" />
  <row Id="7241" PostId="5921" Text="Does MS have any requirements regarding the networking protocol or security between the XLSP server and the developer's own content server?" CreationDate="2010-11-25T14:13:17.053" />
  <row Id="7242" PostId="5921" Text="Also (somewhat unrelated), is it possible to prototype an Xbox app on Windows, communicating with an XLSP server?" CreationDate="2010-11-25T14:14:08.127" />
  <row Id="7243" PostId="5906" Text="I can't clarify that. The question isn't about what will happen as a result of a collision, it's about handling the multiple overlap problem. I think it's enough to know I'm bouncing objects off each other and I want them to behave realistically to answer this question." CreationDate="2010-11-25T14:21:01.397" UserId="1386" />
  <row Id="7244" PostId="5938" Text="When you say hinting, do you mean subpixel hinting (I think only Direct2D can do this), or pixel-level hinting? The latter is already taken care of if you just render using (hinting-enabled) FreeType at the size you want; Valve's technique can be considered a form of auto-hinting, just not as good as the manual hinting, which by its nature requires manual sizing." CreationDate="2010-11-25T14:56:05.040" UserId="744" />
  <row Id="7246" PostId="5822" Text="Actually, quicksort is really horrible in those cases, in terms of cost per item. Maybe in the grand scheme of your program it doesn't matter because you only sort it once per day and don't need it done fast, but if I have, say, 1000 lists of 10 items (inventory items of all online players in an MMO, e.g.), applying quicksort 1000 times is one of the worst possible solutions." CreationDate="2010-11-25T15:06:01.023" UserId="744" />
  <row Id="7247" PostId="5909" Text="@Joe: what you say is technically right, *but* the important thing here is to *know* what you are (he is) doing. Doing a sudoku-like game is fine if you are aware you are doing that, while it will almost certainly lead to crap results if you think you are doing something else." CreationDate="2010-11-25T15:06:45.903" UserId="2188" />
  <row Id="7248" PostId="5922" Text="Where do I find my information on XLSP ... APIs, architecture, etc.?  Is it necessary to join a developer program to get full documenation?  Thanks." CreationDate="2010-11-25T15:23:21.293" />
  <row Id="7249" PostId="5941" Text="i just look for skybox and yes that exactly what i'm looking for. Does a skybox is sufficient of it's better to take a sphere?" CreationDate="2010-11-25T15:32:20.780" UserId="3461" />
  <row Id="7250" PostId="5943" Text="so basically step up the period of my ajax requests and make the client a completely dumb client?  that's probably good advice" CreationDate="2010-11-25T15:46:41.237" UserId="1743" />
  <row Id="7251" PostId="5944" Text="all valid and good points" CreationDate="2010-11-25T15:48:04.293" UserId="1743" />
  <row Id="7252" PostId="5275" Text="@Ari: In the OP's question one weapon may have many types, and one type may be linked to many weapons. For example, a potion and a sword are holdable. A sword is both holdable and weapon." CreationDate="2010-11-25T17:23:40.353" UserId="2232" />
  <row Id="7253" PostId="5275" Text="And, NoREL is &quot;more performant&quot; only in very specific scenarios, namely in highly-scaled and/or distributed scenarios. You can easily model the KV store in a reelational database by using one table and give Mongo a run for it's money in all but those extreme cases." CreationDate="2010-11-25T17:25:23.880" UserId="2232" />
  <row Id="7254" PostId="5857" Text="Sorry, but this is pretty critical. You just need to think it through. Model the exercise in your mind of what you'd have to do when some weapons need to be updated to add a new trait so that your game enhancement can work." CreationDate="2010-11-25T17:27:03.363" UserId="2232" />
  <row Id="7255" PostId="5909" Text="CeeJay: The game you linked to is similar to what I'm trying to implement, probably without the swap counter. But I'm having trouble on where to start when designing data structures and generic rules to work as an implementation of that game." CreationDate="2010-11-25T17:48:01.757" UserId="3562" />
  <row Id="7256" PostId="5909" Text="Michael Madsen: I've played some of Everett Kaser's games before, and they're a great example of what I'd like to do. My fear is that my aspirations exceed my capabilities. 8-)" CreationDate="2010-11-25T17:50:06.870" UserId="3562" />
  <row Id="7257" PostId="5911" Text="Joe: Exactly right with your first comment. A puzzle that lets you jam clues together willy-nilly isn't so much a puzzle as a kindergarten art project." CreationDate="2010-11-25T17:55:10.423" UserId="3562" />
  <row Id="7258" PostId="5922" Text="You need to have an Xbox contract to get any of the XDK docs, but you can sign up for the XNA CC which uses the same underlying system (does cost $99/year if you want to deploy to an Xbox though)." CreationDate="2010-11-25T18:29:38.903" UserId="395" />
  <row Id="7259" PostId="5921" Text="I don't remember anything in particular about protocols beyond the gateway, most of their limitations are content-related, not about security. Not sure on the second question, pretty sure we didn't but that doesn't mean you can't. Not sure why you would ever need to :-)" CreationDate="2010-11-25T18:32:37.590" UserId="395" />
  <row Id="7260" PostId="5938" Score="1" Text="Not totally related, but this is a good article about text rasterization in general: http://antigrain.com/research/font_rasterization/" CreationDate="2010-11-25T20:02:27.180" UserId="51" />
  <row Id="7261" PostId="5909" Text="@taserian: The magic academic words you're looking for, by the way, are &quot;constraint satisfaction&quot; and &quot;constraint relaxation&quot; (the constraints being predicate logic sentences). Unfortunately I don't know any good papers on this kind of approach, and some quick Googling doesn't turn up anything obviously good. I also have no idea if this a degenerate case admitting simpler algorithms." CreationDate="2010-11-25T20:47:32.320" UserId="744" />
  <row Id="7263" PostId="5938" Text="Unfortunately one goal of hinting is that different sizes of the same character may require slightly different ratios, and so plain mipmaps are not appropriate. Doing your own &quot;pseudo-mipmaps&quot; is the same as just rendering the font at different sizes and using the closest one; you're back to the high memory requirements the Valve technique tries to avoid, and your render path is more complicated than it would need to be. Is there a reason you can't just render the size you want?" CreationDate="2010-11-25T21:10:27.790" UserId="744" />
  <row Id="7264" PostId="5946" Score="1" Text="Wiki (http://goo.gl/c1OJx) recommends using particles which might actually make sense since it kind-of simulates actual physical processes. Has anyone considered such an approach?" CreationDate="2010-11-25T21:48:58.840" UserId="2771" />
  <row Id="7265" PostId="5928" Text="It provides resistance, yes, the resistance increases the more the body is trying to penetrate. In practice, if you have a low enough delta time (for example 10ms) it will not produce any inter-penetrations. The real advantage to this method however is when you do have bodies that have inter-penetrated for various reasons (position was changed, they are networked rigid bodies and their positions were corrected) and now need to be separated, because without this technique the bodies will explode out rather than gradually separate. " CreationDate="2010-11-25T23:43:35.480" UserId="2287" />
  <row Id="7266" PostId="266" Text="Note that the &quot;8bit-collective&quot; is non-commercial licensed.  May be the case with more as well.  Great list, though." CreationDate="2010-11-26T00:40:38.007" UserId="284" />
  <row Id="7267" PostId="1302" Text="Excellent selection of stuff." CreationDate="2010-11-26T02:41:40.570" UserId="284" />
  <row Id="7268" PostId="568" Text="Thanks, I'd like to get back to it at some point, but my free time is pretty limited these days." CreationDate="2010-11-26T05:05:40.640" UserId="160" />
  <row Id="7269" PostId="4681" Text="Crazy, that's awesome! I didn't know anyone ever really used it." CreationDate="2010-11-26T05:06:38.003" UserId="160" />
  <row Id="7270" PostId="5941" Text="Try and see how it looks, if the lightning and perspective distortions are ok - use a box. If you notice texture disproportions - switch to a sphere. It depends on how much freedom you/player have over camera rotation. Obviously if you restricted to look up/down you don't need to create/render upper/lower parts of the sphere. If you can look only left-right you can have a&quot;ring&quot; instead of sphere. And finally - don't forget to disable lighting and enable normals smoothing (so that there were no lighting flaws on polygon edges of a box/sphere)" CreationDate="2010-11-26T06:25:51.700" UserId="3559" />
  <row Id="7271" PostId="5908" Text="Ok this is starting to be a bit ridiculous. I offered the advice in honesty and good will. I explicitly stated my assumptions and mentioned that it is not applicable in the case mentioned by the first poster. I do not think this warrants a -5." CreationDate="2010-11-26T09:08:24.933" UserId="678" />
  <row Id="7272" PostId="5957" Text="in my case i will render a space environment (only stars and eventually some planet sometimes , so i guess sphere will be ok concerning the pinch points. But i'll test first box , the less polygon there is , the better it is. Now i just need to dig inside texture mapping that i didn't try to learn yet ! Thanks for the advices" CreationDate="2010-11-26T09:10:41.800" UserId="3461" />
  <row Id="7273" PostId="5945" Text="although the source looks hard to use and there is little documentation as far as I can tell, this certainly does answer the question." CreationDate="2010-11-26T10:45:14.907" UserId="1742" />
  <row Id="7274" PostId="5951" Text="true, at this point i'm not in charge of the data center however :)" CreationDate="2010-11-26T10:48:20.793" UserId="1743" />
  <row Id="7275" PostId="5851" Text="+1: bitmasking is how diablo handled weapons and items!" CreationDate="2010-11-26T10:53:32.990" UserId="1743" />
  <row Id="7276" PostId="5955" Text="The problem lies in the need to render fonts where size is not specifiable, due to screen size differences, and orientation of the font string to be rendered. Sometimes a font would render at ~50px tall, dwindling to ~10px tall at it's terminus." CreationDate="2010-11-26T11:00:11.987" UserId="1742" />
  <row Id="7277" PostId="5780" Text="Yes, _nearly_ every. You'd need a patcher, a content editor, and geometry and animation kernels. You'd need some kind of social features for your network. You'd also need a standard library that works for games; EA STL is one such beast, though you could find another or write your own." CreationDate="2010-11-26T11:01:47.227" UserId="744" />
  <row Id="7278" PostId="5955" Text="The size is always specifiable at some point; the problem only arises if the size changes often during runtime, because re-rasterizing is expensive. If at some point you know you're always going to need at at 50px, 30px, 12px, and 10px, you can just do those sizes. If you're trying to make a glyph string scale down gradually, pixel hinting can actually hurt a smooth look." CreationDate="2010-11-26T11:12:36.700" UserId="744" />
  <row Id="7279" PostId="5936" Text="One year for an MMO? Yipes! That's a bit optimistic no?" CreationDate="2010-11-26T12:13:14.600" UserId="1352" />
  <row Id="7281" PostId="3768" Text="Okay, try Syntensity, Tiled, etc. There are other, more specialized editors. If you are looking for something as easy as the editor in Spore or ModNation, then you are looking at something that tends to be too one-game specific." CreationDate="2010-11-26T15:00:19.887" UserId="2232" />
  <row Id="7282" PostId="5780" Text="Content editor: Blender, Tiled, Syntensity. Kernels: not sure exactly what you mean here. Kernel is an overloaded term. Game dev &quot;standard library&quot;: Lots of different languages and different game types. One library to handle them all? Really? Lastly, &quot;social features&quot; is exactly what I am proposing as part of a platform for online gaming." CreationDate="2010-11-26T15:07:59.023" UserId="2232" />
  <row Id="7283" PostId="5955" Text="the text is dwindling in size over space, not time. I guess the size would probably be specifiable per character at least." CreationDate="2010-11-26T15:43:36.393" UserId="1742" />
  <row Id="7284" PostId="5590" Score="2" Text="@Tartley, I mostly agree. For example take a look at the Alexandrescu's Loki library for many examples on &quot;how to code C++ so that no one else will ever understand&quot;. However, there are also C++ concepts that improve code quality compared to the C, when used properly. Data encapsulation, pure virtual interfaces, RIIA resource management classes, and ATL/STL template containers, to name a few." CreationDate="2010-11-26T15:58:34.507" UserId="3355" />
  <row Id="7285" PostId="5955" Text="Whether space or time, hinting can make it look worse, because it means uniform reduction in nominal pixel size doesn't become uniform reduction in displayed pixel size." CreationDate="2010-11-26T16:50:00.903" UserId="744" />
  <row Id="7286" PostId="5968" Text="Thanks for the pointers. This definitely gets me started." CreationDate="2010-11-26T18:29:25.970" UserId="2100" />
  <row Id="7287" PostId="5965" Text="Not to nitpick; but this is already covered in my answer: Wider items would get a better cover bonus in approach one; and would have a bigger area in approach two." CreationDate="2010-11-26T20:02:19.023" UserId="3015" />
  <row Id="7288" PostId="5908" Text="Using a high level library always comes at the cost of understanding what your own code does. If all you need is some relatively simple particle collisions then setting up a third party physics library and tweaking it to suit the game and gameplay may easily take as long as writing the needed physics functions. If you need to model highly realistic physics with complex objects and friction then a third party physics engine may save enough time to justify the trouble of integrating it seamlessly into the game. But for the small stuff I'd prefer to go with a simple vector math library." CreationDate="2010-11-26T20:59:47.730" UserId="3505" />
  <row Id="7295" PostId="5973" Text="I don't like C++ and absolutely hate Pointers. I enjoy Scripting languages like Python and Lua, because I know them both well. I feel like it's my only option from a technical ability standpoint. *Trying to add paragraphs, but ENTER submits my edit :(*  I have downloaded the 1-10 NeHe tutorials for both Pyglet and PyGame, and both seem to be clear (they set up the window normally and then each uses regular glWhatever functions to handle OpenGl. From there, I just need to read the Super Bible to learn OpenGL.  I don't understand why you think Python is a bad option for this. I don'twant C++  " CreationDate="2010-11-26T22:21:26.240" UserId="3214" />
  <row Id="7296" PostId="5973" Text="If you just want to learn OpenGL, pyglet or PyOpenGL with the SuperBible will be fine. If you want to make games, you will quickly hit speed limits; sooner if you don't understand memory (including pointers); sooner if you use NeHe or other fixed-function approaches. You will also find bugs in pyglet and Pygame that you can't work around without working in C or at least being comfortable with it. The reality is, if it was actually easier to make high-quality games in Python than C(++), we'd all be using Python instead of C(++). Instead you spend so much time fighting Python that it's not." CreationDate="2010-11-26T22:32:18.967" UserId="744" />
  <row Id="7297" PostId="5973" Text="I know C++, I guess I was just looking for shortcuts. I've been playing with Lua and Love2D which is awesome, just wish the beauties of 3D lighting were available in a 2D sprite setting ;)  I hear you  though, and will definitely consider C++, it's just brutal after playing with Scripting languages " CreationDate="2010-11-26T22:50:39.347" UserId="3214" />
  <row Id="7298" PostId="5926" Text="Some web hosters allow databases. If you go with your route, maybe you could get away with hosting it on a website of yours? I wouldn't recommend this and I'm not sure if it would even work. If you just need a lobby, xfire or other services like an irc could definitely work for you." CreationDate="2010-11-26T23:23:11.940" UserId="3547" />
  <row Id="7299" PostId="5977" Score="1" Text="Call of Duty uses DirectX on Xbox 360 and PC, and custom platform APIs elsewhere." CreationDate="2010-11-26T23:30:09.017" UserId="744" />
  <row Id="7301" PostId="5977" Text="I always assumed the IWEngine used OpenGL-based engine everywhere. I forgot about the Microsoft platforms. However, since IWEngine is based off idTech 3, doesn't it run on OpenGL on PC?" CreationDate="2010-11-27T00:25:52.983" UserId="2946" />
  <row Id="7302" PostId="5978" Text="If you haven't already read it, this might help: http://gafferongames.com/game-physics/fix-your-timestep/" CreationDate="2010-11-27T01:59:53.723" UserId="2345" />
  <row Id="7303" PostId="5976" Score="5" Text="1. Try millions..." CreationDate="2010-11-27T05:41:32.767" UserId="3597" />
  <row Id="7305" PostId="5983" Text="round robin would impose a time inconvenience on the players (since they HAVE to play all the others, or whatever)" CreationDate="2010-11-27T07:10:42.443" UserId="3597" />
  <row Id="7306" PostId="5983" Text="That's not really a time restriction.. more like a logistical restriction. If you don't care when the tournament ends (and no one else does either), you can just have people take as long as they want between their matches." CreationDate="2010-11-27T07:52:20.410" UserId="3004" />
  <row Id="7307" PostId="5988" Text="Good question. I'm interested to see a good answer. My first thought at a solution is some kind of shim type in your editor, that can hold both a regular texture and the content reference." CreationDate="2010-11-27T09:51:30.383" UserId="288" />
  <row Id="7308" PostId="5987" Score="2" Text="http://www.bme.eu.com/media/media-news/infographics/091208-NGO-Warcraft.png" CreationDate="2010-11-27T10:14:26.660" UserId="450" />
  <row Id="7309" PostId="5991" Text="Thanks TZHX for your fair comment. I am  considering a side project that would be a Facebook game just to generate some profit and a minimum of history of success in this domain. " CreationDate="2010-11-27T11:15:47.817" UserId="3623" />
  <row Id="7310" PostId="5991" Score="1" Text="Note that Zynga within 3 years was able to obtain 220M$ in capital venture for Facebook games. My case is not as ridiculous as it looks. ;)" CreationDate="2010-11-27T11:16:52.497" UserId="3623" />
  <row Id="7311" PostId="5991" Text="@Raistx - that seems to be the way into the games industry at the moment. And with the recent &quot;Facebook Money&quot; thing they've got going on, it's becoming more and more of a platform. Plus, it's a good (read: cheap) way to test out game mechanics and see if they prove popular, before spending a lot of money developing them in more complex games. Though this runs the risk of a more reasource-heavy organisation taking your idea to the &quot;serious&quot; market before you can. Though, as someone great once said, &quot;No ideas are new ideas&quot;." CreationDate="2010-11-27T11:20:21.453" UserId="3568" />
  <row Id="7312" PostId="5991" Text="Some rumors about initial cost of WoW was 45M$ and that they did a ROI within six months. They actually have a player based of 12M players paying a recurring 10$ (at least). That's a massive 1.4 billion per year in revenue. They can easily get a net profit of 300M/year. " CreationDate="2010-11-27T11:24:04.757" UserId="3623" />
  <row Id="7313" PostId="5991" Score="1" Text="Re: Zynga was founded by several people with a great deal of experience in the industry. You say yourself that you have no experience in software, let alone games. Zynga were also pretty much first-to-market in the social networks game arena. A thousand Zynga-wannabes have been started and abandonned, or having no real success, in this length of time. I understand your optimistic, but you should really have some realism in there too. Though of course I wish you every success (so long as you don't become a competitor for my products, haha!) :)" CreationDate="2010-11-27T11:24:51.450" UserId="3568" />
  <row Id="7314" PostId="5991" Text="I have 8 new concepts that are patentable (new type of XP system, etc.). I have the ideas, I just need to make them come to life. I cannot do it just by myself obviously. But I can run a company, that's what I actually do in life." CreationDate="2010-11-27T11:27:41.057" UserId="3623" />
  <row Id="7315" PostId="5991" Text="Blizzard already had a massive fanbase and was a successful games development company with more than a decade experience." CreationDate="2010-11-27T11:27:49.793" UserId="3568" />
  <row Id="7316" PostId="5991" Text="That's exactly why I am asking my question here. How do I create that core team to support me? If I can surround myself with industry competent people, I will be able to create and deliver this baby. :)" CreationDate="2010-11-27T11:29:34.613" UserId="3623" />
  <row Id="7317" PostId="5991" Text="Finding the money will not be the challenge. Assembling a core team will be more difficult. " CreationDate="2010-11-27T11:34:58.417" UserId="3623" />
  <row Id="7318" PostId="5991" Text="IF finding the money is not a challenge, then do that first. Most people with the necessary experience / kudos in the industry already have their own companies or products, enticing them to yours would require lots of moonshine. You may stand a better chance of paying someone to develop a small demo of your concept, then applying for a patent with it and going to some of these companies with a price tag. Though, personally I find software patents distasteful." CreationDate="2010-11-27T11:37:28.240" UserId="3568" />
  <row Id="7319" PostId="5991" Text="I don't like software patenting either, but there would be no way to create and maintain a competitive advantage without it. The Cap Venture company will be looking for that mainly in conjunction with the how to (missing in action for now). I would love to just dump my ideas of Internet and watch people grab it and run with it, but that would be like shooting me in the foot... ;)" CreationDate="2010-11-27T11:46:11.073" UserId="3623" />
  <row Id="7320" PostId="5987" Text="I want to +10 and -10 at the same time. I like the crazyness (I'm the same) but I dislike the disconnection with reality and the lack of apparent interest and experience in the game business. In your position, I'd start a bit smaller. But do continue. If you find a venture capitalist interested enough to give you even 300k$ it could be what you need to get going." CreationDate="2010-11-27T11:56:18.700" UserId="1217" />
  <row Id="7321" PostId="5990" Score="1" Text="Even though his plan is a tad unrealistic, there's actually a good question in there (how to get a good core team from nothing) which is worth an honest attempt in my opinion." CreationDate="2010-11-27T12:08:46.047" UserId="1217" />
  <row Id="7322" PostId="5987" Text="Thanks Phil, I appreciated the comment. I will take that on board. It's difficult at 35 years old changing from accounting and risk management to game designing and considering starting a game company. I am having the top-down approach while most people here is having a bottom-up approach. That's why I sound a little bit lunatic. ;)" CreationDate="2010-11-27T12:13:43.897" UserId="3623" />
  <row Id="7323" PostId="5993" Text="Good thoughts Phil. I like the way your approaching it. " CreationDate="2010-11-27T12:18:50.963" UserId="3623" />
  <row Id="7325" PostId="5990" Score="1" Text="On the other hand getting the idea that he is a 1337 game designer out of Raistx's head seems to be worth an honest attempt as well." CreationDate="2010-11-27T12:26:47.153" UserId="3505" />
  <row Id="7326" PostId="5990" Score="1" Text="Look at all the answers. They are honest attempts to guide this person in some direction that's reality anchored. Now, if someone stumbles upon this question thinking the same thing, they'll have loads of good points to read. If everyone would answer in the same cynical way we wouldn't get ANYTHING from this community. Everything's obvious when you already know it." CreationDate="2010-11-27T12:38:31.923" UserId="1217" />
  <row Id="7328" PostId="5990" Score="1" Text="I am not an 31337 game designer, but I have a very strong vision and I want to create it. I am documenting this my 'GDD' since almost a year and now it's time to shift in first gear. That's why I asked my question here, in a forum dedicated to specialists. So far, most answers are very useful to me and my project. " CreationDate="2010-11-27T12:46:29.983" UserId="3623" />
  <row Id="7329" PostId="5993" Text="Btw, I am unable to upvote for now because of my low ranking in the forum. ;)" CreationDate="2010-11-27T12:47:51.587" UserId="3623" />
  <row Id="7331" PostId="5993" Score="3" Text="Np, I get a certain degree of satisfaction just by writing these things :)" CreationDate="2010-11-27T13:55:44.283" UserId="1217" />
  <row Id="7335" PostId="5980" Text="Be sure to mark this answer as &quot;accepted&quot; so the bot doesn't rebump this question because it thinks it's unanswered." CreationDate="2010-11-27T14:42:45.763" UserId="51" />
  <row Id="7336" PostId="5994" Text="I was about to answer 'collision layer', then realised it's the same as this." CreationDate="2010-11-27T14:49:12.560" UserId="1156" />
  <row Id="7337" PostId="5996" Text="Sadly, at this stage I did not published how the core gameplay would work as it's subject to patenting. Glad you went read about it. " CreationDate="2010-11-27T14:53:29.890" UserId="3623" />
  <row Id="7338" PostId="5998" Score="1" Text="This is practically the same question as this: http://gamedev.stackexchange.com/questions/1606/is-learning-opengl-2-1-useless-today" CreationDate="2010-11-27T15:00:24.110" UserId="51" />
  <row Id="7339" PostId="5998" Text="Simple google result that would help: http://developer.nvidia.com/object/opengl_driver.html" CreationDate="2010-11-27T15:01:47.307" UserId="51" />
  <row Id="7340" PostId="5996" Text="I thought about what I want in my favorite game, yes, but also about what other people would want to. But, most of all, I analysed why people stop playing, why they get bored, why they dislike grinding, etc. I used to play DAOC, Eve, WoW, Anarchy Online, etc. and went waste my time (not too long) in Second Life. I did a lot of research. What I would bring does not exist so far in any game I observed. " CreationDate="2010-11-27T15:06:18.760" UserId="3623" />
  <row Id="7341" PostId="5996" Score="2" Text="The question is, does it not exist because no one thought of it before? Or because those who thought of it concluded that it was a bad idea? Reality tend to be pretty hard on those ideas it meet." CreationDate="2010-11-27T15:19:37.523" UserId="3505" />
  <row Id="7342" PostId="5998" Text="And -1 to you if I could, Tetrad. I didn't ask if it was pointless learning OpenGL 2.x, 3.x or 4.x. I asked WHICH book I should use as the best reference. " CreationDate="2010-11-27T16:03:31.417" UserId="3214" />
  <row Id="7343" PostId="5996" Text="It does not exist because the programmers spend a year figuring out how to make the player not fall off the world's edges and then there's no time to implement anything interesting." CreationDate="2010-11-27T16:31:43.870" UserId="452" />
  <row Id="7344" PostId="5936" Text="Yep. And now you know why all MMOs are crap." CreationDate="2010-11-27T16:34:07.970" UserId="452" />
  <row Id="7346" PostId="5975" Text="If you did want to get started learning how to put together a game like that yourself, you might check out Ogre 3D on one end, or making a mod for a game on the game logic end." CreationDate="2010-11-27T18:09:11.903" UserId="3629" />
  <row Id="7348" PostId="5977" Text="I've always heard that almost all AAA games run on DirectX on Windows." CreationDate="2010-11-27T18:13:52.523" UserId="1156" />
  <row Id="7349" PostId="5998" Score="1" Text="shadowprotocol, then your question is worded totally wrongly. The title indicates whether to choose GL 2.x-4.x, whereas you're meaning books." CreationDate="2010-11-27T18:14:50.760" UserId="1156" />
  <row Id="7350" PostId="5977" Text="@The Communist Duck - I've confirmed that MW2/Black Ops both run on DirectX on Windows. It just seems a little counter-intuitive to me since IWEngine is based off of idTech 3, an OpenGL engine. I guess they just directly ported an Xbox version back to PC." CreationDate="2010-11-27T18:34:49.973" UserId="2946" />
  <row Id="7353" PostId="5990" Score="2" Text="Producing an MMO is among the hardest tasks in the industry. The chances of success if you have never shipped a title before are effectively 0. I don't mean to sound cruel, but you need to work your way up, proving your studio's skills as you go. MMOs also tend to cost a lot more and take longer than other types of games because there is little to no off-the-shelf tech that you can use other than graphics engines. If you want to found an indie studio and make a small RPG, I could buy that, but this question is just beyond the realm of possibility." CreationDate="2010-11-27T19:52:48.657" UserId="395" />
  <row Id="7354" PostId="5983" Text="The down side with Elo and TrueSkill is that they both assume a 100% skill-based game. For games like Poker that have both a luck and skill component, you have to make some mathematical adjustments to keep it perfectly fair. Question said &quot;involves skill&quot; but did not say whether it is exclusively skill-based." CreationDate="2010-11-27T20:28:35.753" UserId="458" />
  <row Id="7355" PostId="5983" Text="@Ian, that's a good point. In which case I think you can dampen the interpolation between win-loss in Elo and TrueSkill. So for example, in Elo, being 200 points above someone else means that you'll beat them about 75% of the time (and he'll beat you 25% of the time), some dampening could be done so that 200 pts. above your opponent represents the fact that you'll beat him 50% of the time, it'll be a toss-up 25% of the time, and he'll beat you 25% of the time (or somethign to that effect)." CreationDate="2010-11-27T21:07:28.250" UserId="3004" />
  <row Id="7356" PostId="5998" Text="@Duck: If so, it's a dupe of another question: http://gamedev.stackexchange.com/q/1128" CreationDate="2010-11-27T22:07:54.360" UserId="613" />
  <row Id="7357" PostId="6004" Score="1" Text="How can you even make such a list without All Points Bulletin? ;-)" CreationDate="2010-11-27T22:24:21.660" UserId="3505" />
  <row Id="7358" PostId="6004" Text="Ha, I thought it was in there since it was the most recent example. Must have forgotten to actually write it down. Edit/Fixed" CreationDate="2010-11-27T22:27:38.163" UserId="154" />
  <row Id="7360" PostId="6000" Text="Thanks Splo! :)" CreationDate="2010-11-28T00:11:03.763" UserId="3623" />
  <row Id="7361" PostId="6004" Text="Thanks for this Wkerslake. I know it's a difficult and unforgivable business and Cap Venture companies know about it as well. Something very popular in the finance world is the relation between profit and risk. Huge profit come with huge risks. I am specialized in risk management. There are risks that need to be taken. Avoiding it because of fears will not achieve anything. But, I will happily review documentation about the past MMO failures in order to avoid doing the exact same mistake. I am behaviorist for some elements. ;) Thanks mate. " CreationDate="2010-11-28T00:24:45.690" UserId="3623" />
  <row Id="7362" PostId="5990" Score="1" Text="The people that I would assemble in my team would have experience of past MMORPG and other games delivery. They will be the core technical team with game project management xp. Me, I will create, develop and maintain the vision of the game and deal with business management challenges. That's why I am asking the question about assembling a core team out of thin air. " CreationDate="2010-11-28T00:28:37.967" UserId="3623" />
  <row Id="7363" PostId="6001" Text="I would be happy to do a quick mockup with a small and cheap (free) team if we could be also able to protect our intellectual properties. But still, the core question remain: how to assemble the core team that would do such mockup (in a safe way). " CreationDate="2010-11-28T00:35:44.923" UserId="3623" />
  <row Id="7364" PostId="5996" Text="The few people that heard the ideas so far (mostly gamers and friends non related to game development industry) really love the whole thing. If it would exist, I would just fu***g play it without bothering to create it! It does not exist. " CreationDate="2010-11-28T00:40:23.140" UserId="3623" />
  <row Id="7365" PostId="5987" Text="Btw, quite happy to have created a mini-debate around here. I like being a troublemaker sometime. One could refer to the Lucifer Principle by Howard Bloom... ;)" CreationDate="2010-11-28T00:43:10.253" UserId="3623" />
  <row Id="7366" PostId="6001" Text="Btw, I care about every constructive answer. Thanks Cyclops. " CreationDate="2010-11-28T00:53:34.257" UserId="3623" />
  <row Id="7367" PostId="5889" Score="4" Text="But are you using Quartz or OpenGL? Or some other framework that wraps OpenGL? These are valid questions. There are a couple of frameworks you can use that change the nature of the question. I would recommend rephrasing your question." CreationDate="2010-11-28T01:07:34.313" UserId="83" />
  <row Id="7368" PostId="5996" Score="1" Text="Few people will be able to give you useful feedback on a game they haven't played. A lot of people are easily talked into believing that something is great, especially if the talker is a friend. It's great for selling stuff or conning people, not so much for getting useful criticism. Also a lot of people are simply too polite to give negative feedback, especially if they can't find a solid point to make. Commending your idea as good is by far the easiest option, a lot of friends will do that, even if their gut feeling is quite different." CreationDate="2010-11-28T01:56:08.813" UserId="3505" />
  <row Id="7369" PostId="5996" Text="I choose my friends very carefully. They tell me when something is wrong and they challenge my ideas. But I see your point.  " CreationDate="2010-11-28T02:52:45.247" UserId="3623" />
  <row Id="7370" PostId="5983" Text="In real life sports there is usually an element of luck, and even then  the ranking system is pretty much exclusively win/lose based. I don't think anyone would cut your head off if you didn't make it complicated just to make it complicated." CreationDate="2010-11-28T03:51:14.607" UserId="3597" />
  <row Id="7371" PostId="6007" Text="i agree with that workflow, and that is why it does not work, because i cannot have RuntimeType (TilemapData) (from game) in editor, that type does not contain things like TextureName (why should it, it only needs a Texture2D).   So i need to use class (TilemapContent) that contains TextureName, but this class does not contain Texture2D so i can not visualise it in editor..." CreationDate="2010-11-28T09:44:54.077" UserId="3624" />
  <row Id="7372" PostId="6009" Score="1" Text="You should reword the question to refer to the length of the curve, that is a much more straightforward (and searchable) term." CreationDate="2010-11-28T11:34:36.230" UserId="2781" />
  <row Id="7373" PostId="5590" Text="Yeah, good call Soonts. Very fair." CreationDate="2010-11-28T12:40:29.267" UserId="3498" />
  <row Id="7374" PostId="5805" Text="If you choose to go on and explore the axis/angle concept and how it can be implemented into rotating a matrix, you can reduce your relatively expensive trig function calls from the 5 in your solution to just 2. Most likely a less than optimal camera won't bottleneck a game but later, if you start manipulating many objects per frame, keep that in mind." CreationDate="2010-11-28T12:56:20.733" UserId="1923" />
  <row Id="7375" PostId="6007" Text="I added more to my answer. I think I understand your problem." CreationDate="2010-11-28T13:45:08.737" UserId="3547" />
  <row Id="7376" PostId="6007" Text="i have a TilemapContent that has TextureName (name of the Tileset texture).  I need to edit TilemapContent.TextureName, because in editor you can choose what tileset you will use. And i need to render TilemapData.Texture because in editor you need to actually see the map you are making.   Yes i can make class TilemapEditorData that has both [SerializerIgnore]Texture and TextureName, and then serialize it and manually change asset type in xml from TilemapEditorData to TilemapContent, but this seems like a hack..." CreationDate="2010-11-28T14:28:59.353" UserId="3624" />
  <row Id="7377" PostId="5977" Score="2" Text="id Tech 3 is 11 years old. That means it predates programmable graphics pipelines, skeletal animation, and modern shadowing techniques. I'd be surprised if much of it remains in IWEngine." CreationDate="2010-11-28T16:15:45.817" UserId="744" />
  <row Id="7378" PostId="5977" Text="@Joe- I understand that, but it must still be based off OpenGL right? I guess Infinity Ward developed two backends for it?" CreationDate="2010-11-28T16:38:19.410" UserId="2946" />
  <row Id="7379" PostId="6007" Text="Probably because it is a hack. I don't really think there is a clean way to do it unless you change one of the two classes. (the Content/Data classes) Maybe someone with more experience/innovation will come up with something. Hacks aren't always bad, as long as they don't start to grow in number and complexity." CreationDate="2010-11-28T16:44:04.090" UserId="3547" />
  <row Id="7380" PostId="5977" Text="Unlikely. I mean yeah, it has multiple backends (DirectX, PS3, maybe even Wii in the same codebase), but none of them are OpenGL. Most AAA-making companies stopped maintaining their OpenGL renderer around 2005." CreationDate="2010-11-28T17:08:53.437" UserId="744" />
  <row Id="7381" PostId="6009" Text="i suggest posting this on math, i'm sure some clever face over there will give you the answer in one of them clever web fonts :p" CreationDate="2010-11-28T17:27:31.507" UserId="3597" />
  <row Id="7382" PostId="5977" Text="@Joe- Oh, so everyone is using DirectX/Whatever PS3 or Wii uses? Correct me if I'm wrong, but I thought PS3 used OpenGL ES. Anyhow, are you saying that OpenGL is... obsolete(?) in today's engines? That almost seems the opposite of what I know, in that a lot of companies _want_ to support OpenGL due to the cross-platform-ness." CreationDate="2010-11-28T17:44:48.740" UserId="2946" />
  <row Id="7383" PostId="799" Text="The above link still works, but since XNA Creator's Club is now App Hub, here's the direct link so you don't have to wait for it to redirect you: http://create.msdn.com/en-US/education/catalog/tutorial/collision_2d_rectangle" CreationDate="2010-11-28T17:56:57.157" UserId="2946" />
  <row Id="7384" PostId="5977" Text="Many platforms provide OpenGL or OpenGL ES APIs, but AAA games demand performance and use something lower-level. These lower-level APIs are very much like modern OpenGL, but so is DirectX. For a variety of reasons (historical, dislike of Microsoft, cross-platform, variety of extensions) many developers do prefer OpenGL, but in the end you need to go where the platform support and performance are, and for many years and many reasons it was _not_ at OpenGL." CreationDate="2010-11-28T18:06:35.250" UserId="744" />
  <row Id="7385" PostId="5977" Text="@Joe- Thanks for the history, I learn something every day. One more question- so are you saying most developers develop not using DirectX or OpenGL but the native toolset provided by the console maker for more speed and maybe capabilities?" CreationDate="2010-11-28T18:10:16.090" UserId="2946" />
  <row Id="7386" PostId="5977" Text="On the Xbox 360, the native toolset is DirectX. Likewise on iOS, the native toolset is OpenGL ES. But yes, on Wii and PS3 (and consoles before that), you use a platform-specific API." CreationDate="2010-11-28T18:34:19.743" UserId="744" />
  <row Id="7387" PostId="6022" Text="A shadow still doesn't work when the colors match too closely. You end up just seeing a shadow, which isn't identifiable and looks bad by itself. An outline is better, preserving more details of the shape." CreationDate="2010-11-28T18:40:07.527" UserId="744" />
  <row Id="7388" PostId="5977" Text="@Joe- Thanks. [Limit]                " CreationDate="2010-11-28T19:01:31.167" UserId="2946" />
  <row Id="7389" PostId="5913" Text="Depending on what kind of game you make, it might be up to six months between you finish it and actually profiting from it." CreationDate="2010-11-28T19:19:52.223" UserId="452" />
  <row Id="7390" PostId="6022" Text="@Joe Wreshnig, I edited the answer and provided examples. " CreationDate="2010-11-28T19:48:03.733" UserId="962" />
  <row Id="7391" PostId="5975" Score="1" Text="Sooo... Halo of Duty?" CreationDate="2010-11-28T20:21:18.680" UserId="962" />
  <row Id="7392" PostId="5975" Text="Imagine! What a game..." CreationDate="2010-11-28T20:22:54.483" UserId="3614" />
  <row Id="7393" PostId="6022" Text="@Attacking: You provided two low-luminance shades for mid-high luminance fonts. Try just shadows on backgrounds nearly equal to the font, and you'll see the problem. Still, the problem is already appearing on the yellow shadowed &quot;e&quot; in &quot;Text&quot; on white." CreationDate="2010-11-28T20:37:06.050" UserId="744" />
  <row Id="7394" PostId="6009" Text="@Tor I did (yesterday), but I've been told it's very complicated, and hence unpractical. [ http://math.stackexchange.com/q/12186/2736 ]" CreationDate="2010-11-28T21:08:22.147" UserId="3637" />
  <row Id="7395" PostId="6016" Text="What type of instruments do you have?" CreationDate="2010-11-28T21:10:59.100" UserId="3637" />
  <row Id="7396" PostId="6013" Text="Thanks for explaining it though! I figured it would involve some kind of reverse projection." CreationDate="2010-11-28T22:56:35.003" UserId="3116" />
  <row Id="7397" PostId="5988" Text="Hopefully someone will think of something." CreationDate="2010-11-29T00:47:01.037" UserId="3547" />
  <row Id="7398" PostId="6019" Text="I'm doing this for the LEGO Mindstorms NXT, which has a really weak processor (48Mhz), so I need as much speed as possible. I'll take the dividing approach to conserve some speed, and get it accurate enough (for &quot;non-realtime&quot; rendering). I also have a option in which you can set the value of `1.0/t` (called `resolution`), so that's for &quot;realtime&quot; (which is at best 10fps on the slow NXT). Every iteration, `t += resolution`, and a new point/line is drawn. Anyways, thanks for the idea." CreationDate="2010-11-29T00:58:20.073" UserId="3637" />
  <row Id="7399" PostId="612" Text="I think the question was more geared to the pros and cons of scripting languages, not really how to decide which one to use. Still helpful I suppose." CreationDate="2010-11-29T02:00:22.130" UserId="3547" />
  <row Id="7401" PostId="5794" Text="@BerggreenDK I agree, and hopefully Unity will be commonplace in the near future." CreationDate="2010-11-29T03:36:29.057" UserId="2819" />
  <row Id="7402" PostId="5899" Text="I think this is a reasonable question deserving of a well-meaning response.  My response is that, yes it is totally feasible.  I personally made a 2-player (no AI) version of chess as a school project in Java in a month or so, as one person.  More people would do it faster/better.  Though getting a smart AI is the difficult part really, so it kind of depends how &quot;good&quot; you need the AI to be.  Either way, it's definitely feasible to get some form of a chess game done in that time." CreationDate="2010-11-29T04:32:28.783" UserId="825" />
  <row Id="7403" PostId="5994" Text="Thanks a lot! It feels so obvious now ..." CreationDate="2010-11-29T09:01:41.267" UserId="1581" />
  <row Id="7404" PostId="5988" Text="Could you expand more about the internal structure of your TilemapContent and TilemapData classes? Source code would be useful." CreationDate="2010-11-29T09:18:42.983" UserId="2798" />
  <row Id="7405" PostId="6016" Text="We're a thrash metal band in the brutal end of the scale, so traditional lineup with drums, guitars, bass and vocals. Probably more suited for more violent games." CreationDate="2010-11-29T10:59:14.697" UserId="3642" />
  <row Id="7406" PostId="5987" Text="My only commet is that people can make or break a company. Recruit the right people - that doesn't always mean the more experienced, look for passion." CreationDate="2010-11-29T11:58:01.840" UserId="1586" />
  <row Id="7407" PostId="6029" Score="3" Text="Everything you list already exists, and is commonly used. When it's not used it's because it's too expensive, too slow, someone has a better idea, or because it doesn't fit the game (animations in many genres are not effectively decouplable from AI and game mechanics without worthless data duplication)." CreationDate="2010-11-29T12:28:05.230" UserId="744" />
  <row Id="7408" PostId="6029" Score="1" Text="My vision is that this would transform game production into a collaborative effort as well as a competitive one. Companies could earn money on game technology without producing games, even collaborating with other similar companies.&#xA;&#xA;In a way this should just be a more sophisticated alternative to common programming languages in the game industry (even though its conceptually different)." CreationDate="2010-11-29T12:34:23.980" UserId="2205" />
  <row Id="7409" PostId="6029" Score="1" Text="Your vision came to pass starting a decade ago." CreationDate="2010-11-29T12:35:34.853" UserId="744" />
  <row Id="7410" PostId="6031" Text="One difference is that the developer need not provide any graphics (or choose any at all).&#xA;&#xA;Another is that java is not a good semantic game language. But you are right, there are several similarities" CreationDate="2010-11-29T12:43:00.867" UserId="2205" />
  <row Id="7411" PostId="6029" Text="The closest thing to a semantic game language I have seen is the &quot;Quest Markup Language&quot;. " CreationDate="2010-11-29T12:46:55.637" UserId="2205" />
  <row Id="7412" PostId="6032" Text="I agree that this is a huge challenge. So far the best solution I can come up with is an editor like Scratch, which I managed to learn and create a small game with, within the hour. In general, this problem should at least be addressed within the development environments. " CreationDate="2010-11-29T13:03:08.837" UserId="2205" />
  <row Id="7414" PostId="6029" Text="I don't mean your ill-defined vision of &quot;semantic games&quot;, which seems to be either worthlessly unrealistic or just good data-driven practices, the latter of which already exists. I meant your &quot;companies [earning] money on game technology without producing games, even collaborating with other similar companies.&quot; That's the current state of things." CreationDate="2010-11-29T16:11:06.850" UserId="744" />
  <row Id="7415" PostId="6037" Text="I guess you're right about AAA games. And I imagine the games would easily feel the same. But I can imagine a few projects where this platform would be perfect :-p. Thanks for the warning though. I'm glad it's just thought play so far." CreationDate="2010-11-29T16:13:21.810" UserId="2205" />
  <row Id="7416" PostId="6036" Text="I think Torque 2d looks like it could do a lot of the same stuff, but it does not provide any framework for semantic content. It's just _code_ -&gt; _binaries_. If I had previously created an effective implementation of say a board game, I should also be able to create a framework that would let others specify similar board-games, but this time, semantically or at least without duplicating my implementation. I haven't said it's doable though, that's what I'm trying to find out." CreationDate="2010-11-29T16:25:03.623" UserId="2205" />
  <row Id="7417" PostId="6005" Text="edited tags based on this discussion in meta: http://meta.gamedev.stackexchange.com/questions/103/should-the-design-tag-encompass-architecture-and-game-design-questions" CreationDate="2010-11-29T16:30:39.147" UserId="1477" />
  <row Id="7418" PostId="6036" Text="I cannot figure out what you mean by &quot;semantically&quot; in that sentence." CreationDate="2010-11-29T16:32:18.627" UserId="744" />
  <row Id="7420" PostId="6029" Text="If you're right about these things, I guess it's worthlessly unrealistic, but I'm still happy to investigate and discuss. You're right about game technology development though, but for the framework to succeed, commercial extensions will be a requirement." CreationDate="2010-11-29T16:36:46.533" UserId="2205" />
  <row Id="7421" PostId="6041" Text="Sorry but could you please clarify what you mean running A* every move? Do you mean at every turn, or every time you move to another node? Also, this system will be used by the player and the AI, so I can't just keep moving the player's unit towards the target tile without knowing the target tile and if the user can reach it or not (because of an obstacle)" CreationDate="2010-11-29T16:37:54.847" UserId="3659" />
  <row Id="7422" PostId="6036" Text="An example would be an adventure game that is defined by rooms, characters, dialogues etc. and not by code. In such a setting it would be the clients responsibility to render the game. Maybe a low-powered hand-held would choose to display an anime-style dialogue with buttons while a desktop would render a more interactive 3d environment with talking characters and voice input (whatever the client prefer really)." CreationDate="2010-11-29T16:44:48.770" UserId="2205" />
  <row Id="7424" PostId="6036" Score="1" Text="Game rules are code. Whether that's C code or some other language is irrelevant; you can't simply plop down a set of nouns with no verbs and have a game. Almost no game engine keeps the things you have described in its core code. This is not a new idea, and we don't need to further abuse the poor word &quot;semantic&quot;." CreationDate="2010-11-29T16:50:21.263" UserId="744" />
  <row Id="7425" PostId="6032" Text="Real programmers don't want to use editors. Real programmers don't want to use arcane languages. That's the point. Even if you could magically create your system just snapping your fingers, it would not be a system many people would like to use." CreationDate="2010-11-29T16:53:06.550" UserId="2188" />
  <row Id="7426" PostId="6041" Text="Every turn.  And I'm not sure what you mean by the player's target tile, surely you get that input from the player?" CreationDate="2010-11-29T16:55:29.257" UserId="51" />
  <row Id="7427" PostId="6036" Text="I'm aware that modern engines use scripting languages. This is still something different, even though you might be right that there is nothing new about it. I apologize that I'm having trouble expressing the idea to you, but as you know; games are complex, and so are their tools (especially this one). Tetrad seemed to understand though." CreationDate="2010-11-29T17:07:57.660" UserId="2205" />
  <row Id="7428" PostId="6000" Text="+1 great reference" CreationDate="2010-11-29T17:09:22.513" UserId="1477" />
  <row Id="7429" PostId="6041" Text="No, say I was the player, and I had a range of two. I want to see which tiles I can walk to before I pick where to go and an enemy is in my range, blocking my way (therefore limiting my range). How would I determine the tiles I can walk to? &#xA;&#xA;But I think I found the answer" CreationDate="2010-11-29T17:14:30.227" UserId="3659" />
  <row Id="7430" PostId="5922" Text="Sorry, I'm still a little unclear as to what's required. If I sign up for the XNA CC, would I be able to build a prototype Xbox app which could communicate with my own server code running on XLSP?  Thanks." CreationDate="2010-11-29T17:16:07.030" />
  <row Id="7431" PostId="6032" Text="Oh I really do not intend to make any arcane languages, that is for sure. But there is a beautiful thing about this though. It would be possible to provide a traditional compiler with do-it-all flexibility (using your favorite language), even though you would be back to plain old programming/scripting then (+ portability)." CreationDate="2010-11-29T17:16:22.910" UserId="2205" />
  <row Id="7432" PostId="6036" Score="2" Text="This &quot;complex tool&quot; is the same &quot;make my game!&quot; button that everyone who has never made a game thinks is possible, this time clothed in some bizarre use of the word &quot;semantic&quot;. It's either not possible, or already exists. You can argue that the existing tools have flaws and need more features and polishing, but you can't pretend you have some new development paradigm and if we'd just listen to your crank ideas we'd be making games an order of magnitude faster/easier/better." CreationDate="2010-11-29T17:17:24.127" UserId="744" />
  <row Id="7433" PostId="6035" Text="Also, I'm a composer, so I can speak for most of us when I say there's a lot of us who are desperate to talk to people looking for game music, it shouldn't be too hard to find someone reasonably good." CreationDate="2010-11-29T17:26:49.953" UserId="3656" />
  <row Id="7434" PostId="6036" Text="Also look at Unity. Objects have components/aspects, which are described in Javascript/C#/Boo (which can be made to be generic if you're a good coder). Most indie developers will build up these &quot;semantics&quot; over time as they build games and reuse code. My XNA codebase revolves around creating &quot;entities&quot; which you can give aspects such as dynamic or static physics + collision detection, a sprite (which is an aspects that has a sub-aspect: renderer). Everything revolving this idea is just how you create the semantics. How you abstract your engine to create those semantics is where engines differ." CreationDate="2010-11-29T17:31:23.910" UserId="3656" />
  <row Id="7435" PostId="6036" Text="Huh, I asked the question, so I'm the listener here. It's not a make-my-game-button. New features and polish is not going to cut it forever, even though it has done so for a long time. I want, in a clean way, to address the huge diversity of platforms and, at the same time, the implementation efforts required. You might be right that it's impossible, but I'm still in my first discussion about it. You won't find anything new walking the same old tracks, will you? (By the way I have made games before.)" CreationDate="2010-11-29T17:43:15.057" UserId="2205" />
  <row Id="7436" PostId="6036" Text="Thanks! I will have a look at Unity the next time I get the chance." CreationDate="2010-11-29T17:44:39.173" UserId="2205" />
  <row Id="7437" PostId="6043" Text="better in what way? it seems expandable enough if you want more events just add to the sub events or main events arrays. The only improvment to make it easier to expand would be possibly reading the events and sub-events in from a file so you don't have to recompile if you change the rarity of an event." CreationDate="2010-11-29T17:57:36.247" UserId="1477" />
  <row Id="7438" PostId="5830" Score="2" Text="any specific areas/topics you are looking for? The website seemed to have pretty decent documentation/tutorials so am wondering what direction you are wanting with this." CreationDate="2010-11-29T18:08:14.343" UserId="1477" />
  <row Id="7439" PostId="6043" Text="moreso that this was my initial take on the issue, and my guess was that there is a better or more elegant way of handling the generation of random events" CreationDate="2010-11-29T18:09:12.010" UserId="1743" />
  <row Id="7440" PostId="6036" Score="1" Text="&quot;You won't find anything new walking the same old tracks, will you?&quot; - For many people here, your discussion is the same old tracks. There's no more silver bullets. Fred Brooks said it 25 years ago, none have turned up in the meantime, and it goes double for games because we have both code design and design design." CreationDate="2010-11-29T18:21:33.027" UserId="744" />
  <row Id="7441" PostId="5922" Text="No, you need to be a Real Developer, the kind that pays MS thousands of dollars. XNA is only allowed to talk (over Live) to other Xboxes." CreationDate="2010-11-29T18:24:49.227" UserId="395" />
  <row Id="7442" PostId="6047" Text="ah, a recursive solution! If you say this is more efficient, then yes I think I will implement this. However, my enemies move, even walls may disappear, so I have to account for that before adding to my list. Also, each tile might have a 'height' value which was why I thought A*, but I think that it can be factored in the distance somehow. Thanks Kylotan." CreationDate="2010-11-29T18:28:19.823" UserId="3659" />
  <row Id="7443" PostId="1997" Text="+1 I totally agree" CreationDate="2010-11-29T18:41:28.723" UserId="2188" />
  <row Id="7445" PostId="5999" Text="Can I use the Value of HSV for the same kind of effect here?" CreationDate="2010-11-29T19:38:13.570" UserId="1156" />
  <row Id="7446" PostId="5922" Text="To clarify, you need to be Real Developer to use the XLSP servers. But via XNA you can develop an Xbox game that uses Live to talk to other Xboxes." CreationDate="2010-11-29T19:40:59.823" UserId="395" />
  <row Id="7447" PostId="5922" Text="My employer is asking me to prototype an Xbox app which exchanges information with our own servers.  My understanding (from this thread) is that I would need to write XLSP code which would act as a proxy between Xboxes and our own servers.  This requires being a &quot;Real Developer&quot;?  How does this process get started?  Thanks again." CreationDate="2010-11-29T19:55:25.590" />
  <row Id="7448" PostId="5976" Text="Yes, professional game developers that want to take over the world before I do (Bungie) can spend millions on a game (Halo). All the salaries of programmers, artists, musicians, testers, etc would be huge. Imagine that the average salary is $35k/year, and there's about 30 developers (probably more, really), and they work for 2 years on a game. $35k/year x 30 x 2 years is $2.1 million... And that's only the developers. What about the advertisements, that Halo Reach thing that was going around in major cities, etc? That's another million." CreationDate="2010-11-29T20:23:12.933" UserId="3637" />
  <row Id="7450" PostId="5999" Text="No. Intuitively, value can &quot;darken&quot; but not &quot;brighten&quot;, or can only &quot;brighten&quot; halfway. To make a color brighter in HSV, you need to simultaneously raise value and reduce saturation. Look at the color cylinders on the Wikipedia page to see how the change works." CreationDate="2010-11-29T20:31:52.637" UserId="744" />
  <row Id="7451" PostId="5922" Text="I'm not really sure, the higherups negotiate those contracts. If you have a relationship with a large publisher (EA, Activision, Ubisoft, etc) that would probably be a place to start. My email is in my profile if you have more detailed questions but this is starting to stray into NDA territory." CreationDate="2010-11-29T20:50:18.890" UserId="395" />
  <row Id="7452" PostId="6054" Text="It just seemed such a huge number to be storing. As well as that, it's also going to take a long time to update them." CreationDate="2010-11-29T21:18:51.910" UserId="1156" />
  <row Id="7453" PostId="282" Text="-1, sorry. Both not on topic (SO question really), and answered about 50 gazillion times." CreationDate="2010-11-29T21:26:32.340" UserId="1156" />
  <row Id="7454" PostId="5922" Text="Understood.  Thanks." CreationDate="2010-11-29T21:33:43.640" />
  <row Id="7456" PostId="6054" Score="2" Text="It's a lot easier to just ignore a set of tiles for updates than it is to deal with some kind of disk-paging solutions. Just.. ignore them. Don't update tiles more than X distance from a known actor." CreationDate="2010-11-29T21:45:16.003" UserId="744" />
  <row Id="7457" PostId="6054" Score="2" Text="@TheCommunistDuck The only thing that matters is the total amount of memory used to store the tiles, not the number of tiles." CreationDate="2010-11-29T22:35:48.450" UserId="2612" />
  <row Id="7458" PostId="6062" Score="1" Text="this is a valid concern for some games, but I know you could do it where you lock your mouse from moving outside of the window, but if you for example alt+tab you can easily go to a different window while still showing the game in the background." CreationDate="2010-11-30T00:01:28.590" UserId="2787" />
  <row Id="7459" PostId="6057" Text="starcraft 2 is great when trying to do other things and play" CreationDate="2010-11-30T00:02:47.083" UserId="1460" />
  <row Id="7461" PostId="6054" Score="1" Text="Agreed with Kragen and Joe. Don't worry about what sounds like a lot - do the mathematics and work it out. It's unlikely to be an issue." CreationDate="2010-11-30T00:47:47.737" UserId="1101" />
  <row Id="7462" PostId="6057" Text="One of my friends has played WoW and SC2 at the same time and still beat his opponent in SC2 :)" CreationDate="2010-11-30T01:46:10.263" UserId="2787" />
  <row Id="7465" PostId="6062" Score="1" Text="Also, for some games, it's simply not appropriate. For instance: in a first person shooter where you look around using the mouse, your mouse would go off the screen and into another application before you turned around if you did not capture the mouse movements." CreationDate="2010-11-30T04:36:18.620" UserId="2077" />
  <row Id="7466" PostId="5983" Text="Round Robin was one of the ones we considered but the time constraint made it very unfavorable. Especially if you want to make the tourney accessible to all possible participants without being inconvenient." CreationDate="2010-11-30T05:50:47.390" UserId="919" />
  <row Id="7467" PostId="6070" Score="1" Text="Did someone really take the front off the word &quot;compulsion&quot; and try to spin it as a good thing? Because I don't remember hearing that term before, and Google doesn't show anything." CreationDate="2010-11-30T09:26:18.620" UserId="744" />
  <row Id="7468" PostId="6070" Text="You are right. Translation fail from Spanish. I've fixed it, thanks." CreationDate="2010-11-30T10:25:47.877" UserId="1581" />
  <row Id="7469" PostId="6065" Score="3" Text="Why is it hard to extend percentage dictionaries when adding new items? I mean if you don't need to have all percentages to make a sum of 100% (and it is a case only if you want a monster always drop single item, which is pretty strange to me), I don't see a problem." CreationDate="2010-11-30T10:48:28.333" UserId="3144" />
  <row Id="7471" PostId="6070" Text="I really don't like trying to spin &quot;compulsion&quot; as a good thing. I play games because I _want_ to. If I don't play them, I don't get fidgety, I don't start sweating, and I don't worry about my &quot;next game fix&quot;. At worst I get bored. I don't want games to _hijack_ my survival instincts, I just want to _use_ them, at best _train_ them. But at the end of the day, a game is not survival, and being driven by compulsions rather than desires is psychologically unhealthy _by definition_." CreationDate="2010-11-30T11:08:06.463" UserId="744" />
  <row Id="7472" PostId="6070" Text="I'm not saying they are good. In fact, the article I mentioned at the end specifically addresses addiction." CreationDate="2010-11-30T11:50:52.950" UserId="1581" />
  <row Id="7473" PostId="6070" Text="I'm not talking about addiction, I'm talking about compulsion. Addition is related but not the same - it's a compulsion that is bad for you. There are compulsions that are good for us, like the compulsion to eat. We are all &quot;compelled to eat&quot; and that's fine, but &quot;addicted to eating&quot; is bad. I don't think most good games work via addiction or compulsion. Fun is not a lack of anxiety, which is all satisfying compulsions gets you; Game design is not compulsion engineering." CreationDate="2010-11-30T13:50:30.237" UserId="744" />
  <row Id="7475" PostId="5913" Text="Good question, however consider changing the question in bold &quot;How would you proceed in this situation?&quot; to &quot;How would you start an indie game dev career?&quot; because as it stands the question is localised to you alone or at the very most a niche of people. +1 for the question" CreationDate="2010-11-30T14:49:00.263" UserId="2819" />
  <row Id="7476" PostId="6078" Text="The importance of portfolios drops dramatically for programmers after you already have work experience, whether inside or outside of the game industry." CreationDate="2010-11-30T15:01:03.520" UserId="744" />
  <row Id="7477" PostId="6070" Score="1" Text="&quot;Game design is not compulsion engineering.&quot;  Try telling that to Zynga.  I'm pretty sure that's specifically what they target." CreationDate="2010-11-30T15:17:46.057" UserId="51" />
  <row Id="7478" PostId="6070" Score="1" Text="Well, that's your opinion. I'm of the opinion that addiction is the bad part of compulsions, but compulsions per-se aren't good or bad. I don't actually know of any fun game that doesn't use compulsions in one way or the other." CreationDate="2010-11-30T15:24:32.323" UserId="1581" />
  <row Id="7479" PostId="6065" Score="1" Text="Say Orc =&gt; { 'dagger', 'sword' 'armor' }, and I have a new item type, say rune; I will have to update all the dictionaries associated with each monster type directly. Of course, this is nothing another layer of indirection can't solve. So the question is, how does that layer looks like?" CreationDate="2010-11-30T15:35:58.570" UserId="2132" />
  <row Id="7480" PostId="6061" Text="How do you share data shared between process bins, for example a fight between two users on different process bins. How do you ensure the order of events? So that a killed player cannot do any any attack anymore, even if the bin that kills him is slower than the bin doing the attack. Is there a risk of the dispatching overhead getting to high on the global server? The proxy model for the user connections may get into operating system limits on the network stack." CreationDate="2010-11-30T16:47:15.697" UserId="450" />
  <row Id="7484" PostId="6061" Text="This model works pretty well in information systems where most transactions are isolated. I mean they usually don't work on the same data, and in the rare cases locking or rollback is used. But in games where fights include multiple players and/or creatures, and the impact of attacks is influenced by attributes of both the attacker and the defender, this approach may be difficult." CreationDate="2010-11-30T17:14:40.067" UserId="450" />
  <row Id="7485" PostId="6061" Text="You can either go the easy way and consider multi-user interactions to be globally relevant, or you can create a simple method for process bins to be aware of each other and communicate. Each process bin should be able to handle about ten thousand users at once, so state communication between users shouldn't be too much of an issue. The region method is a bit easier, but not as balanced, and can easily be crashed if too many users enter the same region. In an MMORPG with a large user-base balancing the load evenly is very important." CreationDate="2010-11-30T17:25:50.690" UserId="3271" />
  <row Id="7486" PostId="6074" Score="1" Text="The only issue with that phrase is a lot of FPSes fit under that, and I would not count something like Call of Duty Multiplayer as for non-gamers. Other than tha, +1." CreationDate="2010-11-30T17:39:36.323" UserId="1156" />
  <row Id="7487" PostId="6052" Score="1" Text="this almost sounds like you're getting into natural language processing ;)" CreationDate="2010-11-30T17:52:00.363" UserId="1743" />
  <row Id="7488" PostId="6080" Score="3" Text="Although the answers below provide a lot of valuable insight, I just wanted to stress the importance of developing your game/engine to be highly deterministic (http://en.wikipedia.org/wiki/Deterministic_algorithm), as it is essential to achieve your goal." CreationDate="2010-11-30T17:55:53.190" UserId="2290" />
  <row Id="7489" PostId="6072" Score="2" Text="OT: this game rules, it's *very* promising, good work (ofc you have to work much more on the interface, some things aren't clear, etc.)" CreationDate="2010-11-30T19:03:09.437" UserId="2188" />
  <row Id="7490" PostId="6065" Text="I'm not sure why you think updating a dictionary is hard. In Python, extending one dictionary with new values is done with a single method, for example. Could you clarify where you think the difficulty is?" CreationDate="2010-11-30T19:29:20.630" UserId="1101" />
  <row Id="7491" PostId="6083" Text="+1 With some clever compression you can really bring the down the amount of data that you need to store (for example, don't store the state if it hasn't changed as compared to the last state you stored for the current object). I have already tried this with physics and it works really well. If you don't have physics and don't want rewinding the complete game, I would go with Joe's solution simply because it will produce the smallest possible files in which case if you want rewind as well, you can store just the last `n` seconds of the game." CreationDate="2010-11-30T20:07:14.790" UserId="2287" />
  <row Id="7492" PostId="6080" Score="2" Text="Also note that physics engines are not deterministic (Havok claims it is...) so the solution to just store the inputs and timestamps will produce different results every time if your game uses physics." CreationDate="2010-11-30T20:10:10.187" UserId="2287" />
  <row Id="7493" PostId="6065" Text="It's not the updating that is hard; it is that you have to go through all the monster records to add the new type of drop. For example, if you introduce a new type of item that is drop throughout the games, you have to introduce that item for all monsters that appear in the game." CreationDate="2010-11-30T20:10:30.250" UserId="2132" />
  <row Id="7494" PostId="6065" Text="The answer to that is the answer Richard posted.  Most monsters would reference a loot table.  Maybe what loot table they use is automatically picked based on the level of the monster.  Then that loot table can get updated to add new types of items as you see fit. " CreationDate="2010-11-30T20:40:55.093" UserId="51" />
  <row Id="7495" PostId="6080" Score="2" Text="Most physics engines are deterministic as long as you use a fixed timestep, which you should be doing anyway. I would be very surprised if Havok is not. Non-determinism is fairly hard to come by on computers..." CreationDate="2010-11-30T21:00:51.917" UserId="744" />
  <row Id="7496" PostId="6061" Text="I'd love to know &quot;a simple method&quot; for 2 process bins to be able to negotiate a system like combat. The problem isn't the low level comms but that typical gameplay algorithms get very complicated with distributed participants." CreationDate="2010-11-30T21:07:24.303" UserId="1101" />
  <row Id="7498" PostId="6061" Text="In my implementation, my global server maintains a list of all connected clients and keeps track of what process bin they are connected to. If a process bin needs to access another user it first checks it's own user list. If that fails, it checks the global list and identifies what process bin the other user is connect to. The process bins then connect directly to share user states while it does the unified processing." CreationDate="2010-11-30T21:44:58.750" UserId="3271" />
  <row Id="7499" PostId="6077" Text="Thanks. I will look into that. " CreationDate="2010-11-30T22:32:10.197" UserId="2497" />
  <row Id="7500" PostId="6028" Text="Thanks, the direct promotion route is of course always available, but can be difficult as I imagine there are a lot of developers and no easy way to find them all :)" CreationDate="2010-11-30T22:33:34.037" UserId="3642" />
  <row Id="7501" PostId="6030" Text="Thanks, I'll try to see if I can create a section for this kind of thing on our main webpage." CreationDate="2010-11-30T22:34:20.783" UserId="3642" />
  <row Id="7502" PostId="6034" Text="Thanks. I've been thinking about rock band before, just forgot about it. The iPhone game idea is a good one though. I'm a programmer myself, but day-job + music leaves little time for game development, so I guess it would be better to hire someone with experience :)" CreationDate="2010-11-30T22:36:41.803" UserId="3642" />
  <row Id="7504" PostId="5685" Text="SDL, Allegro, OpenGL, OpenAL, ClanLib (not recommended this one), Horde3D, seriously, there are countless libraries that allow you go use C++ without touching Win32 API, even better, those libraries allow easy porting later to Mac, GNU/Linux, or some other stuff." CreationDate="2010-12-01T00:38:10.493" UserId="469" />
  <row Id="7505" PostId="5694" Score="1" Text="Like I said, the law says it is illegal to do it, but offices do it anyway, and some judges enforce it anyway, this is why I said it MAY work, it is not guaranteed that it would work. Ghost Car for example is patented (by SEGA I think), as some board games, but this was not supposed to be possible." CreationDate="2010-12-01T00:40:19.023" UserId="469" />
  <row Id="7506" PostId="6083" Text="@Samaursa - If you use a standard compression libraries (e.g. gzip) then you will get the same (probably better) compression without needing to manually do things like check to see if the state has changed or not." CreationDate="2010-12-01T01:43:18.053" UserId="2612" />
  <row Id="7507" PostId="6065" Text="Yeah, I don't see the complication here. You have a structure of loot types and proportions to begin with, and you have a similar structure when you update the game. To perform the update, you add the second structure to the first. Or just replace the whole thing. If there's a different one for each monster type, do it for each monster type." CreationDate="2010-12-01T02:04:26.353" UserId="1101" />
  <row Id="7508" PostId="873" Score="1" Text="My answer too. Unity is great. Shame about the Linux support, but perhaps it might come someday. " CreationDate="2010-12-01T02:40:45.807" UserId="3115" />
  <row Id="7509" PostId="3636" Text="Yeah, Unity3D rocks. www.unity3D.com" CreationDate="2010-12-01T02:42:24.027" UserId="3115" />
  <row Id="7510" PostId="6092" Text="I was thinking of side scrolling (ala R-Type) but this would apply to vertical as well." CreationDate="2010-12-01T03:11:58.990" UserId="3680" />
  <row Id="7511" PostId="6080" Score="2" Text="@Joe It might be deterministic on the same machine, but I have found it not to be so when taking it to another machine and/or platform" CreationDate="2010-12-01T04:24:39.223" UserId="2287" />
  <row Id="7512" PostId="5685" Text="@Tetrad : I never found C++ to be cryptic !! I was talking of Visual C++. It seems you edited my post. I really meant C++ using Win32 in Visual C++ IDE" CreationDate="2010-12-01T04:33:56.237" UserId="1251" />
  <row Id="7513" PostId="6098" Score="1" Text="wow Canada has google now..." CreationDate="2010-12-01T04:35:12.400" UserId="3268" />
  <row Id="7514" PostId="5685" Score="1" Text="@Vish, apologies then, feel free to edit it to be more precise keeping in mind the comments thus far.  If you mean Win32 programming is confusing, then say that. " CreationDate="2010-12-01T06:03:48.707" UserId="51" />
  <row Id="7517" PostId="770" Text="I love points 2 and 3, Doom games totally through those out the window =D     but I like them +1" CreationDate="2010-12-01T07:12:54.627" UserId="2910" />
  <row Id="7518" PostId="6080" Score="4" Text="Deterministic means same inputs = same outputs. If you've got floats on one platforms and doubles on another (for example), or willfully disabled your IEEE floating point standard implementation, that means you're not running with the same inputs, not that it's not deterministic." CreationDate="2010-12-01T08:25:20.193" UserId="744" />
  <row Id="7519" PostId="6092" Text="Cave's port of Espgaluda 2 did this as well, and Space Invaders Infinity Gene. It works very well." CreationDate="2010-12-01T08:58:07.137" UserId="744" />
  <row Id="7520" PostId="5685" Text="@Tetrad: never mind. Actually I've started learning managed directx with c#.A friend game developer of mine cleared that doubt of &quot;will a c++ game developer have more edge over a c# game developer 5 years from now?&quot;.Well that was what was haunting me. " CreationDate="2010-12-01T09:33:19.453" UserId="1251" />
  <row Id="7521" PostId="5036" Text="Oh... Right. I thought that the guy wanted a generic answer, since he didn't ask how to make one, but how do they work in general. Anyway I'm not an expert as I said: I was just giving some info about the solutions I know about exploring large spaces in a general IA application. Thanks for your comment." CreationDate="2010-12-01T10:59:57.740" UserId="2930" />
  <row Id="7522" PostId="5987" Text="Your right Konrad. :)" CreationDate="2010-12-01T11:15:18.440" UserId="3623" />
  <row Id="7523" PostId="6083" Score="2" Text="@Kragen: Not really true. Standard compression libraries are certainly good but often won't be able to take advantage of domain-specific knowledge. If you can help them out a little bit, by putting similar data adjacent and stripping out stuff that really didn't change, you can crunch things down substantially." CreationDate="2010-12-01T11:22:17.427" UserId="323" />
  <row Id="7524" PostId="1899" Text="what do you mean by binary support ? " CreationDate="2010-12-01T14:00:11.407" UserId="3689" />
  <row Id="7525" PostId="117" Score="2" Text="+1 for the good link (well, linking Shamus Young is pretty much guaranteed to be a good link)" CreationDate="2010-12-01T14:15:39.637" UserId="2188" />
  <row Id="7526" PostId="90" Score="5" Text="Why the upvotes? I mean, that's pretty a horrible questions (which incidentally generated some very good answers, but that's beside the point)" CreationDate="2010-12-01T14:17:20.790" UserId="2188" />
  <row Id="7527" PostId="6109" Score="1" Text="Multiplying the vector by the matrix should give you the vectors orientation in world space" CreationDate="2010-12-01T14:38:35.290" UserId="1386" />
  <row Id="7529" PostId="6102" Text="I'm pretty sure Shiva is more along the lines of something like Unity, and only uses Lua for scripting, not a stand-alone." CreationDate="2010-12-01T15:47:02.327" UserId="1156" />
  <row Id="7530" PostId="6097" Score="1" Text="If you're new, do you really want to be spending thousands on modelling tools? Would something like Blender be an option as well here, or are we talking professional/money no object?" CreationDate="2010-12-01T15:51:17.270" UserId="1156" />
  <row Id="7531" PostId="6107" Text="I really do not see why this is a CW question." CreationDate="2010-12-01T15:56:45.750" UserId="1156" />
  <row Id="7532" PostId="816" Score="2" Text="Jump puzzles are fine. Requiring the jumps to be pixel-perfect is the problem." CreationDate="2010-12-01T16:02:26.780" UserId="2188" />
  <row Id="7534" PostId="6097" Text="Right now it is just a hobby but I do work at a place where I could probably get whatever software I want. This question is phrased in this way because the only experience I have had in the past has been in Maya and 3D max. Maybe I should change the question to just 'what is the best 3D model software for someone new to game development?'" CreationDate="2010-12-01T16:15:05.267" UserId="3268" />
  <row Id="7535" PostId="6109" Text="When I did what CiscolPPhone suggested, it was the opposite transform.  So, I took the inverse of the matrix and that worked.  I'm not sure why though." CreationDate="2010-12-01T16:16:50.183" UserId="1463" />
  <row Id="7536" PostId="6109" Text="@CiscoIPPhone, any reason that your comment wasn't an answer?  That way zooropa here could mark it as accepted." CreationDate="2010-12-01T16:19:19.447" UserId="51" />
  <row Id="7537" PostId="6112" Text="+1 because it looks like a high S:N ratio, but it looks like the standard &quot;I'm an artist, I need a programmer&quot; / &quot;I'm a programmer, I need an artist&quot; requests." CreationDate="2010-12-01T16:19:45.330" UserId="744" />
  <row Id="7538" PostId="6107" Score="1" Text="I converted it because it's basically asking for a list of software packages." CreationDate="2010-12-01T16:20:10.897" UserId="51" />
  <row Id="7539" PostId="6109" Text="I'll add it as a answer." CreationDate="2010-12-01T17:07:43.643" UserId="1386" />
  <row Id="7540" PostId="6113" Text="This feels like &quot;exploration is great, as long as you don't actually make me explore.&quot;" CreationDate="2010-12-01T17:15:25.823" UserId="744" />
  <row Id="7541" PostId="5016" Text="The reason I'm using the cube map is because it's much easier to do level-of-detail rendering with six quadtrees subsequently mapped to a sphere than it is to do LOD calculations on the sphere's surface itself." CreationDate="2010-12-01T18:23:25.127" UserId="1872" />
  <row Id="7542" PostId="5016" Text="Also, the part in your answer where you say &quot;just orient them consistently&quot; might be the crux of the problem.  I don't know how to orient my uv coordinates consistently on the six cube faces without resorting to something like [if cubeFace == top, then u = x and v = z...] etc, which leads to the branching I'm talking about.  but all-in-all I'm still not able to visualize the overall process.  Sorry for being so dense." CreationDate="2010-12-01T18:25:50.510" UserId="1872" />
  <row Id="7543" PostId="3999" Text="Also, if I understand you correctly, it seems I need to &quot;bake in&quot; the curvature of the sphere into the normal map itself so the lighting is correct.  Again, I apologize for being so dense, but some sort of diagram and/or pseudocode might help.  " CreationDate="2010-12-01T18:29:02.723" UserId="1872" />
  <row Id="7544" PostId="6122" Text="On the other hand, Mario does have momentum, acceleration, a variable size, and directional collision, all of which you get &quot;for free&quot; with a physics engine, and are not just simple bounding overlap checks." CreationDate="2010-12-01T19:06:49.770" UserId="744" />
  <row Id="7545" PostId="6122" Text="I agree - I think most of the time a physics engine will give you a lot of things that would be a bit of a waste of time to implement yourself." CreationDate="2010-12-01T19:13:19.707" UserId="2100" />
  <row Id="7546" PostId="6122" Score="1" Text="True it's always better not to invent the wheel, I just find that if I want just a wheel, I am not going to take a blueprint for a car.  On top of that, you will know more about your game as a whole, and easier to alter/change the physics. " CreationDate="2010-12-01T19:34:25.780" UserId="2301" />
  <row Id="7547" PostId="6123" Score="1" Text="though, one could say that figuring out how to implement and use Box2D would take longer then to create simple physics. (though I guess this depends on the extent of the use of physics)" CreationDate="2010-12-01T19:37:52.690" UserId="2301" />
  <row Id="7548" PostId="6125" Score="1" Text="That kind of physics is gross. If you are going to fake it, might as well make it look nice. friction = .9 or some number below 1. speedX *= friction; speedY *= friction; " CreationDate="2010-12-01T19:58:50.470" UserId="962" />
  <row Id="7549" PostId="6126" Score="3" Text="-1 . Making a list of items inside of an already developed game is not Game Development." CreationDate="2010-12-01T20:05:43.523" UserId="962" />
  <row Id="7550" PostId="6122" Score="1" Text="That's a really horrible analogy. This is more like, you want a wheel and axles and maybe a steering column and motor but perhaps not the dashboard or power windows." CreationDate="2010-12-01T20:17:02.040" UserId="744" />
  <row Id="7551" PostId="6127" Text="This is all it really comes down to. If it makes your life easier and doesn't block you from the platforms you want, it's a win, even if you don't use parts of it." CreationDate="2010-12-01T20:17:46.720" UserId="744" />
  <row Id="7552" PostId="6123" Score="1" Text="@Spooks: I can't imagine anything &quot;easier&quot; than Box2D that is still useful." CreationDate="2010-12-01T20:18:18.420" UserId="744" />
  <row Id="7553" PostId="6125" Score="2" Text="Of course, by the end of the project it turns into &quot;if (pressing movement key and not moving and on ice and not underwater and you have this special powerup and you're not riding in a boot and ...)&quot;." CreationDate="2010-12-01T20:20:07.170" UserId="744" />
  <row Id="7554" PostId="6125" Text="@AttackingHobo: The point of the post isn't about making a nice sliding algorithm.. It is to illustrate the difference between a simulation and a model." CreationDate="2010-12-01T20:23:08.753" UserId="2992" />
  <row Id="7555" PostId="6122" Score="1" Text="who wouldn't want power windows?" CreationDate="2010-12-01T20:24:33.183" UserId="2301" />
  <row Id="7556" PostId="6125" Text="@Joe: Those are just modifications to your friction variable.. perhaps you and @AttackingHobo should chat :P&#xA;With a physics engine you have to define properties for every object in the game. My point is that plugging in a physics engine for simple games shouldn't be automatic. Its situational." CreationDate="2010-12-01T20:27:41.450" UserId="2992" />
  <row Id="7557" PostId="6126" Score="3" Text="This is pretty borderline.  It's a question that would involve the modding/extension/whatever SDK that Blizzard provides (and we do allow mod/map making questions), but yet still feels like it should be on gaming." CreationDate="2010-12-01T20:28:40.200" UserId="51" />
  <row Id="7558" PostId="6125" Score="1" Text="@aaronfarr: There is no difference between a simulation and a model; for these purposes they are synonyms. All you've shown is that an isolated part of a toy model/simulation is less code than the entirety of Box2D." CreationDate="2010-12-01T20:28:49.437" UserId="744" />
  <row Id="7559" PostId="6126" Score="1" Text="I disagree that this is borderline; it's pretty blatantly software development concerning a game. &quot;Related&quot; reminds me of the question about building Alien Swarm, which is much less _development_ than this." CreationDate="2010-12-01T20:33:08.463" UserId="744" />
  <row Id="7560" PostId="6125" Text="@Joe: You are missing the point. We are talking about when to use &quot;real&quot; physics versus imitating it with an algorithm. Depending on the situation it is sometimes easier to imitate, particularly with older/simple games." CreationDate="2010-12-01T20:56:23.837" UserId="2992" />
  <row Id="7561" PostId="6126" Score="1" Text="@Joe Wreschnig If anything it could go on http://stackoverflow.com/ instead of here. It is not Game Development; in no way are they developing a game." CreationDate="2010-12-01T21:27:22.423" UserId="962" />
  <row Id="7562" PostId="6126" Text="I guess it is somewhat borderline. Since it might involve programming lua, I wasn't thinking it fit on gaming.se, but granted just because it's programming doesn't necessarily make it *game* programming. :) If the moderators want, I'll move it (of course, if gaming.se tells me it doesn't belong *there*, I'm not sure where to next...)" CreationDate="2010-12-01T21:28:29.220" UserId="165" />
  <row Id="7563" PostId="6083" Score="1" Text="@ZorbaTHut In theory yes, but in practice is it really worth the effort?" CreationDate="2010-12-01T22:28:13.763" UserId="2612" />
  <row Id="7564" PostId="6123" Text="I am in full agreement with Joe here; there's just no simple replacement for the usefulness that comes along with using Box2D. I can't imagine coding up something that will fulfill one's needs faster than learning how to create some fixtures and defining gravity with Box2D." CreationDate="2010-12-01T22:43:13.740" UserId="2100" />
  <row Id="7565" PostId="6125" Text="There is no magic dust that makes Box2D &quot;real physics&quot; and yours &quot;fake physics&quot;. The term is meaningless. What matters is that Box2D uses a simple, clean interface. As soon as you try to flesh your &quot;simple&quot; example out into something usable, you will get something far inferior to Box2D." CreationDate="2010-12-01T22:47:34.443" UserId="744" />
  <row Id="7566" PostId="6129" Score="6" Text="-1 Too broad of a question." CreationDate="2010-12-01T23:01:58.487" UserId="962" />
  <row Id="7567" PostId="6126" Text="@Cyclops, StackOverflow?" CreationDate="2010-12-01T23:02:51.437" UserId="962" />
  <row Id="7568" PostId="1106" Text="There's nothing wrong with starting with an MMORPG, if you aren't totally unrealistic about it. Obviously 3D is totally out of the question, and any quest system would be greatly simplified." CreationDate="2010-12-01T23:13:28.243" UserId="3271" />
  <row Id="7569" PostId="6120" Score="1" Text="Do what feels right. Do you think your game needs a physics engine? Do you think Mario would benefit from Box2D? The newest Mario certainly has a nice feel to it with nice physics, but it doesn't feel anything like anything I've seen built in Box2D. " CreationDate="2010-12-01T23:14:16.470" UserId="982" />
  <row Id="7570" PostId="789" Score="1" Text="Totally agree on the second part. First impressions are key, so your first game has to be good, or no one will take you seriously again." CreationDate="2010-12-01T23:15:15.183" UserId="3271" />
  <row Id="7571" PostId="6130" Score="2" Text="I think this question hinges heavily on how much the &quot;sake of learning Bullet&quot; is important to *you*." CreationDate="2010-12-01T23:19:13.467" UserId="51" />
  <row Id="7572" PostId="6130" Text="The generalized version of the question is: should I use a 3D physics engine for a 2D game for educational value and potential future usefulness? As stated, I am planning on utilizing a 3D physics engine in future projects." CreationDate="2010-12-01T23:21:01.193" UserId="2100" />
  <row Id="7573" PostId="6133" Text="Nice way to show the viewport/camera concept, will use it in future explanations =D" CreationDate="2010-12-02T00:25:16.840" UserId="666" />
  <row Id="7574" PostId="1106" Score="2" Text="I think there's one fundamental flaw in your argument. &quot;Massively&quot; multiplayer..." CreationDate="2010-12-02T01:05:55.277" UserId="627" />
  <row Id="7575" PostId="6126" Text="@AttackingHobo, yeah, your previous comment showed up the instant I posted mine. :)" CreationDate="2010-12-02T01:52:13.903" UserId="165" />
  <row Id="7576" PostId="6133" Score="1" Text="Nice explanation... It means they are fixing the size of view and they use translations to show scrolling." CreationDate="2010-12-02T05:58:57.640" UserId="1560" />
  <row Id="7577" PostId="6108" Text="Even i thought that they are using OpengGL translation..." CreationDate="2010-12-02T06:00:49.370" UserId="1560" />
  <row Id="7579" PostId="6108" Text="It's just a matter of making it so you don't do a hard clamp when you get to the edges of the world.  If you can move the camera around you can figure out how to mimic the bounce." CreationDate="2010-12-02T06:09:35.690" UserId="51" />
  <row Id="7580" PostId="6052" Text="Just the best example I could think of off the top of my head where a flat table of weighted options wouldn't suffice." CreationDate="2010-12-02T06:53:31.373" UserId="2653" />
  <row Id="7581" PostId="210" Text="Good post, however with regard to your statement about &quot;allocating heap objects up front&quot; I recommend reading [The Truth About Value Types](http://blogs.msdn.com/b/ericlippert/archive/2010/09/30/the-truth-about-value-types.aspx)" CreationDate="2010-12-02T08:46:39.027" UserId="2612" />
  <row Id="7582" PostId="6129" Score="2" Text="+1 As I've personally read an entire feature in Game Developer magazine answering this particular question, I think it's a reasonable question to ask." CreationDate="2010-12-02T09:32:20.430" UserId="825" />
  <row Id="7583" PostId="6120" Text="+1 Jeff, short but good answer" CreationDate="2010-12-02T10:15:53.550" UserId="1251" />
  <row Id="7584" PostId="6113" Text="@Joe: of course not! Read again. Or not, for all I care." CreationDate="2010-12-02T10:22:49.860" UserId="2188" />
  <row Id="7585" PostId="6129" Score="3" Text="-1 and vote to close as dup because even if it's not too general, we already have plenty of questions about specific types of middleware (3D, audio, AI, physics) that serve this purpose much better." CreationDate="2010-12-02T10:43:01.237" UserId="744" />
  <row Id="7586" PostId="6129" Text="possible duplicate of [Available AI middleware](http://gamedev.stackexchange.com/questions/2140/available-ai-middleware)" CreationDate="2010-12-02T10:43:58.117" UserId="744" />
  <row Id="7587" PostId="6134" Text="I wish I could double upvote for &quot;If your design is coupled, then having a few coupled classes here and there isn't going to hurt too much&quot;, it's a pretty fundamental OO principle and one that everyone seems to ignore in the race for false abstractions." CreationDate="2010-12-02T10:49:09.087" UserId="744" />
  <row Id="7589" PostId="6120" Text="@Jeff: That depends on if the question &quot;When should I use Box2D?&quot; or &quot;When should I use a physics engine?&quot;. The new Mario certainly contains a physics engine." CreationDate="2010-12-02T10:53:33.960" UserId="744" />
  <row Id="7590" PostId="6128" Text="The models, animations, sound effects and other presentation information is downloaded as part of the client, but actually the item information that comes up in the tooltips (which is I assume what the questioner wants to build a website) isn't." CreationDate="2010-12-02T12:48:21.223" UserId="93" />
  <row Id="7591" PostId="6141" Text="Please elaborate.  Did I give you enough info to do so?" CreationDate="2010-12-02T14:54:56.410" UserId="1463" />
  <row Id="7592" PostId="6132" Score="1" Text="i don't think that Adding a new class is actually a disadvantage(in many cases)" CreationDate="2010-12-02T15:14:13.467" UserId="2301" />
  <row Id="7593" PostId="6136" Text="basically have the main program call the update method from each class with the UIpdateable interface?  " CreationDate="2010-12-02T15:17:24.807" UserId="2301" />
  <row Id="7594" PostId="6145" Score="5" Text="I get the feeling a lot of the old NES games were written in machine-specific assembly." CreationDate="2010-12-02T15:40:32.423" UserId="2547" />
  <row Id="7596" PostId="6083" Score="2" Text="Whether it's worth the effort depends entirely on how much data you have. If you've got an RTS with hundreds or thousands of units, it probably matters. If you need to store the replays in memory like Braid, it probably matters." CreationDate="2010-12-02T16:28:56.033" UserId="744" />
  <row Id="7597" PostId="5402" Text="I've changed the title of this question- it's not really about MMOs, except that MMOs are the most frequently changing games." CreationDate="2010-12-02T16:31:24.300" UserId="744" />
  <row Id="7598" PostId="6145" Score="2" Text="possible duplicate of [How were 8-bit and 16-bit games developed?](http://gamedev.stackexchange.com/questions/443/how-were-8-bit-and-16-bit-games-developed)" CreationDate="2010-12-02T16:34:20.397" UserId="744" />
  <row Id="7599" PostId="6112" Text="It's kinda ironic &quot;indiependant&quot; but paid. Most of the Indie Dev Teams I know were founded on non-paid base, but anyways... :)" CreationDate="2010-12-02T16:44:37.667" UserId="2063" />
  <row Id="7600" PostId="5772" Text="Because for games when you want the highest performance possible, calling a method instead of using a static var is too costly." CreationDate="2010-12-02T16:46:03.343" UserId="962" />
  <row Id="7602" PostId="6130" Text="It isn't that much of a jump from engine X to engine Y, just how things are done are slightly different." CreationDate="2010-12-02T16:54:39.737" UserId="1156" />
  <row Id="7603" PostId="1100" Score="1" Text="Every indie developer is indie because they haven't been able to step up to be a full fledged (not literally) developer. It's not because they want to stay indie." CreationDate="2010-12-02T16:55:56.240" UserId="1156" />
  <row Id="7605" PostId="6147" Text="That's how I've seen this done in practice, store the version number with the game log. Then of course you also have to keep previous software versions around to replay previous logs, e.g. in a source code repository, but you should probably be doing that anyway." CreationDate="2010-12-02T17:18:24.390" UserId="458" />
  <row Id="7606" PostId="5772" Text="@AttackingHobo: True, but nowhere in the question did he mentioned performance, so I opted for an easy, maintainable solution." CreationDate="2010-12-02T17:58:15.360" UserId="3446" />
  <row Id="7607" PostId="5418" Score="2" Text="Using more generic packet types would help you a lot here. You shouldn't need to add new messages for every new feature you implement." CreationDate="2010-12-02T18:11:21.277" UserId="1101" />
  <row Id="7608" PostId="1120" Text="I once used MS Paint as a level building tool, after writing the code necessary for conversion from bitmap to level it was extremely easy to make new levels (And as a result I made quite a bunch). It won't work for all games, but I'd definitely recommend this shortcut where applicable." CreationDate="2010-12-02T18:20:35.407" UserId="3505" />
  <row Id="7609" PostId="5418" Text="To go along with Kylotan's point - there should be only a few kinds of &quot;execute this command&quot; packets (and some other kinds of packets like handshake, state update, ping), but many commands. Just don't ever incompatibly change the behavior of a command (after the first &quot;stable&quot; release)." CreationDate="2010-12-02T18:24:52.597" UserId="744" />
  <row Id="7610" PostId="6148" Score="3" Text="Wow, perfect answer! Kudos" CreationDate="2010-12-02T19:00:56.633" UserId="666" />
  <row Id="7611" PostId="6125" Text="Magic dust? Modeling physics requires the use of physics formulas. That is the difference, not hard to understand..&#xA;You can get the same effect without an engine... and it is sometimes more efficient if you don't.. The majority of simple games don't use physics engines. Ever play Donkey Kong? It is easier to simulate falling/rolling barrels in a few lines of code than it is to deploy a physics engine." CreationDate="2010-12-02T19:04:11.267" UserId="2992" />
  <row Id="7612" PostId="6145" Score="6" Text="Not a duplicate, as this one asks for specific code samples from a specific game." CreationDate="2010-12-02T20:00:46.960" UserId="962" />
  <row Id="7613" PostId="5772" Text="A CONSTANT value for a multiplier would work as well, and for the same effort yield faster code while even being easier to maintain." CreationDate="2010-12-02T20:03:05.117" UserId="962" />
  <row Id="7614" PostId="90" Score="1" Text="@Lo'oris: By definition I'd say a question that gets &quot;great&quot; answers must have some value as a question." CreationDate="2010-12-02T20:15:59.303" UserId="569" />
  <row Id="7615" PostId="6136" Text="Yes, that's exactly right." CreationDate="2010-12-02T20:55:23.433" UserId="160" />
  <row Id="7617" PostId="1612" Text="My non-gaming company won't hire you without a BS in Computer Science." CreationDate="2010-12-02T20:58:10.270" UserId="3724" />
  <row Id="7618" PostId="6065" Score="1" Text="Extrakun, if you take a look at my answer below, there's an answer to your &quot;another layer of indirection&quot; question. Instead of treating drops as a flat table, you can build them out of nested expressions. If you allow named macros (i.e. functions), you can reuse chunks of a drop table across different entities." CreationDate="2010-12-02T20:58:57.610" UserId="160" />
  <row Id="7619" PostId="6145" Score="2" Text="I don't see the value in having many &quot;What language was X written in?&quot; questions, no matter how notable X is, unless it was notable because of the development platform. Also, it's asking for specific code samples of a game still under copyright (and still being sold) with no intentional source availability." CreationDate="2010-12-02T22:11:05.837" UserId="744" />
  <row Id="7620" PostId="6098" Score="1" Text="@Kenneth J- Sherlock, you have solved another mystery." CreationDate="2010-12-03T00:28:38.953" UserId="2946" />
  <row Id="7621" PostId="6156" Text="also - if anybody can think of more appropriate tags, please do apply them." CreationDate="2010-12-03T02:06:28.303" UserId="3705" />
  <row Id="7622" PostId="5772" Text="@AttackingHobo: Fair point, that should do as well." CreationDate="2010-12-03T02:36:32.463" UserId="3446" />
  <row Id="7623" PostId="6120" Text="@Joe Wreschnig: Yeah, but is there ever a case a physics engine isn't used? Only time I can think of would be a text adventure, or point and click. I guess it depends on how general you want to make your definition of physics engine" CreationDate="2010-12-03T03:58:28.420" UserId="982" />
  <row Id="7624" PostId="6157" Text="+1 because you made me nostalgic :) But I don't know cocos2d so I won't be able to help you , sorry :(" CreationDate="2010-12-03T04:40:43.167" UserId="1251" />
  <row Id="7626" PostId="6114" Text="does red5 can do what smartfox can do?" CreationDate="2010-12-03T05:26:57.607" UserId="3689" />
  <row Id="7627" PostId="6157" Text="hmmm... let me see.. I'll try to explain" CreationDate="2010-12-03T05:47:41.653" UserId="1251" />
  <row Id="7628" PostId="5771" Text="In my experience the best thing to do is isolate the conversions to as few places in your code as possible, and learn and stick to the range of values that you find Box2D works best with. Or, of course, utilize a different physics engine." CreationDate="2010-12-03T06:06:09.700" UserId="2100" />
  <row Id="7629" PostId="6145" Score="1" Text="@joe wreschnig: as far as i know one has every right to disassemble a bought game. Just as having the right to break your ferrari down to every last bolt. I think this whole process of figuring the code out might be very educational." CreationDate="2010-12-03T06:40:57.920" UserId="1697" />
  <row Id="7630" PostId="6072" Text="It is indeed pretty sweet. Recommendation though: map level switch to something other than space. Kind of annoying having my browser window scroll each time." CreationDate="2010-12-03T06:44:19.773" UserId="3656" />
  <row Id="7631" PostId="6155" Score="1" Text="His other book, Chris Crawford on Game Design is equally awesome. http://www.amazon.com/Chris-Crawford-Game-Design/dp/0131460994" CreationDate="2010-12-03T06:45:58.240" UserId="3656" />
  <row Id="7632" PostId="1592" Score="2" Text="Seriously dude? Python 3 is great. I don't know what you're smoking, but it's giving you brain cancer." CreationDate="2010-12-03T07:01:28.877" UserId="3656" />
  <row Id="7633" PostId="6158" Score="2" Text="&quot;MMO&quot; is often read as &quot;something like World of Warcraft&quot;. http://gamedev.stackexchange.com/questions/90/why-is-so-hard-to-develop-a-mmo/239#239" CreationDate="2010-12-03T07:40:23.677" UserId="450" />
  <row Id="7634" PostId="6159" Text="yes , normal snake game is easy like that. Doodle Grub can move 360 deg . not like old snake game. old snake game is non-stop moving but Doodle Grub is not non-stop moving. when I stop head, all the segment are the same with head. When I moving, it's working fine like your logic." CreationDate="2010-12-03T07:44:08.653" UserId="2524" />
  <row Id="7635" PostId="6158" Score="1" Text="You could read it that way, but when you work in the industry that often seems very short-sighted ;-)" CreationDate="2010-12-03T08:05:21.827" UserId="395" />
  <row Id="7636" PostId="6145" Score="3" Text="@Toad: Yes, but you generally don't have the right to post it online, or to download a copy (even if you own the game yourself), or to make derivative works based off your own reading of the code." CreationDate="2010-12-03T09:51:28.297" UserId="744" />
  <row Id="7637" PostId="6158" Text="@coderanger, http://xkcd.com/484/" CreationDate="2010-12-03T10:41:04.903" UserId="450" />
  <row Id="7638" PostId="6072" Text="also don't use arrow keys for steering.. i'm currently in safe mode and on a small screen it keeps scrolling all over the place... fyi :p" CreationDate="2010-12-03T11:49:42.370" UserId="3597" />
  <row Id="7639" PostId="6065" Score="1" Text="You've just stumbled upon the 'catch' of game development. Sure, you can make a game in two days, but then comes the five years of adding content. And adding content is grinding. GRINDING." CreationDate="2010-12-03T12:07:02.790" UserId="3597" />
  <row Id="7640" PostId="6156" Score="4" Text="-1 because the question is simply too vague. With no genre or platform or type of MMO preferred, as coderanger said, team sizes range from literally the largest in the industry to the smallest in the industry. &quot;What team size is usual for a game like X?&quot; is a more useful question (although still not very interesting IMO)." CreationDate="2010-12-03T12:39:38.263" UserId="744" />
  <row Id="7641" PostId="919" Score="1" Text="Fallout 3 is a great example of scary silence." CreationDate="2010-12-03T12:43:03.477" UserId="3597" />
  <row Id="7642" PostId="6094" Text="too many rewards will weaken them though.." CreationDate="2010-12-03T12:50:12.363" UserId="3597" />
  <row Id="7643" PostId="6159" Score="1" Text="@saturngod: that is because you don't stop the snake array elements value swapping when the game gets over.So in the n+1th frame of the game loop 0,1,2 th body part come in the same position and in the n+2th frame: 0,1,2,3 come in the same position" CreationDate="2010-12-03T13:04:33.837" UserId="1251" />
  <row Id="7644" PostId="6166" Score="1" Text="i think that's what he was sick of doing..." CreationDate="2010-12-03T13:10:35.917" UserId="3597" />
  <row Id="7645" PostId="6145" Score="1" Text="@Toad: disassemble it as you wish, but this doesn't mean you have the *original* code, only a disassembled version of the compiled code." CreationDate="2010-12-03T13:46:26.740" UserId="2188" />
  <row Id="7646" PostId="6161" Score="5" Text="+1 gameplay &gt; everything else" CreationDate="2010-12-03T13:48:00.860" UserId="2188" />
  <row Id="7647" PostId="6166" Text="@eBusiness: I want to demonstrate terrain and underground modeling capabilities on a commercial gaming platform. Developing a custom game is beyond the scope of my expertise and task. I want to find an existing (and hopefully popular) gaming platform. Your approach is basically what we are doing with ASE: the terrain is broken into tiles and each tile is represented as a 3D model. Do you have examples of other commercial games where this approach would be feasible? I want to automate the process as much as possible, so formats that require little or no manual manipulation are preferable." CreationDate="2010-12-03T14:47:06.243" UserId="2870" />
  <row Id="7648" PostId="6163" Score="1" Text="http://gamedev.stackexchange.com/questions/5/what-are-the-best-iphone-game-development-resources" CreationDate="2010-12-03T14:52:00.660" UserId="51" />
  <row Id="7650" PostId="6156" Score="1" Text="-1 from me for the same reason. If edited to have a smaller scope, I'd remove my vote." CreationDate="2010-12-03T15:44:30.410" UserId="1101" />
  <row Id="7651" PostId="6145" Text="@lo'oris: In this case, probably it was created in assembly anyway. So the dissasembled code and the original macro assembler should not be that off." CreationDate="2010-12-03T15:50:29.617" UserId="1697" />
  <row Id="7652" PostId="6132" Text="I agree, that there are plenty of cases where it is the right choice, but I generally try to avoid adding extra code." CreationDate="2010-12-03T15:51:27.697" UserId="1198" />
  <row Id="7653" PostId="6160" Score="1" Text="you haven't played Minecraft?!? it sucks some serious hours of my life" CreationDate="2010-12-03T16:36:25.140" UserId="2301" />
  <row Id="7655" PostId="6158" Text="I definitely mean all sorts of MMO - from MUDs to WOW." CreationDate="2010-12-03T16:42:38.057" UserId="3705" />
  <row Id="7656" PostId="6167" Text="Ah yes, I haven't seen that question.  Thanks." CreationDate="2010-12-03T16:43:51.487" UserId="3705" />
  <row Id="7658" PostId="6156" Text="There are good reasons that people don't like these kinds of questions, and getting belligerent towards your readers isn't going to help matters.  Like other answers have said, when people say &quot;MMO&quot; there is usually the undertone of &quot;MMORPG&quot;, which implies huge worlds with tons of monsters in 3D and so forth.  There's also a lot of existing literature out there on software estimation, and how it's an often misunderstood hard problem." CreationDate="2010-12-03T16:59:38.690" UserId="51" />
  <row Id="7659" PostId="6156" Text="I mean, sure, if you just define MMO as being able to play a game on a dedicated server with more than X number of concurrent users, then yes a single person can accomplish that given enough time.  But some of the other ancillary goals of MMOs can require a lot of time.  How are you going to make enough content to keep people coming back for more for a long period of time?  Who is your audience and what are they trying to get out of your game?  Those kinds of questions." CreationDate="2010-12-03T17:01:01.590" UserId="51" />
  <row Id="7660" PostId="6156" Text="Tetrad.  I appreciate your frustration.  But I'm a little concerned about the fact that people seem to be more interested in bashing this question than answering it.  If an answer does not leap to mind, do not answer the question.  Let it sink to the bottom." CreationDate="2010-12-03T17:11:45.213" UserId="3705" />
  <row Id="7661" PostId="6162" Text="Hey nice.  +1 when I'm able." CreationDate="2010-12-03T17:13:12.887" UserId="3705" />
  <row Id="7662" PostId="6160" Score="1" Text="I did not know about Stendhal.  Thanks much." CreationDate="2010-12-03T17:14:40.403" UserId="3705" />
  <row Id="7663" PostId="90" Text="@Dave: I disagree. If you do something &quot;evil&quot; that for some odd twists of fate produces something &quot;good&quot;, you still are evil and meant to do evil. Of course here we are not talking about good vs. evil, but the point is the same: a bad question is a bad question, even if for whatever reason generated good answers." CreationDate="2010-12-03T17:18:30.993" UserId="2188" />
  <row Id="7665" PostId="6170" Text="Wow, beautiful.  I applaud you, Eskil Steenberg.  Thanks Ari for pointing me to this." CreationDate="2010-12-03T17:29:13.927" UserId="3705" />
  <row Id="7666" PostId="6167" Text="And just to put that in perspective, Tale has been &gt;=beta for 10 years now. I can't actually think of another large-scale MMO that has been going that long." CreationDate="2010-12-03T17:54:55.640" UserId="395" />
  <row Id="7667" PostId="6167" Text="UO's still around, going over 13 years now." CreationDate="2010-12-03T18:16:48.407" UserId="744" />
  <row Id="7668" PostId="6072" Text="I think it is possible to capture keys so the browser windows doesn't act on them." CreationDate="2010-12-03T18:17:19.967" UserId="962" />
  <row Id="7669" PostId="6156" Text="@Aliud, @Tetrad isn't &quot;bashing&quot; the question - as a Moderator, he's responsible for trying to maintain the site's value as a *game-development resource* - which includes winnowing out questions that are (perceived as) poorly-worded, duplicate, subjective, etc. Heck, he's even criticized one of *my* questions (okay, it was a legitimate criticism :) . Nor do I think anyone else is - we're still trying to figure out what the site is all about, and what belongs or doesn't." CreationDate="2010-12-03T18:19:25.003" UserId="165" />
  <row Id="7670" PostId="6156" Text="I think that knowing examples of games developed by small groups that support hundreds to thousands of players is a valid game development question.  And I think that the examples themselves are valuable references for any developer working in a small team." CreationDate="2010-12-03T18:26:39.643" UserId="3705" />
  <row Id="7671" PostId="6126" Text="Okay, I don't feel so bad about posting a borderline question, seeing as [this question](http://gamedev.stackexchange.com/questions/6145/what-programming-language-was-super-mario-bros-written-in) got **14 votes**. (Not that I felt especially bad in the first place, but what little there was, is gone. :)" CreationDate="2010-12-03T18:34:07.523" UserId="165" />
  <row Id="7672" PostId="6167" Score="1" Text="UO is still in business? Wow... And the OP mentioned in a comment that he meant all kinds of games, from &quot;MUDs to Warcraft&quot; - I wouldn't be surprised if there are some MUDs out there that have *also* run for decades..." CreationDate="2010-12-03T18:39:28.457" UserId="165" />
  <row Id="7673" PostId="6072" Text="Thanks! A,W,D and return work as well now. Send tweet to momentumracer or email petteri@momentumracer.com for further comments or ideas so this wont become a chat board :-). " CreationDate="2010-12-03T18:47:11.143" UserId="1868" />
  <row Id="7675" PostId="6156" Text="@Aliud, most people bumping are just answering the question.  Voting and comments don't bump.  That being said, I can see a bit better where you're coming from.  Some people are a little put off by the seemingly endless newbie questions asking how to make an MMO when the person isn't anywhere close to where they should be skill or experience wise.  Also the &quot;surprising&quot; bit can be conceived as a lack of understanding of the concepts of scope and timing and how much work actually goes into a project. So you can understand where some of the negativity is coming from." CreationDate="2010-12-03T19:00:08.010" UserId="51" />
  <row Id="7676" PostId="6156" Score="4" Text="My suggestion is to remove the old question and put in its place a revised question to ask for a list of high quality, shipping MMOs with small teams to get a better understanding of what the end result of scoping small actually looks like.  I think people would be put off less by a question like that." CreationDate="2010-12-03T19:00:46.903" UserId="51" />
  <row Id="7677" PostId="915" Text="Love that site, used it many years ago." CreationDate="2010-12-03T19:06:04.327" UserId="3767" />
  <row Id="7678" PostId="6173" Text="The design of this game is predicated around a lot of uniqueness in line architecture that is created on the fly. I've done the type of blitting your talking about, and yes it is very fast. Which is why I'd like to take a spritebatch approach, but will want to precache the motion animation of lines that are glowing in the manner described. Also, I want to nail a technique for this on principle, as a learning exercise." CreationDate="2010-12-03T19:42:39.473" UserId="3767" />
  <row Id="7679" PostId="6172" Text="to clarify, I want something 2D like this [3D example](http://developer.download.nvidia.com/SDK/10.5/direct3d/screenshots/samples/Lightning.html) from Nvidia" CreationDate="2010-12-03T19:44:27.913" UserId="3767" />
  <row Id="7680" PostId="6171" Score="2" Text="It's questionable whether HTML5 per se is mature enough to be used in a production environment..." CreationDate="2010-12-03T19:45:27.710" UserId="744" />
  <row Id="7681" PostId="6176" Text="the effect I'm looking for is a neon luminescence, not v3. I've reviewed techniques for what you cite as v1 and v2, and they aren't a match for what I'm trying to accomplish. See link in the first comment on the original question." CreationDate="2010-12-03T19:51:53.027" UserId="3767" />
  <row Id="7682" PostId="6172" Text="There is a lot of things going on in the picture. At first I thought I knew what you wanted, now I have really no idea." CreationDate="2010-12-03T20:18:57.957" UserId="962" />
  <row Id="7683" PostId="6171" Score="1" Text="also a good point i suppose, we're all in alpha XD" CreationDate="2010-12-03T20:32:44.830" UserId="1743" />
  <row Id="7684" PostId="6126" Text="How I wish it had stopped at 14. :(" CreationDate="2010-12-03T21:42:41.973" UserId="744" />
  <row Id="7685" PostId="6126" Text="LOL. @Joe, I suspect part of its popularity comes from being on the front page of the [StackExchange Hot Questions](http://stackexchange.com/questions/custom) - probably getting a lot of drive-by voting from people who aren't game-dev regulars." CreationDate="2010-12-03T21:58:01.373" UserId="165" />
  <row Id="7686" PostId="6156" Text="A fine suggestion.  I will definitely take you up on it in a bit.  Thanks." CreationDate="2010-12-03T22:05:38.917" UserId="3705" />
  <row Id="7687" PostId="6179" Text="possible duplicate of [Good resources for learning about game architecture?](http://gamedev.stackexchange.com/questions/455/good-resources-for-learning-about-game-architecture)" CreationDate="2010-12-03T22:13:24.347" UserId="744" />
  <row Id="7688" PostId="6179" Text="@Joe I'd argue they're similar but different - I'm specifically looking for what knowledge I can re-use and what LOB techniques will cause me problems later. That said, I'm new to this SE site so will gladly bow to the decision of the community." CreationDate="2010-12-03T22:57:44.733" UserId="3770" />
  <row Id="7689" PostId="6179" Text="Well, http://gamedev.stackexchange.com/questions/5182/applications-programmer-where-to-start is even closer to this question, but has crappier answers and was answered before I could vote to close it for the same reason. But there are really a lot of &quot;getting started&quot; questions on this site, and I don't think we need another, especially since experienced programmers should be able to follow more general resources and don't need the kind of step-by-step handholding new ones do." CreationDate="2010-12-03T23:01:21.343" UserId="744" />
  <row Id="7690" PostId="6125" Text="The code you have posted in your answer is a physics formula, just not the equivalent of a Newtonian physics formula. It's still a physics engine, just a bad one." CreationDate="2010-12-03T23:39:27.113" UserId="744" />
  <row Id="7691" PostId="6120" Text="@Jeff: Few (non-physics) puzzle games need one, e.g. Tetris, Bejeweled. In action games, I could argue that most 2D shmups don't benefit from a physics engine, as they generally do just need AABB/circle overlap checks, no collision response, absolutely fixed movement paths, and constant velocity. Platformers, though, are all about physics." CreationDate="2010-12-03T23:43:03.540" UserId="744" />
  <row Id="7692" PostId="6179" Text="@Joe as I said, I'll respect the gamedev community decision - But I'd like to avoid the &quot;basics&quot; books that explain what OO is and how to ue interfaces - conversely I'm not skilled enough to jump into the advanced stuff - I don't think asking for advice on what I can re-use and what I need to learn from scratch is unreasonable. I'm finding `Game Engine Architecture` very helpful as an overview but a lot of it is stuff I already know. If there's consensus that the Q should be closed/downvoted, it will be - but I'm not going to close it because you don't like it. Sorry" CreationDate="2010-12-04T00:22:02.260" UserId="3770" />
  <row Id="7693" PostId="6172" Text="On a (moderately) related note; finding curves that are offset to arbitrary beziers is nontrivial. (At least for train-tracks style curves.) Do keep that in mind." CreationDate="2010-12-04T01:03:59.697" UserId="3015" />
  <row Id="7694" PostId="6166" Text="I'm not sure exactly what your goal is, what problem would an answer to this question help you solve? You ask for TIN-based terrain, but the essence of your question seems to be more about seamless combination of terrain and underground. You are making or want to make some tools, but I can't tell what exact part of the toolchain you are into. Why do you worry so much about formats? Anyone can mock up a static mesh fileformat, the hard parts is making editors and integrating the concept in a game engine." CreationDate="2010-12-04T01:12:21.030" UserId="3505" />
  <row Id="7695" PostId="1245" Score="1" Text="So many answers here for XNA 3.0, not 4.0" CreationDate="2010-12-04T01:28:46.013" UserId="3175" />
  <row Id="7696" PostId="6180" Score="1" Text="Thanks for taking the time to answer. I'll be back when I've got something more specific to ask." CreationDate="2010-12-04T01:43:29.990" UserId="3770" />
  <row Id="7702" PostId="90" Score="13" Text="@Lo'oris: What makes it a bad question?  The fact that it's simple?  The fact that the OP didn't know the answer?  " CreationDate="2010-12-04T04:38:22.557" UserId="569" />
  <row Id="7704" PostId="6186" Text="Possible Duplicate http://gamedev.stackexchange.com/questions/3958/creating-a-3d-map-for-xna" CreationDate="2010-12-04T06:24:06.973" UserId="962" />
  <row Id="7706" PostId="6186" Text="I think you may be approaching this problem incorrectly, the link I posted should give you some helpful information on how to create 3d maps for use in XNA." CreationDate="2010-12-04T06:26:04.163" UserId="962" />
  <row Id="7708" PostId="6185" Text="Very true, I didn't mention languages. In my day-to-day, I use VB.Net and C#. I'm also proficient in JavaScript. I _used_ to have a working knowledge of C but I haven't touched it in years and I'm passable at C++. I've also got a good knowledge of PERL and various obscure languages." CreationDate="2010-12-04T12:13:59.110" UserId="3770" />
  <row Id="7709" PostId="6185" Score="1" Text="Thanks for the suggestions above - Unity3D definitely looks interesting especially with my skillset" CreationDate="2010-12-04T12:15:07.313" UserId="3770" />
  <row Id="7710" PostId="2899" Text="I fail to see how the iPhone part is relevant." CreationDate="2010-12-04T15:00:10.937" UserId="1156" />
  <row Id="7711" PostId="1592" Score="1" Text="Python 3 is not a horrible language. It is just like HTML5; new, but without 3rd party support. It is a great language, and it's really not an issue to change the few parts of the code (like bytes) to Py2.7 compatible." CreationDate="2010-12-04T15:40:07.113" UserId="1156" />
  <row Id="7712" PostId="6089" Text="This is one implementation I have not see before. Thanks!" CreationDate="2010-12-04T15:47:24.830" UserId="2132" />
  <row Id="7713" PostId="764" Score="3" Text="If anything, this is one of the best tips there is. I'm working on a small hobby game, and getting maybe 10 lines done on days I work on it. It's not difficult, it's just I get distracted by Reddit, here, Facebook, blog sites, and IM'ing people." CreationDate="2010-12-04T17:04:36.077" UserId="1156" />
  <row Id="7714" PostId="6170" Text="Isn't that first bit kind of obvious? Or when are we going to start seeing games developed by themselves and 0 people? ;)" CreationDate="2010-12-04T17:11:34.020" UserId="1156" />
  <row Id="7715" PostId="6170" Text="@Duck: Funny, I was just reading through http://eis-blog.ucsc.edu/2010/12/from-breakout-to-space-invaders-all-over-again/ earlier today..." CreationDate="2010-12-04T17:42:06.133" UserId="744" />
  <row Id="7716" PostId="6179" Text="As a question about game architecture, it's fine. If you're looking for 'what knowledge of software apps X and Y will help/hinder me', it's too localized." CreationDate="2010-12-04T18:20:17.833" UserId="1156" />
  <row Id="7717" PostId="6190" Text="The material there has looked good the several times I've visited, but nearly everything you have to pay for (i.e, after playing L4D a lot I looked at those articles. You have to pay for them. Shame, because the AI director is seriously amazing.) And it seems to be advanced, mostly." CreationDate="2010-12-04T18:24:48.640" UserId="1156" />
  <row Id="7718" PostId="6191" Text="We are talking an art based sidescroller, rather than a tile based?" CreationDate="2010-12-04T18:40:16.147" UserId="1156" />
  <row Id="7719" PostId="1917" Text="Why would you have a scrolling window? Usually the window is just a view port into a certain part of your world. You could definitely make a linear equation from point a to point b. Then you could use some curving functions to do some cool stuff like accelerate at the beginning and slow down at the end." CreationDate="2010-12-04T18:40:21.730" UserId="3547" />
  <row Id="7720" PostId="6190" Text="That site probably has some amazing content, I think they targeting industry professional more." CreationDate="2010-12-04T19:13:02.213" UserId="2910" />
  <row Id="7721" PostId="6186" Text="thnx... that helps" CreationDate="2010-12-04T20:20:53.063" UserId="1428" />
  <row Id="7722" PostId="6194" Text="What format do you recommend storing the points? XML? Also, do you go through the entire file checking for lines or only a section of it that your character is near?" CreationDate="2010-12-04T21:45:27.070" UserId="2946" />
  <row Id="7723" PostId="6191" Score="1" Text="Just think about all your entities as only being 1D. (when it comes to the floor) They only occupy a line on the ground. That way your guy could get behind bushes and stuff. Just think about everything as if they were paper pop outs in one of those pop out books. You could then make some entities that could occupy space like a wall as well. Wasn't sure if this would suit as an answer, I still don't get exactly what you want, but this is what I think your thinking." CreationDate="2010-12-04T21:46:29.340" UserId="3547" />
  <row Id="7724" PostId="6194" Text="Format doesn't matter. Whatever is easiest in your framework. Just check all lines first and if it's too slow then look into optimizations. Maybe store them in a tree. Maybe only check nearby tiles. " CreationDate="2010-12-04T21:51:17.900" UserId="51" />
  <row Id="7725" PostId="6194" Text="Let's say we have a small level, no optimizations needed. Do we take the line coordinates (maybe similar to an SVG file?), construct them so they represent lines, then do rectangle-line, circle-line, etc collision checking on them?" CreationDate="2010-12-04T22:16:46.540" UserId="2946" />
  <row Id="7727" PostId="1917" Text="I mentioned it as an example, I don't use scrolling window. You might have missundertood the `forcing the user to navigate himself on the map instead of auto-navigating the user per click` which basicly is when the user clicks on a determinated place it will move the window as the player moves but if players tries to clikc inside a house where the door is closed for example, it will walk toward the house on a straight line and stop at the first obstacle which means that the user does not have a auto navigating click to move but he has to click making his own way to the place he wants to go." CreationDate="2010-12-04T22:23:23.260" UserId="567" />
  <row Id="7728" PostId="6194" Text="That's one way to do it, yes. You can get really good results with traces/sweep tests. " CreationDate="2010-12-04T22:43:15.640" UserId="51" />
  <row Id="7729" PostId="6179" Text="@Duck - I had intended it with regards to the game architecture itself. Perhaps I wasn't as explicit as I should've been" CreationDate="2010-12-05T02:57:04.807" UserId="3770" />
  <row Id="7730" PostId="6112" Text="It depends on your definition of Indie. Independent means not being funded by publisher, thus independent to do anything it wants (instead of what the publisher wants). Technically even Valve is independent." CreationDate="2010-12-05T04:32:51.163" UserId="469" />
  <row Id="7732" PostId="6194" Text="@Tetrad- Interesting, thank you!" CreationDate="2010-12-05T04:49:14.757" UserId="2946" />
  <row Id="7733" PostId="6195" Score="1" Text="Good tip for these books, I didn't realise they were all online now. However they're not quite what I'm after, see edited question." CreationDate="2010-12-05T05:14:02.297" UserId="831" />
  <row Id="7734" PostId="6197" Text="True, and I'm very familiar with graphics programming, I'm just curious as to how other people have combined all these techniques to create special effects. I edited my question above." CreationDate="2010-12-05T05:17:36.130" UserId="831" />
  <row Id="7735" PostId="6147" Text="Thanks for your answer, the game is free (GPL licenced), so anybody can access to old game versions, and even compile the client so it isn't a problem to have all the different versions of it. This is very used, not all the alternative servers use the latests versions, there are servers that run versions from 2004.." CreationDate="2010-12-05T07:30:38.363" UserId="1871" />
  <row Id="7736" PostId="6193" Text="Your example is definitely an artist, not a programmer, domain. Programmers give artists animation tools (usually a fancy UI for spline interpolation), and artists are the ones who figure out &quot;hey, these splines make a good explosion.&quot;" CreationDate="2010-12-05T10:03:26.837" UserId="744" />
  <row Id="7737" PostId="3150" Text="+1 for mentioning LOD" CreationDate="2010-12-05T10:12:25.477" UserId="1581" />
  <row Id="7739" PostId="6218" Score="3" Text="Not a troll - you should look at the poster's *history* before accusing someone of that. In this case, he has not only 1K rep, but a number of good Questions, and accepted Answers. (Note - remove the troll line, and I'll remove my downvote. This Q&amp;A format *does* allow us to improve our posts :)" CreationDate="2010-12-05T14:10:03.837" UserId="165" />
  <row Id="7740" PostId="6210" Score="1" Text="What are you talking about? I have tablet pc that is multitouch compatible. Apple has a new multitouch mouse. Wacom makes an inexpensive multitouch bamboo tablet." CreationDate="2010-12-05T17:34:53.190" UserId="962" />
  <row Id="7741" PostId="6210" Score="1" Text="That might be true, but out-of-the-box how many percent Windows/Mac/Linux support multitouch? On iOS and Android that makes sense since it comes with the package but how many people would be ready to buy multi-touch devices just to play your multi-touch game?" CreationDate="2010-12-05T18:04:49.870" UserId="3803" />
  <row Id="7742" PostId="6210" Score="1" Text="Moreover, the Windows/Mac/Linux interfaces are not designed for multitouch. It's just a horrible user experience. (Also, Apple's &quot;multitouch mouse&quot; is not what you think it is. It's still a linear pointing device.) So even though it's supported, even people who have the hardware rarely use it in practice." CreationDate="2010-12-05T18:39:17.930" UserId="744" />
  <row Id="7743" PostId="6210" Text="Multitouch is quickly growing for desktops.  Yes, it's still a small percentage, but it's likely to grow quickly, especially across laptops, as iPad and Android touch pads grow in popularity.  " CreationDate="2010-12-05T18:52:25.857" UserId="2760" />
  <row Id="7744" PostId="6166" Text="We develop tools to generate terrain and models from GIS sources to multiple 3D formats. Most of these formats are for military simulations but we would like to target a few popular commercial games. We have been partially successful with Unreal engine games, however the user needs to load the ASE files in UnrealEd. Our main concern is correlation: most of our output formats represent the terrain as a TIN so we want to avoid having to convert the elevation to a grid. We also want to avoid manual edits as much as possible to maintain correlation with the other output formats. " CreationDate="2010-12-05T18:59:18.377" UserId="2870" />
  <row Id="7745" PostId="6168" Text="Yes. However, I don't understand what this forum thread relates to TIN terrain support in Panda3D. Are they considering TIN representation for the terrain in Panda3D (back in 2007) or did they rule it out?" CreationDate="2010-12-05T19:07:49.793" UserId="2870" />
  <row Id="7746" PostId="6220" Text="-1 because I can't figure out what you're asking. You want &quot;literate, algorithms, etc.&quot; for Pixel Bender but not something about coding Pixel Bender, which is how you'd achieve those effects?" CreationDate="2010-12-05T19:19:19.737" UserId="744" />
  <row Id="7747" PostId="6220" Text="If you don't know what I'm asking then please don't answer. I'm looking for literature for making shaders. I mentioned Pixel Bender to make it clear I do not use openGL, direct3d or any other similar soft. Just because one can write code doesn't mean he know how to write game. Shaders are mostly about math and simple ifs. I can do ifs, I'm looking for math." CreationDate="2010-12-05T19:32:25.663" UserId="3807" />
  <row Id="7748" PostId="6210" Text="From what I understand, Windows 7 and newer versions of Linux support multitouch right out of the box, and there exist frameworks that are cross-platform and support multitouch as well (Qt is one), but they sadly aren't made to be game engines." CreationDate="2010-12-05T19:58:26.377" UserId="2289" />
  <row Id="7749" PostId="6220" Text="I don't know what you're asking because you expressed yourself poorly, not because I'm unfamiliar with the technology involved. What are you actually looking for? Examples of shader programs written for Pixel Bender?" CreationDate="2010-12-05T20:10:37.943" UserId="744" />
  <row Id="7750" PostId="6220" Text="Algorithms or generally literature explaining me what to do with pixels to get effect I need such as halo around objects, slowmotion feeling, etc. Everything I found until now was meant for 3d stuff with openGl or something. Nothing for 2d." CreationDate="2010-12-05T20:19:35.420" UserId="3807" />
  <row Id="7751" PostId="6220" Score="3" Text="This question is too vague; either the correct answer is the Pixel Bender site, or http://gamedev.stackexchange.com/questions/1673/is-there-any-shaders-directory, or http://gamedev.stackexchange.com/questions/2419/cool-examples-of-procedural-pixel-shader-effects, or ask a specific question (&quot;I have X in Flash, how can I add a halo?&quot;)" CreationDate="2010-12-05T20:29:23.097" UserId="744" />
  <row Id="7752" PostId="90" Score="1" Text="I think it's a great idea to have one such question that you can point to when all the other questions just like this show up." CreationDate="2010-12-05T20:30:46.167" UserId="3597" />
  <row Id="7753" PostId="6221" Text="What if the game is a many months from being ready to play. Have you had experience starting beta testers at the beginning of the project?" CreationDate="2010-12-05T20:32:29.307" UserId="2925" />
  <row Id="7754" PostId="1031" Score="6" Text="@Kibbee - have you looked in between the sofa cushions?" CreationDate="2010-12-05T20:35:42.810" UserId="3597" />
  <row Id="7755" PostId="6220" Text="I don't think it is too vague. Answer might as well be: buy this book, chapter x, there you can find stuff applicable to 2d shaders too. Or link or whatever. I'm not looking for concrete solution but rather for general principles." CreationDate="2010-12-05T20:55:39.207" UserId="3807" />
  <row Id="7757" PostId="6223" Text="I have extensive experience modding and authoring for this engine and I can attest that is it very flexible and easy to work with. Do not underestimate the usefulness of the tile-based terrain: it makes everything from asset creation to content creation to scripting quite a bit easier. It has aged a bit though, it does not look as snazzy as the new kids on the block. I would stay away from the NWN2 engine: it's a mess. I have not checked out the Dragon Age toolset as of yet. It is probably your best bet right now." CreationDate="2010-12-05T22:44:22.957" UserId="678" />
  <row Id="7758" PostId="5794" Text="Yup! This is one of my small tests. I couldnt have done this so easily with Flash. http://3d.d9.dk/pills/?noflash" CreationDate="2010-12-05T23:17:50.923" UserId="3115" />
  <row Id="7759" PostId="6133" Text="I didnt invent this. I come from back in time in the old Commodore 64 days (8-bit with 64 KB ram), so I learned it the hard way. There wasnt any fancy viewport or GUI, so you had to develop some way to do a scrolling. Its the same for Super Mario and many-many-many other old tilebased games. But it can also be used for 3D vector games. The &quot;tiles&quot; are just a bit different. have a look at this one http://3d.d9.dk/biplane/?test-scroller" CreationDate="2010-12-05T23:21:17.910" UserId="3115" />
  <row Id="7760" PostId="6133" Text="Just change the &quot;view&quot; on one of the buttons and you can see the &quot;tiles&quot; being added in the horizon, and if you change the campos to infront of plane, you can also see them getting removed behind plane." CreationDate="2010-12-05T23:26:51.743" UserId="3115" />
  <row Id="7761" PostId="6094" Text="rewards can also be coins on a map. Loads of games I've tried over the years doesnt require me to collect them all, but the more I collect, the more powerups I get or bonus or whatever." CreationDate="2010-12-05T23:28:37.437" UserId="3115" />
  <row Id="7762" PostId="6217" Text="The Unity guys have said that they are planning on bringing their iOS-style multitouch abstraction to the platform versions at some point in the future.  It doesn't have linux support, but nobody cares about linux support." CreationDate="2010-12-06T00:29:14.327" UserId="51" />
  <row Id="7763" PostId="6220" Text="@Antriel, but *specific* questions are much better than general discussion style topics.  You'll have much better luck with &quot;how do I achieve effect-I-want X&quot; than &quot;I want to learn more about topic Y&quot;.  http://stackoverflow.com/questions/how-to-ask" CreationDate="2010-12-06T00:34:22.917" UserId="51" />
  <row Id="7764" PostId="6213" Score="3" Text="What's wrong with NWN2?" CreationDate="2010-12-06T00:36:04.273" UserId="51" />
  <row Id="7765" PostId="6217" Text="Sure it supports Linux (Android is Linux) ;) Linux isn't interesting enough platform yet but its far from nobody caring." CreationDate="2010-12-06T00:45:46.940" UserId="3803" />
  <row Id="7766" PostId="6217" Text="@Daniel - I believe Android is a MOBILE OS and the core is build upon Linux, but its not meant to be a &quot;big OS&quot; for computers. Thats why Google make Chrome OS." CreationDate="2010-12-06T00:58:48.577" UserId="3115" />
  <row Id="7767" PostId="6193" Text="I like your example a lot. It would be fun to see people add their own recipes. me likey space explosions." CreationDate="2010-12-06T01:20:19.413" UserId="3142" />
  <row Id="7768" PostId="6215" Text="I think he's looking to actually change the game; WoW allows you to customize your interface and to build little add-on programs to run within WoW, but you're not actually allowed to add anything or change how anything in the game works." CreationDate="2010-12-06T01:38:35.683" UserId="2693" />
  <row Id="7769" PostId="6217" Text="It twas a joke. I forgot that Unity doesn't support Linux. " CreationDate="2010-12-06T01:41:18.350" UserId="3803" />
  <row Id="7770" PostId="6220" Text="I could provide you with the source of any of the demos here: http://ryanspeets.com/uncategorized/the-speets-is-not-dead/" CreationDate="2010-12-06T02:46:16.643" UserId="312" />
  <row Id="7771" PostId="6232" Text="I don't think there has ever been a game that has had a budget of a billion or greater." CreationDate="2010-12-06T02:58:42.120" UserId="962" />
  <row Id="7772" PostId="6232" Score="1" Text="&quot;budget of a billion or greater&quot; - [Duke Nukem Forever](http://en.wikipedia.org/wiki/Duke_Nukem_Forever)?" CreationDate="2010-12-06T03:05:31.943" UserId="165" />
  <row Id="7773" PostId="6235" Text="Hmmm.  Your answer, while good for a new reader, doesn't really address my issue.  Yes, I set the projection matrix before rendering (only once, because it doesn't change unless I switch cameras); yes, my camera is capable of calculating it's own forward, up, and left vectors by transforming the axis unit vectors by it's transformation matrix; I am using OpenGL but do not have access to GLU, so gluLookAt is not an option atm; besides, gluLookAt is good for focusing on certain objects, but I'm not sure it's appropriate for a free camera; PS, OpenGL means right-handed coordinates." CreationDate="2010-12-06T03:58:13.557" UserId="1400" />
  <row Id="7774" PostId="6235" Text="Ok i red you profile after posting and i told myself that my informations must be useless for you, because you seem to be pretty expirienced :)." CreationDate="2010-12-06T04:05:33.833" UserId="3794" />
  <row Id="7775" PostId="6235" Text="Did you try not to perform inverse to your camera transformation matrix?" CreationDate="2010-12-06T04:09:52.643" UserId="3794" />
  <row Id="7778" PostId="6235" Text="I did try to multiply by the normal (non-inverse) camera matrix, and it all seems to work just fine until I attempt to rotate my camera (using quaternion math).  When I rotate the camera, my forward, up, and left vectors don't seem to work correctly anymore and my camera will only translate along world axes instead of camera axes.  Really weird stuff." CreationDate="2010-12-06T04:48:10.133" UserId="1400" />
  <row Id="7779" PostId="6220" Text="Specific questions might be better, but having tens of questions with basically equal content won't be exactly better right? I don't know what effects I want, I want to learn principles behind these effects so I can mess up with it and try to make my own." CreationDate="2010-12-06T05:48:00.693" UserId="3807" />
  <row Id="7780" PostId="6225" Text="Thanks man! Done and done. :-)" CreationDate="2010-12-06T07:27:12.300" UserId="2925" />
  <row Id="7781" PostId="6220" Text="The principles are the *ifs* you talked about. There is no generic math or magic solution to create all the effects you want. I think you would be better off by writing one shader, ask specific questions and then broaden your knowledge from there. On a side note: Pixelbender is frustratingly limited. You can't even do loops (when used in flash)  " CreationDate="2010-12-06T07:50:32.570" UserId="20" />
  <row Id="7782" PostId="6235" Text="I think it could help if you paste here code where you create view and proj matrices. " CreationDate="2010-12-06T08:24:01.913" UserId="3794" />
  <row Id="7783" PostId="6235" Text="And to be 100% sure. Do you know that if you writing ogl matrices by your own you have to count with fact that there are in format col0 col1 col2 col3 and not row0 row1 row2 row3?" CreationDate="2010-12-06T08:40:07.007" UserId="3794" />
  <row Id="7784" PostId="6210" Text="Revised to acknowledge AttackingHobo's comment. I wasn't aware of any mainstream input peripherals, although I did know that tablet PCs have good support for it. The gist of the answer is unchanged though: engine support follows features the users demand, insufficient demand leads to no support. I've never heard any gamers asking for multi-touch support on desktop OSes - it's a whole different paradigm. If they want those sorts of games, they buy them on native touch screen devices." CreationDate="2010-12-06T09:27:46.193" UserId="741" />
  <row Id="7785" PostId="6220" Text="The general principles are covered in the Pixel Bender documentation, which you said you don't want. What you do want is a dozen specific things. In that case, it should be split into a dozen questions." CreationDate="2010-12-06T09:57:17.410" UserId="744" />
  <row Id="7786" PostId="6221" Text="oh i misunderstood your question then..." CreationDate="2010-12-06T10:13:53.967" UserId="3597" />
  <row Id="7787" PostId="90" Text="@Tor: you point it out, and people see &quot;whoa it has 30 points, it must be a great question, I should do more like that&quot;" CreationDate="2010-12-06T10:21:03.263" UserId="2188" />
  <row Id="7788" PostId="6204" Text="+1. There are some example projects over in the &quot;Support&quot; section of the Unity website, which might be a good resource to start toying around with the engine. An FPS example is here: http://unity3d.com/support/resources/example-projects/3rdpersonshooter" CreationDate="2010-12-06T13:48:50.700" UserId="20" />
  <row Id="7789" PostId="6168" Text="Probably should have posted this as a comment, not really an answer to your question, just trying to understand" CreationDate="2010-12-06T15:12:16.747" UserId="3449" />
  <row Id="7790" PostId="90" Text="@Lo'o It's more than likely gotten the upvotes because it's a question a few people have had since the site went live in July. And it gets persistently re-answered (and subsequently brought to the top) so more people see and then upvote it. But all and all, I think it helps the site. Search for &quot;Why is it so hard to develop a MMO&quot; on google. We now come before &quot;So you want to make a MMORPG&quot; on gamedev.net" CreationDate="2010-12-06T15:23:17.663" UserId="14" />
  <row Id="7791" PostId="90" Score="6" Text="It has a lot of votes not because of the inherent quality of the question, but because of the relevance of the answers. In terms of this site being a source of good information, this question and the answers that go with it fit the bill. I don't think upvoted questions encourage similar questions - if one was too similar, it would be merged anyway. And if it was different enough to merit different answers, those answers would be useful in themselves." CreationDate="2010-12-06T16:10:33.077" UserId="1101" />
  <row Id="7792" PostId="90" Score="2" Text="There is an advertisement banner for this question on stackoverflow.com" CreationDate="2010-12-06T16:25:15.623" UserId="450" />
  <row Id="7793" PostId="630" Score="1" Text="@Cyclops: because after all people will have to choose if they with to play WoW or to play your game." CreationDate="2010-12-06T17:12:49.687" UserId="2188" />
  <row Id="7795" PostId="6250" Text="great work..thanks tim!" CreationDate="2010-12-06T17:55:23.893" UserId="1552" />
  <row Id="7796" PostId="6250" Text="np Henrik. As soon as I saw your post I though, &quot;I bet I know what this guy means.&quot;  I'm not 100% sure but I think this is how the rotating planet effect was done in the original Star Trek TV show." CreationDate="2010-12-06T18:03:33.563" UserId="3830" />
  <row Id="7797" PostId="2104" Text="Sarcasm and belittlement is never a good answer." CreationDate="2010-12-06T18:06:07.127" UserId="1057" />
  <row Id="7798" PostId="6237" Text="Edit: Added links for GANG and AES" CreationDate="2010-12-06T18:27:21.103" UserId="3656" />
  <row Id="7799" PostId="6247" Text="Thanks for the links suggestion, edited appropriately. What about games that have to deal with managing surround sound mixing for consoles? I know for the average social game, handheld game, or indie game, audio is close to the bottom of the list of concerns, but there's still a lot to worry about as you up the ante for production quality. And what about games like Spore? They used PureData to mock up generative soundtracks. Is this kind of thing not getting more and more common?" CreationDate="2010-12-06T18:28:52.360" UserId="3656" />
  <row Id="7800" PostId="6251" Text="Since OCRemix. Composition is a tough career to begin with, but the game music market is getting more flooded with composers who are interested in strictly games, and composers who are jumping the film boat to cash in on the game industry." CreationDate="2010-12-06T18:34:57.283" UserId="3656" />
  <row Id="7801" PostId="6198" Text="I've heard loads of great things about the Buckland book, and the only problem is that it is slightly too expensive for a student not yet into uni, like all programming books I guess. :P" CreationDate="2010-12-06T18:46:19.900" UserId="1156" />
  <row Id="7802" PostId="6216" Score="1" Text="+1 for the Oblivion Construction Pack, and also the Fallout 3 G.E.C.K (same thing, just the modkit is for Fallout 3 since Bethesda did both). They are really easy to get started on, and they definitely aren't lacking in what you can actually do." CreationDate="2010-12-06T18:55:30.160" UserId="1156" />
  <row Id="7803" PostId="6125" Text="@Joe You seem to love to misuse the word physics. You have done so a few times now. If you truly believe that the code I posted is a physics formula then you are clearly missing the boat here." CreationDate="2010-12-06T19:55:11.700" UserId="2992" />
  <row Id="7804" PostId="6244" Text="Yes, I understand matrix inversion and I believe I understand what such an inversion represents (local-&gt;world or world-&gt;local space).  I suppose what I am trying to ask here is: How is a camera used in rendering a scene?  Again, I think I have all of the necessary components to use it: position, orientation, transform, forward, up, left, maths for manipulating all of those.  The problem is I'm confused on how to apply these things to make an intuitive camera object." CreationDate="2010-12-06T20:03:31.760" UserId="1400" />
  <row Id="7805" PostId="6237" Score="1" Text="This is not really an answer to your question, but I have to disagree with Kylotan - At my last job we were pretty desperate to find someone who was both a good programmer and interested in doing audio. FMOD Designer is OK, but if you're using a custom engine for a big game - and a lot of places are - you're going to need custom tools, especially for foley, but even for things like subtitle synchronization and music transitions. It may not be full-time audio like graphics programmers are near full-time graphics, but if you want to be &quot;the audio guy&quot;, a lot of studios would love that." CreationDate="2010-12-06T20:27:10.283" UserId="744" />
  <row Id="7806" PostId="6235" Text="I'm beginning to think maybe I need to scrap this question, figure out what I'm really asking, and try again..." CreationDate="2010-12-06T20:36:52.553" UserId="1400" />
  <row Id="7807" PostId="6232" Score="2" Text="+1 For answering the question asked instead of saying &quot;Use this instead!&quot;" CreationDate="2010-12-06T20:46:02.870" UserId="1057" />
  <row Id="7808" PostId="6255" Score="2" Text="This is called a **collision mask** (at least in 2D)." CreationDate="2010-12-06T20:52:11.923" UserId="2698" />
  <row Id="7810" PostId="6212" Text="I'd caution anyone coming across this question in the future: While nothing in this post is incorrect, it's honestly horrible for a game like Minecraft, which has a non-sparse world. (And MrCranky says as much.) Your world only benefits from this if it has a few somethings and lots of _nothings_, not a few somethings and lots of _empties_." CreationDate="2010-12-06T22:11:52.470" UserId="744" />
  <row Id="7811" PostId="6256" Score="2" Text="Whoever did the down vote, care to explain why?  A down vote helps me not.  You telling me I'm a newb and can find X stuff in Y place, does." CreationDate="2010-12-06T22:14:40.657" UserId="3843" />
  <row Id="7812" PostId="6235" Score="1" Text="Ok i think that you really should try to implement gluLookAt function. You can use it for &quot;fly camera&quot; very easily. Distance of lookAt-point is not important so you can compute values very easily. camPos is camPos, up is up. And lookat-point is yours forward vect+camera position. That should work." CreationDate="2010-12-06T22:18:53.090" UserId="3794" />
  <row Id="7813" PostId="6235" Text="Alright, I will look into it.  Thanks for the suggestion." CreationDate="2010-12-06T22:33:00.377" UserId="1400" />
  <row Id="7814" PostId="6256" Score="2" Text="Just because the game code is open source doesn't mean you can release a port with the content.  The content (textures, sounds, levels, etc) is under copyright.  You'd have to look for a game that's completely open source, and those are pretty few and far between." CreationDate="2010-12-06T22:43:02.747" UserId="51" />
  <row Id="7815" PostId="6256" Score="1" Text="@Tetrad I don't think I said I wanted to release the game.  This is for learning purposes only." CreationDate="2010-12-06T22:51:36.163" UserId="3843" />
  <row Id="7816" PostId="6258" Text="Sweet, Cube looks great.  I have something to play with now and maybe get some oohs and ahs.  I have to justify my late nights and evenings to the wife. ;)  I can't upvote but I'll accept this as answer.  Thanks!" CreationDate="2010-12-06T22:52:59.190" UserId="3843" />
  <row Id="7817" PostId="6237" Text="It may not be a direct answer, but it's a very informative and appreciated. When you've worked on games with custom engines, do they typically spend time implementing effects (depending on the game of course), or is the primary task just worrying about the memory management? Thanks again for commenting." CreationDate="2010-12-06T23:17:20.207" UserId="3656" />
  <row Id="7819" PostId="6255" Text="This suggestion, pictures too, are very nice" CreationDate="2010-12-06T23:34:45.367" UserId="3787" />
  <row Id="7820" PostId="6237" Score="1" Text="Usually a combination of FMOD and the audio engineers handle implementation of effects. The programmer deals with making sure the audio engineers can get usable stuff to e.g. the level designers and vice versa. With a strong background in audio programming you'd have a much better idea what kind of stuff the engineers need to do, and maybe be able to split your time between audio engineering and programming rather than audio programming and some other kind of programming. (Depends heavily on the studio's org chart.)" CreationDate="2010-12-06T23:56:51.073" UserId="744" />
  <row Id="7821" PostId="6247" Score="1" Text="Surround sound can be handled by using positional sounds with the API and wouldn't require a specialist audio programmer. As for generative or procedural soundtracks, it's not something I hear a lot about. The last one I heard of before Spore was Alpha Centauri, which is about 12 years old." CreationDate="2010-12-07T00:22:18.197" UserId="1101" />
  <row Id="7822" PostId="6237" Score="1" Text="That's pretty interesting, Joe. We did do some audio work in our engine but it was just spread around the team as none of it really required specialist knowledge (unlike with graphics, for example)." CreationDate="2010-12-07T00:24:14.967" UserId="1101" />
  <row Id="7823" PostId="6255" Text="There is a problem.... what about jump?" CreationDate="2010-12-07T01:26:50.000" UserId="3787" />
  <row Id="7824" PostId="6258" Score="2" Text="@Soshimo, you should really wait more than 4 hours before accepting an answer, as it kind of discourages more answers because anyone else posting **knows** that their answer will not be accepted." CreationDate="2010-12-07T02:46:21.480" UserId="962" />
  <row Id="7825" PostId="6198" Text="On the link that I've provided it's around 30 pound, which for a programming book is relatively cheap. I'd highly recommend it and a load of people I know (including my games lecturer) swear by it :)" CreationDate="2010-12-07T04:00:28.813" UserId="2332" />
  <row Id="7826" PostId="6255" Score="2" Text="@fire-dragon: Concerning a jump: You could use a vertical offset to your players position. The base Position of the player will always be confined to the collision masked area, while the offset may carry the player's sprite above the collison area temporarly. Since the base position can'T leave the collision area, the player will land on it's inside at all times" CreationDate="2010-12-07T08:04:26.240" UserId="2050" />
  <row Id="7827" PostId="1348" Text="+1 For Flixel. Great engine. We used it at the Global Game Jam (and won :). Can't get semi-polished prototypes out much faster than 48 hours!" CreationDate="2010-12-07T08:48:30.687" UserId="3656" />
  <row Id="7828" PostId="6260" Text="Yep this seems to help.. Though I would rather appreciate a dummy application whose source I could study... :) (both front and backend)" CreationDate="2010-12-07T08:53:03.617" UserId="3326" />
  <row Id="7829" PostId="6262" Score="6" Text="Should your battles' outcome be purely deterministic or do you want to use some kind of randomness? " CreationDate="2010-12-07T10:52:05.237" UserId="2050" />
  <row Id="7830" PostId="6214" Text="Thanks for answer. I tried what you suggest before and you are right this helps, but produces some another problems. I think that my technique is dead end and i would love to find some new one" CreationDate="2010-12-07T10:52:46.027" UserId="3794" />
  <row Id="7831" PostId="6260" Text="That first link posted has a 'Samples' section." CreationDate="2010-12-07T14:54:09.240" UserId="1101" />
  <row Id="7832" PostId="6255" Text="Thanks you gave me the idea" CreationDate="2010-12-07T15:47:12.457" UserId="3787" />
  <row Id="7833" PostId="6191" Text="@The Communist Duck: Yes I think, I don't know it's name" CreationDate="2010-12-07T15:49:07.197" UserId="3787" />
  <row Id="7834" PostId="6258" Score="1" Text="@AttackingHobo Posting just to get an answer accepted kind of defeats the purpose of the site doesn't it?  Getting points seems kind of secondary to actually having people help others.  Maybe the point system is flawed if that's the only incentive to post.  I have a feeling that a lot of people don't share your sentiment.  Looking over your past comments it seems you have a definite agenda with accepting answers early since you seem to comment whenever you get a chance.  If I didn't know any better I would say it's a bot." CreationDate="2010-12-07T16:11:37.083" UserId="3843" />
  <row Id="7835" PostId="6269" Text="Thanks for your advices. The way they manage their game balancing for Magic always seem obscure to me. " CreationDate="2010-12-07T16:24:04.557" UserId="364" />
  <row Id="7836" PostId="6258" Text="This conversation shouldn't be a part of this comment thread.  If you really want to discuss the merits of accepting answers, take it to meta." CreationDate="2010-12-07T16:47:56.757" UserId="51" />
  <row Id="7837" PostId="6258" Score="1" Text="Not meaning to butt-in here, but I agree with AttackingHobo on this point. 'Accepting' an answer is basically equivalent to saying 'I'm happy with this answer, I don't need any more' which is why questions giving a list rarely have accepted answers. EDIT: Ninja'd by Tetrad." CreationDate="2010-12-07T16:49:33.977" UserId="1156" />
  <row Id="7838" PostId="6262" Score="4" Text="I don't think it should be tagged as a multiplayer game since that isn't given by the OP-it could be human vs AI. And by 'type dependency', are we talking the classic rock-&gt;scissors-&gt;paper-&gt;rock type thing?" CreationDate="2010-12-07T16:53:34.550" UserId="1156" />
  <row Id="7839" PostId="6273" Text="Thanks for the advices, that's helpful. About the AI thing, I thought it would be too hard to write several AIs for this type of game because it suppose that a generic AI can understand the forces and weakness of each unit types and use the combinations in a smart way, or make severa AI having different strategies and prefering specific units combo... so it's a lot of work. " CreationDate="2010-12-07T17:45:59.230" UserId="364" />
  <row Id="7840" PostId="6260" Text="+1 for the good links...i agree with the frustrations felt with most of the tutorials pointing towards the older version of the Facebook API" CreationDate="2010-12-07T20:31:41.850" UserId="1743" />
  <row Id="7841" PostId="6276" Score="1" Text="You can also use SlimDX in C#, which is (AFAIK) a managed language wrapper around DirectX." CreationDate="2010-12-07T20:36:56.747" UserId="1156" />
  <row Id="7842" PostId="6258" Score="1" Text="@AttackingHobo (and the rest) If that's the case then the developers of this website should turn off the auto notification that you have unanswered questions.  This being my first time here I just followed the suggestions of the notification.  Thanks for all the input though - tough crowd around here." CreationDate="2010-12-07T20:52:38.563" UserId="3843" />
  <row Id="7843" PostId="6278" Score="2" Text="-1. I asked about performance explicitly, and you say it doesn't matter.... I shouldn't have to explain what I am doing, I should have to just say that I definitely need the performance, but I posted more information anyways. And yes I am already pretty good at not causing the garbage collector to run in as3, so I think some of the coding styles can carry over." CreationDate="2010-12-07T20:52:46.990" UserId="962" />
  <row Id="7844" PostId="6276" Text="XNA (on the PC) should be more than sufficient for most if not all needs." CreationDate="2010-12-07T20:59:39.637" UserId="1198" />
  <row Id="7845" PostId="6268" Text="What type of &quot;streams&quot; are you talking about? " CreationDate="2010-12-07T21:12:29.333" UserId="1198" />
  <row Id="7846" PostId="6276" Score="3" Text="If you really care about performance, you should be using hardware acceleration and not blitting in the first place." CreationDate="2010-12-07T21:20:10.003" UserId="744" />
  <row Id="7847" PostId="6278" Score="1" Text="@AttackingHobo Well, with that information I won't argue with your need, but in general you should have to explain. No offense, but should everyone take your word for it that you know what you're doing and need the performance? Plenty of people ask &quot;how do I do X&quot; when really what they want is &quot;how do I solve this problem&quot;, and the resulting comments ask for explanation so they don't mistakenly head down the wrong path." CreationDate="2010-12-07T21:21:30.573" UserId="141" />
  <row Id="7848" PostId="6278" Score="3" Text="You _should_ have to explain when you say you need the fastest version of a low-level software rendering technique but want it in a high-level language with plenty of hardware acceleration support." CreationDate="2010-12-07T21:21:52.933" UserId="744" />
  <row Id="7849" PostId="6276" Text="@Joe Wreschnig, I do not want to exclude people who have low end graphics cards from playing my game." CreationDate="2010-12-07T21:27:42.500" UserId="962" />
  <row Id="7850" PostId="6245" Text="Indeed, using the object as a prefab solved the problem if the prefab mesh had the property &quot;Generate Colliders&quot; checked. " CreationDate="2010-12-07T21:29:11.853" UserId="3823" />
  <row Id="7851" PostId="6276" Score="3" Text="General purpose computer graphics cards so low-end they don't even support OpenGL 1.2 are going to be attached to CPUs and buses so slow you can't blit over them. They also won't be able to run C#." CreationDate="2010-12-07T21:29:48.530" UserId="744" />
  <row Id="7853" PostId="6264" Text="Really agree with this post.  Better to iterate through the battle instead of reducing it to a single equation.  And I'd definitely add a bit of randomness to it.  There ought to be that ever so slight chance that the weak defender rolls high and scores a critical.&#xA;&#xA;Another advantage of iterative is that you can create a narration of the events to show the player.  &quot;The swordsmen attacked and soon decimated the footmen, but then the calvary arrived and...&quot; " CreationDate="2010-12-07T21:39:35.577" UserId="3830" />
  <row Id="7854" PostId="6280" Text="Many laptops and desktops have midrange cards that are absolutely horrible for video accelerated games, but they generally have dual to quad core CPUs that are definitely not slow. I want to create something that is fast and will run on all modern systems, not just modern systems with high end video cards." CreationDate="2010-12-07T21:49:31.943" UserId="962" />
  <row Id="7855" PostId="6268" Text="Basically streams such livestream.com, ustream.tv, own3d.tv . Generally websites used by gamers to stream their games. The game in specific that I'm talking about is Starcraft II" CreationDate="2010-12-07T21:50:41.613" UserId="3854" />
  <row Id="7856" PostId="6280" Score="3" Text="Low- and mid-range cards today are still more adept at hardware accelerated 2D via OpenGL than blitting. Maybe you had a bad experience with a bad engine, or maybe you tried something that made heavy use of vertex shaders with a software fallback, or I don't know. But the cheapest netbooks you can buy today have no problem pumping thousands of sprites at 60FPS with fixed-function hardware acceleration." CreationDate="2010-12-07T21:52:12.793" UserId="744" />
  <row Id="7857" PostId="6281" Score="5" Text="Nobody who know it will reveal this to you :)" CreationDate="2010-12-07T21:53:31.627" UserId="3794" />
  <row Id="7858" PostId="6280" Text="&quot;Those still have an OpenGL 1 fixed function pipeline, and it's still orders of magnitude faster than building up a scene pixel by pixel on the CPU in RAM in C.&quot; Any kind of game that uses the GPU acceleration on my laptop runs really slow, even games with just 2d graphics if there are a lot of sprites, while in AS3 I have a stress test with a ship shooting bullet sprites at 1,800 sprites per second running at just under 60FPS" CreationDate="2010-12-07T21:55:31.920" UserId="962" />
  <row Id="7859" PostId="6280" Text="I suggested a common reason that might be happening. It's not an inherent property of the card. I don't know what else to tell you." CreationDate="2010-12-07T22:04:27.953" UserId="744" />
  <row Id="7860" PostId="6281" Score="5" Text="possible duplicate of [Effective marketing strategies for independent game projects](http://gamedev.stackexchange.com/questions/489/effective-marketing-strategies-for-independent-game-projects)" CreationDate="2010-12-07T22:06:13.990" UserId="744" />
  <row Id="7861" PostId="6282" Text="Oh there appeared similar answer while i was writing" CreationDate="2010-12-07T22:08:39.690" UserId="3794" />
  <row Id="7862" PostId="6281" Score="1" Text="You need to be featured on one of the &quot;home&quot; or &quot;landing&quot; pages of the Marketplace that your app is being sold in. Otherwise, you need to have a name, and get buzz." CreationDate="2010-12-07T22:12:37.090" UserId="1198" />
  <row Id="7863" PostId="6282" Text="If you guys keep saying this, please find me a sample application with a lot of sprites that are HW accelerated, and I will compare it to my flash engine I that have been working on." CreationDate="2010-12-07T22:13:28.997" UserId="962" />
  <row Id="7864" PostId="6246" Text="When i set my project preferences in Maya to use /Textures in the Asset folder and placed the texture files there, they showed up in unity when i saved the scene directly in /Assets and instantiated the prefabs." CreationDate="2010-12-07T22:19:12.797" UserId="3823" />
  <row Id="7865" PostId="6282" Score="1" Text="The lotsofsprites.py demo in http://arcticpaint.com/projects/rabbyt/ can draw (and animate) 6000+ sprites at 60fps for me, on an Intel GMA X3100, which is a four year old low-end integrated laptop card. It maxes out the CPU long before the GPU, and can get 10000+ at 60fps with fewer animations." CreationDate="2010-12-07T22:22:36.477" UserId="744" />
  <row Id="7866" PostId="6282" Text="I cannot get the installer to run, I installed python 2.7 but its saying it cannot find 2.6, is there a stand-alone version I can test without figuring out how to get this stuff to run?" CreationDate="2010-12-07T22:55:10.927" UserId="962" />
  <row Id="7867" PostId="6285" Text="You are not correct when you are speeking about hardware details. There are non. Also if you are writing you own rastarizator on cpu (why to do it? To learn how this stuff works :)) you are using same matrices as on gpu. You are lucky that i still dont have privileques to vote down :)" CreationDate="2010-12-07T23:12:18.987" UserId="3794" />
  <row Id="7869" PostId="6285" Text="Doesn't it need to know the aspect ratio? From what I understand, it stores the scaling factors for X and Y so that the image will have the correct aspect ratio later on." CreationDate="2010-12-07T23:44:22.210" UserId="3861" />
  <row Id="7870" PostId="6285" Text="This is true. But this is not all what it does. And second part when you are mentioning some HW details is wrong. But maybe i just dont understand what do you mean. And i didnt mean that voting down in a bad way, just joking (it wasnt funny at all. Sorry i am not going to do it again:])" CreationDate="2010-12-07T23:50:03.917" UserId="3794" />
  <row Id="7871" PostId="3351" Text="So, to sum up ¿should I stick with floating points (if I'm working in Java or Python)? – Gastón 26 mins ago " CreationDate="2010-12-08T00:11:14.710" UserId="3446" />
  <row Id="7872" PostId="6285" Score="1" Text="Correct me if I am wrong, but he is talking about after you project points, and thus we are talking 2D. If this is the case, then OpenGL doesn't know where on the screen you are putting this image, nor about how it is going to be displayed. It creates an image which is then easy to scale and place correctly, but it does not do that for you. I do agree that hardware details was a bad name for it, I simply meant the above. Also, you can specify a projection matrix with an aspect ratio, but that ratio does not have to be the same as your monitor's. " CreationDate="2010-12-08T00:21:54.587" UserId="2187" />
  <row Id="7873" PostId="6285" Score="3" Text="I have to say that i really enjoy this conversation. You are near to be right. Lets go deeper. There are is no image after multiplacation vertices by projMat. Result is just set of 2D point with depth. Than rastarization begins and it creates images. (if on cpu it would draw lines between triangles verts and fill it (and shade it-whatever) ... on gpu it is performed just before pixel/fragment shader). And aspect ratio puts points which should be &quot;scaled away&quot; to values bigger than 1 or smaller than -1 and they will not be displayed. " CreationDate="2010-12-08T00:44:07.437" UserId="3794" />
  <row Id="7874" PostId="6160" Score="1" Text="Stendhal and the tech you used look pretty interesting." CreationDate="2010-12-08T01:01:22.690" UserId="3830" />
  <row Id="7875" PostId="6273" Text="Making a game is a lot of work, AI or not! I'm sure that if a human can understand the game, then an AI routine can too. If you can encode a rule in code, then you can understand a rule in code." CreationDate="2010-12-08T01:07:03.177" UserId="1101" />
  <row Id="7876" PostId="6287" Text="migrated from here as this is probably a more suitable location http://stackoverflow.com/questions/4383054/is-it-clever-to-use-some-engine-to-start-game-developing/4383243#4383243" CreationDate="2010-12-08T01:07:09.760" UserId="2454" />
  <row Id="7877" PostId="6289" Text="I like yours answer more than mine. +1 for you. " CreationDate="2010-12-08T01:52:41.220" UserId="3794" />
  <row Id="7878" PostId="6287" Score="1" Text="I had the same thing on my mind... I've been using XNA for like 4 years. I started out making an MMORPG... Look where that got me, no where. As always, start small, use something you like unless you have bigger plans, and just get something done before too much time flies by." CreationDate="2010-12-08T03:35:11.487" UserId="3547" />
  <row Id="7879" PostId="2511" Text="Actually, I see lots of people marketing at &quot;casual&quot; making the mistake of using D3D or OpenGL... Several machines (more than people expect) use utterly crap GPUs (like, OpenGL 1.0 GPU for example, or not even that), or they don't come with good drivers (or both)." CreationDate="2010-12-08T04:12:42.957" UserId="469" />
  <row Id="7880" PostId="6232" Text="I like this answer the best because it has tons of useful information which is appropriate for the 'learner' tag. Thanks.&#xA;(The other answers are also useful, so keep them coming.)" CreationDate="2010-12-08T04:20:31.260" UserId="1820" />
  <row Id="7881" PostId="6265" Text="Thanks this was pretty helpful! +1" CreationDate="2010-12-08T04:36:34.947" UserId="3326" />
  <row Id="7882" PostId="6255" Text="Last missing thing: what should I do if I want to jump on a mid-air platform? I'm thinking about preserving a ray that always fall from the upper part to the player..." CreationDate="2010-12-08T05:27:31.547" UserId="3787" />
  <row Id="7884" PostId="6043" Score="1" Text="I see nothing wrong with this approach, I used a similar method for determining probabilities when building a random maze." CreationDate="2010-12-08T05:42:34.337" UserId="2910" />
  <row Id="7885" PostId="564" Score="2" Text="+1 I can't thank you enough for linking that." CreationDate="2010-12-08T06:36:34.133" UserId="3656" />
  <row Id="7886" PostId="6289" Score="2" Text="It's especially useful if say you want to be a game programmer, to start with an engine, and then when you make your own go study that one you used as a good example (assuming you enjoyed using it) to contrast with other resources you find on engine architecture." CreationDate="2010-12-08T06:38:03.710" UserId="3656" />
  <row Id="7887" PostId="6250" Text="This was a great answer, gives me an idea for a game project I have. Next time I load of Starcraft 2 ill have to see if this is how its done =)" CreationDate="2010-12-08T07:47:54.730" UserId="2910" />
  <row Id="7888" PostId="6237" Text="@Kylotan: We did that for a long time, but things got done a lot faster, better, and with happier audio engineers (and programmers) when they could work with someone who understood more of what they were doing." CreationDate="2010-12-08T08:24:52.283" UserId="744" />
  <row Id="7889" PostId="6294" Text="-1 because you don't talk about the difference between software and hardware rendering. C# is faster than Flash at normal execution, but Flash does have one of the fastest software renderers. If you naively port a program from Flash to another language and keep software rendering it's probably going to be slower. It's also just totally not relevant on today's (or yesterday's) computers." CreationDate="2010-12-08T10:04:44.827" UserId="744" />
  <row Id="7890" PostId="6289" Text="But still you should be solid rock in computer graphics basics, even if you are using engine. " CreationDate="2010-12-08T10:46:24.177" UserId="3794" />
  <row Id="7892" PostId="6213" Text="Nothing wrong with NWN2, I've tried it a while back (played it and modded a abit and its one of my favorite games). The thing is i'd like to learn level-design as well as programming and I prefer a game that still has lots of players so that I could get feedback from. Plus i'd like to play something new as well ;)" CreationDate="2010-12-08T13:23:03.360" UserId="3792" />
  <row Id="7893" PostId="6216" Text="Thank you very much, looks like a good place to start learning with wiki's,guide's n all. Will probably try it soon or should I wait for next Elder Scrolls to come out next year? mmmm" CreationDate="2010-12-08T14:12:36.503" UserId="3792" />
  <row Id="7894" PostId="6216" Text="@Stucko, depends, how soon did you want to start learning game development? :) If you have the time, start now - even if the next release has differences, the basic concepts should be similar. There's no time like the present..." CreationDate="2010-12-08T14:17:54.863" UserId="165" />
  <row Id="7895" PostId="6215" Text="Yes, I'm actually looking at building levels/quests/AI but thanks Edward83 for giving the link to http://www.moddb.com, very informative site." CreationDate="2010-12-08T14:23:03.537" UserId="3792" />
  <row Id="7896" PostId="6212" Score="1" Text="I heartily agree that the overhead involved in maintaining a sparse data set storage solution is pretty high, so you'd only go for it if the balance was clearly skewed towards sparseness. The key factors here are: cost-of-data-item and probability-that-data-item-is-unused. Minecraft has a massive, massive potential data set (some large number of tiles in each direction). The actual proportion of the potential game world used is tiny. Even though you claim large swathes of it as you move around the world, it's still a tiny fraction of the potential data items." CreationDate="2010-12-08T15:18:12.873" UserId="741" />
  <row Id="7897" PostId="6300" Score="2" Text="You don't have to support both portrait and landscape for your game.  It's just if you write a game that works in portrait mode, it should also work in portrait upside-down mode." CreationDate="2010-12-08T15:19:44.463" UserId="51" />
  <row Id="7898" PostId="6212" Score="1" Text="What makes Minecraft different is that the per-unit cost is tiny - it's a single byte of storage maybe? One value indicates 'nothing there', the rest are block types, and you could easily fit that in a byte. So you wouldn't have an index to a single block, that's just mad, the index is much larger than just storing the actual block value. But the sparse data set rules still work at the higher levels. Each chunk (e.g. 64x64x64) is expensive to store (256K blocks), so if you can use a single small value to indicate it's absence, or its address if it does exist, then you've saved massive storage." CreationDate="2010-12-08T15:21:41.590" UserId="741" />
  <row Id="7899" PostId="6304" Text="This question is VERY generic. Perhaps you can add some detail to your question to narrow down the scope." CreationDate="2010-12-08T16:04:44.143" UserId="2290" />
  <row Id="7900" PostId="6305" Text="Sorry, maybe not the most helpful... but it seems like what would be intuitive would be if the critters rocked back &amp; forth to right themselves.  Or if you had a static animation sequence showing them going from on-their-backs to upright.  But maybe I'm missing your point entirely :?" CreationDate="2010-12-08T16:21:09.393" UserId="3860" />
  <row Id="7901" PostId="6305" Text="Rocking back and forth is an option, I hadn't really considered that, and would look most natural and be more realistic.  However, I'm not sure of the math to do this. Animation isn't really an option, as this is mainly a simulation rather than game per se, and interaction with other objects would be possible during the self-righting procedure. " CreationDate="2010-12-08T16:24:23.970" UserId="3872" />
  <row Id="7902" PostId="6305" Text="I'm sure in the past I've seen pseudo-physics in racing sims that will roll a car back onto its wheels in a natural looking way.  This is what I've had in mind trying to solve this problem" CreationDate="2010-12-08T16:26:54.640" UserId="3872" />
  <row Id="7903" PostId="6306" Text="My game is about guy who run through pipes, but I need to answer question why he run in pipes ?and where is he going? :/" CreationDate="2010-12-08T17:18:09.070" UserId="3875" />
  <row Id="7904" PostId="6308" Text="I would really rather avoid animation.  This is much closer to a simulation project in this respect.  I take your point about scenarios where physics based solutions could fail, though.  I really like Mordachai's suggestion of rocking back and forth.  Plus, like I said, I'm sure there are arcade racing sims with pseudo-physics methods of self-righting cars that have rolled..?" CreationDate="2010-12-08T17:24:24.213" UserId="3872" />
  <row Id="7905" PostId="6292" Text="You are my hero!  I can't even begin to tell you how many hours of my time you have saved." CreationDate="2010-12-08T17:46:18.580" UserId="3783" />
  <row Id="7906" PostId="4881" Score="2" Text="Panda3d is programmed in C++, not C." CreationDate="2010-12-08T18:08:58.047" UserId="1829" />
  <row Id="7907" PostId="6306" Text="The original Super Mario Bros. had a guy running through pipes. It didn't even pretend to explain why. The backstory (as such) was grafted on years later. Why were the aliens attacking in Space Invaders or Galaga? What was the purpose of rolling a marble through a maze in Marble Madness? No one knew or cared at the time, so the question of &quot;does your game need a story?&quot; is a valid one." CreationDate="2010-12-08T18:09:25.970" UserId="458" />
  <row Id="7908" PostId="6308" Score="2" Text="Could they just repeatedly try until they get it right?  I'm thinking of Click Beetles (see http://en.wikipedia.org/wiki/Click_beetle) and what they do.  They basically keep flipping themselves up in the air until they land upright.  It's not terribly graceful but it gets the job done." CreationDate="2010-12-08T18:11:17.110" UserId="3830" />
  <row Id="7909" PostId="5721" Score="1" Text="-1 Or he could ask it here, since this is a site for game developers and I would say a large number of people here have used Unity. Also, this would've been better as a comment since it doesn't answer the question." CreationDate="2010-12-08T18:27:08.497" UserId="1156" />
  <row Id="7911" PostId="6304" Text="This is basically asking 'how do I create a story for my game'. Which is incredibly vague." CreationDate="2010-12-08T18:29:34.410" UserId="1156" />
  <row Id="7912" PostId="6312" Text="Problem is, it might not be on its back - could be lying on its side, or even, in rare cases, its head/tail.  So problem #1 remains, how to determine the best rotation direction?  I figure some cross-producting will be involved, but I'm not sure.  Problem #2 - determining the magnitude: you don't think it's feasible to analytically calculate the size of the impulse required, then?  Best just to start small and keep increasing until correct orientation is achieved?" CreationDate="2010-12-08T19:49:58.020" UserId="3872" />
  <row Id="7913" PostId="6308" Text="Reading about those click beetles made me chuckle.  Unfortunately I'm focused on ants/termites here, which afaik can't jump :)" CreationDate="2010-12-08T19:52:23.917" UserId="3872" />
  <row Id="7914" PostId="6312" Text="No, it is feasible to calculate the impulse required, but that might make the simulation less fun, as bugs would always flip over correctly instead of sometimes messing up. And besides, I am not familiar with the physics engine you use, so wouldn't know where to start with that." CreationDate="2010-12-08T19:59:21.400" UserId="962" />
  <row Id="7915" PostId="6314" Score="1" Text="I like this question but I'm worried any answer would be _extremely_ temporal - contracts and phone models change quickly these days." CreationDate="2010-12-08T20:22:54.037" UserId="744" />
  <row Id="7916" PostId="6310" Score="1" Text="&quot;I think the guy in charge of the network part of WoW might be a real badass.&quot; Small server populations and client-side movement don't really make for bad-assery, in my opinion. Although hindsight is also 20/20." CreationDate="2010-12-08T20:26:35.780" UserId="744" />
  <row Id="7917" PostId="6271" Text="Yes, Though I am a programmer, I would like to avoid programming languages when at scripting level. Thank you for the pointer. I was hoping for something more specialized, and as I am a complete novice in game development, I thought I was missing something obvious for experts." CreationDate="2010-12-08T20:32:03.210" UserId="3853" />
  <row Id="7918" PostId="6285" Score="1" Text="AHHH! I see the issue here. He said &quot;This is generally referred to as the &quot;canonical view volume&quot; or &quot;normalized device coordinates&quot;.&quot; I was answering as if he was asking about normalized device coordinates, however he wasn't actually asking about those at all. They are, in fact, two completely different things and that is why we are at odds here. Perhaps that should be clarified so people don't make the same mistake I did." CreationDate="2010-12-08T20:40:04.700" UserId="2187" />
  <row Id="7919" PostId="6305" Score="1" Text="With the rocking, when angular velocity is below some limit and not right-side-up yet, apply an increasing force to rock back. Should get right-side-up without flipping in a couple tries." CreationDate="2010-12-08T21:36:20.303" UserId="2683" />
  <row Id="7920" PostId="6318" Text="This is a good example of what I'm talking about with temporality - Google no longer sells the Nexus directly, and no longer has any official hardware support for it. (http://www.google.com/support/forum/p/android?hl=en)" CreationDate="2010-12-08T21:51:27.317" UserId="744" />
  <row Id="7921" PostId="6318" Text="Nexus One is available in Europe. And Gingerbread will be quickly available (before any other phones). " CreationDate="2010-12-08T22:53:31.423" UserId="721" />
  <row Id="7922" PostId="6285" Text="Yes you are right. But as he mentioned projection matrix i was sure that he wnats to know exactly what projmat do. Very interesting discussion with You. Thanks." CreationDate="2010-12-08T22:58:26.457" UserId="3794" />
  <row Id="7923" PostId="6298" Text="True, i little edited my answer to be more clear about this." CreationDate="2010-12-08T23:00:40.587" UserId="3794" />
  <row Id="7927" PostId="6302" Score="1" Text="I think you should change &quot;user&quot; to &quot;developer&quot; to disambiguate it." CreationDate="2010-12-09T00:30:52.300" UserId="962" />
  <row Id="7929" PostId="6302" Text="Ah - I hadn't realized there was a way to make comments on the original question.  -1 for usability :) &#xA;&#xA;Moved my question here...&#xA;&#xA;&#xA;Do you mean for end users (players) to override the look, or for developer userd to use themes to customize the content?" CreationDate="2010-12-09T04:46:55.230" UserId="3830" />
  <row Id="7930" PostId="6302" Text="He definitely means developer and not the players. Players are not going to override events or functions." CreationDate="2010-12-09T05:00:09.627" UserId="962" />
  <row Id="7931" PostId="6224" Text="Wired or wireless?" CreationDate="2010-12-09T05:26:17.507" UserId="2307" />
  <row Id="7932" PostId="6302" Text="Milo said &quot;Sorry I implicitly meant developers&quot; in Tim's deleted answer-that-was-supposed-to-be-a-comment." CreationDate="2010-12-09T06:31:16.933" UserId="51" />
  <row Id="7934" PostId="6296" Score="1" Text="Just a (hopefully) helpful suggestion, that since answers get sorted based on votes, a reference like &quot;agreement with the above&quot; can quickly become invalid and confusing as posts shift around due to up-voting.  It's probably better to say something like, &quot;I agree with wkerslake's answer,&quot; which would be clear regardless of the current ordering of answers." CreationDate="2010-12-09T13:36:37.830" UserId="825" />
  <row Id="7935" PostId="6307" Score="1" Text="Commenting myself: there are also pro plugins that allows to program in C++, so theoretically, it's also a C++ engine..." CreationDate="2010-12-09T13:41:20.903" UserId="1829" />
  <row Id="7936" PostId="6324" Text="It depends on the OP's idea. If he's trying to learn how to do this, then sure. If his interest is to ship a working program, then it's much easier to use an existing one." CreationDate="2010-12-09T16:34:22.563" UserId="1156" />
  <row Id="7937" PostId="6314" Score="2" Text="It also completely ignores the question of country..." CreationDate="2010-12-09T17:14:11.907" UserId="741" />
  <row Id="7938" PostId="1106" Score="2" Text="Besides, most people that want to do a MMORPG are usually fall in the category of I-have-this-totally-awesome-MMORPG-idea-that-will-be-the-next-WoW...two months later you found their project abandoned, lingering on SF with just the game concept commited" CreationDate="2010-12-09T18:30:47.657" UserId="3446" />
  <row Id="7939" PostId="6329" Text="What is the developmental advantage of using this phone over using a normal phone?" CreationDate="2010-12-09T18:32:15.953" UserId="1386" />
  <row Id="7940" PostId="6339" Text="NICE! Thank you very much I think I will use it widely... it's really nice" CreationDate="2010-12-09T20:28:26.727" UserId="3787" />
  <row Id="7941" PostId="6340" Text="You should put any code in a code box so it is more readable." CreationDate="2010-12-09T21:00:19.643" UserId="962" />
  <row Id="7942" PostId="6340" Text="@AttackingHobo: Sorry, I was sure to have done it!" CreationDate="2010-12-09T21:04:06.853" UserId="3787" />
  <row Id="7943" PostId="6341" Text="@AttackingHobo: You are right but in that tutorial it explains that if I have to read data, I have to sync threads losing all the advantages that I can obtain by separating data, that's why I wrote this, I'm not sure what should I do so" CreationDate="2010-12-09T21:16:29.493" UserId="3787" />
  <row Id="7944" PostId="6203" Text="As this is still not solved i wish to let this question opened. Maybe someday i will post my solution because we really have to figure this out. But still i would be really glad for any ideas" CreationDate="2010-12-09T21:53:46.767" UserId="3794" />
  <row Id="7945" PostId="6340" Text="I might consider doing some kind of state driven drawing for my next game. I kind of like the idea any how." CreationDate="2010-12-09T22:33:32.767" UserId="3547" />
  <row Id="7946" PostId="6344" Text="Damn I forgot color!!! Thank you very much. I don't see the point for null rectangle, what will you use it for?I think textures will be spritesheets" CreationDate="2010-12-09T22:43:45.707" UserId="3787" />
  <row Id="7947" PostId="6343" Text="Thanks for the suggestion but I would like to use the multithreading approach for learning purposes" CreationDate="2010-12-09T22:46:40.680" UserId="3787" />
  <row Id="7948" PostId="2791" Text="Oh, Thanks for the query. It is going excellent thanks :) I was actually just curious/throwing the question out there for others as well. It is something fundamental that everyone might be curious about i guess. my projects are posted on http://blog.centrc.net if you really were interested. :)" CreationDate="2010-12-09T23:10:51.913" UserId="1716" />
  <row Id="7949" PostId="6343" Text="Ok. Very well, thats the reason i understand and appriciate. Thumbs up." CreationDate="2010-12-09T23:13:54.750" UserId="3794" />
  <row Id="7950" PostId="5517" Text="What you might be looking for is batching. Batching geometry together is the cheapest and most efficient way to get much more on screen at the same time. For a fully batched 2d engine in c++, you can have a look at http://phoenixgl.googlecode.com :)" CreationDate="2010-12-09T23:19:30.733" UserId="1716" />
  <row Id="7951" PostId="6300" Text="Agreed, Plus most games don't need this anyway. There are many many games that don't handle both orientations let alone both of the same orientation. " CreationDate="2010-12-09T23:23:12.803" UserId="1716" />
  <row Id="7952" PostId="6341" Text="What? You don't have to sync the assets, they should be stored somewhere static." CreationDate="2010-12-10T00:20:45.657" UserId="962" />
  <row Id="7953" PostId="6347" Text="I'm not sure I know what you are refering to when you say &quot;static background&quot;. What I'm dealing with is basicaly a 2D shooter, so it's collision detection with space ships and aliens, bullets and walls." CreationDate="2010-12-10T00:41:06.777" UserId="2469" />
  <row Id="7954" PostId="6347" Text="You just earned my private &quot;Great answer&quot; badge!" CreationDate="2010-12-10T00:41:24.077" UserId="1113" />
  <row Id="7955" PostId="6352" Text="I believe that Niels Willems wants to create an overlay for either any arbitrary game or his own, not specifically a Steam game." CreationDate="2010-12-10T04:17:20.727" UserId="2946" />
  <row Id="7957" PostId="6296" Text="Ah, yes you are right :) Editing the answer... :)" CreationDate="2010-12-10T05:02:58.600" UserId="3326" />
  <row Id="7958" PostId="2524" Score="1" Text="Unity does not use MonoTouch, just Mono itself." CreationDate="2010-12-10T06:26:44.880" UserId="2710" />
  <row Id="7959" PostId="6329" Text="Well from what I have seen... This is not a phone... Its totally a development kit for android atleast thats how they market it... With the psp gaming phone coming to the market, this device pretty much is the closest one can get to start developing games for the same form factor and testing them before they actually get the PSP phone in their hand! Links: http://dev.odroid.com/projects/odroid http://www.hardkernel.com/store.php" CreationDate="2010-12-10T07:20:18.067" UserId="3326" />
  <row Id="7960" PostId="6359" Score="1" Text="This is less of an answer, so ill comment. I used a 2 key system. I generated a unique key (UUID) which i store internally. Much like this : 39d7e998-e654-4f8b-9e4b-0e61fe9eaf65. After i make a unique ID, the player's friends can find his profile by searching for his nickname and using the first 4 letters.The chances of there being 2 'microdude:39d7' is pretty slim. If i see collisions, i can make it the first 5 or 6. Making his unique key 39d7e. This is obviously public (the characters) so that his friends can add him directly, and helps for specifying when making games over IM or chat." CreationDate="2010-12-10T08:09:35.960" UserId="1716" />
  <row Id="7962" PostId="6367" Text="HEYY...thanks a lott i've been looking for this since months !!" CreationDate="2010-12-10T09:24:11.127" UserId="1251" />
  <row Id="7963" PostId="6052" Text="er... where can I download this wonderful program?  Er, I mean great example... " CreationDate="2010-12-10T11:20:39.000" UserId="3900" />
  <row Id="7964" PostId="6352" Text="That is indeed correct, however this information is really interesting It's not specifically a Steam game that i'm looking to code an overlay for." CreationDate="2010-12-10T11:44:14.070" UserId="3854" />
  <row Id="7965" PostId="6356" Text="Pivot: yes, think about a sword. Facing: I was thinking about (it's an action side scroller game engine) facing left or right, the char can go left or right but the image should be mirrored based on this. Draw Order: You are totally right" CreationDate="2010-12-10T13:15:59.380" UserId="3787" />
  <row Id="7966" PostId="6365" Text="-1. While questions of this sort are generally appropriate here, there's just not enough information in this one. What kind of game are you making? How often do you look up moves? How many moves are there?" CreationDate="2010-12-10T13:50:01.737" UserId="744" />
  <row Id="7967" PostId="6379" Text="Yes - thank you a lot. I have been playing with it for a while, a bit perplex on the user interface and conception, but this is the kind of thing I am looking for." CreationDate="2010-12-10T16:18:43.510" UserId="3853" />
  <row Id="7968" PostId="6359" Text="How long do the keys need to stay valid?  This would influence how unique they need to be and whether you can reuse old keys or not." CreationDate="2010-12-10T16:22:10.687" UserId="3830" />
  <row Id="7969" PostId="6346" Text="I want my uv mapping being relative to the level, like the inverse of this:  http://stackoverflow.com/questions/1383937/draw-polygon-to-clip-texture-to-be-transparent-where-polygon-is-openglel&#xA;And my level is bigger than the screen so scroll around." CreationDate="2010-12-10T16:57:35.740" UserId="457" />
  <row Id="7970" PostId="6385" Text="Thank you very much. I'm already familiar with jQuery as it is an amazing library! Thank you, again!" CreationDate="2010-12-10T17:59:19.297" UserId="3923" />
  <row Id="7971" PostId="6377" Text="This is what i ended up doing, so i'll accept it as the answer haha." CreationDate="2010-12-10T18:13:52.120" UserId="1292" />
  <row Id="7972" PostId="6365" Text="I think I have asked this question on a wrong place, SO is the best to ask every kind of questions. see this: http://stackoverflow.com/questions/4407307/game-design-improvement" CreationDate="2010-12-10T18:31:53.600" UserId="3276" />
  <row Id="7973" PostId="6365" Text="still thanks..." CreationDate="2010-12-10T18:33:23.317" UserId="3276" />
  <row Id="7974" PostId="6359" Text="@Tim the keys could be valid for at most 2 hrs." CreationDate="2010-12-10T18:36:11.790" UserId="3276" />
  <row Id="7975" PostId="6362" Text="good, I think I should go with usernames, atleast they will not be duplicate, and they are even user friendly. thanks :)" CreationDate="2010-12-10T18:59:20.527" UserId="3276" />
  <row Id="7976" PostId="6376" Text="thank you for your suggestion, I will now use usernames as unique key as suggested by @Tetrad." CreationDate="2010-12-10T19:00:13.020" UserId="3276" />
  <row Id="7977" PostId="6389" Text="thank you for your suggestion, I will now use usernames as unique key as suggested by @Tetrad." CreationDate="2010-12-10T19:16:09.030" UserId="3276" />
  <row Id="7978" PostId="6364" Text="thank you for your suggestion, I will now use usernames as unique key as suggested by @Tetrad." CreationDate="2010-12-10T19:16:33.303" UserId="3276" />
  <row Id="7979" PostId="6362" Text="+1 to user name idea.  Already unique!" CreationDate="2010-12-10T19:21:17.560" UserId="3830" />
  <row Id="7980" PostId="6392" Text="Was about to write something similar, this is way easier than playing with polygons." CreationDate="2010-12-10T21:02:02.600" UserId="3505" />
  <row Id="7981" PostId="6398" Text="If Farseer doesn't have (hopefully) gc collection problems, it's perfect... I'll work to make my code works without any kind of &quot;new&quot; during play-phase!" CreationDate="2010-12-11T01:04:14.283" UserId="3787" />
  <row Id="7982" PostId="4971" Text="To expand on Tetrad's RTFM, the article he links to states...&#xA;&#xA;&quot;Users of Microsoft's free XNA Studio development tools will, at some point, be able to develop games that use Xbox 360's Kinect sensor, according to one Microsoft developer advocate.&quot;&#xA;&#xA;Kind of ironic you can't get to the device from XNA, but you can from a Mac or PC." CreationDate="2010-12-11T02:09:51.533" UserId="3830" />
  <row Id="7983" PostId="6344" Text="They might not be always sprite sheets. Just in the off chance, but yeah your right, they probably won't be like 99% of the time for game entities." CreationDate="2010-12-11T03:32:34.117" UserId="3547" />
  <row Id="7984" PostId="6399" Text="+1 In hopes that you can soon post additional useful answers with more links." CreationDate="2010-12-11T03:34:17.493" UserId="962" />
  <row Id="7985" PostId="6392" Text="Yeah, you also get pixel perfect precision. Messing with polygons is just a mess." CreationDate="2010-12-11T03:38:12.387" UserId="3547" />
  <row Id="7986" PostId="6365" Text="If it works, why mess with it. This is probably a better question to ask on SO. Still, having a list of moves could be useful, as long as it doesn't become a bottle neck. (do moves occur multiple times per frame, are large numbers of moves needed) I doubt there will be a problem though." CreationDate="2010-12-11T04:47:13.760" UserId="3547" />
  <row Id="7987" PostId="6400" Score="1" Text="I'm not exactly sure if you can do that on the Xbox if your just using XNA. I thought the only way to communicate over the net would be to use their network API. Maybe you could have a server that would connect to facebook for your clients. I don't know about their actual XDK." CreationDate="2010-12-11T04:48:54.007" UserId="3547" />
  <row Id="7988" PostId="6402" Text="There is too little info here. &quot;I find the current height and the future height of the camera.&quot; **How?** &quot;Then, I check if the character is attempting to go up a too steep hill&quot;. **How?** &quot;and if so, I prevent the character from moving.&quot; **How?** Why are you checking the future position of the camera rather than of the character?" CreationDate="2010-12-11T06:19:02.450" UserId="1113" />
  <row Id="7990" PostId="6264" Text="I like your answer very much, and I think I will implement it with randomness :)" CreationDate="2010-12-11T07:15:48.017" UserId="3817" />
  <row Id="7991" PostId="6272" Text="You are completely right Kylotan.&#xA;&#xA;I had some ideas about the fight before starting the design of the game. However, I posted this question asking if there is a better way to design it and find out what is the best way to implement it.&#xA;&#xA;I won on the both purpose I guess :) &#xA;&#xA;My friend, Could you please tell me where I can find more information about those Mathematical approaches?&#xA;&#xA;Also, if I answers all the questions you ask about choosing the system, can you advice me which one work best for my case?&#xA;&#xA;&#xA;Thank you very much for your time :)&#xA; " CreationDate="2010-12-11T07:31:24.647" UserId="3817" />
  <row Id="7992" PostId="6394" Text="when i use glDisable(GL_TEXTURE_2D) after drawing the object that need texture , all the scene is without texture . I don't have glPush/PopAttrib() (i'm using opengl es 1.0)" CreationDate="2010-12-11T08:22:25.670" UserId="3461" />
  <row Id="7993" PostId="6392" Score="2" Text="+1 (because it's an easy and fast solution), although it will use more data and might not be as resolution-independent as the polygon approach." CreationDate="2010-12-11T08:53:11.817" UserId="20" />
  <row Id="7995" PostId="6403" Text="Because if you don't, you are catering to a shrinking market. If you do, you are catering to a growing market... " CreationDate="2010-12-11T12:16:05.277" UserId="1923" />
  <row Id="7996" PostId="6404" Text="5.6% DX 11.. May 2010. How long before this number reaches at least a 50% majority?" CreationDate="2010-12-11T12:36:36.430" UserId="998" />
  <row Id="7997" PostId="6404" Score="1" Text="Check this out .. [Q2 2010 57% of Unity users on Win XP](http://unity3d.com/webplayer/hwstats/pages/web-2010Q2-os.html).  This means _over half_ are stuck on __DX 9__." CreationDate="2010-12-11T12:40:31.917" UserId="998" />
  <row Id="7998" PostId="6413" Text="this is what i'm looking for thanks a lot" CreationDate="2010-12-11T13:14:23.333" UserId="3461" />
  <row Id="8000" PostId="6414" Score="4" Text="I mostly agree with you, except that C++ tends to produce bad data layouts more easily than C, even when not using inheritance, since people first group by public/protected/private rather than field size or cache relation. I'll also often find people passing things by reference when they could by value much faster, because the thing is only 32-64 bits in size. These are all avoidable, but as a result &quot;idiomatic C++&quot; (especially idioms learned outside game development) is often slower than idiomatic C." CreationDate="2010-12-11T13:44:33.303" UserId="744" />
  <row Id="8001" PostId="6355" Text="What the hell are you ranting about?! ..." CreationDate="2010-12-11T13:45:33.013" UserId="2862" />
  <row Id="8002" PostId="6412" Score="6" Text="-1, I don't see a real question here. Maybe &quot;How good are compilers?&quot; (too vague, depends on the compiler) or &quot;Should I force bad programmers to use fewer C++ features?&quot; (take that crap to programmers SE)." CreationDate="2010-12-11T13:46:50.900" UserId="744" />
  <row Id="8003" PostId="6404" Score="2" Text="It's worth noting that Steam and Unity users are self-selecting sets of data. Steam users especially are dominated by those who chase relatively recent games (although less so than in the past now Steam has a large casual game section). Casual gamers will typically skew much lower down the hardware scale." CreationDate="2010-12-11T13:52:11.820" UserId="741" />
  <row Id="8004" PostId="6400" Text="I don't believe this question can be answered without breaching the NDA terms for either PS3 or X360. Which is probably why you can't find anything concrete online. If you could, those behind it could be struck off as licenced developers" CreationDate="2010-12-11T14:01:10.433" UserId="741" />
  <row Id="8005" PostId="6417" Text="Development on PS3 Linux does not require permission from Sony, although they have deprecated/removed it from current PS3s, and you don't have access to the blu-ray or video card." CreationDate="2010-12-11T14:03:42.577" UserId="744" />
  <row Id="8006" PostId="6417" Text="Oh yes, you're absolutely right, I forgot about that. Will amend the answer accordingly" CreationDate="2010-12-11T14:05:04.937" UserId="741" />
  <row Id="8007" PostId="6418" Score="2" Text="This is demonstrably false and you are a troll." CreationDate="2010-12-11T14:10:45.883" UserId="288" />
  <row Id="8008" PostId="6272" Text="I can't tell you which will be best, but you should probably start simple and improve on that if you need to. Travian seems to have a simple attack vs. defence system, with 2 unit types (infantry and cavalry) and 2 defence scores per unit accordingly. An easy way to resolve a battle, as used in Civilization 1, is to divide the attackers attack score by the total of that plus the defender's defence score. This gives you a percentage. Now pick a random number between 0 and 100 percent. If it's lower than the attacker's attack score, the attackers win. Otherwise the defenders win." CreationDate="2010-12-11T14:20:38.683" UserId="1101" />
  <row Id="8009" PostId="765" Score="1" Text="This really shouldn't be a CW because the answers require expertise.  CW is &quot;fav game of 2010&quot;, which anyone can do, but these answers require know-how on part of the answerer." CreationDate="2010-12-11T14:29:11.673" UserId="998" />
  <row Id="8010" PostId="6409" Score="6" Text="I don't have an answer, but I do have the same problem! Simple games don't interest me; complex games will take too long." CreationDate="2010-12-11T14:34:07.410" UserId="1101" />
  <row Id="8011" PostId="6411" Score="1" Text="Thanks for the Ludum Dare heads-up!" CreationDate="2010-12-11T14:40:03.800" UserId="1101" />
  <row Id="8012" PostId="6412" Score="2" Text="I would alter the title. 'isn't better to not use' is confusing." CreationDate="2010-12-11T14:49:03.870" UserId="1156" />
  <row Id="8013" PostId="6403" Score="1" Text="DX9 is not a shrinking market (or rather, if it is, it's only because people are moving off DX-supporting platforms entirely). It's not like DX9 magically stops running when DX11, 12, or 13 come out." CreationDate="2010-12-11T14:54:14.003" UserId="744" />
  <row Id="8015" PostId="6423" Text="Remembers me Strousup saying &quot;you can't teach new trick to an old dog&quot; while speaking about Torvalds's C++ name-calling :) Being a control freak surely has its advantages when you code a lot, but for people who want to get it done it's not always the way it can be done." CreationDate="2010-12-11T17:58:33.057" UserId="1829" />
  <row Id="8016" PostId="6417" Text="Yeah, I started to realize that based on the various NDAs, I would be unlikely to find anything outside of their sanctioned sites.  Thanks!" CreationDate="2010-12-11T18:26:16.873" UserId="825" />
  <row Id="8017" PostId="6426" Score="9" Text="Are you basically saying 'Is .NET as good as Java for games'? In which case, the answer's yes. Same for 99% of any language to replace .NET in that sentence. -1." CreationDate="2010-12-11T19:28:52.193" UserId="1156" />
  <row Id="8018" PostId="6426" Score="1" Text="Did I write such thing? No. I'm asking if you can build a game like Minecraft(not any kind of game) using .NET instead of Java. Do you have the tools in .NET to do it? I hate when people like you interpret questions in their own retard way. &quot;Same for 99% of the languages to replace .NET&quot; What on Earth are you talking about ?  " CreationDate="2010-12-11T19:39:38.923" UserId="3938" />
  <row Id="8019" PostId="6426" Text="Languages are just tools and they're not the same. So no, you can't build a game like that using Cobol or Ruby. " CreationDate="2010-12-11T19:43:30.340" UserId="3938" />
  <row Id="8020" PostId="6393" Text="Thanks, I saw you sell Moblox on both AM and YAAM is it possible to share which sells more?" CreationDate="2010-12-11T19:49:57.827" UserId="3885" />
  <row Id="8021" PostId="6426" Score="5" Text="It seems a lot like 'does .NET have the same graphical and speed capabilities that Java has?'. Since that's what the language has, it seemed to me to be asking if .NET is as good at it. I meant that you could say 'Is C++/Python/Actionscript/etc as good as Java?'. And Ruby you could, I bet. COBOL less so. " CreationDate="2010-12-11T20:03:27.847" UserId="1156" />
  <row Id="8022" PostId="6430" Text="YES! Thats it. Thanks." CreationDate="2010-12-11T20:10:37.603" UserId="2998" />
  <row Id="8023" PostId="6426" Text="Can you please clarify if you want the game written in .NET/MONO to run on any platform, or is it OK to only run on the Microsoft platform? " CreationDate="2010-12-11T20:29:49.727" UserId="3830" />
  <row Id="8024" PostId="6393" Text="Android Market... But, Yaam is useful only for users, who can't buy it with google checkout. So that's not fair." CreationDate="2010-12-11T21:13:21.177" UserId="721" />
  <row Id="8025" PostId="6409" Text="I am also struggling with this. Even when you come up with something a tid bit on the simple side it soon grows into something far too developed and large. The main thing is to finish stuff, but it's hard to limit creativity." CreationDate="2010-12-11T21:40:01.020" UserId="3547" />
  <row Id="8026" PostId="6434" Text="I've played a lot of twin stick shooters on the iPhone, and none of them reset their position.  Personally I wouldn't like it, since I would prefer to know where &quot;up&quot; is from muscle memory.  I have played a game on the iPhone that does that (that isn't a twin stick shooter), Dropship, and it didn't feel like as good a solution." CreationDate="2010-12-11T23:49:04.553" UserId="51" />
  <row Id="8027" PostId="6402" Text="The data of the terrain is held in a multi-dimensional array (float[][], which takes the x and z component and holds its height). So I basically get the height for the current camera position and its future one(which is its current position + its velocity in my case) by putting the positions' x and z components in that array and I get the height. As I said, I check if it's going up a steep hill by checking the difference between both heights. I prevent the character from moving by not adding its velocity to its position. And in my case the camera IS the character." CreationDate="2010-12-12T01:46:43.440" UserId="2111" />
  <row Id="8028" PostId="6426" Score="5" Text="For some reason I'm now really tempted to go make a Fortrancraft just for the hell of it." CreationDate="2010-12-12T03:53:23.503" UserId="395" />
  <row Id="8029" PostId="6444" Text="I'll add one more thing, performance reasons might have you loading pieces of the map over time, but I think for most practical games it really doesn't matter unless your developing on mobile devices." CreationDate="2010-12-12T09:34:18.603" UserId="2910" />
  <row Id="8030" PostId="6444" Text="This may be true, but it could've been nice to give some general ways this is done." CreationDate="2010-12-12T11:41:57.957" UserId="1156" />
  <row Id="8031" PostId="6409" Text="+1 I have the same problem too. Also if you are interested in doing a hobbyist game development project of the idea of yours. Count me in" CreationDate="2010-12-12T13:04:53.760" UserId="1251" />
  <row Id="8032" PostId="210" Text="Great point there, when you optimise code its really worth understanding the platform your trying to optimise for. That wasnt really a comment about value types/reference types, any long lived object is not likely to be on the stack. Its really about making sure your getting as much of your allocations done at load time as possible you dont hit that magical 1mb barrier during game play. All the .net implementations that xna targets aslo have a neat guarantee, objects allocated close together in time will be close in space, which can be nice for perf. " CreationDate="2010-12-12T15:18:22.350" UserId="120" />
  <row Id="8033" PostId="210" Text="Also looks like i forgot to mention that the current compact framework on the xbox is allergic to inlineing method calls. Keep that one for your worst case perf scenarios though, using the ref versions of the maths methods looks ugly enough as it is!" CreationDate="2010-12-12T15:20:45.000" UserId="120" />
  <row Id="8034" PostId="6423" Text="Stroustrup is 20 years older than Linus or Carmack and both have had ample experience working in C++ and dozens of other languages - Who's the &quot;old dog&quot; in this case?" CreationDate="2010-12-12T15:25:32.383" UserId="744" />
  <row Id="8035" PostId="6446" Text="Thanks for explaining the pros and cons!" CreationDate="2010-12-12T15:33:34.173" UserId="3955" />
  <row Id="8036" PostId="6409" Text="Why not just spend a long (relaxed) time on a more complex one? Or at least, start with a simple idea which can be branched upon. I mean, my current project is a roguelike/RPG/thing. It wouldn't be overly complex, but I have ideas for other features (namely a pseudo-infinite wilderness world with NPCS, villages,  dungeons, etc generated on the fly)." CreationDate="2010-12-12T17:20:46.287" UserId="1156" />
  <row Id="8037" PostId="6447" Text="Thanks for a great answer, this has cleared it all up a lot to me! (P.S good luck with your project :)" CreationDate="2010-12-12T17:34:53.277" UserId="3955" />
  <row Id="8038" PostId="6444" Text="While I understand, I used to be in that position &quot;How do I do 'this'&quot;. I learned the hard way in a graphics course I took, we needed to implement A* with a Navigation mesh. I spent hours researching, reading and trying to look for ways to do it. Ultimately, it never got done. What lesson did I learn? I should have just done it the way I understood how to do it before I convoluted my brain with complications." CreationDate="2010-12-12T18:51:54.007" UserId="2910" />
  <row Id="8039" PostId="6433" Text="Completely unrelated: If you want to sell that game, I think you should make the demo easier, and perhaps also a bit longer. People like games that they are &quot;good&quot; at." CreationDate="2010-12-12T19:45:56.040" UserId="3505" />
  <row Id="8040" PostId="6400" Text="Indeed, the way you'd do this on an Xbox would be to set up an XLSP server that mirrors requests from the player to Facebook and back. I probably can't say more than that." CreationDate="2010-12-12T19:55:00.620" UserId="744" />
  <row Id="8041" PostId="6450" Text="kudos to you :)" CreationDate="2010-12-12T22:36:42.430" UserId="241" />
  <row Id="8042" PostId="6385" Text="Definitely use jQuery - awesome language.&#xA;&#xA;Fuu, your answer is definitely more elegant than mine and the way I'd go if I were to give the example more time.  jQuery + JSON to get map data would be the way to go." CreationDate="2010-12-12T22:40:35.580" UserId="3830" />
  <row Id="8043" PostId="6450" Text="Definitely look at Fuu's example.  You might be able to use my method of positioning hex images and determining clicks combined with his suggestion of jQuery and JSON.&#xA;&#xA;Oh you might look at how I overlay the highlight onto the map.  It's just an image, but I've set the z-index style property to a higher number than the tiles - meaning it is drawn later.  You could use the same idea to overlay a player, markers, clouds drifting by, about anything you'd want to do." CreationDate="2010-12-12T22:45:13.270" UserId="3830" />
  <row Id="8044" PostId="6452" Score="1" Text="interestingly (although I'm not sure all that helpful to you), I recall reading many articles on Japanese game designers who don't like playing games. I think the guy behind RE was one who said he doesn't game... also I don't think Miyamoto games much anymore (judging from interviews) as he did in his younger days. I remember recently reading about a Jap developer saying playing games would take away from the purity of his designs, which reminded me of a similar 1800s composer saying something along those lines. I wish I could find some of these interviews!" CreationDate="2010-12-13T02:08:59.693" UserId="982" />
  <row Id="8045" PostId="6400" Text="It'd be really neat to have nice, extensive facebook integration." CreationDate="2010-12-13T03:07:45.500" UserId="3547" />
  <row Id="8046" PostId="6452" Text="Inverted question marks is a Spanish feature, it's wrong to use it in English. @Jeff, careful with your acronyms, you can't write two letters out of context and expect people to guess what you are referencing. Using my incredible Google-fu I have determined that you most likely mean Resident Evil, but finding that out is really a waste of time." CreationDate="2010-12-13T03:37:04.240" UserId="3505" />
  <row Id="8047" PostId="6452" Text="@Jeff: Thanks for the reply. You should post it as an answer though, I think it qualifies as one (event more if you happen to find the links to the interviews ;) )" CreationDate="2010-12-13T03:51:09.903" UserId="3446" />
  <row Id="8048" PostId="6452" Text="@eBusiness: I know it's a Spanish feature and though I know it's not used in English, I thinks it makes sense to have an opening and ending &quot;tag&quot;. Still, I can't see how is that relevant to the question (it's not like I'm writing in LOLCat or l33t); should you feel annoyed by that, please edit the question." CreationDate="2010-12-13T03:55:12.660" UserId="3446" />
  <row Id="8049" PostId="6449" Text="Was this for standard Xbox 360 games, or for XNA, Xbox Live games?  Thanks for the info!" CreationDate="2010-12-13T05:23:52.433" UserId="825" />
  <row Id="8050" PostId="6456" Score="2" Text="-1, &quot;what game should I make&quot; isn't really a good question.  Also for beginning games there's already a pretty thorough list here. http://gamedev.stackexchange.com/questions/854/what-are-good-games-to-earn-your-wings-with" CreationDate="2010-12-13T06:25:49.320" UserId="51" />
  <row Id="8051" PostId="6450" Text="Erk - didn't test it on Firefox.  I've updated the code with a new bit of code to determine the click location &amp; now works on Firefox.&#xA;&#xA;This is why you use jQuery, so you don't have to worry about this stuff :)" CreationDate="2010-12-13T06:40:55.197" UserId="3830" />
  <row Id="8052" PostId="6449" Text="Standard 360 game. XNA games are never allowed to talk to anything other than other copies of that game no matter what (figured that was understood as a given)." CreationDate="2010-12-13T06:52:30.277" UserId="395" />
  <row Id="8053" PostId="6374" Text="I second Christer Ericson's 'Real Time Collision Detection', the book is great. You might want to mention the related [blog](http://realtimecollisiondetection.net/blog) as well. +1" CreationDate="2010-12-13T08:36:48.777" UserId="653" />
  <row Id="8054" PostId="6224" Text="multiple wireless" CreationDate="2010-12-13T09:51:14.027" UserId="1428" />
  <row Id="8055" PostId="6452" Text="It may make sense, but it disturbs the reading flow when you are not used to it. You may as well for that matter have filled in a bunch of 1337$þ34|&lt;." CreationDate="2010-12-13T11:32:12.347" UserId="3505" />
  <row Id="8056" PostId="6464" Text="Your question is not completely coherent, you probably need to think it through a bit more on your own, then we can start doing some real evaluation." CreationDate="2010-12-13T12:43:32.953" UserId="3505" />
  <row Id="8057" PostId="6012" Text="I wonder if ogre has an equivalent" CreationDate="2010-12-13T12:55:16.737" UserId="1829" />
  <row Id="8058" PostId="6426" Text="I don't see why this would get downvotes, so I'm upvoting." CreationDate="2010-12-13T13:05:58.213" UserId="2111" />
  <row Id="8059" PostId="6467" Score="1" Text="If you're writing formal game rules, you're coding. You might be coding in a higher level language, but you're coding. If you want any amount of flexibility, that code is going to be &quot;hard&quot; to write, in the sense you will have to make difficult - and probably often wrong - architectural design decisions and game design decisions. Thinking through a design is fundamentally challenging, and there's no avoiding that. There's no silver bullet." CreationDate="2010-12-13T15:19:52.353" UserId="744" />
  <row Id="8060" PostId="6467" Text="(-1 and vote to close because this is another request for the magic &quot;make my game&quot; button.)" CreationDate="2010-12-13T15:20:35.177" UserId="744" />
  <row Id="8061" PostId="6218" Text="I think the question was taken over from the list of &quot;good questions&quot; from area51. So definitely not a troll, but maybe also not a question that the OP would have asked for his own. I could be wrong though. " CreationDate="2010-12-13T15:27:17.990" UserId="20" />
  <row Id="8062" PostId="6469" Text="Did you consider using a State-Machine for your game loop? I'm pretty sure your game would benefit from it. Just imagine that you'll have to add an intro, cut-scene etc. to your game. That's going to be a lot of *ifs*. I suggest you read this question and the answers: http://gamedev.stackexchange.com/questions/651/tips-for-writing-the-main-game-loop" CreationDate="2010-12-13T15:36:44.307" UserId="20" />
  <row Id="8063" PostId="6469" Text="I have been unsuccessful in implementing state machines into the game. My 'game loop' is actually a thread just drawing things on to the screen. When the user touches the menu, I think of it as an 'interrupt' handled in a different thread which has to synchronize with the view so that I don't get concurrency errors. These two threads are only instantiated when the user is doing a 'battle' and I should be able to use these two threads w/diff inputs in a different 'battle'. I think another class outside will handle the actual state machine to determine what point of the game I am currently in." CreationDate="2010-12-13T15:51:34.327" UserId="3659" />
  <row Id="8064" PostId="6445" Score="1" Text="You can use many AI algorithms, so &quot;which one&quot; is a design (or possibly engineering) tradeoff. Do you want a &quot;perfect&quot; AI that can &quot;solve&quot; the game (i.e. play optimally)? Or do you want a &quot;game&quot; AI that plays good enough to not embarrass itself, but weak enough that it is beatable (especially if you want several difficulty levels)? Or do you just want a bare-bones &quot;dumb&quot; AI that plays without logic so you can test the game? Lots of choices, none inherently right or wrong." CreationDate="2010-12-13T16:40:29.313" UserId="458" />
  <row Id="8065" PostId="6467" Text="To clarify: nope I am NOT looking for any magic. What I am looking for are tools allowing to concentrate more on the &quot;logic&quot; of a game and not having to code all the screen/input/ui stuff thus the &quot;model driven&quot; naming..." CreationDate="2010-12-13T16:44:44.803" UserId="751" />
  <row Id="8066" PostId="6467" Text="@Joe: please observe the restriction to some simple rule sets ala match 3 games... the coding of the rules there for sure is of several levels of complexity LOWER than needed maybe in other game types..." CreationDate="2010-12-13T16:47:27.737" UserId="751" />
  <row Id="8067" PostId="6005" Text="Electro was this useful to you, if so can you accept the answer?" CreationDate="2010-12-13T17:14:21.597" UserId="2787" />
  <row Id="8068" PostId="6232" Text="&quot;I'd say start with simpler things. Have him write pong, and then space invaders.&quot; [Game Maker](http://www.yoyogames.com/gamemaker) and [The Games Factory](http://www.newgrounds.com/wiki/creator-resources/game-dev-resources/the-games-factory-2) are both excellent for getting into this sort of simple 2D thing." CreationDate="2010-12-13T17:28:34.580" UserId="1317" />
  <row Id="8069" PostId="6465" Text="+1 for mentioning Kongregate since it takes care of a lot of the pain.  Here is a link to the Kongregate Developer Center...&#xA;&#xA;http://www.kongregate.com/developer_center" CreationDate="2010-12-13T17:35:23.203" UserId="3830" />
  <row Id="8071" PostId="6450" Text="This is amazing! Thank you so much!" CreationDate="2010-12-13T18:00:57.857" UserId="3923" />
  <row Id="8072" PostId="1245" Score="1" Text="The OP never specified a version. And the topic is 'XNA', not 'XNA 4'." CreationDate="2010-12-13T18:38:19.687" UserId="1156" />
  <row Id="8073" PostId="6467" Text="You mean a game engine? That would deal with all the screen/input/ui stuff." CreationDate="2010-12-13T18:41:59.247" UserId="1156" />
  <row Id="8074" PostId="6473" Text="I would've said first point is untrue, since there are several links here that have Lua&lt;-&gt;C#." CreationDate="2010-12-13T18:43:22.100" UserId="1156" />
  <row Id="8075" PostId="6467" Score="1" Text="So what would this API look like? Can it make anything other than Bejeweled? Anything other than Bejeweled with a variable number of colors? Oh, you want some temporal modeling in there too? Suddenly, it's a programming language. There's no part of a high-level language like Python or Lua that you can remove and make such development easier. What you're asking for isn't &quot;not coding&quot;, it's asking for someone to have already built an API that abstracts the entire design space for you already - and that's asking for magic." CreationDate="2010-12-13T18:59:29.893" UserId="744" />
  <row Id="8077" PostId="6473" Text="You can only run managed code on the Xbox. A Lua &lt;-&gt; C# bridge is unmanaged code allowing you to call Lua from managed code; until MS includes it in XNA or the Xbox 360 OS, you can't run it there." CreationDate="2010-12-13T19:05:20.403" UserId="744" />
  <row Id="8078" PostId="6478" Score="2" Text="Do you mean port/put? I don't think become works. :P However, +1 interesting question." CreationDate="2010-12-13T19:16:23.977" UserId="1156" />
  <row Id="8079" PostId="6449" Text="Perfect, thanks for clarifying" CreationDate="2010-12-13T19:26:02.967" UserId="825" />
  <row Id="8081" PostId="6478" Text="As far as I know, you can release a &quot;Windows Phone&quot; game and only pay the $99 &quot;AppHub&quot; fee -- to be &quot;Xbox Live&quot; I believe you need a contract with Microsoft, that said, I've looked around and can't find any documentation on that." CreationDate="2010-12-13T21:20:54.970" UserId="1198" />
  <row Id="8082" PostId="6466" Text="Have you looked into XNA? As a C# programmer, it is really, really, amazing." CreationDate="2010-12-13T21:23:10.287" UserId="1198" />
  <row Id="8083" PostId="6347" Text="This might sound stupid but how do I actually use my quadtree to select against which other objects an object should test collisions ? I'm unsure about how this is done.&#xA;Which brings up a second question. Say I have an object in node that is not a neighbor of another node, but that the object is large enough that it spans a few nodes, how can I check for an actual collision, since I'm guessing the tree might consider it's not close enough to collide with objects in a &quot;far away&quot; node ? Should objects that don't completely fit in a node be kept in the parent node ?" CreationDate="2010-12-13T21:47:58.070" UserId="2469" />
  <row Id="8084" PostId="6347" Score="1" Text="Quat-tree's are inherintly sub-optimal for overlapping bounding box searches.  The best choice for that is usually an R-Tree.  For quad-trees, if most objects are roughly point-like, then yes, it's reasonable to keep objects at inner nodes, and perform exact collision testing on a fuzzy neighbor search.  If most objects in the index are large and overlap without colliding, A quad tree probably is a poor choice.  If you have more technical questions about this, you should consider taking them to stackoverflow.com" CreationDate="2010-12-13T22:16:55.253" UserId="3900" />
  <row Id="8085" PostId="6465" Text="There's no reason it *has* to look like SC2, you can import custom assets with relative ease using plugins for your favorite 3d modeler (so long as your favorite is 3dsmax)" CreationDate="2010-12-13T22:24:07.133" UserId="3900" />
  <row Id="8086" PostId="6347" Text="All this is pretty confusing! thanks for the info." CreationDate="2010-12-13T22:55:06.857" UserId="2469" />
  <row Id="8088" PostId="6479" Text="Make sure your XNA project actually targets the .NET Client 4.0 profile. I've seen people make that mistake. Could you say what happens when you run it. Does something come up?" CreationDate="2010-12-13T23:02:58.010" UserId="3547" />
  <row Id="8089" PostId="6479" Text="Yeah, sorry I forgot to mention that. It does target the .NET Client 4.0 profile. All the output that ever happens it in the question (nothing ever shows but the error)." CreationDate="2010-12-13T23:05:25.303" UserId="3982" />
  <row Id="8091" PostId="6474" Score="1" Text="+1 Separating graphics and logic is a nice way to go." CreationDate="2010-12-13T23:07:59.990" UserId="3547" />
  <row Id="8092" PostId="4460" Score="1" Text="I strongly recommend XNA for beginners. I've had a pretty good experience with it." CreationDate="2010-12-13T23:10:12.220" UserId="3547" />
  <row Id="8093" PostId="6426" Score="1" Text="Any complete language can be used to write a program duplicating the functionality of a program written in another complete language. Whether the language is normally interpreted or compiled, has efficient libraries for _, etc. are side issues, especially when you consider that a &quot;slow&quot; language may run faster on new hardware than a &quot;fast&quot; language on old hardware. The answer to the question in the title is Yes, and it's a bad question. The answer asked in the post is entirely subjective, and thus inappropriate for this site. I'd wager this would even be rejected on programmers.se." CreationDate="2010-12-13T23:10:57.117" UserId="3325" />
  <row Id="8094" PostId="6445" Text="I would think you'd need an algorithm developed specifically for this problem, although you may be able to use various techniques/algorithms within it.  You might get a good answer on http://ai.stackexchange.com/" CreationDate="2010-12-13T23:14:34.430" UserId="3325" />
  <row Id="8095" PostId="6478" Text="@Nate, Omnion: Answers to the question should be, well, answers. Not comments." CreationDate="2010-12-13T23:15:03.140" UserId="744" />
  <row Id="8096" PostId="6466" Text="I'm assuming he is looking at Windows Phone 7, so probably he is looking into XNA or Silverlight." CreationDate="2010-12-13T23:23:55.487" UserId="3547" />
  <row Id="8097" PostId="6424" Text="There were some issues. I corrected them and have posted the updated code in my question." CreationDate="2010-12-14T00:32:00.027" UserId="1217" />
  <row Id="8099" PostId="6478" Text="@Joe I made it a comment because I don't have a source for what I said, its just my feeling." CreationDate="2010-12-14T01:08:32.350" UserId="1198" />
  <row Id="8100" PostId="6484" Text="I'll take a look and see if LWJGL uses AWT, I'm not too sure (and I'm not very familiar with LWJGL as of yet)." CreationDate="2010-12-14T01:13:21.700" UserId="2289" />
  <row Id="8101" PostId="4462" Text="What does Ctrl+P do?" CreationDate="2010-12-14T01:17:09.240" UserId="2946" />
  <row Id="8102" PostId="6484" Text="But hopefully it gives you an idea.  Get the drawing area, then the platform window info, then the hWnd." CreationDate="2010-12-14T01:18:44.777" UserId="3325" />
  <row Id="8103" PostId="6409" Score="2" Text="@The Communist Duck: I can't speak for Kragen but my reason for not doing that is simply that I've done it several times before, and never finished these projects. That's fine if you enjoy the journey as much as the destination but I personally want to get to finishing games, not just starting them." CreationDate="2010-12-14T01:48:53.867" UserId="1101" />
  <row Id="8104" PostId="6409" Score="2" Text="@The Communist Duck - This is my first real attempt at making a game - although I'd love to work on a long-running project, I think I'm likely to learn a lot from working on a game that I manage to finish." CreationDate="2010-12-14T01:58:04.073" UserId="2612" />
  <row Id="8105" PostId="6478" Text="To clarify I am interested in learning how a developer submits a game to the Live library of games. Live is a managed portfolio meaning you have to sign a deal with Microsoft to be a part of it.I was curious if anyone had experience tackling this problem either on the xbox or the phone." CreationDate="2010-12-14T02:31:22.787" UserId="539" />
  <row Id="8106" PostId="6452" Text="@Gastón: Even though some of those Japanese developers don't play games much anymore (or they believe that playing games hurts their originality) a lot of other developers rely on playing games. id for example literally played every game that came out back in the SNES days (you can watch video tours of them on youtube and see them doing such &quot;research&quot;). So it really depends on your philosophy I guess" CreationDate="2010-12-14T03:05:22.513" UserId="982" />
  <row Id="8107" PostId="6479" Text="Make sure the appropriate version of DirectX is installed on that machine?" CreationDate="2010-12-14T03:24:30.990" UserId="3547" />
  <row Id="8108" PostId="6479" Text="@Omnion I'm reasonably sure that the XNA redistributable bundles the appropriate version of DirectX." CreationDate="2010-12-14T03:35:23.673" UserId="288" />
  <row Id="8109" PostId="523" Text="So how did it go? Share your results with us?" CreationDate="2010-12-14T03:39:19.093" UserId="1775" />
  <row Id="8111" PostId="6488" Text="Its one game on which i recollect as a gift from my childhood" CreationDate="2010-12-14T06:04:33.120" UserId="1251" />
  <row Id="8112" PostId="6487" Text="This is the first thing I thought of when I saw Microsoft.Xna.Input.Touch. If OP is developing with XNA 4.0 rtw but started the project with the beta, he's got some munging to do to update references." CreationDate="2010-12-14T06:11:24.413" UserId="1954" />
  <row Id="8113" PostId="523" Text="going to launch it in Jan1...i'll let you know when it happens" CreationDate="2010-12-14T06:13:13.757" UserId="159" />
  <row Id="8114" PostId="4571" Text="This question has nothing to do with game design; might want to remove that tag." CreationDate="2010-12-14T06:14:17.953" UserId="1954" />
  <row Id="8115" PostId="6488" Text="For a video of this game in action to see the scrolling effect Nav is talking about, see http://www.dosgamesarchive.com/download/dangerous-dave/" CreationDate="2010-12-14T07:12:22.840" UserId="3830" />
  <row Id="8117" PostId="102" Text="From the Lua &quot;About&quot; page: &quot;Lua has been used to extend programs written not only in C and C++, but also in ... C# ...&quot;.&#xA;&#xA;First result from Google for &quot;lua in C#&quot; was an interesting article from GameDev.net (http://www.gamedev.net/reference/articles/article2275.asp) titled Using Lua with C#." CreationDate="2010-12-14T07:50:45.217" UserId="2077" />
  <row Id="8118" PostId="6466" Text="Actually at the moment I am just looking generally at concepts and can write many languages. I have looked at both XNA and Silverlight and have to agree they are very good." CreationDate="2010-12-14T07:56:30.640" UserId="3962" />
  <row Id="8119" PostId="2218" Text="That first link is broken but I think that the same articles can now be found here: http://gafferongames.com/game-physics/integration-basics/ (but I can't be sure because I never saw the originals)" CreationDate="2010-12-14T08:01:18.683" UserId="2612" />
  <row Id="8120" PostId="6496" Score="1" Text="And in case you want to see a timelapse of him making the game: http://www.youtube.com/watch?v=ZV-AFnCkRLY" CreationDate="2010-12-14T08:55:32.073" UserId="2958" />
  <row Id="8121" PostId="6478" Text="That your answer is a bad answer is not a reason to make it a comment." CreationDate="2010-12-14T10:01:46.863" UserId="744" />
  <row Id="8122" PostId="6496" Text="-1, although it looks the same, it's clearly not using the same method at all." CreationDate="2010-12-14T10:05:53.973" UserId="744" />
  <row Id="8123" PostId="6496" Score="2" Text="I am aware that this is not the exact method John Romero used in 1988. But since @Nav wanted to create something similar I didn't except him to program it using Applesoft BASIC on an Apple II computer. The code I linked to, clearly gets the same job done as you pointed out." CreationDate="2010-12-14T11:06:52.413" UserId="2958" />
  <row Id="8124" PostId="6495" Score="1" Text="&quot;Somehow it doesn't seem as fun as manipulating hardware registers though :)&quot; - True :)" CreationDate="2010-12-14T11:13:09.787" UserId="2702" />
  <row Id="8125" PostId="6500" Text="I'll add that I target desktop, not netbooks, that will make things more clear and simple. " CreationDate="2010-12-14T13:37:22.387" UserId="364" />
  <row Id="8126" PostId="6501" Text="Though 1024x768 is probably realistic, you can never go wrong with 800x600." CreationDate="2010-12-14T13:38:21.560" UserId="3830" />
  <row Id="8127" PostId="6505" Text="Looks like this: http://i.imgur.com/AseTr.png" CreationDate="2010-12-14T13:56:08.317" UserId="3361" />
  <row Id="8128" PostId="6501" Text="Not sure it's a good idea when you got lot of texts, and graphics that are not well displayed under 1024x768. " CreationDate="2010-12-14T14:01:17.540" UserId="364" />
  <row Id="8129" PostId="6483" Text="@wkerslake: Thanks for the reply. I didn't mean to imply that I wouldn't play games anymore, but rather that I may skip some features that just a hardcore player would notice.&#xA;eg: I used to play FPS (mainly Sauerbraten) against the machine and from time to time against my friends over LAN. However, I'd never used the technique of using a grenade to jump higher (but taking some damage yourself), something that the first Quake introduced. As far as I've heard, that's something fairly common in a deathmatch but I never would have thought about that feat. Do you get my point?" CreationDate="2010-12-14T14:04:25.160" UserId="3446" />
  <row Id="8130" PostId="6508" Score="1" Text="A couple of questions...&#xA;&#xA;1) Your new format stores and image?  Since you're using a modified JPEG I'm guessing so.&#xA;&#xA;2) What is different between your format and a standard JPEG?&#xA;&#xA;" CreationDate="2010-12-14T14:26:45.000" UserId="3830" />
  <row Id="8131" PostId="6508" Text="Our file format stores 2 photos and information about the differences between them. So 2.) We put the 2nd photo and the difference data into the PropertyItem list. The Mac however doesn't see these new items. 1.) We would make a new format that the Mac could read." CreationDate="2010-12-14T14:37:17.507" UserId="4001" />
  <row Id="8132" PostId="6485" Text="Here is an article about creating AI for Gin Rummy.  It might prove some useful insights.&#xA;&#xA;http://www.aifactory.co.uk/newsletter/2007_02_imperfect_info.htm" CreationDate="2010-12-14T14:38:05.497" UserId="3830" />
  <row Id="8133" PostId="6508" Score="1" Text="Why not just store the two images in two standard image format files and the difference in a third?  " CreationDate="2010-12-14T14:51:24.350" UserId="3830" />
  <row Id="8134" PostId="6509" Text="We're going to go with re-developing the format and use one that is cross-platform ready. It blows to have to throw out some awesome C# code and start from scratch but it will ease headaches down the road." CreationDate="2010-12-14T15:06:45.777" UserId="4001" />
  <row Id="8135" PostId="6493" Text="This game would be using the 320x240 video mode." CreationDate="2010-12-14T16:04:11.147" UserId="1143" />
  <row Id="8136" PostId="6493" Text="Skizz I was thinking that too, but I found some screenshots of the game that were 640x400 - an EGA resolution.  There were different versions of the game, and I am guessing the early ones were 320x200." CreationDate="2010-12-14T16:10:46.263" UserId="3830" />
  <row Id="8137" PostId="6500" Text="You may be targeting desktops, but many users actually use netbooks for their desktop gaming. I, for example, user a higher end netbook (has an ATI video card and a resolution of 1366 x 768) to play desktop games on low video settings, and they run perfectly. If you set your lowest resolution too high, you may be unknowingly alienating some gamers." CreationDate="2010-12-14T16:31:01.243" UserId="4007" />
  <row Id="8138" PostId="6509" Text="I like the zip file idea to bundle multiple images." CreationDate="2010-12-14T16:35:29.697" UserId="3830" />
  <row Id="8139" PostId="6500" Text="Even if you're targeting &quot;desktops&quot;, that includes laptops, which are still locked to 1024x768 in many cases. And desktops hooked up to TVs, which is a lot of them." CreationDate="2010-12-14T16:46:12.487" UserId="744" />
  <row Id="8141" PostId="6445" Text="@Ian, i want that AI can play game itself acceptable. May be later i can add difficulty levels. So i need a start point. @Matthew i will add my question to there. Thank you all." CreationDate="2010-12-14T17:33:33.230" UserId="3957" />
  <row Id="8142" PostId="6485" Text="I will look this as soon as possible. Thank you @Tim Holt and @skerslake" CreationDate="2010-12-14T17:34:12.233" UserId="3957" />
  <row Id="8144" PostId="6514" Text="Can you include the relevant parts of your code? Frustum checks can be more expensive than people sometimes think, especially with XNA's horrible floating point performance on the Xbox 360, but 256 checks should barely be notable." CreationDate="2010-12-14T17:44:08.483" UserId="744" />
  <row Id="8145" PostId="6483" Text="Well that's a good example. Rocket jumping is common only in arcade style deathmatch games like Unreal Tournament and Quake. It is not an element in military shooters like Call of Duty or Battlefield. So as a player it's something I might expect to see in a game like Monday Night Combat, but something that I wouldn't expect in Medal of Honor. " CreationDate="2010-12-14T17:44:37.433" UserId="154" />
  <row Id="8146" PostId="6518" Score="3" Text="You should be asking this on http://programmers.stackexchange.com.  If you do I will answer it there." CreationDate="2010-12-14T19:12:36.940" UserId="3325" />
  <row Id="8147" PostId="6518" Score="2" Text="-1. Only you know how well you can learn on your own." CreationDate="2010-12-14T19:12:49.713" UserId="744" />
  <row Id="8148" PostId="6518" Text="-1, not game development related, a google search would've brought up tons of results as well." CreationDate="2010-12-14T19:14:28.840" UserId="1156" />
  <row Id="8149" PostId="6487" Text="Yes, this was it. Even though I had the correct version of XNA, VS insisted on using the old assemblies (which were somehow still kicking around). Thanks for the answer." CreationDate="2010-12-14T19:32:21.960" UserId="3982" />
  <row Id="8150" PostId="6518" Text="moving this to  programmers.stackexchange.com. and i'm making it more clear. I CAN learn on my own. I'll try to make it more clear next time, also." CreationDate="2010-12-14T19:38:15.813" UserId="3971" />
  <row Id="8151" PostId="6518" Text="Related: http://programmers.stackexchange.com/questions/24270/is-getting-a-cs-degree-worth-my-while - http://programmers.stackexchange.com/questions/5597/is-a-university-education-really-worth-it-for-a-good-programmer" CreationDate="2010-12-14T19:39:31.070" UserId="14" />
  <row Id="8152" PostId="6518" Text="also, Jowe Wreshnig, that is not an answer to this question, or related to it at all. read the whole question, I have learned on my own, I said that in my question." CreationDate="2010-12-14T19:40:06.950" UserId="3971" />
  <row Id="8154" PostId="6520" Text="I'm moving this to programmers.stackexchange.com. My question was asking if I companies would hire me, because it seems like an impossibility for an unknown indie to make a living right out of high school." CreationDate="2010-12-14T19:44:02.313" UserId="3971" />
  <row Id="8155" PostId="6527" Text="I wish they would reveal the &quot;other&quot; category. I get the feeling it might be 800x600, since that's not on the list." CreationDate="2010-12-14T22:08:51.247" UserId="189" />
  <row Id="8156" PostId="6527" Text="Since they are showing individual data as low as 0.72% you can assume that all the different resolutions that make up OTHER are below that percentage. My guess is that it's a lot of wacky stuff you find on laptops and some early LCDs." CreationDate="2010-12-14T22:21:25.010" UserId="154" />
  <row Id="8157" PostId="6527" Text="Yeah but I already pointed it in the question and told it was only about desktop resolution not games resolution..." CreationDate="2010-12-14T22:28:20.423" UserId="364" />
  <row Id="8158" PostId="2605" Score="1" Text="Charles River Media was acquired by Cenage at some point.  I wonder if it ceased publication when that happened?&#xA;" CreationDate="2010-12-14T23:01:08.793" UserId="3830" />
  <row Id="8159" PostId="6533" Score="1" Text="How you programmatically create levels really depends on what kind of game you are making.  &#xA;&#xA;Creating a maze for example in a 3x3 grid makes a maze that's very easy to beat.  Creating one in a 300x300 grid makes one that's difficult to beat.&#xA;&#xA;But again, how you create a dynamic level really depends on what kind of level you're making." CreationDate="2010-12-14T23:39:27.513" UserId="3830" />
  <row Id="8160" PostId="6424" Text="@zanlok oops, looked like i went through that a little too fast..." CreationDate="2010-12-15T00:40:04.830" UserId="3405" />
  <row Id="8161" PostId="6533" Score="1" Text="Are you really making a maze game or is that just an example you're giving? " CreationDate="2010-12-15T02:19:53.193" UserId="3830" />
  <row Id="8162" PostId="6479" Text="There were issues of this in the earlier versions. I simply forgot :(" CreationDate="2010-12-15T02:37:43.933" UserId="3547" />
  <row Id="8163" PostId="6527" Text="The only reason to play with a lower resolution than your desktop is because the GPU/CPU can't keep up with the game at that resolution. I'm guessing that what are going to build isn't going to have Crysis level system requirements so most people will play at their desktop resolution. Also LCD screens tend to look REALLY ugly when not displaying in their native resolution, yet another reason why people tend to play at their desktop resolution." CreationDate="2010-12-15T02:41:45.000" UserId="154" />
  <row Id="8164" PostId="6514" Text="Trust me, my code is fine. The intersection test has been implemented with accuracy in mind, with performance being optional. " CreationDate="2010-12-15T03:08:12.590" UserId="2998" />
  <row Id="8166" PostId="6496" Text="Thanks Joe, but Eibx is right that I was looking for alternate ways too." CreationDate="2010-12-15T04:43:14.907" UserId="2702" />
  <row Id="8167" PostId="6529" Text="This is really great, thanks for teaching me to fish!" CreationDate="2010-12-15T05:23:48.927" UserId="4010" />
  <row Id="8168" PostId="6533" Text="It has layouts which resembles mazes. Which is why I used it as an example." CreationDate="2010-12-15T07:59:28.417" UserId="4013" />
  <row Id="8169" PostId="6514" Text="-1. It's hard to help when you won't share the necessary details of what you're doing." CreationDate="2010-12-15T10:16:39.147" UserId="744" />
  <row Id="8170" PostId="6525" Text="I used to play the guitar hero demo with my controller" CreationDate="2010-12-15T13:58:35.983" UserId="2301" />
  <row Id="8171" PostId="6520" Text="Programmers are more hired for experience/knowledge/working demos than education it seems, but a degree is always helpful, if you don't have any experience." CreationDate="2010-12-15T14:00:29.867" UserId="2301" />
  <row Id="8172" PostId="6545" Score="2" Text="That's awfully specific, but it's also super simple to make something like that.  http://gamedev.stackexchange.com/questions/3270/are-there-any-open-source-or-free-3d-modelling-animation-tools-that-are-widely-us" CreationDate="2010-12-15T15:29:21.400" UserId="51" />
  <row Id="8173" PostId="6545" Text="As a school project, wouldn't you get more credit if you designed everything yourself? (Not meant to be rhetorical)." CreationDate="2010-12-15T16:03:23.063" UserId="1156" />
  <row Id="8174" PostId="6545" Text="@C. Duck: No, I wouldn't get more credit. The emphasis on the course is OpenGL, 3D model design is not covered. I'm a CS student. We're being encouraged to look into loading cool 3D models as an 'extra' for the project. " CreationDate="2010-12-15T16:10:35.560" UserId="2943" />
  <row Id="8175" PostId="6547" Score="2" Text="Do you want them to be physics objects, or just static visuals?" CreationDate="2010-12-15T16:54:05.560" UserId="3830" />
  <row Id="8176" PostId="6545" Text="Don't get too caught up in trying to get that cool 3D model in and fail to complete the required portion of the project ;^)" CreationDate="2010-12-15T17:22:08.277" UserId="3830" />
  <row Id="8177" PostId="6547" Score="3" Text="If you start searching for methods to implement, consider throwing the term &quot;catenary curve&quot; into your search.  That's what the shape of a hanging wire is called." CreationDate="2010-12-15T17:34:26.900" UserId="3830" />
  <row Id="8178" PostId="6550" Score="1" Text="And to answer the perhaps followup question, here's the top search result for &quot;dae to obj&quot;, DAE being a collada 3d model file extension...&#xA;&#xA;http://social.msdn.microsoft.com/Forums/en-US/vemapcontroldev/thread/e8c5727f-a002-42ca-b580-62cdda3ef47f/&#xA;" CreationDate="2010-12-15T17:36:44.417" UserId="3830" />
  <row Id="8179" PostId="6514" Score="1" Text="What more is there to share? Mike is correct in that BoundingFrustum.Intersects() is not as fast as it could be. This can easily be confirmed by Reflector." CreationDate="2010-12-15T17:36:52.983" UserId="2345" />
  <row Id="8180" PostId="6547" Score="1" Text="What is your target game engine or rendering environment?  That also can influence your solution.  Some engines (like Valve's Source engine) directly support creating wires." CreationDate="2010-12-15T17:46:01.183" UserId="3830" />
  <row Id="8181" PostId="6551" Score="1" Text="Is this a question about the mathematics or the implementation?" CreationDate="2010-12-15T18:07:48.973" UserId="3505" />
  <row Id="8182" PostId="6551" Text="http://en.wikipedia.org/wiki/Rotation_matrix" CreationDate="2010-12-15T18:45:06.273" UserId="2077" />
  <row Id="8183" PostId="6505" Text="Cool!  I was thinking you wanted it to have a flat-ish bottom, so I suggested a way to create extra 2D height maps, but this looks good." CreationDate="2010-12-15T19:30:53.083" UserId="998" />
  <row Id="8184" PostId="4571" Score="1" Text="I think that tag needs a generally accepted wiki clearly defining exactly what game-design refers to before I remove it, because while I can see your point I do think it's arguable at the moment. If others agree the tag should be removed I will go ahead and accept your advice, though." CreationDate="2010-12-15T21:00:21.963" UserId="2100" />
  <row Id="8185" PostId="6547" Text="I need the visuals. We use Panda3D and it doesn't have anything specific about wires. It (Panda3D) is quite solid but less complete than other commercial engines. Thank you for the keywords." CreationDate="2010-12-15T21:39:49.580" UserId="950" />
  <row Id="8186" PostId="6557" Score="2" Text="Mozilla Firefox and Opera just dropped websocket support for security reasons: http://www.heise.de/security/meldung/WebSockets-in-Firefox-4-wegen-Luecke-im-Protokolldesign-deaktiviert-Update-1150157.html   See http://gamedev.stackexchange.com/q/6524/450 for cross browser abstraction of the network stuff." CreationDate="2010-12-15T22:08:08.190" UserId="450" />
  <row Id="8188" PostId="4971" Text="@Tim: Just wait for 4.1 or 5, they're probably working on Kinect support right now." CreationDate="2010-12-15T23:07:55.147" UserId="1954" />
  <row Id="8189" PostId="6562" Score="1" Text="...or become an artist!" CreationDate="2010-12-16T02:08:59.847" UserId="3830" />
  <row Id="8190" PostId="6562" Text="Amen to that, Tim!" CreationDate="2010-12-16T02:22:22.867" UserId="2332" />
  <row Id="8191" PostId="6554" Text="This appears to have done what I need, many thanks!" CreationDate="2010-12-16T09:05:42.483" UserId="2853" />
  <row Id="8192" PostId="6549" Text="Look like a reasonable approach and looks correct from most point of views.&#xA;I am a bit worried about the number of tris (large scene here) but I'll do a small prototype of this to see if it scales correctly.&#xA;Thank you.&#xA;" CreationDate="2010-12-16T10:29:53.990" UserId="950" />
  <row Id="8193" PostId="6523" Text="+1 because it's an interesting idea" CreationDate="2010-12-16T10:38:16.250" UserId="3112" />
  <row Id="8194" PostId="6516" Text="I basically took your approach but used time slices because they make it easier to calculate the volume." CreationDate="2010-12-16T10:40:09.540" UserId="3112" />
  <row Id="8196" PostId="6439" Text="that works thx u much" CreationDate="2010-12-16T14:52:11.070" UserId="1636" />
  <row Id="8197" PostId="6508" Text="How are you loading it on the mac?  Are you unable to read the PropertyItem list on mac?" CreationDate="2010-12-16T15:30:13.953" UserId="2447" />
  <row Id="8198" PostId="6572" Text="unfortunately this method doesn't work at an apex, i.e. when the projectile goes from upwards to downwards." CreationDate="2010-12-16T15:58:16.263" UserId="2933" />
  <row Id="8199" PostId="6569" Text="unfortunately this method doesn't work at an apex, i.e. when the projectile goes from upwards to downwards." CreationDate="2010-12-16T15:59:20.227" UserId="2933" />
  <row Id="8200" PostId="6573" Score="3" Text="What's wrong with cocos2d?" CreationDate="2010-12-16T16:02:49.623" UserId="20" />
  <row Id="8201" PostId="6571" Score="1" Text="That's kinda cool looking. Reminds me of &quot;Scratch&quot;" CreationDate="2010-12-16T16:09:23.223" UserId="3830" />
  <row Id="8202" PostId="6572" Text="@meds It should work. Do you mean that the second one should follow the exact *path* that the first one took? In that case it's much more complicated. If you just want the second to follow the first like a homing missile, then this solution works. But it would probably follow a different path than the first." CreationDate="2010-12-16T17:04:54.647" UserId="141" />
  <row Id="8203" PostId="6572" Text="A homing missile system is simple to do, I want the second projectile to follow the same trajectory as the first one, the problem is when the first projectile hits an apex it has a zero vertical velocity and its next velocity is downwards which means the following projectile will never reach the apex." CreationDate="2010-12-16T17:10:08.620" UserId="2933" />
  <row Id="8204" PostId="6567" Text="Unity and the Prime Engine have nothing to do with the technologies mentioned though. They are native code plugins." CreationDate="2010-12-16T17:26:07.127" UserId="1101" />
  <row Id="8205" PostId="6573" Score="1" Text="I agree with bummzack.  Unless you have some requirements that cocos2d can't fulfill, or you want to learn more about how 3D graphics are done on the iPhone, I'd stick with cocos2d and its simpler API." CreationDate="2010-12-16T17:29:33.283" UserId="3821" />
  <row Id="8206" PostId="6567" Score="1" Text="They are answers in the sense that we are saying, &quot;No it is not a good idea to do this, however here are alternatives.&quot;  Answers that say, &quot;No but here is an alternative&quot; are a lot more preferable than just &quot;No&quot;" CreationDate="2010-12-16T17:41:50.810" UserId="3830" />
  <row Id="8207" PostId="6565" Text="Thanks but Flash kit is one hell of a slow painful site. There's a couple of thing on Google code but very early stuff. I was really hoping to integrate score posting to status on facebook but I don't think it is going to happen any time soon." CreationDate="2010-12-16T18:05:34.283" UserId="4009" />
  <row Id="8208" PostId="6572" Text="This answer won't follow like meds wants, or like a homing missile. A homing missile would move bullet2 along the vector between bullet1 and bullet2; this moves bullet2 along a vector totally unrelated to its current position, and except in perfectly linear cases, along one that bullet1 itself probably never travelled." CreationDate="2010-12-16T18:14:11.120" UserId="744" />
  <row Id="8209" PostId="6585" Text="The term for what you want is &quot;point cloud&quot; I think. At least based on the sample picture. " CreationDate="2010-12-16T20:01:02.997" UserId="3830" />
  <row Id="8210" PostId="6566" Text="Related: http://gamedev.stackexchange.com/questions/217/what-are-some-ways-of-making-manageable-complex-ai" CreationDate="2010-12-16T20:05:07.373" UserId="51" />
  <row Id="8211" PostId="6587" Score="1" Text="I was under the impression that the company behind Torque was in financial trouble. Is that accurate?" CreationDate="2010-12-16T20:14:18.573" UserId="539" />
  <row Id="8212" PostId="6567" Score="2" Text="Sometimes I'd agree, but rarely. There's a danger of trying to read someone's mind and guessing what they 'really' want to do, when actually the original question was perfectly legitimate in its own right. If someone asks about the suitability of X, we shouldn't always reply with &quot;just use Y&quot;. At the very least there should be a comparison of the suitability of the two so that we come away knowing more about X." CreationDate="2010-12-16T20:25:44.060" UserId="1101" />
  <row Id="8213" PostId="6561" Text="+1 for the awesome link to the Valve bios!  It's great to see what real developers went through on their way to their current positions." CreationDate="2010-12-16T20:38:06.537" UserId="825" />
  <row Id="8214" PostId="6585" Score="1" Text="Point clouds are a geometry storage format and rarely rendered directly. They usually require (expensive) triangulation or voxel-like rendering with marching cubes before actually rendering." CreationDate="2010-12-16T20:40:02.933" UserId="744" />
  <row Id="8215" PostId="6583" Score="2" Text="Unity is _really_ not the right tool for this. Even raw OpenGL would be easier." CreationDate="2010-12-16T20:41:32.140" UserId="744" />
  <row Id="8216" PostId="6572" Text="There could be a problem at apex if bullet 1 has zero velocity, it would NaN when the normalization is done. When I suggested this method, I was picturing in my mind more like an artillery shell that doesn't ever get to zero velocity until impact.&#xA;But to worry about it following the &quot;exact&quot; path seems a little anal for a game... There is much about game dev that is a compromise between accuracy &amp; performance. Are you sure you need nose hair accuracy like that?" CreationDate="2010-12-16T21:32:31.273" UserId="1923" />
  <row Id="8217" PostId="6505" Text="Once you have the noise somewhat under control it's easy to adapt the values for different forms." CreationDate="2010-12-16T21:39:14.767" UserId="3361" />
  <row Id="8218" PostId="6587" Text="I had no idea about their financial situation. But I've found another possible solution SunBurn engine http://www.synapsegaming.com/products/sunburn/engine/" CreationDate="2010-12-16T21:43:17.590" UserId="2773" />
  <row Id="8219" PostId="6585" Text="I always thought point clouds were a set of vertices in a three-dimensional coordinate system." CreationDate="2010-12-16T22:28:27.907" UserId="3830" />
  <row Id="8220" PostId="6561" Text="My favorites are the former janitor and the former patent lawyer with a degree in chemistry  :D" CreationDate="2010-12-16T22:30:41.850" UserId="3830" />
  <row Id="8221" PostId="6586" Score="2" Text="What are you looking for beyond XNA itself?" CreationDate="2010-12-16T22:54:56.063" UserId="395" />
  <row Id="8222" PostId="6583" Text="@Joe Wreschnig flash can do this I do not see why U3d cannot do such simple thing..." CreationDate="2010-12-16T23:15:41.250" UserId="3769" />
  <row Id="8223" PostId="6567" Text="I'll rephrase my answer then to answer his question about what library to use.  I'd use the Unity &quot;library&quot; myself :P" CreationDate="2010-12-17T00:05:05.757" UserId="3830" />
  <row Id="8225" PostId="6585" Text="Yes but vertices in themselves are not visible entities..." CreationDate="2010-12-17T00:31:09.703" UserId="2239" />
  <row Id="8226" PostId="6550" Text="Great, thanks :) Any recommendations for the character models? " CreationDate="2010-12-17T01:13:23.273" UserId="2943" />
  <row Id="8227" PostId="6585" Text="A vertex is a point, yes. He wants to render a single &quot;pixel&quot; at each of those points. He wants to visualize a point cloud. " CreationDate="2010-12-17T02:06:51.953" UserId="3830" />
  <row Id="8228" PostId="6587" Score="2" Text="@Alex Schearer- Yeah, Torque is in some trouble right now. I think they are trying to find someone to buy them, but I am not 100% sure." CreationDate="2010-12-17T03:30:53.113" UserId="2946" />
  <row Id="8229" PostId="6586" Text="How about, state management (i.e. game, title, etc), animations &amp; sprites, collision detection for starters." CreationDate="2010-12-17T05:08:53.383" UserId="539" />
  <row Id="8230" PostId="6501" Text="Netbook users don't buy games." CreationDate="2010-12-17T08:37:42.950" UserId="860" />
  <row Id="8231" PostId="6501" Text="That really depends on the game." CreationDate="2010-12-17T08:48:23.430" UserId="3656" />
  <row Id="8232" PostId="6559" Text="thanks! exactly that kind of stuff i am looking for." CreationDate="2010-12-17T09:00:24.190" UserId="751" />
  <row Id="8233" PostId="6559" Text="any similar non apple options?" CreationDate="2010-12-17T09:01:16.013" UserId="751" />
  <row Id="8234" PostId="6602" Text="That was a great answer! Thanks, I think I will have to do some stuff to deal with my game issue... This project just keeps getting more and more interesting every day.. :)" CreationDate="2010-12-17T09:39:18.927" UserId="3326" />
  <row Id="8235" PostId="6583" Text="Flash is an engine that specializes in 2D rasterization. Unity is an engine that specializes in building 3D scene graphs. &quot;Simple&quot; is relative to the storage and rendering model." CreationDate="2010-12-17T09:41:08.123" UserId="744" />
  <row Id="8236" PostId="6600" Score="3" Text="possible duplicate of [Securing HTTP data from a JavaScript game to server](http://gamedev.stackexchange.com/questions/4851/securing-http-data-from-a-javascript-game-to-server)" CreationDate="2010-12-17T09:50:03.977" UserId="744" />
  <row Id="8237" PostId="6600" Text="What Joe said.. also consider: http://gamedev.stackexchange.com/questions/5942/securing-javascript-php-game-data" CreationDate="2010-12-17T10:37:15.187" UserId="20" />
  <row Id="8238" PostId="6597" Score="4" Text="You might have to provide some code." CreationDate="2010-12-17T10:39:12.923" UserId="2910" />
  <row Id="8239" PostId="6602" Score="3" Text="De-obfuscating JavaScript is trivial, and renaming identifiers won't stop anyone with a decent debugging tool. People crack this stuff all the time in compiled native binaries, it's an order of magnitude easier in JavaScript, even when &quot;obfuscated&quot;." CreationDate="2010-12-17T11:31:41.840" UserId="744" />
  <row Id="8240" PostId="6557" Score="2" Text="I think all three of these questions are interesting, but I'd rather have them split into three questions. In my mind they're barely related." CreationDate="2010-12-17T12:09:23.070" UserId="744" />
  <row Id="8241" PostId="6597" Score="1" Text="+1 Without some code, there could potentially be a whole host of things going wrong" CreationDate="2010-12-17T12:19:06.247" UserId="2332" />
  <row Id="8242" PostId="6501" Text="@Julio: I do. It's annoying to be denied the possibility of buying more games because someone decided I won't buy it without even asking us the users. What I won't buy is a desktop computer because I travel a lot and move often, I can't afford the bulk.  I have one laptop I use for &quot;serious stuff&quot; (work) and netbooks I use for &quot;leisure&quot;: web surfing, game playing, chatting and so on.  I'm more likely to buy games for netbooks than for any other platform, specially if I can run them natively, without needing Wine." CreationDate="2010-12-17T12:29:53.557" UserId="2091" />
  <row Id="8243" PostId="6559" Text="@pointernil As a programmer I don't really follow the non programming tools space.  I mostly know of game salad because a friend of mine is behind it.  Since the game you want to make is fairly simple you might consider looking at Google's App inventor.  Not strictly game related but one of their first examples is whack a mole.  Also seriously give game maker a look it has a drag and drop option as well." CreationDate="2010-12-17T12:32:06.350" UserId="2447" />
  <row Id="8244" PostId="6610" Text="so in that regard, maybe it is better to do something along the lines of...if ((player.image.complete) &amp;&amp; ..) GameLoop(); else Loading();" CreationDate="2010-12-17T15:05:09.983" UserId="1743" />
  <row Id="8245" PostId="6610" Text="worked on the first try, thank ya thank ya!" CreationDate="2010-12-17T15:06:00.253" UserId="1743" />
  <row Id="8246" PostId="6608" Score="3" Text="What kind of games. You seem to be implying web-games, but you also need to specify how quickly the games update (eg. FPS at one extreme vs. Chess at the other), how many players (1, 2, 10, 10000s), and what sort of graphics you expect to use." CreationDate="2010-12-17T15:30:25.237" UserId="1101" />
  <row Id="8247" PostId="6608" Text="am bit confused why someone give me down vote for this question, it is a paining question?" CreationDate="2010-12-17T15:47:37.933" UserId="4056" />
  <row Id="8248" PostId="6564" Text="I do my best to search for questions that would possibly qualify as dupes before posting. Some folks have differing ideas on how their verbiage should be for certain questions, making it difficult to find the dupes sometimes.  {-o)" CreationDate="2010-12-17T15:52:12.380" UserId="4032" />
  <row Id="8249" PostId="6609" Text="Thanks for providing so long explanatory answer. I want to develop these kind of games - http://silverlightclub.com/apps/PlayApp.aspx?AppId=197" CreationDate="2010-12-17T15:58:35.180" UserId="4056" />
  <row Id="8250" PostId="6608" Text="@Kylotan - I want to develop these kind of games -  http://silverlightclub.com/apps/PlayApp.aspx?AppId=197" CreationDate="2010-12-17T15:59:12.217" UserId="4056" />
  <row Id="8251" PostId="6609" Text="Then for web development, you're going to be stuck with Silverlight, Flash (if that's an option), Flex, or Unity3D. If it's not for web development directly, then anything should be good." CreationDate="2010-12-17T16:22:59.597" UserId="1156" />
  <row Id="8252" PostId="6609" Text="-1, your understanding of what JavaScript and HTML 4.01 can be used for is way off. Sprite animations and real time action is no problem, I have written a few games myself: http://ebusiness.hopto.org/" CreationDate="2010-12-17T16:44:17.460" UserId="3505" />
  <row Id="8253" PostId="6580" Text="Thank you for taking the time to answer." CreationDate="2010-12-17T17:04:48.450" UserId="1330" />
  <row Id="8254" PostId="6608" Score="1" Text="I downvoted it because you're comparing three kinds things out of those five items, because there's a lot of &quot;how do I get started?&quot; questions here already, and because questions like &quot;PHP or ASP.NET?&quot; are so incredibly boring." CreationDate="2010-12-17T17:30:19.463" UserId="744" />
  <row Id="8255" PostId="6609" Text="HTML alone though, I doubt can do anything?" CreationDate="2010-12-17T18:08:02.430" UserId="1156" />
  <row Id="8256" PostId="6583" Text="Assuming OP wants a lot of points (point cloud) to be computed and rendered. Flash is not the tool for that, too slow." CreationDate="2010-12-17T18:50:19.417" UserId="2287" />
  <row Id="8257" PostId="6609" Text="When you talk about Canvas, that is really just a JavaScript library invoked using a single HTML element. While it's definition reside in the HTML 5 spec it's useless without JavaScript. Disregarding JavaScript simply because the asker didn't specifically mention it makes for a really bad answer." CreationDate="2010-12-17T18:59:58.753" UserId="3505" />
  <row Id="8258" PostId="6609" Text="Less that he didn't specify it, more that I forgot to mention it. Either way, yes." CreationDate="2010-12-17T19:33:54.287" UserId="1156" />
  <row Id="8259" PostId="808" Text="I'm late to the party but don't forget paying the technicians to work &gt; paying for the license." CreationDate="2010-12-17T19:57:36.193" UserId="14" />
  <row Id="8260" PostId="6622" Text="This is impossible to answer if you have no idea what your target platform is." CreationDate="2010-12-17T21:10:04.223" UserId="962" />
  <row Id="8261" PostId="6622" Score="1" Text="Well, if it's 500px in size, it's not a pre-4G iPhone / equivalent Android, which is about the only thing I'd expect to have trouble with such a simple render." CreationDate="2010-12-17T21:23:47.397" UserId="744" />
  <row Id="8262" PostId="6622" Score="5" Text="Hmm, I think the answer may simply be &quot;Zarkonnen, you have no idea how powerful GPUs are these days&quot;. :P" CreationDate="2010-12-17T21:38:59.253" UserId="1278" />
  <row Id="8263" PostId="6622" Score="1" Text="This doesn't seem like a huge amount of data." CreationDate="2010-12-17T21:41:35.063" UserId="1156" />
  <row Id="8264" PostId="6627" Text="Mind posting a link to the instructions you are following?" CreationDate="2010-12-17T21:51:04.377" UserId="962" />
  <row Id="8265" PostId="6618" Score="1" Text="Thanks for linking to the Sonic page. I've always wanted the details!" CreationDate="2010-12-17T21:51:34.627" UserId="4051" />
  <row Id="8266" PostId="6627" Text="Solved, I ended up using this http://www.swiftless.com/tutorials/opengl/gldrivers.html" CreationDate="2010-12-17T21:56:38.887" UserId="2943" />
  <row Id="8267" PostId="6627" Text="I had glaux.h but didn't have glaux.lib. " CreationDate="2010-12-17T21:57:26.017" UserId="2943" />
  <row Id="8268" PostId="6624" Text="You are right that I had the Alpha backwards but even with it set all the way up I'm still seeing through things nearly perfectly when it should be fully opaque." CreationDate="2010-12-17T22:04:35.113" UserId="3175" />
  <row Id="8269" PostId="6628" Score="2" Text="I really do not like that method, because it looks exactly like how it is. A flat texture being moved with no distortion as it turns." CreationDate="2010-12-17T23:06:06.230" UserId="962" />
  <row Id="8270" PostId="6629" Text="You can write your own shader code, as long as you can write it using the visual programming language of the material editor." CreationDate="2010-12-18T00:18:44.547" UserId="744" />
  <row Id="8272" PostId="6634" Score="1" Text="We could probably use a screenshot." CreationDate="2010-12-18T02:08:20.860" UserId="288" />
  <row Id="8275" PostId="6639" Score="1" Text="This seems rather subjective to me, as well as being possibly too wide-ranging. Wouldn't &quot;How to make a good game&quot;, even for just 1 genre, seem to be a book-length topic?" CreationDate="2010-12-18T09:51:32.697" UserId="1101" />
  <row Id="8278" PostId="6639" Text="I'm taking 'isn't fun' to be a typo. If so, there's plenty of existing questions on how to make a fun game on this site." CreationDate="2010-12-18T09:59:40.523" UserId="1156" />
  <row Id="8279" PostId="6638" Text="OpenGL 1.X, OpenGL 2.1 with shaders, OpenGL ES 1.x or OpenGL ES 2.X?" CreationDate="2010-12-18T11:12:17.737" UserId="721" />
  <row Id="8281" PostId="6638" Text="You missed out GL 3.X. ;)" CreationDate="2010-12-18T11:28:42.240" UserId="1156" />
  <row Id="8282" PostId="6638" Text="I don't need advanced GLSL for this effect! So toon shaders must be compatible with OpenGL 2.1 ;)" CreationDate="2010-12-18T14:24:44.000" UserId="721" />
  <row Id="8283" PostId="6643" Text="OOP doesn't make code any better, which seems to be what you're asking. If you want OOP, then it makes more sense to go with an OOP engine like Ogre, rather than trying to adapt something in a different paradigm to how you want it." CreationDate="2010-12-18T15:29:33.890" UserId="1156" />
  <row Id="8284" PostId="6643" Text="OOP makes Ogre reusable, but I don't know if that's the case with quake 3 since it's OOP with C, which makes write more code... I don't want OOP, I just want what is easier, considering quake 3 is far enough for me as a 3d engine..." CreationDate="2010-12-18T17:41:10.423" UserId="1829" />
  <row Id="8285" PostId="6620" Text="That's rather interesting, I'll have to take a look at some of those comments to see if I can find anything useful. Thanks!" CreationDate="2010-12-18T17:52:15.820" UserId="982" />
  <row Id="8286" PostId="6646" Text="Thank you!   I figured it was something simple I was not understanding." CreationDate="2010-12-18T18:13:58.353" UserId="3175" />
  <row Id="8287" PostId="6550" Text="Hmm no suggestions for characters at least on the free front.  You might check out http://www.mixamo.com/, which has a fair number of boxing animations.  " CreationDate="2010-12-18T18:25:27.130" UserId="3830" />
  <row Id="8289" PostId="6643" Score="1" Text="Quake's code base is much more hackish than Ogre. For learning I would go for the latter." CreationDate="2010-12-18T22:24:55.520" UserId="501" />
  <row Id="8290" PostId="6643" Score="3" Text="Well written code in any language is easy to work with irrespective of the language.  Badly written code in any language is hard to work with irrespective of the language." CreationDate="2010-12-19T00:13:32.907" UserId="3830" />
  <row Id="8291" PostId="6653" Text="Woah - voted down?  Mind explaining why?" CreationDate="2010-12-19T00:18:50.300" UserId="3830" />
  <row Id="8292" PostId="6653" Text="-1 You are pretty much saying that it is impossible for smooth physics in a multiplayer game over the internet. I suggest you take a look at Garry's Mod. All the physics are server side, and as long as the server has enough CPU horsepower and bandwidth, the physics are lag free, smooth, and synchronized between players." CreationDate="2010-12-19T00:20:08.273" UserId="962" />
  <row Id="8293" PostId="6653" Score="1" Text="That's true on a server with a good connection.  There are many cases where physics in multiplayer games fails and I am sure there are plenty of bad physics experiences in Garry's Mod games.  &#xA;&#xA;However if there is latency the issues I outlined will exist. &#xA;&#xA; You can't get around the fact that physics needs to be calculated very quickly to be smooth.  And if you have latency, there will be a delay.  Delay means lag." CreationDate="2010-12-19T00:22:23.603" UserId="3830" />
  <row Id="8294" PostId="6651" Text="Both Champions Online and Star Trek Online support XMPP for chat from out of game. Not sure I would call that an API though." CreationDate="2010-12-19T00:23:36.693" UserId="395" />
  <row Id="8296" PostId="6653" Text="If the latency is anything below 150 it is fine. Anyways at 150 almost everything in the game becomes laggy. I have played a lot of Garry's mod with a lot of physics objects and it is not &quot;a glitchy game.&quot;" CreationDate="2010-12-19T00:26:21.170" UserId="962" />
  <row Id="8297" PostId="6643" Score="3" Text="Quake's code isn't generic because it wasn't meant to be. It isn't the plain engine, it is a game. Also, all games tend toward &quot;hackish&quot; as ship dates loom, it is a fact of life :-P" CreationDate="2010-12-19T00:26:29.500" UserId="395" />
  <row Id="8298" PostId="6653" Text="You might want to go back and reread my post.  Minus some opinionating at the front end on my part, I'm describing exactly what happens in a physics simulation with multiple players - including your Garry's Mod game sessions.  You can't get around the facts." CreationDate="2010-12-19T00:30:31.777" UserId="3830" />
  <row Id="8299" PostId="6655" Text="Good stuff ggambett!" CreationDate="2010-12-19T01:04:24.740" UserId="3830" />
  <row Id="8300" PostId="6655" Text="Thanks :) I'm glad you found it interesting." CreationDate="2010-12-19T01:08:40.543" UserId="4082" />
  <row Id="8302" PostId="6655" Text="So many players don't understand how this stuff works, but it's so critical to understanding the eternal, &quot;WTF WHY DID I MISS?&quot; question.  " CreationDate="2010-12-19T01:17:36.403" UserId="3830" />
  <row Id="8304" PostId="6655" Text="Or &quot;why is my character tied to that column with a giant rubber band?&quot; on a dropped connection :)" CreationDate="2010-12-19T01:20:28.203" UserId="4082" />
  <row Id="8305" PostId="6655" Text="Valve's Wiki has a writeup that also goes into these issues.  The page is at http://developer.valvesoftware.com/wiki/Source_Multiplayer_Networking" CreationDate="2010-12-19T01:23:52.157" UserId="3830" />
  <row Id="8307" PostId="6620" Text="I'll warn you that it's not for the faint of heart - the comments will mostly just tell you what memory locations are used for - you'll probably need to dig through the assembly yourself. If there are specific pieces of information that you're interested in, the fastest way to find it would be to run the game in a debugging emulator (legal issues aside). Use breakpoints on writes to related memory locations in order to figure out what code is being executed, then look that up in the disassembly and read it. I'd imagine that's how Sonic Retro compiled its guide." CreationDate="2010-12-19T03:46:50.987" UserId="4062" />
  <row Id="8308" PostId="6618" Score="1" Text="Tangentially related - Tetris is pretty heavily documented at http://www.tetrisconcept.net/wiki/Main_Page and http://tetris.wikia.com/wiki/Tetris_Wiki" CreationDate="2010-12-19T04:06:33.693" UserId="4062" />
  <row Id="8309" PostId="6649" Text="I've confirmed the existence of the XML file. Very excellent answer!! http://www.weekendcode.com/2010/01/fetch-wow-armory-xml-data-using-php/" CreationDate="2010-12-19T04:12:58.150" UserId="4077" />
  <row Id="8310" PostId="6651" Text="Yeah chat is not really an api. its more of a meta-api ;)" CreationDate="2010-12-19T04:13:31.380" UserId="4077" />
  <row Id="8311" PostId="6653" Score="2" Text="Ok, I changed my downvote into an upvote. But you paint a really negative picture for multiplayer games with physics, when it really has been done before and relatively glitch free." CreationDate="2010-12-19T05:52:06.887" UserId="962" />
  <row Id="8312" PostId="5729" Text="I highly doubt that the type of *scrolling* will make any game more addicting or fun..." CreationDate="2010-12-19T09:23:38.673" UserId="20" />
  <row Id="8313" PostId="6661" Score="1" Text="-1 - This doesn't break down what the magic numbers are (which is how I read the question), and doesn't accurately describe the division of labor that exists in the industry today." CreationDate="2010-12-19T10:51:34.280" UserId="744" />
  <row Id="8314" PostId="6657" Text="Are you meaning a navmesh;  the grid of nodes that NPCs can follow?" CreationDate="2010-12-19T11:51:50.073" UserId="1156" />
  <row Id="8315" PostId="6664" Score="1" Text="-1 - &quot;standard jpeg compression&quot; doesn't exist for textures, and your third paragraph doesn't really make sense. &quot;Quarter pixel scrolling&quot; is achievable via standard filtering in OpenGL/Direct3D, and AA would be trivial for such a scene." CreationDate="2010-12-19T12:09:17.993" UserId="744" />
  <row Id="8316" PostId="6656" Text="-1, this is just a considerably more wasteful version of jpaver's method." CreationDate="2010-12-19T12:14:33.360" UserId="744" />
  <row Id="8317" PostId="6656" Text="Depends on the details. We usually reuse the button images as the masks so this method ends up using *less* memory than jpaver's method." CreationDate="2010-12-19T13:21:58.513" UserId="4082" />
  <row Id="8319" PostId="6653" Score="4" Text="@AttackingHobo: &quot;Glitch free&quot; is relative. Having worked on a game with good network prediction, I now see glitches where I didn't before. They rarely affect the mechanics meaningfully, but they're present. The whole point of prediction is that a small real-time inaccuracy is better than delayed accuracy; that doesn't change the fact that you're always inaccurate." CreationDate="2010-12-19T14:16:02.520" UserId="744" />
  <row Id="8320" PostId="6657" Text="Does your world have caves/overhangs, or is it a pure heightmap?" CreationDate="2010-12-19T14:44:15.917" UserId="1687" />
  <row Id="8321" PostId="6661" Text="Why do we care about the current division of labor? We are talking about a classic game." CreationDate="2010-12-19T16:37:30.440" UserId="4086" />
  <row Id="8322" PostId="6667" Text="Why does it have to be direct X, any reason?" CreationDate="2010-12-19T17:53:31.763" UserId="1156" />
  <row Id="8323" PostId="6657" Text="It has caves, lower and highs lands, mountains. So when I sent some random walk ai for the NPCS they often go underground, behind walls andso forth." CreationDate="2010-12-19T18:06:04.193" UserId="567" />
  <row Id="8324" PostId="1070" Score="1" Text="Just wanted to add that it is now free." CreationDate="2010-12-19T18:06:33.863" UserId="2946" />
  <row Id="8325" PostId="6667" Text="No, it does _not_ have to DirectX." CreationDate="2010-12-19T18:12:35.823" UserId="4092" />
  <row Id="8326" PostId="6667" Text="Consider something like SDL or SFML. (More a comment, since it isn't really answering the question)" CreationDate="2010-12-19T18:39:41.690" UserId="1156" />
  <row Id="8327" PostId="6667" Text="I would usually, but I want to write something as small as possible for Windows, while supporting as large Windows version base as possible. I have looked a little at SDL and Allegro." CreationDate="2010-12-19T18:44:56.947" UserId="4092" />
  <row Id="8328" PostId="6667" Score="1" Text="If you wanted the fewest dependencies possible and windows only (even then, I'd prefer x-platform for the flexibility) , then go for direct3D, just don't expect it very easy for 2D. As for versions, 9 for XP and 10/11 for Vista/7." CreationDate="2010-12-19T20:09:18.303" UserId="1156" />
  <row Id="8329" PostId="1717" Score="1" Text="Great, great, great article!" CreationDate="2010-12-19T20:13:50.293" UserId="3955" />
  <row Id="8330" PostId="6666" Text="I'm hoping someone with more networking experience than me chimes in, but one thing to be aware of is the expected geography of your player base. The latency requirement for a LAN party game is different than something that runs for 8-16 random players over the Internet, is different than your global MMO hosted in Boston which gets connections from Taiwan." CreationDate="2010-12-19T22:21:29.447" UserId="744" />
  <row Id="8331" PostId="6666" Text="I suggest to try it out with two or more real internet connections instead of using simulation with guessed parameters." CreationDate="2010-12-19T23:24:12.390" UserId="450" />
  <row Id="8332" PostId="6602" Text="+1 ^ Should have clarified that in my answer." CreationDate="2010-12-20T00:39:27.867" UserId="3656" />
  <row Id="8333" PostId="6666" Text="@ Joe Wreschnig  It is just me fooling around in my basement there is no expected player base.  I was just wondering what were realistic targets to aim for." CreationDate="2010-12-20T00:44:39.300" UserId="2447" />
  <row Id="8334" PostId="6620" Text="A similar question, with more useful resources: http://gamedev.stackexchange.com/questions/6145/what-programming-language-was-super-mario-bros-written-in" CreationDate="2010-12-20T02:56:51.767" UserId="4062" />
  <row Id="8335" PostId="6595" Text="First of all, thanks for your answer. As much as I understand that writing an OBJ loader is not too hard, my question was more of a &quot;what are people using out there?&quot; kind of thing. For example: What if I wanted to animate my character? Would I get several OBJ files from a 3D modeler, or do people load entire animations from whatever 3D software they use? Things like that." CreationDate="2010-12-20T04:06:20.423" UserId="541" />
  <row Id="8336" PostId="6673" Text="Even if I go for XP/Vista/7, I am fairly confident a big subset of XP users do not have DirectX9." CreationDate="2010-12-20T10:12:53.877" UserId="4092" />
  <row Id="8337" PostId="6672" Score="1" Text="I'm no expert, but I usually test with far worse packetloss rates than that; 10-20% at the minimum. Once, I accidentally left the artificial packetloss in and demoed a game with 90% packetloss (it worked perfectly) ;)" CreationDate="2010-12-20T12:09:15.223" UserId="1687" />
  <row Id="8338" PostId="6609" Text="Sorry to nit-pick, but for 3D browser games, Unity does not run on all major desktop systems, only a subset of them.  Panda3D does, plus it's got a Python API. http://www.panda3d.org/" CreationDate="2010-12-20T12:37:27.863" UserId="2091" />
  <row Id="8339" PostId="6678" Score="2" Text="-1, tile size is incredibly design, artist, platform dependent, and even after those considerations fairly arbitrary." CreationDate="2010-12-20T14:52:21.687" UserId="744" />
  <row Id="8340" PostId="6660" Score="1" Text="+1 for word-pun. :)" CreationDate="2010-12-20T15:01:30.097" UserId="4035" />
  <row Id="8342" PostId="6678" Score="1" Text="Depending on what platform you program the size and number of tiles is important: when moving a character, when checking collisions(depends if you use tile collision or pixel-perfect), when playing with memory(are you better going of with 3 tiles for a detail, or 3 details per tile). I'm sorry again if this question has nothing to do on such a site but these are questions often saw but that were rarely answered." CreationDate="2010-12-20T15:07:11.233" UserId="3037" />
  <row Id="8343" PostId="6678" Text="With a bit more information, we could probably come up with a reasonable answer. As it stands, without knowing your platform, genre, and intended style its hard to provide a useful answer for you. I can say personally, I've used 32x32 on the PC platform and never had any issues." CreationDate="2010-12-20T15:30:45.423" UserId="1198" />
  <row Id="8344" PostId="6678" Score="3" Text="This question is just too vague. Depending on the circumstances I can justify any tile size between 8x8 and 1024x1024; on the other hand, there's really no reason to agonize over 32x32 versus 48x48. Just go with what the artist wants. Ask a _specific_ question, and the answers can be useful." CreationDate="2010-12-20T15:32:50.420" UserId="744" />
  <row Id="8345" PostId="6673" Score="1" Text="Doubtful, DX9 is getting pretty old.  Many games include the redistributable anyways, or you could simply detect it's absence and point them to the download page for it." CreationDate="2010-12-20T16:43:25.730" UserId="3325" />
  <row Id="8346" PostId="6679" Score="5" Text="+1 -- There are analytical (and useful) answers to even somewhat subjective questions, and this is a perfect example." CreationDate="2010-12-20T17:01:13.353" UserId="1198" />
  <row Id="8347" PostId="6673" Score="2" Text="You might also wnat to look at XNA -- since it's built on top of DirectX 9." CreationDate="2010-12-20T17:02:17.017" UserId="1198" />
  <row Id="8348" PostId="6672" Text="We have seen rare cases as high as 50%, but nothing worth testing for. I think the best (worst?) I can remember was a guy using wifi from several buildings over on a military base in the Honduran jungle (which then went over satellite for the backhaul). ~1000ms latency and 50% packet loss. In general windowing usually keeps TCP from sending too much once the link gets congested, so you just see a latency bump. UDP is another story, but you probably shouldn't use UDP for games these days." CreationDate="2010-12-20T17:11:49.727" UserId="395" />
  <row Id="8349" PostId="6669" Text="I don't see how you can use excel in a game that you plan to distribute." CreationDate="2010-12-20T17:24:23.313" UserId="962" />
  <row Id="8350" PostId="6669" Text="I was assuming he was working on just planning the development. It's easy to mock up the game in Excel and see if it's worth playing. Then you can build it visually in whatever software you want or on paper if that's your final goal." CreationDate="2010-12-20T18:12:01.090" UserId="154" />
  <row Id="8351" PostId="6609" Text="Unity runs on all major desktop systems. Linux is not a major desktop system." CreationDate="2010-12-20T18:21:13.577" UserId="744" />
  <row Id="8352" PostId="6672" Text="I *always* use UDP for games, but then that depends very much upon the kind of games you're making!" CreationDate="2010-12-20T19:24:15.880" UserId="1687" />
  <row Id="8353" PostId="6659" Text="I loved that game. I thought I was the only one that played it lol." CreationDate="2010-12-20T20:20:57.547" UserId="2900" />
  <row Id="8354" PostId="6672" Text="No, it really doesn't. UDP has no place in gaming these days. People seem to think TCP has crazy overhead when it really doesn't as long as you set NODELAY." CreationDate="2010-12-20T20:23:19.730" UserId="395" />
  <row Id="8355" PostId="6681" Score="1" Text="This is not a discussion site; whether something is &quot;easy&quot; is extremely subjective." CreationDate="2010-12-20T20:35:26.670" UserId="744" />
  <row Id="8356" PostId="6679" Text="Tim's answer certainly is factual, but I feel like if appropriate response to such a long and open question is &quot;do basic arithmetic&quot;, there's a failure somewhere in the site's feedback loop." CreationDate="2010-12-20T20:46:44.627" UserId="744" />
  <row Id="8357" PostId="6681" Text="@Joe my mistake. Feel free to readd your close vote. I've removed my vote because although you can't objectively say whether something is easy, you can objectively comment about the coverage of their documentation and examples." CreationDate="2010-12-20T22:06:26.430" UserId="14" />
  <row Id="8358" PostId="6681" Text="@Noctrine: Apparently, I cannot re-vote. Since there aren't four others that can agree with me though, it's still pretty academic. Still, there's not really an answerable question here, other than a link to the Sun Burn documentation. I don't think the SO format is very good for &quot;product reviews&quot;." CreationDate="2010-12-20T22:35:33.837" UserId="744" />
  <row Id="8359" PostId="6668" Text="I know. I think I wrote that above (minus the brightness 4 bit resolution)." CreationDate="2010-12-20T23:15:00.220" UserId="3361" />
  <row Id="8360" PostId="6675" Text="I use this system and found it to be quite useful, if a bit steep on the learning curve." CreationDate="2010-12-20T23:23:31.093" UserId="4114" />
  <row Id="8361" PostId="6679" Text="Joe et al.  T Some answers are about answering the question by asking more questions, then showing what to do when those questions are answered. " CreationDate="2010-12-20T23:32:55.380" UserId="3830" />
  <row Id="8362" PostId="6679" Score="4" Text="The failure is that people answer or give feedback based on their own opinions and interpretation of the question.   And sometimes that turns into over complexification of simple problems or just polite &quot;shut up n00b&quot; replies. " CreationDate="2010-12-20T23:47:11.957" UserId="3830" />
  <row Id="8363" PostId="6678" Score="2" Text="Bare in mind that some of devices out there (even some PCs!) still have trouble handling non-power-of-2 tiles. Stick with powers of two for your tiles and tilesets: 8x8, 16x16, 32x32, 64x64, 128x128. This will help you if you end up moving to mobile devices." CreationDate="2010-12-21T00:06:49.710" UserId="1581" />
  <row Id="8364" PostId="6676" Text="A very nice Open Source project Recast and Detour.  Recast creates the Nav Mesh and Detour creates pathing on the mesh.  The project was created by Mikko Mononen, the Lead AI Programmer on Crysis.  His personal blog has development information on the project http://digestingduck.blogspot.com/" CreationDate="2010-12-21T00:09:17.507" UserId="891" />
  <row Id="8365" PostId="6678" Text="I wouldn't go with what the artist wants.  I'd go with what the game design dictates.  The artist might want lovingly detailed 512x512 tiles, but gameplay dictates you should see things up to 10 squares away." CreationDate="2010-12-21T01:28:24.353" UserId="3830" />
  <row Id="8366" PostId="6673" Score="1" Text="+1 ^ for XNA.  If you want more fine tuned control over performance, choose either Direct3D or OpenGL depending on which you would be more comfortable working with (or learning if you haven't used them before). But listen to Matthew and Nate, it's not worth targeting below XP and using a 2d engine like XNA or SFML will save you lots of time." CreationDate="2010-12-21T02:21:36.530" UserId="3656" />
  <row Id="8367" PostId="6687" Text="Awesome info. Looks like the 360 is probably not for me then." CreationDate="2010-12-21T05:15:48.270" UserId="4051" />
  <row Id="8368" PostId="6655" Text="@ggambett: :) which game is that dude?" CreationDate="2010-12-21T08:56:50.330" UserId="1251" />
  <row Id="8369" PostId="6678" Score="1" Text="@egarcia: Atlasing is almost a requirement for tile-based games, and it's so trivial to do for them, that concerns about NPOT support are pretty irrelevant." CreationDate="2010-12-21T09:18:24.827" UserId="744" />
  <row Id="8370" PostId="6689" Text="Thanks for the info. That is definitely the way I should do it. But I can't find an implementation of brownian motion (in java). In the end, I'm going with a random point selection for the target. Far from perfect, but at least it's got the 'old school' part going for it." CreationDate="2010-12-21T11:04:24.387" UserId="1684" />
  <row Id="8371" PostId="6624" Text="+1, funny ..how many people complicate simple things...u just need to think before touching the keyboard !" CreationDate="2010-12-21T11:07:18.713" UserId="1251" />
  <row Id="8372" PostId="6689" Score="2" Text="@ADB; [random walk](http://en.wikipedia.org/wiki/Random_walk) is a simplified brownian motion, and should suffice, and is more or less simply `x = x + random();` where `random()` is -1 or 1." CreationDate="2010-12-21T11:45:13.183" UserId="653" />
  <row Id="8373" PostId="6661" Text="@EnabrenTane: Knowing _what_ the numbers are is useful today, because they still produce good game physics. Knowing _how_ the numbers are found today might help developers today derive useful ones for their particular situation. Knowing _how_ they were found _30 years ago_, is not a very useful answer." CreationDate="2010-12-21T12:30:45.363" UserId="744" />
  <row Id="8374" PostId="6691" Text="(Question) Isn't this just v-sync?" CreationDate="2010-12-21T13:20:32.713" UserId="1156" />
  <row Id="8375" PostId="6614" Score="1" Text="another game that uses the euphoria engine is &quot;Star Wars: The Force Unleashed&quot;. Lucasarts also announced an indiana jones game back in 2007 that would use it, but got cancelled for some reason: http://www.youtube.com/watch?v=fACZMsKN7fk" CreationDate="2010-12-21T13:48:27.467" UserId="3150" />
  <row Id="8376" PostId="6703" Score="3" Text="OP is talking about developing a game now... and HTML5 has extremely poor support at the moment." CreationDate="2010-12-21T15:58:49.147" UserId="1198" />
  <row Id="8377" PostId="6700" Text="What issues aare you having with Sockets in Silverlight 4 and Internet communication?" CreationDate="2010-12-21T16:00:05.667" UserId="1198" />
  <row Id="8378" PostId="6700" Text="@Nate Bross port range is blocked on most client computers." CreationDate="2010-12-21T16:15:10.800" UserId="4132" />
  <row Id="8379" PostId="6703" Score="1" Text="@Nate Bross, correct. Deploying a commercial HTML5 game now is a little too early. Although I'm open to somone proving me wrong." CreationDate="2010-12-21T16:16:17.787" UserId="4132" />
  <row Id="8380" PostId="6700" Text="Have you had actual issues with it those ports? Most clients (home and small business routers) have unrestricted outbound access by default, although many provide it through NAT. Is your target business computers behind large firewalls?" CreationDate="2010-12-21T16:30:24.933" UserId="1198" />
  <row Id="8381" PostId="2235" Text="+1 for keeping min and max parameters in mind." CreationDate="2010-12-21T16:31:34.683" UserId="284" />
  <row Id="8382" PostId="5630" Text="@Ricket 300+ Although half of them are for Game Support. Source : http://www.jagex.com/corporate/About/today.ws" CreationDate="2010-12-21T16:34:19.707" UserId="4132" />
  <row Id="8383" PostId="6702" Text="It should not be impossible if the app does little enough?" CreationDate="2010-12-21T16:36:45.930" UserId="4092" />
  <row Id="8384" PostId="6700" Text="@Nate Bros, truth be told, we have been warned away from any form of socket communication due to the port issues. Reach is a key factor with any game though and a message saying &quot;Unblock port x&quot; would mean nothing to a casual user. I'll start running some tests" CreationDate="2010-12-21T16:37:06.913" UserId="4132" />
  <row Id="8385" PostId="6700" Text="I completely agree, reach is key. Depending on your target, I think its fairly likely many users will have outbound access to initiate the connection. Think of games like WoW -- on most home-users setup, no port unblocking is required." CreationDate="2010-12-21T16:39:30.703" UserId="1198" />
  <row Id="8386" PostId="6700" Text="Generally the first time you run a game such as wow or call of duty on the PC windows firewall always asks if you wish o unblock a certain port. I'm going to try and test this out. I appriciate your feedback." CreationDate="2010-12-21T16:41:19.577" UserId="4132" />
  <row Id="8387" PostId="6700" Score="1" Text="Good luck! (more chars)" CreationDate="2010-12-21T16:42:00.593" UserId="1198" />
  <row Id="8388" PostId="6662" Text="That's pretty useful, thanks for the link. I was more interested in the 2D physics (something similar to that the sonic analysis), but this is rather interesting too" CreationDate="2010-12-21T16:49:37.167" UserId="982" />
  <row Id="8390" PostId="6702" Text="Of course then it is OK. But you can't say it have to be always ok (if you are thinking mathematicly :-)). Also if you are writing some really frame dependent app be aware of this trouble: I was writing stereoscopic application one frame left, one right (its called page flipping) but before it established to be ok, it took some time. So you cant say the first frame is left or right and user had to perform &quot;switch eye&quot; test on every application startup." CreationDate="2010-12-21T16:54:32.790" UserId="3794" />
  <row Id="8391" PostId="6499" Text="I do like the simplicity that this would provide.  Perhaps this simple variation on the coordinate system with a wildcard linkage available, e.g. linking from 0, 0, 0 to 23, 23, 23, wouldn't be direct, so it would use the wildcard exit." CreationDate="2010-12-21T16:55:18.103" UserId="284" />
  <row Id="8392" PostId="6378" Text="And a pretty decent ad revenue too: http://techcrunch.com/2010/12/03/angry-birds-android-1-million-advertising/ (1M USD/mo from ads in the android version)" CreationDate="2010-12-21T16:57:56.263" UserId="294" />
  <row Id="8393" PostId="6615" Text="+1 for the ridiculousness that is QWOP." CreationDate="2010-12-21T16:59:11.020" UserId="284" />
  <row Id="8394" PostId="6703" Score="1" Text="HTML-5 renders differently in different browsers, and is not supported by some slightly older but large market-shares. The speed is not consistent across browsers as well. Flash is faster, more widespread, and the rendering is always consistent." CreationDate="2010-12-21T17:05:50.087" UserId="962" />
  <row Id="8395" PostId="6684" Score="4" Text="I am not sure I would call XNA homebrew, it is an officially supported channel for getting indie games on to the system (well the windows version any way.)" CreationDate="2010-12-21T18:12:39.670" UserId="2447" />
  <row Id="8396" PostId="6710" Text="But HTML5 is supported on most mobile platforms so this doesnt quite fit." CreationDate="2010-12-21T18:32:34.850" UserId="4132" />
  <row Id="8397" PostId="5540" Text="your answer has leveled up!" CreationDate="2010-12-21T18:52:39.427" UserId="1815" />
  <row Id="8398" PostId="6701" Text="+1 also transparent mapping on bigger simpler polygons can usually achieve the illusion of a lot of detail. In general, use good 3D artists and trickery, not technology and brute force ^^" CreationDate="2010-12-21T19:49:27.107" UserId="2239" />
  <row Id="8399" PostId="6702" Text="One frame left, one frame right ... i meaned: one frame for left eye, one for right eye" CreationDate="2010-12-21T19:53:47.317" UserId="3794" />
  <row Id="8400" PostId="6707" Score="2" Text="While memory speed is important it does not make up for size, if you can't fit all frequently used data in memory you'll have to swap to disk or read from the optical drive, and that doesn't really cut it when you try to render fluid animation." CreationDate="2010-12-21T20:18:18.590" UserId="3505" />
  <row Id="8402" PostId="6710" Score="1" Text="-1. Microsoft is not sunsetting Silverlight, there has been a lot of misunderstanding about this. Bottom line is that Silverlight isn't going anywhere, but it is not (and never was) the recommended approach for a cross-platform WEB-APP, for a rich client application, or a game it is a perfect candidate." CreationDate="2010-12-21T20:44:22.977" UserId="1198" />
  <row Id="8403" PostId="6678" Text="@Joe I don't know what &quot;atlasing&quot; is. I'm involved on an open source 2d engine and I've seen people in the forums have problems with NPOT textures again and again. The last one, last week. Empirically, it is still a current issue." CreationDate="2010-12-21T22:43:01.380" UserId="1581" />
  <row Id="8404" PostId="6713" Text="Thanks for the suggestion. This is what I initially wanted to do but I hit a mental roadblock when trying to deal with transitions. Say for example there is a long room with an entrance from the top on the left end of the room, and an exit at the top of the right end. I suppose the way to deal with this would be to have small regions defined which can trigger the transition, hmm?" CreationDate="2010-12-21T22:57:49.123" UserId="974" />
  <row Id="8405" PostId="6713" Text="A little further: the &quot;room&quot; concept is what I currently have in my game. Rooms can be arbitrary in size, but I have not yet defined how to transition from room to room." CreationDate="2010-12-21T23:00:41.523" UserId="974" />
  <row Id="8406" PostId="6624" Text="@Vish:  The alpha was a red herring--the real problem was I was setting it to opaque in the wrong place and it was being ignored." CreationDate="2010-12-21T23:15:28.273" UserId="3175" />
  <row Id="8407" PostId="6690" Text="The real culprit was I was setting it to opaque at initialization rather than in the draw loop." CreationDate="2010-12-21T23:16:35.260" UserId="3175" />
  <row Id="8408" PostId="6709" Text="What about soft-particles. Those don't have hard edges. http://www.makingartstudios.com/images/research/fullsize/illuminated_soft_particles.jpg" CreationDate="2010-12-21T23:58:10.187" UserId="962" />
  <row Id="8409" PostId="6709" Text="Well this is very nice. Do you know how it work? Or have some related papers? I'm very interested in this topic. Doesnt it just fade out fragments alpha when it is near to object?" CreationDate="2010-12-22T00:28:07.130" UserId="3794" />
  <row Id="8410" PostId="6678" Text="Atlasing is putting multiple images into one texture. Without doing it, tile-based games have a stupidly large number of texture rebinds when rendering, and fixed-size tiles are easy to pack - even at runtime - so, you do it. Once you do that, it doesn't matter if your tiles are NPOT, because you're packing them into NPOT textures anyway." CreationDate="2010-12-22T00:32:25.737" UserId="744" />
  <row Id="8411" PostId="6702" Text="Interesting twist." CreationDate="2010-12-22T00:37:22.163" UserId="4092" />
  <row Id="8412" PostId="6346" Text="I used some multiple of my vertex position to my texture mapping, thanks for the link." CreationDate="2010-12-22T01:44:47.360" UserId="457" />
  <row Id="8413" PostId="6712" Score="1" Text="this behavior is also present in the 2D games in the Metroid series." CreationDate="2010-12-22T01:50:34.297" UserId="2781" />
  <row Id="8414" PostId="6713" Text="What is the issue with your transition?" CreationDate="2010-12-22T02:14:02.897" UserId="14" />
  <row Id="8415" PostId="6712" Text="Yes, it is essentially the same. The difference being that IIRC Metroid allowed vertical smooth-scrolling in some rooms/shafts, whereas Mega Man never had vertical smooth-scrolling; there was always a transition." CreationDate="2010-12-22T02:14:20.770" UserId="974" />
  <row Id="8416" PostId="6719" Score="4" Text="@Sparr I understand that the original developers *had* to implement scrolling this way in order to load tiles, sprites, etc. I don't need to implement the screen-based system described in my question, what I really want is to emulate the camera and/or scrolling movement." CreationDate="2010-12-22T02:17:56.493" UserId="974" />
  <row Id="8417" PostId="6713" Text="Currently I don't have transitions between rooms. The camera freely scrolls. I have not yet implemented transitions because I haven't come up with a decent way to do it that remains true to the Mega Man style." CreationDate="2010-12-22T02:49:29.803" UserId="974" />
  <row Id="8418" PostId="6712" Text="I've heard this called 'flick screening'." CreationDate="2010-12-22T02:52:31.393" UserId="3990" />
  <row Id="8419" PostId="6721" Score="2" Text="Excellent question. Worms has two challenges: destructability, and also movement on weird angles." CreationDate="2010-12-22T03:40:23.800" UserId="1929" />
  <row Id="8420" PostId="6721" Text="i think this has been asked here a number of times" CreationDate="2010-12-22T04:20:37.987" UserId="1251" />
  <row Id="8421" PostId="6445" Text="Ouch! Seems like ai.stackexchange.com was closed, although that would have been the perfect place to ask... sad." CreationDate="2010-12-22T07:16:01.233" UserId="20" />
  <row Id="8422" PostId="6719" Score="4" Text="-1 - The division of the play area into discontinuous chunks may not be relevant for loading anymore, but it still creates a particular feeling of place for players and helps them map the area mentally." CreationDate="2010-12-22T10:42:39.483" UserId="744" />
  <row Id="8423" PostId="6721" Score="1" Text="Vish, the related links don't seem to suggest that." CreationDate="2010-12-22T11:47:47.033" UserId="1156" />
  <row Id="8424" PostId="6713" Text="Perhaps you should elaborate on what conceptually has you stuck, it seems you've got most of the code and concepts in place." CreationDate="2010-12-22T11:48:53.600" UserId="4035" />
  <row Id="8425" PostId="6722" Score="2" Text="I think that's how Hedgewars does it. @Bill, you could take a look at it, since is opensource." CreationDate="2010-12-22T11:58:07.813" UserId="3446" />
  <row Id="8426" PostId="6713" Score="1" Text="@Zack: The Camera follows the Player around. The Camera bounds must never overlap a room outside the one the Player is in (i.e. if the right edge of the viewport is against the right edge of this room, camera cannot move to the right). If the Player passes through a room wall into an adjacent room, have the Camera quickly track until it is safely within the new Room (you only have to worry about up/down/left/right in your structure for this movement). Optionally, if the player walks up to a room wall, take automatic control and force them to walk forward to be completely inside the new room." CreationDate="2010-12-22T13:30:21.310" UserId="2698" />
  <row Id="8428" PostId="6730" Text="A couple questions:  &quot;known bounds&quot; means that the size of Rn is fixed and you only have to randomly choose a point? Or does it mean that they will also be randomly generated but within some bounds? Question 2:  Is it a pixel representation with integer coordinates or a vector representation where coordinates/sizes can be real values?" CreationDate="2010-12-22T14:34:49.503" UserId="2091" />
  <row Id="8429" PostId="6708" Text="Not entirely true about &quot;memory eating PC games&quot; as you can get away with significant optimizations by storing additional data. For instance, simply by storing a simple indexed list of vertices and their relation to other vertices, you can turn a process that takes several seconds into one that takes milliseconds (e.g. tri-stripping a tri-list, I added such an optimization to our offline, cross platform export system). This kind of data increased the size of our meshes by 50%. Meshes aren't that big, but apply similar things to most dynamic systems and you get a huge speed bonus at cost to mem" CreationDate="2010-12-22T14:48:07.280" UserId="1365" />
  <row Id="8430" PostId="6535" Text="Exactly what I was thinking. Pretty much all GPUs, unlike most CPUs are DESIGNED for this sort of massive parallel computational exercise." CreationDate="2010-12-22T14:53:29.167" UserId="1365" />
  <row Id="8431" PostId="6730" Text="1-known bounds mean size of Rn is fixed. 2-pixel representation with integer values" CreationDate="2010-12-22T14:59:06.300" UserId="1179" />
  <row Id="8432" PostId="6687" Text="Yes the XNA path for mono WILL require Visual Studio 2008 (C# Express, which is free, is fine) or better. This means you will have to run under windows, or a windows like environment that will support C# Express + the XNA add-on." CreationDate="2010-12-22T15:09:47.473" UserId="1365" />
  <row Id="8433" PostId="6734" Text="Possible duplicate of http://gamedev.stackexchange.com/questions/464/what-middle-tier-and-backend-libraries-exist-for-handling-player-matching-and-out though a smaller subset." CreationDate="2010-12-22T15:47:02.343" UserId="1156" />
  <row Id="8434" PostId="6735" Text="definitely looking into it" CreationDate="2010-12-22T15:49:48.003" UserId="1179" />
  <row Id="8435" PostId="6703" Text="I do all my new pages in HTML5 and that is not a problem. Of course I don't use 100% HTML5 features, but topic is about future of on-line gaming. Flash is not the solution, since it got many limits, like depending on only one Flash developer, and problems with Apple toys." CreationDate="2010-12-22T15:54:31.213" UserId="2865" />
  <row Id="8436" PostId="6708" Text="You can in a few cases sacrifice memory for speed or vice versa, that is true, but I wouldn't think that matters much to my point." CreationDate="2010-12-22T16:00:43.750" UserId="3505" />
  <row Id="8437" PostId="6713" Text="@TreDubZedd Please see my question's edits. Please let me know if I have captured what you're describing." CreationDate="2010-12-22T16:02:42.767" UserId="974" />
  <row Id="8438" PostId="6734" Text="@The Communist Duck I don't really want a framework. I'm looking to code it myself, so I need an algorithm (or heuristics). " CreationDate="2010-12-22T16:05:09.530" UserId="605" />
  <row Id="8440" PostId="6713" Text="@Axidos I think the problem I had been running in to was defining the regions of transition such that they won't overlap and cause transitioning back and forth in a loop. I'm pretty sure I &quot;get it&quot; now, though, so I'm going to move forward with it and see." CreationDate="2010-12-22T16:50:50.933" UserId="974" />
  <row Id="8441" PostId="6716" Text="A lot of the links there are broken and the site overall hasn't been updated in years. It does have a couple of interesting spots, though." CreationDate="2010-12-22T17:26:33.163" UserId="87" />
  <row Id="8442" PostId="6739" Text="Chances are, this doesn't exist. Also, language?" CreationDate="2010-12-22T17:46:16.610" UserId="1156" />
  <row Id="8443" PostId="6709" Score="1" Text="I think shadows and hard edges are two separate issues.  Simply adding a shadow &quot;blob&quot; under the character's location would greatly improve the appearance of their feet being on the ground.  Also, the texture for the feet and legs should subtly get darker so that they blend in a bit into the darker area the shadow creates. " CreationDate="2010-12-22T18:04:57.077" UserId="3830" />
  <row Id="8444" PostId="6713" Score="1" Text="@Zack: Your question edit appears to correlate to what I was thinking.  The player's position can only move out of a given room in those transition locations (between y1 and y2 on a vertical wall, or x1 and x2 on a horizontal wall), and as soon as it does, you place its position in the next room--thus avoiding a &quot;back and forth&quot; loop--and perform the visual transition." CreationDate="2010-12-22T18:05:25.393" UserId="3081" />
  <row Id="8445" PostId="6713" Text="You might also consider a &quot;border&quot; around each room, which is generally non-playable area (except for the transition regions).  You can graphically design your rooms such that the non-playable border always contains &quot;wall&quot; graphics, but the transition regions are left open, like the rest of the room.  You can fake a transitional &quot;overlap&quot; by waiting for the player to cross into the (playable) border entirely, and in the next room, make sure the new position doesn't intersect the border at all." CreationDate="2010-12-22T18:10:20.927" UserId="3081" />
  <row Id="8446" PostId="6738" Text="Indie Games on XBox don't get the type of trafic you'd really like to see; however, a lot of games initially targeting the Indie section with XNA ended up being Xbox Live Arcade games. Heard that on Scott Hanselman's podcast a few weeks ago, so I forget the name of the games..." CreationDate="2010-12-22T18:58:39.390" UserId="1198" />
  <row Id="8447" PostId="6722" Text="@Gastón The maps in Hedgewars are all images (PNGs). I doubt they are being converted to vector graphics. Also: using vector graphics (splines, bezier, etc.) is much more CPU heavy for things like collision-detection or subtracting shapes. Looking at the source is a good idea though (although the coding-style is rather bad :))" CreationDate="2010-12-22T19:07:36.453" UserId="20" />
  <row Id="8448" PostId="6744" Score="2" Text="I really doubt many people are going to **download** the code. Use code tags and place it in your question, or use codepad/pastebin on the forever-stay-up-there setting?" CreationDate="2010-12-22T19:16:11.520" UserId="1156" />
  <row Id="8449" PostId="6744" Text="Yeah, I thought the same thing. The code is long though, and it's split across several .cpp files. I'll try to post the most relevant parts. " CreationDate="2010-12-22T19:37:07.157" UserId="2943" />
  <row Id="8450" PostId="6655" Text="@Vish: It's only half done. It's my pet project, unlike the rest of the games we make for a living, so it doesn't have a very clear &quot;release&quot; date :(" CreationDate="2010-12-22T19:38:55.793" UserId="4082" />
  <row Id="8451" PostId="6744" Text="Well, some helpful guy on gamedev.net did download the thing. Dude, this isn't a virus. I don't wanna get booted out StackExchange. http://www.gamedev.net/community/forums/topic.asp?topic_id=591112" CreationDate="2010-12-22T19:43:23.207" UserId="2943" />
  <row Id="8452" PostId="6744" Score="2" Text="Asking for a step that's beyond just reading what's in the question or providing a link to something in a web browser (consider pastebin or something similar) is going to reduce the amount of responses you get.  People are lazy." CreationDate="2010-12-22T20:08:48.430" UserId="51" />
  <row Id="8453" PostId="6744" Text="I wasn't saying it was a virus, I was simply saying that people are mostly not going to bother helping someone if it means they have to do a lot of work." CreationDate="2010-12-22T20:41:50.620" UserId="1156" />
  <row Id="8454" PostId="6750" Score="1" Text="Question:  do you actually need complex collision detection?  If the answer is no, then you're going about solving your problem in a fairly complex way." CreationDate="2010-12-22T20:49:48.090" UserId="3830" />
  <row Id="8455" PostId="6751" Text="I second &quot;real time collision detection&quot;. It is one of the most useful books I own. You can have a look at few chapters from it here: http://books.google.ca/books?id=WGpL6Sk9qNAC&amp;printsec=frontcover" CreationDate="2010-12-22T21:00:24.417" UserId="2345" />
  <row Id="8456" PostId="6751" Text="Not a homework actually, that's for a quick and dirty solution for an engineering simulation of two dynamic (mechanical) systems. I have the book and make use of it a lot, but I am after collecting the recommendations from the practioners. " CreationDate="2010-12-22T21:32:42.687" UserId="2501" />
  <row Id="8457" PostId="6738" Text="@Nate: As there's only 1-3 games released per week on XBLA, and the vast majority of those are still larger/established publishers (e.g. this week, id, Konami, and Microsoft), I find it unlikely that &quot;a lot of games&quot; are making that jump by any measure of &quot;lot&quot;." CreationDate="2010-12-22T21:40:08.557" UserId="744" />
  <row Id="8458" PostId="6738" Text="Granted, it may not be &quot;lots.&quot;" CreationDate="2010-12-22T22:11:21.973" UserId="1198" />
  <row Id="8459" PostId="6719" Text="@Joe how is that relevant to my answer? I specifically and directly address the chunks being multiple-of-screen-sized. I said nothing about the chunks being discontinuous or not." CreationDate="2010-12-23T00:11:59.950" UserId="2781" />
  <row Id="8460" PostId="6746" Text="I've looked over this algorithm a bit and I can't understand the logic or it's result *at all*. Could you explain it a bit more? Why would I want a `groupMembers filled with the index of players with the smallest rank`? I've reworded the question, maybe that'll help make what I'm asking for more clear." CreationDate="2010-12-23T00:57:04.157" UserId="605" />
  <row Id="8461" PostId="6744" Text="I think It's actually easier to debug loading the VS project file, I tried slicing the thing and it ended up being a pain to read. " CreationDate="2010-12-23T01:01:00.130" UserId="2943" />
  <row Id="8462" PostId="6367" Text="Glad to have helped." CreationDate="2010-12-23T01:19:02.500" UserId="1716" />
  <row Id="8463" PostId="6346" Text="No problem, glad to have helped." CreationDate="2010-12-23T01:23:08.473" UserId="1716" />
  <row Id="8464" PostId="6719" Text="@Sparr I wanted to let you know that I didn't downvote your answer, but I don't really think that it answers my question: 'How can these screen transitions be modeled?'." CreationDate="2010-12-23T01:38:14.373" UserId="974" />
  <row Id="8465" PostId="6403" Text="Interestingly, Joel has a post that is very relevant to the discussion starting from [&quot;When I was an Israeli paratrooper&quot;](http://www.joelonsoftware.com/articles/fog0000000339.html)" CreationDate="2010-12-23T02:20:29.327" UserId="998" />
  <row Id="8466" PostId="6655" Text="@ggambett: hehe...i wanted to know how about the &quot;giant rubber band thing &quot; :)" CreationDate="2010-12-23T04:37:06.823" UserId="1251" />
  <row Id="8467" PostId="6594" Text="You should consider adding a pygame tag. It would make your question less ambiguous since each platform handles importing models differently." CreationDate="2010-12-23T04:38:44.860" UserId="2595" />
  <row Id="8468" PostId="6755" Text="Would your friend be talking about [Dijkstra's algorithm](http://en.wikipedia.org/wiki/Dijkstra%27s_algorithm)? It's such a good node-based pathfinding algorithm that _internet routing runs on it_." CreationDate="2010-12-23T05:42:28.527" UserId="2698" />
  <row Id="8469" PostId="6719" Text="@Zack thanks. if it goes too much more negative I'll delete it, but if it stays at -3 then I'll leave it since I think it's pertinent even if not a direct answer" CreationDate="2010-12-23T06:03:06.817" UserId="2781" />
  <row Id="8470" PostId="6594" Text="Removed the &quot;best-practices&quot; tag and added &quot;pygame&quot;." CreationDate="2010-12-23T10:36:56.363" UserId="2798" />
  <row Id="8471" PostId="6678" Text="That last bit should read &quot;packing them into POT textures anyway&quot;, sorry." CreationDate="2010-12-23T10:49:48.783" UserId="744" />
  <row Id="8472" PostId="6755" Score="2" Text="@Axidos: Dijkstra's is uninformed A*; if you can come up with _any_ heuristic, A* is better." CreationDate="2010-12-23T10:53:11.773" UserId="744" />
  <row Id="8473" PostId="6699" Score="1" Text="-1 - Those numbers seem to be pulled out of a hat, and I'd definitely not consider that division _fair_." CreationDate="2010-12-23T11:03:24.930" UserId="744" />
  <row Id="8474" PostId="6734" Text="It's not clear what you want to happen when N|X fails. Does N vary over some range? Can I make games with anywhere between 2 and N players? Are you looking to minimize the mean, total, or some other function of the standard deviations?" CreationDate="2010-12-23T11:10:21.347" UserId="744" />
  <row Id="8475" PostId="6746" Text="-1 - I think you're trying to do the same thing I suggested, but your actual code is nonsense. If players[0] has the smallest rank, your code provides garbage in groupMembers. If players[0] has the second-smallest, your code produces a group of N copies of the smallest group member. And so on." CreationDate="2010-12-23T11:20:10.417" UserId="744" />
  <row Id="8476" PostId="6767" Text="You would be struggling to get that kind of accuracy. There's no gurantee you can run by the millisecond on desktop platforms, IIRC." CreationDate="2010-12-23T11:49:40.660" UserId="1156" />
  <row Id="8477" PostId="5815" Text="Unity3D has no support for Lua, AFAIK. -1." CreationDate="2010-12-23T11:53:18.253" UserId="1156" />
  <row Id="8478" PostId="6755" Text="@Joe Wreschnig: So it is! I didn't realise that - thanks for giving me a reason to investigate!" CreationDate="2010-12-23T12:13:35.803" UserId="2698" />
  <row Id="8482" PostId="6767" Text="Actually newer systems (real time OSes, many BSDs and patched Linux kernels) are even starting to support nanoseconds (although they cannot be very accurate). The time granularity offered by any Linux system is on the order of microseconds (10 msecs at most, IIRC)." CreationDate="2010-12-23T12:44:41.323" UserId="3282" />
  <row Id="8483" PostId="6767" Text="10usec is the usual measurement given for modern Linux `gettimeofday` accuracy, but that function is subject to clock drift and user changes, so it's not appropriate for games anyway. I've seen `clock_gettime` be accurate to within several hundred nanoseconds usually, which is approaching the hardware limit." CreationDate="2010-12-23T12:48:38.543" UserId="744" />
  <row Id="8484" PostId="2922" Text="Interesting and well thought out question, but as Ricket said it is inappropriate for this particular community. I recommend gaming, or electronics. http://electronics.stackexchange.com/" CreationDate="2010-12-23T13:50:30.947" UserId="14" />
  <row Id="8485" PostId="6763" Score="2" Text="Perhaps you are doing the SetData between SpriteBatch.Begin and SpriteBatch.End calls?" CreationDate="2010-12-23T14:08:29.630" UserId="2798" />
  <row Id="8486" PostId="6755" Text="Dijkstra is basically A* without heuristic. Using Dijkstra is really useful if you want to find the nearest item of type X. Eg. your Bot is looking for the nearest ammo-crate, then Dijkstra's will find you the nearest one." CreationDate="2010-12-23T14:24:58.203" UserId="20" />
  <row Id="8487" PostId="6764" Text="A shader is not really useful unless the state is specifiable using a stateless or smaller-state-to-transmit formula, which is not the case for the game of life. Otherwise, what you're feeding into the shader is a texture-sized buffer of data, which might as well just be the texture. " CreationDate="2010-12-23T15:23:31.033" UserId="744" />
  <row Id="8488" PostId="6763" Text="@r2d2rigo: Answers should be answers, not comments, so I can really upvote that." CreationDate="2010-12-23T15:24:32.730" UserId="744" />
  <row Id="8489" PostId="6763" Text="Afraid not. The linked answer below leads to this - GraphicsDevice.Textures[0] = null; - which makes the texture inacvtive on the device, but why index 0 is a mystery." CreationDate="2010-12-23T15:28:29.107" UserId="3188" />
  <row Id="8490" PostId="6764" Text="A shader won't help, I agree. The linked answer does help though: GraphicsDevice.Textures[0] = null; will allow the texture to be modified. If the answer is edited, preferably explaining what index 0 is and why this works, I'll happily vote for that answer :)" CreationDate="2010-12-23T15:30:54.627" UserId="3188" />
  <row Id="8491" PostId="6734" Text="@Joe Wreschnig You can assume N % X == 0. Any N is an acceptable number, but N = 1 is the trivial case." CreationDate="2010-12-23T15:33:50.310" UserId="605" />
  <row Id="8492" PostId="2922" Text="Just realized how old this was. How did this get bumped up." CreationDate="2010-12-23T15:48:33.870" UserId="14" />
  <row Id="8493" PostId="6746" Text="After rereading the question and your updated explination, my code (even fixed) wouldn't have done what you want; that said, it is wrong, I'd copied it and removed some important bits." CreationDate="2010-12-23T16:14:05.033" UserId="1198" />
  <row Id="8494" PostId="6615" Score="1" Text="There goes one perfectly good hour out of my day :P" CreationDate="2010-12-23T17:21:14.320" UserId="3656" />
  <row Id="8495" PostId="6771" Text="I'm pretty sure you would need to generate nodes." CreationDate="2010-12-23T17:37:22.223" UserId="1156" />
  <row Id="8496" PostId="6771" Text="Can this be generated automatically?" CreationDate="2010-12-23T17:46:52.953" UserId="1516" />
  <row Id="8497" PostId="6763" Text="@Joe: It was just a question, see izb's response telling that he wasn't doing it. It wasn't an answer per se, just asking for some info about how did he code it." CreationDate="2010-12-23T17:53:03.393" UserId="2798" />
  <row Id="8498" PostId="6764" Score="1" Text="XNA 4.0 changed the way shaders work. When you use a shader, it is kept bound to the GPU until you set a new one (in 3.1 it was Effect.Begin and Effect.End, now it is Effect.Apply); and since SpriteBatch uses an internal shader that needs a texture (the sprite you want to draw), it is bound to the GraphicsDevice for quite some time after you use it. Setting GraphicsDevice.Texture[0] to null tells the GPU to stop using the first texture in the texture stage, which happens to be the one set by the SpriteBatch's shader. BTW, should I expand this in a separate answer?" CreationDate="2010-12-23T17:59:05.030" UserId="2798" />
  <row Id="8500" PostId="6485" Text="I would also look around for MahJongg strategies.  It's not quite as closely related but it's still close." CreationDate="2010-12-23T18:26:42.250" UserId="3175" />
  <row Id="8501" PostId="6771" Text="I think so. Or at least, a lot of procedural stuff wouldn't be able to do it any other way." CreationDate="2010-12-23T19:10:38.303" UserId="1156" />
  <row Id="8502" PostId="6769" Text="There's a third question to consider here: how long can lag times realistically be before the player notices? Generally what matters to most players isn't the clock speed, so much as the framerate." CreationDate="2010-12-23T20:20:06.863" UserId="458" />
  <row Id="8505" PostId="6779" Text="Thanks a lot, most of the tutorials i saw were using pre-build vector lists so it was hard to tell what math they were actually applying to what vectors, using it in context here helped me understand it easily, i appreciate it!" CreationDate="2010-12-23T21:00:31.737" />
  <row Id="8506" PostId="6769" Text="Ian: What usually ends up being a problem is frequency interference from e.g. a 60Hz display update and a 29Hz game logic update, which usually _is_ an issue of precision, either in the clock used or the sleep interval. Once you have dealt with that (via interpolation or whatever), anything ~20fps and up feels &quot;okay&quot;." CreationDate="2010-12-23T22:41:49.443" UserId="744" />
  <row Id="8507" PostId="6769" Text="Ian: The other common problem - probably what you're calling &quot;lag&quot; - is due to double/triple buffering patterns on display and input, and is really outside the scope of this question." CreationDate="2010-12-23T22:42:21.237" UserId="744" />
  <row Id="8508" PostId="6764" Text="@r2d2rigo: Please do. (@izb: The index is zero because you're not multitexturing, so the only active texture unit is the first one.)" CreationDate="2010-12-23T22:45:19.533" UserId="744" />
  <row Id="8509" PostId="6773" Text="Four vertices - or even one 2D vertex - is way more data than you would be sending by re-uploading a texture." CreationDate="2010-12-23T22:49:00.277" UserId="744" />
  <row Id="8510" PostId="6761" Text="That you choose a bad heuristic for your data doesn't make A* &quot;not work&quot; - it still does what it mathematically claims to. You just need to pick an admissible heuristic - like the minimum of the distance to the goal *or* the nearest teleporter - and it'll find the optimal path at least as fast as Dijkstra's." CreationDate="2010-12-23T22:58:00.577" UserId="744" />
  <row Id="8511" PostId="6775" Text="Thanks. I'm going to try navigation meshes along with checking out recast library" CreationDate="2010-12-23T23:40:22.947" UserId="1516" />
  <row Id="8512" PostId="6782" Text="+1 For component pattern, it makes so much sense for games! It's also hard for me to imagine unit testing games too, unless maybe you're developing a physics engine or something, making sure no whacked out values come out when you add/change something." CreationDate="2010-12-23T23:51:29.370" UserId="3656" />
  <row Id="8513" PostId="6782" Score="3" Text="MVC works great in my games. Physics is model-layer. Sound is view layer. Networking is model layer. (Then again, I am 100% for automated testing everything that's easily testable, and MVC separates it nicely so that I only can't test the view easily.)" CreationDate="2010-12-24T00:20:37.777" UserId="1929" />
  <row Id="8514" PostId="6603" Score="1" Text="The issue of stable browser with webgl support should not happen after Jan 2010 or so. Firefox 4 and Chrome 9 are slated to come out at about that time. Chrome 9 beta is pretty simple to install and doesn't require messing with anything to enable webgl. The link to the beta edition is bellow the regular download link for chrome. " CreationDate="2010-12-24T00:29:57.310" UserId="2994" />
  <row Id="8515" PostId="6655" Text="@Vish: Oh :) I meant what happens in many online FPSs when your connection drops - you can move a bit but your character is then pulled back, as if tied by a rubber band, when the client figures out the server hasn't ACKed its inputs after a while." CreationDate="2010-12-24T01:32:59.217" UserId="4082" />
  <row Id="8516" PostId="6776" Text="Great, I'll check out what it has when I have the time." CreationDate="2010-12-24T04:05:11.133" UserId="284" />
  <row Id="8519" PostId="6750" Text="Your comment below says you're building an engineering simulation, but you need to be clearer about what sort of objects you're simulating. Are they convex/concave? Are they allowed to intersect? Do you want penetration depth out of the answer?" CreationDate="2010-12-24T10:17:41.550" UserId="741" />
  <row Id="8522" PostId="343" Score="1" Text="@Simon: with all due respect, the last example is a sign of extreme cluelessness, and has nothing to do with STL... that person would do the same in any other language with lists that can be sorted. It's his thinking that is broken." CreationDate="2010-12-24T13:56:46.933" UserId="4082" />
  <row Id="8523" PostId="6699" Score="1" Text="@Joe Wreschnig haha what? Thats just an example, i said it depends on your game.I was just saying you can split up the profits in a fair way. Thanks for the down vote though?? " CreationDate="2010-12-24T16:02:58.090" UserId="2301" />
  <row Id="8525" PostId="5569" Text="It doesn't matter if a third or two thirds have IE 9, because A) one third won't have it and start complaining B) IE 9 supports only a small part of HTML 5 C) HTML 5 is not the solution for everything, it only has support for video and audio, which html 4.1 already had (with a larger bit of extra work) D) As long as IE's JavaScript engine stays as buggy as it is, AJAX and reverse AJAX will continue to not really work, even with IE 9." CreationDate="2010-12-24T16:44:36.930" UserId="3341" />
  <row Id="8526" PostId="6794" Score="1" Text="I wonder what Carmack thinks about ogre. And what sinbad thinks about the quake3 src release ;p" CreationDate="2010-12-24T17:44:19.227" UserId="1829" />
  <row Id="8527" PostId="6793" Score="1" Text="Have you tried 'walking' through the code, and see what it does? " CreationDate="2010-12-24T18:20:22.737" UserId="1156" />
  <row Id="8528" PostId="90" Score="3" Text="I built World of Warcraft in 2 weeks." CreationDate="2010-12-24T18:51:57.060" UserId="3667" />
  <row Id="8529" PostId="1079" Text="@Tetrad - Create a gold standard. Then, get rid of it and move everything to a new system called Breton Woods. Then, start printing money every day. Wait, that's what the US did." CreationDate="2010-12-24T18:53:11.737" UserId="3667" />
  <row Id="8530" PostId="6750" Text="An observation:  @ebusiness and @mrcranky triangle to triangle checks, should come up with the same answer (just remember, As @ebusiness hinted at, you are not guaranteed a unique set of two points in the case that whole edge is the closest). " CreationDate="2010-12-24T20:49:06.633" UserId="1024" />
  <row Id="8531" PostId="6725" Text="This may be a good solution, but I personally don't like the idea of adding another compiler and data format to manage to the project." CreationDate="2010-12-24T20:57:52.637" UserId="2302" />
  <row Id="8532" PostId="6729" Text="These are some good points." CreationDate="2010-12-24T21:02:00.963" UserId="2302" />
  <row Id="8533" PostId="6699" Text="&quot;Split it up arbitrarily, here's a random example&quot; is not a good answer. My downvote remains." CreationDate="2010-12-24T21:15:36.943" UserId="744" />
  <row Id="8534" PostId="6796" Score="2" Text="http://gamedev.stackexchange.com/questions/41/what-are-some-good-resources-for-getting-a-beginner-started-in-developing-games http://gamedev.stackexchange.com/questions/640/tips-for-someone-new-to-game-development http://gamedev.stackexchange.com/questions/4011/getting-started-questions not to mention _the entire site_." CreationDate="2010-12-24T21:17:48.797" UserId="744" />
  <row Id="8535" PostId="6798" Text="+1 for the Huge MMO Comment. This is one of this funny things that always comes up with new developers. " CreationDate="2010-12-24T21:22:26.610" UserId="2910" />
  <row Id="8536" PostId="6755" Text="@bummzack: Not really a good example - A* is still better if you have any admissible estimate of where the nearest ammo-crate is, usually (and trivially) Euclidean distance. And if you don't want your AI to be omniscient and actually have to explore, depth-first searches will probably be better (or at least make AIs look more intentioned) than breadth-first searches (including Dijkstra)." CreationDate="2010-12-24T21:25:32.343" UserId="744" />
  <row Id="8537" PostId="6643" Text="More games have shipped based on id Tech 3 than have shipped based on Ogre. By any pragmatic measure, id Tech 3 is more generic." CreationDate="2010-12-24T21:29:39.283" UserId="744" />
  <row Id="8538" PostId="6798" Text="it's not always a huge MMO; very often they just think they can jump in and build a dream game." CreationDate="2010-12-24T21:32:33.710" UserId="1156" />
  <row Id="8539" PostId="6784" Text="Do you get any particular error message? As was stated it should download visual studio 2010 express if you don't have visual studio 2010 already installed and I am pretty sure that you can have both 2008 and 2010 installed on the same machine, so it shouldn't be causing any errors. The following link proves my point http://msdn.microsoft.com/en-us/library/ms246609.aspx" CreationDate="2010-12-24T22:09:17.483" UserId="493" />
  <row Id="8540" PostId="6643" Text="Yes but if you are talking about FPS's that makes sense. On top of that open source doesn't always have a good reputation, while on the other side, quake 3 has a very good reputation. Ogre looks like it's more suited to do an RPG, a car game, a platform game, or even a flight simulator. I don't know a lot about quake 3's anatomy, but I feel safer with a scene manager." CreationDate="2010-12-24T23:37:51.640" UserId="1829" />
  <row Id="8541" PostId="6755" Text="@Joe not really, since Eucledian distance can be totally misleading (eg. item is behind a large wall) and you're not looking for **one** goal (where A* shines), but for the nearest item out of *N* candidates. I still think in this case a breadth first search like Dijkstras is a good approach. " CreationDate="2010-12-24T23:58:08.337" UserId="20" />
  <row Id="8542" PostId="6801" Text="I've yet to see a keyboard where the arrow keys interfere in such a way, but I guess it could do that too ^^" CreationDate="2010-12-25T00:00:52.393" UserId="2239" />
  <row Id="8543" PostId="6800" Text="How do the values of both keydown checks look like if you debug it (or look at the GetPressedKeys structure of the keyboardState)? How do the entire method look like?" CreationDate="2010-12-25T00:11:02.950" UserId="2239" />
  <row Id="8544" PostId="4027" Text="Sadly it's not open but after playing with it for a day or two the concepts and coding needed to re-implement it should be quite clear, and generally lead to at least a few aha's. The same could probably be said for any engine featuring digest sprite handling classes." CreationDate="2010-12-25T01:10:44.933" UserId="2239" />
  <row Id="8545" PostId="5815" Text="okay, I read the first post of this question as someone looking for an alternative free gameengine with physics and particles, which also could do 3D. I dont know what Lua is, so I didnt notice it. Sorry." CreationDate="2010-12-25T01:16:00.810" UserId="3115" />
  <row Id="8546" PostId="6803" Text="+1 Thats the kind of answer that real programmer wants to see here :)" CreationDate="2010-12-25T02:08:44.410" UserId="3794" />
  <row Id="8547" PostId="6805" Text="Thanks Ray, this was indeed my problem. " CreationDate="2010-12-25T03:54:45.617" UserId="2910" />
  <row Id="8548" PostId="5197" Text="Why do you say the tiles should to be 32x32?" CreationDate="2010-12-25T05:11:14.013" UserId="962" />
  <row Id="8549" PostId="6594" Text="That makes a lot of sense, thanks!" CreationDate="2010-12-25T05:37:42.243" UserId="541" />
  <row Id="8550" PostId="6790" Text="The assumption that two meshes are a polygon soup fits to my problem and the answer more than helpful. While four early out heuristics seems pretty adequate, further heuristic proposals will also count." CreationDate="2010-12-25T06:08:26.380" UserId="2501" />
  <row Id="8551" PostId="82" Text="@Tetrad, the community cannot vote to reopen it. There are only 4 other people with enough XP." CreationDate="2010-12-25T09:49:11.873" UserId="450" />
  <row Id="8552" PostId="6769" Text="_Never sleep_.  You should [busy wait](http://stackoverflow.com/questions/1107593/what-are-trade-offs-for-busy-wait-vs-sleep)." CreationDate="2010-12-25T10:49:27.217" UserId="998" />
  <row Id="8553" PostId="6769" Score="1" Text="Busy waiting burns CPU like crazy and most games are GPU bound, not CPU bound. Sleeping until slightly before you want and then busy waiting up to that point can be acceptable, but busy waiting damages hardware, wastes electricity, makes other applications unusable, and still doesn't stop the OS from forcing you into the background." CreationDate="2010-12-25T12:58:31.347" UserId="744" />
  <row Id="8554" PostId="6755" Text="@bummzack: I think you're not understanding A*. If it's behind a wall, A* means you consider cells approaching that wall first, not that you don't find the nearest one eventually. At worst, the heuristic function biases you towards the dead-end during the start of your search, but it will give up that branch as soon as it starts moving away from the ammo because of the wall, and you are still guaranteed the nearest ammo box in the end." CreationDate="2010-12-25T13:03:22.217" UserId="744" />
  <row Id="8555" PostId="6755" Text="@bummzack: While you can construct degenerate cases where h(x)=0 finds the ammo before h(x)=dist(x), in the average real world case the difference is either minimal (some short discarded branches) or _drastically_ in favor of A*, as with an open area." CreationDate="2010-12-25T13:07:56.723" UserId="744" />
  <row Id="8556" PostId="6790" Text="After the early outs, the closest distance between meshes in the final AABB paring could be an edge of one triangle of meshA and an edge of a triangle of meshB. So measuring against points or vertices only is not always an accurate answer... In game dev, that's probably an acceptable compromise though. In an engineering sim, maybe, maybe not." CreationDate="2010-12-25T14:58:57.760" UserId="1923" />
  <row Id="8557" PostId="6809" Text="Thanks!! I'm grateful someone helped on X-mas eve xD. Merry X-mas (in case you celebrate it)." CreationDate="2010-12-25T15:05:56.867" UserId="73" />
  <row Id="8558" PostId="6784" Text="No error message, the installer hangs and I get a &quot;Not Responding&quot; message. What's weird is certain parts were installed the emulator. I think I will uninstall everything and try again." CreationDate="2010-12-25T15:13:07.240" UserId="1330" />
  <row Id="8559" PostId="6785" Text="Damn, I bought 2008 in 2009 too. I should of waited. Thank you for taking the time to answer." CreationDate="2010-12-25T15:13:56.193" UserId="1330" />
  <row Id="8560" PostId="6808" Score="1" Text="possible duplicate of [A list of game mechanics](http://gamedev.stackexchange.com/questions/3297/a-list-of-game-mechanics)" CreationDate="2010-12-25T15:28:41.893" UserId="744" />
  <row Id="8561" PostId="6811" Text="I think Torchlight's maps are 2D, with 3D graphics. I don't remember it having any 3D map areas like WoW's Blackrock Spire, where tunnels go above or below each other. You can probably use any of the 2D dungeon generators from Roguelikes (http://pcg.wikidot.com/pcg-algorithm:dungeon-generation)." CreationDate="2010-12-25T16:56:18.603" UserId="2472" />
  <row Id="8562" PostId="6806" Text="Thanks Andrew, this certainly was the problem I was having." CreationDate="2010-12-25T16:59:15.433" UserId="2910" />
  <row Id="8563" PostId="6755" Text="@Joe: So you're saying that you would change the goal in A* during search (if it turns out that the create you were steering to is actually further away than another one)? I think that would result in a new search for every crate then?  " CreationDate="2010-12-25T17:16:09.613" UserId="20" />
  <row Id="8565" PostId="6811" Text="Fun reference, this 4 KB demo: http://www.youtube.com/watch?v=_YWMGuh15nE" CreationDate="2010-12-25T21:29:35.467" UserId="2239" />
  <row Id="8566" PostId="6813" Score="1" Text="At least you're still better off than me in Jamaica. There is this competition called Imagine cup where students can create games/software, etc and go to finals. Every year brazil is in the top 6 for game development." CreationDate="2010-12-25T23:05:51.863" UserId="1516" />
  <row Id="8567" PostId="6813" Score="1" Text="And for us in Jamaica, Our university don't teach much in computer science much less game development. We have to learn online." CreationDate="2010-12-25T23:06:56.933" UserId="1516" />
  <row Id="8568" PostId="6786" Text="What in particular are you looking for? Would you like sample source code on how navigational meshes are used, or how they are generated (like recast, but your question simply asks for code that &quot;contains&quot; Navigational Meshes)" CreationDate="2010-12-25T23:41:45.333" UserId="2332" />
  <row Id="8569" PostId="6755" Text="bummzack: I'm proposing h(x) = min(map(x.dist, ammo_crates)). I'm not changing the goal at any point during running the algorithm - I'm defining the goal to be the nearest ammo crate, rather than specifically the Euclidean-nearest crate. The whole point of A* is that once g(x) &gt; g(y) + h(y), it's going to start exploring down y no matter how small h(x) is." CreationDate="2010-12-25T23:57:57.417" UserId="744" />
  <row Id="8570" PostId="6786" Text="I'm looking at how to generate the nodes and traverse it. Not generating the mesh itself, We'll do that manually." CreationDate="2010-12-25T23:58:03.877" UserId="1516" />
  <row Id="8571" PostId="6786" Text="I'm assuming that the algorithm will just take a vertices and all the polygons they belong to then we send start and end points to it." CreationDate="2010-12-25T23:59:36.293" UserId="1516" />
  <row Id="8573" PostId="6811" Text="2D dungeon generation has already been covered at http://gamedev.stackexchange.com/questions/2663/what-are-some-ideal-algorithms-for-rogue-like-2d-dungeon-generation." CreationDate="2010-12-26T00:19:29.090" UserId="744" />
  <row Id="8574" PostId="6819" Text="Thank you for this site, I had no idea it existed! :)" CreationDate="2010-12-26T03:37:33.223" UserId="2332" />
  <row Id="8575" PostId="6819" Text="First i'll give it a try on Java stuff. Never really liked c++, but it would be worth to learn for sure." CreationDate="2010-12-26T03:59:25.773" UserId="4217" />
  <row Id="8576" PostId="6818" Text="It really helped. So maybe, i'll give it a try here in Brazil. I still think it's better to work outside to make more money, cause here is not that good I believe. But I'm still learning, so I am not good enough. I'll try Slick 2D as @Dave said. Any doubts I'll just post here. I really enjoy this website, make me feel more comfortable while trying to do anything. Any doubt, I just ask in here, and I find the answer. Just like StackOverflow.com" CreationDate="2010-12-26T04:04:41.807" UserId="4217" />
  <row Id="8577" PostId="6818" Text="+1 It's very important to start off small. Sure, you aren't gonna make any money or impress anyone by writing Pong and Tetris, but you're not going to learn how to juggle by throwing swords around either." CreationDate="2010-12-26T08:17:46.693" UserId="4224" />
  <row Id="8578" PostId="6755" Text="@Joe Wreschnig: Ok I think I understand now. So your heuristic is basically evaluating the closest crate (Eucledian-nearest) in each iteration of the search algorithm? So the search might converge to a create but then change direction once onother crate is closer than the previous one? Not sure if that would always find the closest crate though? Example: http://imgur.com/xPxWf in that scenario the player (red) would search left, then down and most likely find the crate (green) at the bottom, whereas the nearest would have been on the right." CreationDate="2010-12-26T10:54:41.517" UserId="20" />
  <row Id="8579" PostId="6822" Text="Thanks, that worked great." CreationDate="2010-12-26T11:11:40.583" UserId="4224" />
  <row Id="8581" PostId="6823" Text="I meant countries that got good companies to work while I study game stuff in some college." CreationDate="2010-12-26T13:09:53.350" UserId="4217" />
  <row Id="8582" PostId="6755" Text="@Joe Wreschnig: I was wrong with my assumption. A* will indeed be superior to Djikstras in this case. Sorry for the lengthy comment-discussion :)" CreationDate="2010-12-26T13:13:51.793" UserId="20" />
  <row Id="8583" PostId="6823" Text="And I don't really need to quit the company after I finish. First of all, it's just a curiosity." CreationDate="2010-12-26T13:18:17.877" UserId="4217" />
  <row Id="8585" PostId="6825" Score="1" Text="possible duplicate of [Fixed time step vs Variable time step](http://gamedev.stackexchange.com/questions/1589/fixed-time-step-vs-variable-time-step)" CreationDate="2010-12-26T16:38:08.067" UserId="744" />
  <row Id="8586" PostId="6827" Text="Not only will things move fast or slow depending on the computer it is running, but all animations will move at the same rate - what that means is that some animations will run super fast, while some run a bit slower, making it look really odd." CreationDate="2010-12-27T00:07:50.377" UserId="2029" />
  <row Id="8587" PostId="6827" Text="@ZorbaTHut but isn't capping the frame rate going to account for this?" CreationDate="2010-12-27T02:34:04.683" UserId="4149" />
  <row Id="8590" PostId="6836" Text="I want the applied force" CreationDate="2010-12-27T09:46:28.370" UserId="2933" />
  <row Id="8591" PostId="6836" Text="@meds; In that case you need to know more about the colliding objects, at the very least (for the simple assumption of constant force) the duration of the impact." CreationDate="2010-12-27T09:49:39.280" UserId="653" />
  <row Id="8592" PostId="6837" Score="1" Text="The title of the question is quite confusing, given what you're actually asking I would suggest: &quot;In general, are programmers or artists paid more?&quot;" CreationDate="2010-12-27T09:57:31.643" UserId="741" />
  <row Id="8593" PostId="6790" Text="Just to be clear - the four points I make there are just one early-out heuristic - you need to do all four steps to be able to discard the pairings. @Steve H: Not sure what you mean - the AABB checking doesn't tell you anything about closest points, you still need to do the triangle-triangle check (which may come up with various answers like: entire triangle is equ-distant to other triangle, closest edge is equ-distant to line on other triangle, or point is closest to point on other triangle)." CreationDate="2010-12-27T10:06:41.117" UserId="741" />
  <row Id="8594" PostId="6790" Text="Edited to note the edge-line case in triangle-triangle checking" CreationDate="2010-12-27T10:20:04.783" UserId="741" />
  <row Id="8595" PostId="6834" Text="Awesome. I don't want to have to use a stolen SDK. The technical reasons also means that PS3 is ruled out. Hopefully the Wii is a lot nicer." CreationDate="2010-12-27T10:22:22.990" UserId="4051" />
  <row Id="8596" PostId="6841" Text="You know what, you're partly right, so I removed my poorly justified reasons from my answer. That said, I was talking about the barriers to being an *entry-level* artist or programmer. Of course you need a lot of experience and training to be a good artist or programmer. You need a lot of experience to be a good anything. " CreationDate="2010-12-27T10:54:48.607" UserId="741" />
  <row Id="8597" PostId="6841" Text="No problems, man. Sorry if I sounded a bit hurt/dramatic, is as have suffered from this many times when the salary negotiation used to come... ;)" CreationDate="2010-12-27T10:57:24.720" UserId="3599" />
  <row Id="8598" PostId="6785" Text="Always go for MSDN subscriptions with VS in them if you can, the VS upgrade cycle will always be there :9 These days, a retail non-sub upgrade to 2010 includes one year of MSDN Essentials as a taster though ^^" CreationDate="2010-12-27T11:10:31.307" UserId="2239" />
  <row Id="8599" PostId="6837" Score="3" Text="I've -1d unsourced answers. Anecdotes may be acceptable some places, but there's a huge amount of professional, published answers to this question, and not citing _something_ is doing the asker and other readers a major disservice." CreationDate="2010-12-27T11:16:18.097" UserId="744" />
  <row Id="8600" PostId="6687" Text="$49-$99 for XNA creators and a free version of Visual Studio and results run on all xboxes, not just rooted ones, while a recently price-cut dev kit for PS3 is $10.000... now, the PS3 Home dev kit I'm unsure of its status, it seems hard to get info on but last time I saw it it was version 0.1 and you needed specific expensive tools like Maya (sic) to use it... I've dubbed the xbox the &quot;indiebox&quot; so far - and imo you select your platform and operatingsystem depending on what tools and applications you want to run, not the other way around ^^" CreationDate="2010-12-27T11:20:28.260" UserId="2239" />
  <row Id="8601" PostId="6744" Text="It has very little to do with people being lazy, it's more to do with people who like answering good questions wants to see some major involvement first: http://www.catb.org/~esr/faqs/smart-questions.html" CreationDate="2010-12-27T11:33:35.757" UserId="2239" />
  <row Id="8602" PostId="6772" Text="+1 first thought here, what kind of obj files are we talking about? There are many that use that ubiquitous extension and the &quot;format&quot; I'm thinking of has very loose specs where things like line-breaks can differ and mess things up..." CreationDate="2010-12-27T11:35:12.543" UserId="2239" />
  <row Id="8603" PostId="6744" Text="What other obj files? How do you create them? Have you run your diffing tool over them and compared to the foot? What if you modify the foot obj instead? Is there a simple position-in-space issue?" CreationDate="2010-12-27T11:37:32.933" UserId="2239" />
  <row Id="8604" PostId="6759" Text="Didn't know COLLADA supported animations, I'm a total newbie in gamedev. This seems like a good point to start, so I'm accepting this answer. Thanks to everyone for their input, though!" CreationDate="2010-12-27T13:01:39.290" UserId="541" />
  <row Id="8606" PostId="6846" Text="Once I get home I'll try it, and I'll let you know." CreationDate="2010-12-27T14:52:19.210" UserId="4217" />
  <row Id="8607" PostId="6842" Text="Id love to meet your excel users who do vba. I've never seen a non-programmer do vba." CreationDate="2010-12-27T15:27:19.723" UserId="1198" />
  <row Id="8608" PostId="6842" Text="I don't get why people would want to be an artist rather than being a programmer. I mean a programmer OWNs everything that is done by the machine, of course the content is a big part of game, but nowadays with shiny graphics and stuff, the work of an artist can make a difference, but for me, a game is playable even if it's ugly, the gameplay is more important to me. Seriously I would prefer artists who are better at texturing and sketches and 2D sprites rather than  good modelers." CreationDate="2010-12-27T15:35:33.770" UserId="1829" />
  <row Id="8609" PostId="6831" Text="Thanks, I didn't see that when I searched, but looks like what I need :)" CreationDate="2010-12-27T15:41:08.793" UserId="4234" />
  <row Id="8610" PostId="6842" Score="5" Text="jokoon, because people are... different? Thank goodness there are people that want to be artists or we'd have really crappy looking games." CreationDate="2010-12-27T16:10:18.847" UserId="4245" />
  <row Id="8611" PostId="6847" Text="I'll try that too. Thanks! ps: didn't know people use Bing to search instead of google" CreationDate="2010-12-27T17:03:22.357" UserId="4217" />
  <row Id="8612" PostId="6843" Score="3" Text="It's worth noting that these salaries are averaged across all regions and places like California with their super high cost of living tend to skew the results.  Your average artist at a game development company in, say, Texas isn't making 70k." CreationDate="2010-12-27T17:16:00.457" UserId="51" />
  <row Id="8613" PostId="6836" Score="1" Text="-1 This in no way answered the question. This should be a comment, not an answer." CreationDate="2010-12-27T18:14:27.693" UserId="962" />
  <row Id="8614" PostId="6847" Text="@pringlesinn I actually use both search engines. I have been mostly using Bing recently, but sometimes switch to Google when I don't get good results for a certain query :)" CreationDate="2010-12-27T18:39:17.177" UserId="493" />
  <row Id="8615" PostId="6848" Text="You'd probably have better luck on [Game Dev](http://gamedev.stackexchange.com/)." CreationDate="2010-12-27T14:12:44.323" UserId="2319" />
  <row Id="8617" PostId="6848" Text="Game-dev is the correct site for map-editing questions - see [our rejection](http://meta.gaming.stackexchange.com/questions/544/do-map-editor-questions-belong-here) and [their approval](http://meta.gamedev.stackexchange.com/questions/58/do-mod-and-map-making-questions-belong-here)." CreationDate="2010-12-27T19:12:18.643" UserId="102" />
  <row Id="8618" PostId="6836" Text="@AttackingHobo; he asked for ideas, and as such it is answer to the question. He wants the applied force, it states that the simplest approximation is impulse/duration of impact. More explicitly it is the derivative of momentum wrt time. But sure, I'll take the -1." CreationDate="2010-12-27T19:55:23.833" UserId="653" />
  <row Id="8619" PostId="6837" Score="6" Text="Incidentally, don't choose a career path based on pay. Both visual artists and programmers tend to make MORE money outside the game industry than as game programmers/artists, anyway, and precious few people have the skills and training and designer to do both art and programming. As for whether an artist can write scripts: YES, this person is called a &quot;technical artist&quot; and the good ones are worth their weight in gold." CreationDate="2010-12-27T20:05:44.773" UserId="458" />
  <row Id="8620" PostId="6813" Score="1" Text="&quot;Developing games&quot; is an extremely broad task, including art, programming, design, audio, etc. - it might be worthwhile to specify what exact area you'd like to learn about. I couldn't tell from your message if you want specifically to learn game programming in Java, or if that's just your current background." CreationDate="2010-12-27T20:08:57.837" UserId="458" />
  <row Id="8621" PostId="6851" Text="Okay, I'm gonna read it. I am using A* path finding." CreationDate="2010-12-27T21:00:49.840" UserId="4248" />
  <row Id="8622" PostId="6813" Text="I believe that programming what the game character will do is what I want. And I don't mind what language i'll do it, but if is there a way to start from Java, i'll do it, as i am doing right now. Then i'll go to c++. And I'm already reading some books about AI." CreationDate="2010-12-27T21:04:28.933" UserId="4217" />
  <row Id="8623" PostId="6847" Text="It worked just fine! Thanks." CreationDate="2010-12-27T21:05:57.670" UserId="4217" />
  <row Id="8624" PostId="6847" Text="@pringlesinn I am happy everything worked out and good luck with learning Slick2D :)" CreationDate="2010-12-27T21:14:29.383" UserId="493" />
  <row Id="8625" PostId="6837" Text="+1 to Schreiber. You can make a good living on either the art/SE side of game development, but the long hours in the game industry make it something you really want to enter based on a love of development, and not financial reward. If making money is the goal choose a different occupation. If you really want to make games, then base the decision on your skills and interests not finances." CreationDate="2010-12-27T21:14:37.383" UserId="154" />
  <row Id="8626" PostId="6853" Score="2" Text="A screenshot might help." CreationDate="2010-12-27T22:27:45.103" UserId="51" />
  <row Id="8627" PostId="6842" Score="2" Text="Well for a game to be fun to play, you need a designer - not a programmer nor an artist ^^ And if programmers own the machine then they better be darn good designers too or we have a serious problem imo..." CreationDate="2010-12-27T22:56:24.683" UserId="2239" />
  <row Id="8629" PostId="6849" Text="Setting `Era=ERA_RENAISSANCE` makes the game start on turn 555 and well past the year 7000. I'm pretty sure changing the calendar setting will make time pass in a linear fashion, resulting in strange science levels late game." CreationDate="2010-12-27T23:19:32.183" UserId="4247" />
  <row Id="8630" PostId="6664" Text="True. In my defence, when the question stated &quot;ludicrous amount of data per planet&quot; for an animation solution - I thought of data storage, not data throughput. The last paragraph was mostly a remark asking how high the bar was set. I've never seen AA as trivial, even the most rigorous offline render solutions for film doing hundreds of passes in exotic ways have some aliasing as soon as things start moving, especially on low-density pc screens - but most people aren't that picky." CreationDate="2010-12-27T23:31:00.673" UserId="2239" />
  <row Id="8631" PostId="6843" Text="Good point. The full report does break down &quot;Salary by Region&quot;, but I don't know if that means individual states or not." CreationDate="2010-12-27T23:31:48.907" UserId="744" />
  <row Id="8632" PostId="6854" Text="No, I'm not rendering a height map. I just have a few &quot;height points&quot;, they indicate where the top of a hill or a valley might be, but there is not one height value for each vertex. I posted a screenshot, it might help." CreationDate="2010-12-27T23:44:12.730" UserId="2469" />
  <row Id="8633" PostId="6847" Text="This doesn't seem like a great idea, software OpenGL is too slow for anything other than quick experiments." CreationDate="2010-12-27T23:44:44.477" UserId="744" />
  <row Id="8634" PostId="6857" Text="An example, some source and/or generally more information would help us answering your question." CreationDate="2010-12-28T01:07:12.750" UserId="2332" />
  <row Id="8635" PostId="6857" Text="@Ray Dey some clarification added." CreationDate="2010-12-28T01:25:27.877" UserId="4210" />
  <row Id="8636" PostId="6857" Score="5" Text="Sounds like a StackOverflow.com question." CreationDate="2010-12-28T01:35:03.747" UserId="3637" />
  <row Id="8637" PostId="6462" Text="Nice. Good advice." CreationDate="2010-12-28T03:54:29.547" UserId="831" />
  <row Id="8638" PostId="6865" Score="2" Text="The original Meat Boy was a Flash game. Super Meat Boy is a C++ game." CreationDate="2010-12-28T06:19:15.837" UserId="4256" />
  <row Id="8639" PostId="6847" Text="@Joe Wreschnig @pringlesinn you are correct Joe. The original problem seems to be that the OpenGL Hardware drivers are probably not installed properly. This is more of a partial fix while he is using it for learning purposes. The solution came from a moderator on the LWJGL forum though, which led me to believe that this might be an acceptable solution for now." CreationDate="2010-12-28T07:03:55.720" UserId="493" />
  <row Id="8640" PostId="6868" Score="1" Text="In worms you could dig a hole through the landscape using a torch. Wouldn't be so funny if that tunnel would just collapse on your poor torch-wielding worm. It was also possible to have pieces of the landscape &quot;floating&quot; in the air. Your proposal sounds like a fun idea, just not like a Worms game." CreationDate="2010-12-28T08:56:41.720" UserId="20" />
  <row Id="8641" PostId="6827" Text="@sil3nt, only until you're running on someone with an unexpectedly slow computer, or until you start using enough CPU to drop below your framerate cap." CreationDate="2010-12-28T08:56:54.387" UserId="323" />
  <row Id="8642" PostId="6869" Score="5" Text="Just a suggestion: change &quot;some gays&quot; to &quot;some guys&quot; :)" CreationDate="2010-12-28T09:12:26.687" UserId="20" />
  <row Id="8643" PostId="6868" Text="That was the whole point, I was thinking about variations on that gameplay. Also, some parts of landscape may be indestructible and/or permanently suspended in the air, which would let you create &quot;floating&quot; blocks. Also, some could have constant force applied to them, pulling them upwards or sideways, like what balls of air did in the World of Goo." CreationDate="2010-12-28T10:25:28.960" UserId="3998" />
  <row Id="8644" PostId="6857" Score="2" Text="I'd agree, but the meat of the question is really in the second paragraph. I.e. &quot;is game development special in that these sorts of dependencies happen naturally&quot;. To which of course the answer is no." CreationDate="2010-12-28T11:06:38.003" UserId="741" />
  <row Id="8645" PostId="6869" Text="A serious typing error, fixed :o) " CreationDate="2010-12-28T12:48:13.033" UserId="3630" />
  <row Id="8646" PostId="5197" Text="@Hobo, You don't have to.  It's just what a majority of the art that I find has been done in.  It gives a 60x33 &quot;tile&quot; resolution on HD monitors, and a 40x32 resolution on a traditional monitor." CreationDate="2010-12-28T13:34:40.807" UserId="2316" />
  <row Id="8647" PostId="6870" Text="Thanks a lot. I will begin from Box2D." CreationDate="2010-12-28T13:45:09.613" UserId="3630" />
  <row Id="8648" PostId="176" Text="+1, I use it for all of my 2D assets too" CreationDate="2010-12-28T14:35:38.540" UserId="3818" />
  <row Id="8649" PostId="6837" Text="Of course being able to do both makes it better, but I wanted to make sure which employee the industry needs more than the other, because both are essential (considering all other roles) to make a game. In fact even with solutions like Unity, Flash, etc which allows more developers to make more with less, it appears there is still not enough programming expertise to enable the video game industry to deliver better product: those tools are good but it's never good enough compared to plain C++. So in fact there still appears to be a big market for those kinds of tools." CreationDate="2010-12-28T15:00:30.433" UserId="1829" />
  <row Id="8650" PostId="6816" Text="This isn't really the kind of site for general knowledge and broad learning.  It's for getting your specifics down." CreationDate="2010-12-28T15:55:53.730" UserId="284" />
  <row Id="8651" PostId="6854" Text="Yeah I sorted that out on my own after I posted this question, using a Quartic curve from an AS3 tweening engine. I was still missing the predetermined falloff. Thanks alot for your help." CreationDate="2010-12-28T16:00:53.760" UserId="2469" />
  <row Id="8652" PostId="6868" Text="It's funny because I was actually considering making a game like this, it would be a fun twist to the Worms mechanic. The idea of bitmap rigid bodies would definitely be an interesting topic in itself, the complexity is a bit over my head though." CreationDate="2010-12-28T17:30:05.743" UserId="4151" />
  <row Id="8653" PostId="6874" Text="I think these days you don't need a book, the adobe as3 reference is already awesome: http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/ and if you still can't understand something, just google it. I am using FlashDevelop and the SDK too, if you want me to help you with minor issues, I can give you my email." CreationDate="2010-12-28T19:33:36.557" UserId="4248" />
  <row Id="8655" PostId="6816" Text="Well, the amount of content on here is pretty nice. Just reading through a lot of the things here is extremely helpful." CreationDate="2010-12-28T20:04:09.277" UserId="962" />
  <row Id="8656" PostId="6887" Text="You're looking for particle systems, there's a great deal of material on that, can't give you any links off the top of my head though. Furthermore, if your models are made of too coarse a mesh, you'll need to look into tessellation and subdivision techniques to blow up larger patches of your mesh." CreationDate="2010-12-28T20:12:30.407" UserId="653" />
  <row Id="8657" PostId="6890" Text="Could probably expand more if it's unclear, seems a bit more wall-o-texty than usual to me." CreationDate="2010-12-28T20:21:48.493" UserId="14" />
  <row Id="8658" PostId="6891" Score="2" Text="+1 Multiple levels of success, that didn't even occur to me." CreationDate="2010-12-28T20:37:48.970" UserId="14" />
  <row Id="8659" PostId="6886" Text="I should add that the unit/enemy count is going to be in the scale of Supreme Commander" CreationDate="2010-12-28T20:41:33.880" UserId="1217" />
  <row Id="8660" PostId="6891" Text="Money seize does that in platformer game, and for me, it works really well" CreationDate="2010-12-28T20:44:44.783" UserId="3991" />
  <row Id="8661" PostId="6892" Text="http://blog.andreaskahler.com/2009/06/creating-icosphere-mesh-in-code.html" CreationDate="2010-12-28T20:57:31.317" UserId="4129" />
  <row Id="8663" PostId="6891" Text="Multiple levels of success is an excellent model. Slice It is a game that makes good use of that system." CreationDate="2010-12-28T23:24:09.210" UserId="2781" />
  <row Id="8664" PostId="6863" Text="It's not hard to play them at 60fps, but displays with native refresh rates of 50Hz, 70-85Hz, and 120Hz are still easily found." CreationDate="2010-12-29T00:05:05.807" UserId="744" />
  <row Id="8665" PostId="6874" Text="Obviously subjective, but also not really game-related." CreationDate="2010-12-29T00:09:56.943" UserId="744" />
  <row Id="8666" PostId="6837" Score="2" Text="If that's what you wanted to know, that's what you should've asked, because it's neither artists nor programmers. The industry needs good producers, people who can manage budgets and schedules and steer projects, more than any other." CreationDate="2010-12-29T00:12:49.563" UserId="744" />
  <row Id="8667" PostId="6900" Score="1" Text="A short is indeed large enough for me to specify the vertex and the height is also a short, so I've packed the data as small as I can. That's what I based my figure of 66kB/s on, at least." CreationDate="2010-12-29T00:14:08.143" UserId="4274" />
  <row Id="8668" PostId="6900" Text="You can also use a binary protocol as opposed to a text protocol for the data sent over the network, even though that's a pretty obvious one." CreationDate="2010-12-29T00:19:51.170" UserId="2469" />
  <row Id="8670" PostId="6877" Text="Mario, Sonic, Zelda, Contra, R-type, Ghost and Goblins, Outrun and Starcraft 2 are not similar. Because the background have interactive elements that do affect gameplay. Unlike the aforementioned SF and KOF games, there was a reason I didn't put Tekken (starting from 4), Virtua Fighter, Soul Calibur or even KoF MI (as these games had elements that mad the background a part of gameplay and strategy)." CreationDate="2010-12-29T01:08:19.503" UserId="919" />
  <row Id="8671" PostId="6860" Text="Tangential to your question. Here is a great article that covers exactly the problems you're describing, and the &quot;right&quot; way to handle timesteps and frame-rates. http://gafferongames.com/game-physics/fix-your-timestep/" CreationDate="2010-12-29T04:14:33.447" UserId="4282" />
  <row Id="8672" PostId="6868" Text="Well, in this case bitmap rigid bodies would be a no go, instead, I'd make a landscape as a triagonal grid of vertices, elastically connected. Have you played world of goo? If not, see the screenshots: http://www.vgchartz.com/games/pics/6644424aaa.jpg http://www.doublegames.de/images/screenshots/world-of-goo_1_big.jpg . No, no, no, no, if you didn't play it, you absolutely must :) Now imagine that instead of goo balls every triangle displays part of your landscape texture, and they are much smaller. Fiddle around with constants and your landscape will be either quite hard, or soft like a jelly" CreationDate="2010-12-29T04:40:52.460" UserId="3998" />
  <row Id="8673" PostId="6827" Text="@ZorbaTHut So then the frame rate based method is fine if the computer that the program is running on can handle the FPS?" CreationDate="2010-12-29T04:48:45.633" UserId="4149" />
  <row Id="8674" PostId="6899" Score="2" Text="+1 this approach will be simplest although it will have some errors. OP may want to implement this and then implement something like an octree. Also, in most RTSs, the units react with some delay. In fact, most AI in games is calculated 10-30 frames per second where the game may be running at 30-60 frames per second (the numbers are, of course, approximations)." CreationDate="2010-12-29T05:33:03.470" UserId="2287" />
  <row Id="8677" PostId="6891" Text="+1 Good ideas. Short and to the point." CreationDate="2010-12-29T08:03:40.023" UserId="20" />
  <row Id="8678" PostId="6906" Text="Judging from the &quot;look inside&quot;, seems like the best one I've seen so far, and I definitely would not have guessed by the title." CreationDate="2010-12-29T08:09:52.657" UserId="4264" />
  <row Id="8679" PostId="6874" Text="M28: I already mentioned above that I want an overview; the API reference doesn't give that." CreationDate="2010-12-29T08:10:34.920" UserId="4264" />
  <row Id="8680" PostId="6874" Text="And agreed, this could be seen as non-game-related, but I am interested in it from a game development point of view, not just user interface design or some such.." CreationDate="2010-12-29T08:11:18.897" UserId="4264" />
  <row Id="8681" PostId="4332" Text="come to http://answers.unity3d.com/ " CreationDate="2010-12-29T08:46:33.150" UserId="3115" />
  <row Id="8682" PostId="6879" Text="AFAIK the newer versions of Box2D can simulate top-down physics quite well (look into b2FrictionJoint)." CreationDate="2010-12-29T11:20:31.517" UserId="20" />
  <row Id="8683" PostId="6914" Text="Very informative and clear, thanks!" CreationDate="2010-12-29T12:20:55.967" UserId="849" />
  <row Id="8685" PostId="6907" Text="Do you need Direct3D? Or is that changeable?" CreationDate="2010-12-29T13:34:46.397" UserId="1156" />
  <row Id="8686" PostId="6648" Score="1" Text="Why is this tagged almost completely with mobile tags? Are you wanting a specifically mobile API?" CreationDate="2010-12-29T13:37:56.080" UserId="1156" />
  <row Id="8689" PostId="6899" Text="Thank you, this was exactly what I needed to take me one step further. I'll look up BVH and how to implement it in Unity. Very pedagogical and informative post! +1" CreationDate="2010-12-29T14:42:21.600" UserId="1217" />
  <row Id="8690" PostId="6899" Text="Oh and check out Supreme Commander if you're in to RTS. It's a very nice game indeed, as are all Chris Taylor games really." CreationDate="2010-12-29T14:43:14.407" UserId="1217" />
  <row Id="8691" PostId="6874" Text="If you wanted it from a game development point of view, maybe you should've put the word &quot;game&quot; in the question somewhere." CreationDate="2010-12-29T14:46:55.450" UserId="744" />
  <row Id="8693" PostId="1395" Text="Lol? No, of course they don't. &quot;Duplication&quot; is only a problem with fake-online games where the client is (at least partly) authoritative (Diablo). Making such a game in 2010 would be completely retarded." CreationDate="2010-12-29T16:29:23.367" UserId="2188" />
  <row Id="8694" PostId="6877" Text="If you look closely, I explicitly mention the non-interactive parts - &quot;black tiles and closed windows in the background&quot;. All the games I mentioned have lots of variance on those elements, even if they aren't interactive." CreationDate="2010-12-29T18:16:40.450" UserId="1581" />
  <row Id="8695" PostId="6916" Text="What language is this? In most languages, when you set viewDir = rotatedViewDir, then change rotatedViewDir, you are changing viewDir as well, and g_lookingDir is equal to viewDir." CreationDate="2010-12-29T19:17:37.823" UserId="2187" />
  <row Id="8696" PostId="6916" Text="It's JavaScript - I'm using the O3D WebGL wrapper. I have tried changing the code in various ways, creating seperate variables as you advised, either the logic changes and it starts acting weird, or it functions the same way. Either my javascript isnt up to scratch, or the algorithm isn't perfect?" CreationDate="2010-12-29T20:52:49.263" UserId="3536" />
  <row Id="8697" PostId="102" Text="Lots of .net devs use ironpython or ironruby for scripting." CreationDate="2010-12-29T22:55:00.820" UserId="4300" />
  <row Id="8698" PostId="167" Text="Yup I totally agree. Secondly, if you pay for Unity3D licenses, you can publish same work for multiple platforms. So you start with FREE WINDOWS/MAC licens. Learn the program. Then upgrade the licens to what ever platform you see fit first. Currently Android though, is only PRO edition which means you need Unity3D PRO + Android PRO = $3000..." CreationDate="2010-12-29T23:54:57.887" UserId="3115" />
  <row Id="8699" PostId="6648" Text="More like an API to be used by a mobile device. Does it matter what kind of client uses the API?" CreationDate="2010-12-30T00:29:15.977" UserId="4224" />
  <row Id="8700" PostId="6923" Score="3" Text="What exactly are you trying to get at with this question beyond speculation?" CreationDate="2010-12-30T04:25:12.867" UserId="51" />
  <row Id="8701" PostId="6879" Text="@bummzack Thanks for that." CreationDate="2010-12-30T05:19:06.797" UserId="4210" />
  <row Id="8702" PostId="6648" Text="Really any API. My goal is to create real-world-meets-virtual world apps, so anything to help this goal is welcome." CreationDate="2010-12-30T05:36:58.430" UserId="4077" />
  <row Id="8703" PostId="6925" Text="i would be that covinced, AFAIK javascript has not yet proven be good for gaming, there are some experiments though." CreationDate="2010-12-30T06:00:08.633" UserId="4303" />
  <row Id="8704" PostId="6924" Text="True but...consider this fact. Flash is not a game development platform, developers assumed (or treated it like it was) because long time ago (and up to not so much time ago) it was the only thing they had. Unity on the other hand, born with that concept in mind, it is the reason on its existence. Nowadays, with the widespread of this tool(flash) and the long catalog of indie flash games, it might sound like madness to thing this i gonna change, but the true is that it might be just matter of finding-domething-better to left it behind. IMAO must i add." CreationDate="2010-12-30T06:05:45.600" UserId="4303" />
  <row Id="8705" PostId="6923" Text="So i may suppose you don't belive there are any chances that flash or unity can be the tools of future online gaming, or am i speculating?" CreationDate="2010-12-30T06:12:25.920" UserId="4303" />
  <row Id="8706" PostId="6924" Score="5" Text="People get too caught up in what's going to be the &quot;new&quot; thing. Flash/Unity/JS+webgl are all tools, not final destinations. Build a good enough game and people will play/pay. It doesn't matter that Minecraft is made with Java, Tiger Woods is Unity, and FarmVille is flash. People pay for games based on the experience they deliver not because of the tech used to make them. Choose the right tool for the game you want to make, there is no &quot;best&quot;." CreationDate="2010-12-30T06:28:31.747" UserId="154" />
  <row Id="8707" PostId="6877" Score="1" Text="Of course there will be non interactive parts as they contribute to completing the picture/scene. Your still missing the point of the post as the backgrounds should be taken as a whole in this context. " CreationDate="2010-12-30T07:41:33.463" UserId="919" />
  <row Id="8708" PostId="6842" Text="@Nate Bross A lot of finance firm guys write VBA scripts, or even C# applications for plotting and tracking whatever sort of finance data it is they work with. One of the managers in an engineering firm I interned at wrote a program in VBA that was used to request project time from employees working on other projects." CreationDate="2010-12-30T07:45:31.777" UserId="3656" />
  <row Id="8709" PostId="6920" Score="3" Text="This will answer your first question: http://gamedev.stackexchange.com/questions/773/what-are-some-good-resources-for-learning-hlsl" CreationDate="2010-12-30T08:52:25.897" UserId="2698" />
  <row Id="8710" PostId="6842" Text="@Nate: I've never seen a *programmer* do vba ;)" CreationDate="2010-12-30T10:37:22.037" UserId="2188" />
  <row Id="8711" PostId="6877" Text="I'm sorry, I don't know what you mean by &quot;as a whole&quot;. Please consider adding more details to your initial question, so we can answer more precisely. " CreationDate="2010-12-30T10:49:40.503" UserId="1581" />
  <row Id="8712" PostId="6919" Score="1" Text="The canonical article on this is here: http://www.gamasutra.com/view/feature/3094/1500_archers_on_a_288_network_.php It's a very instructive read.&#xA;&#xA;I don't know how SE etiquette works here. This is good advice, in that it's the best way to do things if you're just starting off. But it's not the answer to the question I asked, which was specifically limited to UDP, and while it's been food for thought, I'm not sure whether how much the answer to &quot;How do I do x?&quot; can reasonably be &quot;don't&quot;. Do I accept it?" CreationDate="2010-12-30T12:18:02.343" UserId="4274" />
  <row Id="8714" PostId="6857" Text="@MrCranky Thank you." CreationDate="2010-12-30T12:32:15.627" UserId="4210" />
  <row Id="8715" PostId="6937" Text="-1 - &quot;You can't patent a game mechanic.&quot; is completely false. See my comments at http://gamedev.stackexchange.com/questions/5684/how-to-protect-a-developed-game. You probably mean copyright. Unless you're a lawyer, stop giving legal advice." CreationDate="2010-12-30T12:32:45.150" UserId="744" />
  <row Id="8716" PostId="6935" Text="Do you run your physic-simulation with a fixed timestep? If not, you should definitely do that first." CreationDate="2010-12-30T12:33:38.527" UserId="20" />
  <row Id="8717" PostId="5694" Text="&quot;the law says it is illegal to do it, but offices do it anyway, and some judges enforce it anyway&quot; If offices grant the patents, and courts enforce the patents, then the patents are by definition legal." CreationDate="2010-12-30T12:34:09.213" UserId="744" />
  <row Id="8718" PostId="6936" Text="(Also offtopic. Also a muddled multi-question. Seek a lawyer for legal advice.)" CreationDate="2010-12-30T12:35:38.453" UserId="744" />
  <row Id="8719" PostId="6923" Score="3" Text="The future of a large field is never a monoculture. Any question that assumes otherwise is stupid." CreationDate="2010-12-30T12:53:21.203" UserId="744" />
  <row Id="8720" PostId="6930" Text="+1 - Salary charts start at http://gamedeveloper.texterity.com/gamedeveloper/2010cg#pg21. A better free summary of the same survey I linked." CreationDate="2010-12-30T12:57:08.750" UserId="744" />
  <row Id="8721" PostId="6900" Text="@__dominic: -1, Do the math. A two byte height plus a two byte index sent as binary for a quarter of the map still results in 64kbps, which is the same result Floomi gave in the question." CreationDate="2010-12-30T13:03:56.277" UserId="744" />
  <row Id="8722" PostId="6919" Text="&quot;Don't do X, do Y instead&quot; unless the question is specifically meant to exclude Y (e.g. if you need to use an OS without a TCP stack), is a fine answer to accept. If it makes you uneasy, you can also change the title of the question to remove &quot;UDP&quot;." CreationDate="2010-12-30T13:06:14.340" UserId="744" />
  <row Id="8723" PostId="6937" Text="What I mean is not a &quot;feel&quot;, but something really similar to original. Same dynamics, same gameplay, but new on a platform (windows, linux, mac, etc) and new on graphic... something like a tribute. Anyway, mine is only curiosity." CreationDate="2010-12-30T13:20:50.280" UserId="4312" />
  <row Id="8724" PostId="6936" Text="Mine is just curiosity. I'll search for a lawyer if I'll need. What I mean is something like a tribute to the original, but without licenses." CreationDate="2010-12-30T13:24:54.863" UserId="4312" />
  <row Id="8725" PostId="6936" Text="Could do with a better title, if I could edit." CreationDate="2010-12-30T13:59:35.113" UserId="1156" />
  <row Id="8726" PostId="6872" Text="You're thinking Showtime mode in Burnout Paradise. ;)" CreationDate="2010-12-30T14:01:15.237" UserId="1156" />
  <row Id="8727" PostId="6919" Text="Sorry if my answer didn't answer the question very well, I think that it is an approach worth considering though." CreationDate="2010-12-30T14:26:49.633" UserId="4484" />
  <row Id="8728" PostId="6925" Text="@Cpucpu Not yet proven itself to be, you are looking for the future. If it was proven it'd be the present, those experiments are very promising. " CreationDate="2010-12-30T14:55:33.110" UserId="14" />
  <row Id="8729" PostId="6924" Text="@Cpucpu with what Zynga has been doing flash has definitely been looking at moving towards being an honest to goodness gaming platform. Look at their efforts to add some sort of actual 3d support." CreationDate="2010-12-30T14:56:37.930" UserId="14" />
  <row Id="8730" PostId="6872" Text="no, Showtime mode is overrated with the bouncing car. I'm thinking Crash mode from older Burnout games -&gt; crash into a busy intersection and watching a crash play out. " CreationDate="2010-12-30T15:03:36.240" UserId="3818" />
  <row Id="8731" PostId="6926" Score="4" Text="This is a subjective answer, and since you have no quotations at all, it's pretty much trash." CreationDate="2010-12-30T15:38:14.587" UserId="1156" />
  <row Id="8732" PostId="6940" Text="Please do not cross-post. And if you do, don't then link the question and instead paste it into this question box. " CreationDate="2010-12-30T15:50:09.393" UserId="1156" />
  <row Id="8733" PostId="6940" Text="Ok ... raycasting is definetively good for gamedev (i think). " CreationDate="2010-12-30T15:54:04.753" UserId="3794" />
  <row Id="8735" PostId="6943" Text="Are you planning on using a Physics engine or just make all of the physics yourself?" CreationDate="2010-12-30T16:39:22.947" UserId="2332" />
  <row Id="8736" PostId="6920" Score="1" Text="I would separate your questions into just asking the latter. The first already has an exact duplicate, and try to keep one point-per-question." CreationDate="2010-12-30T16:46:13.707" UserId="1156" />
  <row Id="8737" PostId="6943" Text="I need to make this physics simulation engine myself ( only to 1 project, so it will support only what I need to car crash simulation ), I can't use physics engines like Bullet, ODE etc.." CreationDate="2010-12-30T17:13:35.350" UserId="4314" />
  <row Id="8738" PostId="6842" Text="Impressive. Ill trade my users for your users." CreationDate="2010-12-30T17:51:47.897" UserId="1198" />
  <row Id="8739" PostId="6946" Text="no, I explicitly want to play nsf files. I am making a game, and right now it does use wav files. The issue with that is that 1. wav files are much much larger in file size, so distribution is a pain, and 2. looping properly requires the wav files to be edited just right so it sounds clean. An NSF has neither of these problems, and also doesn't require conversion (the musicians in the project write NSF)." CreationDate="2010-12-30T18:14:58.650" UserId="141" />
  <row Id="8740" PostId="6946" Text="also note about file size: I can't use smaller formats like mp3 because they have buffers that prevent smooth looping from ever working properly." CreationDate="2010-12-30T18:15:41.050" UserId="141" />
  <row Id="8741" PostId="6923" Text="Wrong. What was the future of console gaming 10 years ago? sony, sega, nintendo, microsoft. Whats the future on console gaming in the next years? i wont be general electric i can assure you, guess what? sony, nintendo, microsoft. I just proposed 2 players based on my experience, someone stated a third one, nice. Nobody talked here about culture, or monos, not quite understand the 'anger' of some people. In any case (and in your terms) there has been a very clearly oligoculture in game platforms long time ago." CreationDate="2010-12-30T18:18:17.477" UserId="4303" />
  <row Id="8742" PostId="6946" Score="2" Text="If file size is a concern and you're authoring new song content and you're using FMOD, have you considered using a mod tracking format like XM or IT?  FMOD supports those natively." CreationDate="2010-12-30T18:21:13.067" UserId="51" />
  <row Id="8743" PostId="6924" Text="To tell the truth FarmVille sucks. PC get too hot not even doing anything, offtopic though." CreationDate="2010-12-30T18:23:43.180" UserId="4303" />
  <row Id="8744" PostId="6943" Text="I don't want to sound rude and don't mean any offence, but do you have any experience with coding normal physics (i.e. Rigid body physics)?" CreationDate="2010-12-30T18:26:42.163" UserId="2332" />
  <row Id="8745" PostId="6923" Score="1" Text="@cpucpu flash and unity are the tools of online games *now*. If you have some specific questions about making games or monetizing with Unity then those are questions we could help answer. " CreationDate="2010-12-30T19:59:12.780" UserId="51" />
  <row Id="8747" PostId="6951" Text="C#, Javascript and Boo are what Unity uses for scripting. IIRC it is C++" CreationDate="2010-12-30T21:02:55.477" UserId="14" />
  <row Id="8748" PostId="6923" Score="2" Text="The business models that you've mentioned used in games utilizing flash are possible in Unity. There are already games that use them. That is because these are general gaming business models and not directly dependent on the technology stack. &#xA;&#xA;There are many 3D things utilizing flash that work quickly, although yes it probably won't be as good as an engine directly intended for 3D most of the 'weird and slow' comes lacking implementation.&#xA;&#xA;Also, the costs are what you make of them. If you possess the aptitude (or potential) Unity can have 0 startup cost. &#xA;&#xA;Also, Casual is what you make it." CreationDate="2010-12-30T21:09:05.407" UserId="14" />
  <row Id="8749" PostId="6943" Text="Yes :) I make some basics physics simulations, but I don't making any soft body simulations yet" CreationDate="2010-12-30T21:11:06.883" UserId="4314" />
  <row Id="8750" PostId="6923" Text="Another time I wish people had to justify upvotes as much as people expect justifications for downvotes..." CreationDate="2010-12-30T21:46:00.147" UserId="744" />
  <row Id="8751" PostId="5904" Text="I meant Windows Phone 7, PC and XBox 360 - not Android." CreationDate="2010-12-30T22:23:22.823" UserId="2239" />
  <row Id="8752" PostId="6938" Text="Hi Joe, thanks for the advice. I've tried all of your suggestions but unfortunately this didn't appear to make a difference. Here's the full source code (it's just a hacky prototype right now) -- http://pastebin.com/F6YX3AyV" CreationDate="2010-12-30T22:59:07.337" UserId="4104" />
  <row Id="8753" PostId="6827" Text="@sil3nt, yes, if you can guarantee the computer can always handle the FPS, and you have a reliable way to lock to that framerate. This is enough qualifiers that I'd be very hesitant to use it, especially with how simple fixed time step is." CreationDate="2010-12-30T23:03:55.393" UserId="323" />
  <row Id="8754" PostId="6955" Text="+1 - Unity will save at least a person-year of work here, if you need to target all those platforms. Flash + Flixel is the only alternative I'd consider, and that won't port to XBLA nor work _well_ on mobiles. (No fault of Flixel's.)" CreationDate="2010-12-30T23:53:39.997" UserId="744" />
  <row Id="8755" PostId="6956" Text="+1 although you'd really have to apply the stuff in the skeelogy tutorial. Start off small and then work your way up to a car." CreationDate="2010-12-31T00:48:13.940" UserId="2332" />
  <row Id="8756" PostId="6957" Text="Without actually looking at your code, I'd guess you need some PID." CreationDate="2010-12-31T01:12:35.267" UserId="3637" />
  <row Id="8757" PostId="4462" Text="Typing mistake =p Ctrl+V" CreationDate="2010-12-31T01:37:39.440" UserId="891" />
  <row Id="8758" PostId="6960" Text="From a programmer's perspective: http://gamedev.stackexchange.com/questions/1611/game-development-degree-vs-computer-science-degree" CreationDate="2010-12-31T01:53:07.260" UserId="51" />
  <row Id="8759" PostId="6960" Text="From an artist's: http://gamedev.stackexchange.com/questions/4438/should-i-go-to-a-university-or-trade-school-to-be-a-game-artist" CreationDate="2010-12-31T01:53:27.477" UserId="51" />
  <row Id="8760" PostId="6961" Text="Thanks for the book reference.  I'll check that out.  I guess I am trying to do a Seek behavior, but I was trying to avoid setting velocity, position and rotation explicitly because it could interfere with the box2d simulation.  Instead I was trying to maneuver the body by applying impulses, torque and/or force (proving to be difficult for me).  Also, I'm trying to align the body's orientation with its velocity." CreationDate="2010-12-31T03:12:58.063" UserId="4321" />
  <row Id="8761" PostId="6957" Text="@muntoo - what is PID?" CreationDate="2010-12-31T04:12:12.257" UserId="4321" />
  <row Id="8762" PostId="6874" Text="@Joe I would assume being on the gamedev site that it's implied." CreationDate="2010-12-31T08:25:17.287" UserId="51" />
  <row Id="8763" PostId="1395" Text="Lo'oris - and yet duplication is rampant in several games ranging from GT5 to Borderlands. Although it may be a feature of Borderlands, can't really tell to be honest." CreationDate="2010-12-31T08:40:04.420" UserId="358" />
  <row Id="8764" PostId="6759" Text="If you were just making a 3d space invaders, or other game involving just static meshes, maybe going for collada, making a sort of more complex loader than the easy OBJ, could be an overkill. But even so...going for the most complete format would make it easier for you to load more complex stuff later on, using the same loader base. Yet though, as mentioned,in actual game companies often is a plugin that allows even using Max viewport as an engine preview,they build plugins, or converters+native format, so often no standard formats are used. For an indie, collada is a great route,though." CreationDate="2010-12-31T09:10:19.100" UserId="3599" />
  <row Id="8765" PostId="2614" Text="Can you give an example where an XNA Effect object where you loop through EffectPasses has more than one pass as opposed to using different effects and why?" CreationDate="2010-12-31T09:38:21.470" UserId="4327" />
  <row Id="8766" PostId="6409" Text="That's perfectly normal: a simple game must have *something* special to be interesting, because if it doesn't, you likely have no reason to play it." CreationDate="2010-12-31T12:23:31.120" UserId="2188" />
  <row Id="8767" PostId="4459" Text="On a second look at this question, it is very misleading. The title suggests 'What other libraries are there for python?' but the question is actually 'what 2D APIs are there for java or C#?' which is totally different." CreationDate="2010-12-31T13:29:59.387" UserId="1156" />
  <row Id="8768" PostId="6957" Score="1" Text="A google search gave me either http://en.wikipedia.org/wiki/PID_controller or http://en.wikipedia.org/wiki/Pelvic_inflammatory_disease . And I don't think it's the second one." CreationDate="2010-12-31T13:31:10.867" UserId="1156" />
  <row Id="8769" PostId="6967" Text="So is it 'what restrictions are there' or 'why are there restrictions' you are asking?" CreationDate="2010-12-31T15:43:06.687" UserId="1156" />
  <row Id="8770" PostId="6967" Text="What are the restrictions, speed wise and the technicalities that Apple imposes" CreationDate="2010-12-31T16:55:29.683" UserId="4328" />
  <row Id="8771" PostId="4460" Text="I'd point out that XNA's platform support is completely different from PyGame's. It's hardly a replacement if you are targeting any non-MS device." CreationDate="2010-12-31T17:49:25.603" UserId="1581" />
  <row Id="8772" PostId="6425" Text="Great use of your lunch time hour! Thanks for the idea." CreationDate="2010-12-31T20:35:50.700" UserId="4212" />
  <row Id="8773" PostId="6973" Text="Wow, thanks a lot, I never thought to check if the player would cross the boundary *before* moving it." CreationDate="2010-12-31T21:59:28.647" UserId="4330" />
  <row Id="8774" PostId="6977" Score="3" Text="You're not going to get Java on a 360 or PS3, or the iOS platforms.  Likewise for flash.  As far as a language is concerned, I'd argue that C++ is much more portable in the general case, other than specifically XNA (but not XBLA)." CreationDate="2011-01-01T08:52:28.933" UserId="51" />
  <row Id="8775" PostId="6923" Score="2" Text="With Unity costing nothing to get started, and flash costing around $700, why would flash be be more casual?" CreationDate="2011-01-01T09:48:42.260" UserId="4210" />
  <row Id="8776" PostId="6975" Text="also related: http://gamedev.stackexchange.com/questions/16/cross-platform-2d-graphics-engines" CreationDate="2011-01-01T09:56:25.987" UserId="51" />
  <row Id="8777" PostId="5665" Score="1" Text="I agree with Terrance, it is really difficult to find free 2D tiles and sprites for platformers. I'm working on a 2D engine in HTML5 and so far I'm using the awesome (but not usable) Amiga Turrican tiles for testing purposes." CreationDate="2011-01-01T10:44:30.420" UserId="3515" />
  <row Id="8778" PostId="6978" Score="1" Text="I think it's rather well and extensively explained in the pdf linked on Robert Penners site: http://www.robertpenner.com/easing/penner_chapter7_tweening.pdf" CreationDate="2011-01-01T11:09:49.177" UserId="20" />
  <row Id="8781" PostId="6980" Text="Theoretically, xna touch allows xna games written in c# to run on ios thru mono.  http://xnatouch.codeplex.com/" CreationDate="2011-01-01T13:19:16.913" UserId="1923" />
  <row Id="8782" PostId="6974" Text="Why wouldn't they be suitable? It can export models to common model formats, so it doesn't have an issue there. Past that it's just what UI you like." CreationDate="2011-01-01T13:22:49.433" UserId="1156" />
  <row Id="8783" PostId="6980" Text="@Steve H, Good call, although this looks like it would lock out Android." CreationDate="2011-01-01T13:59:02.447" UserId="4210" />
  <row Id="8784" PostId="6982" Score="1" Text="While it is a nice language, C# seems a fairly poor choice for cross-platform game dev, really. As well as performance issues on non-PC platforms, remember that you only have XNA available on a couple of platforms, and that you will be missing out on a huge number of potentially useful cross-platform libraries that would be available if you used C/C++.  Yes, this means not supporting Windows Phone or Xbox Indie Games without a complete port (but is that really a big loss, from a sales point of view, when you can support pretty much anything else?) " CreationDate="2011-01-01T14:26:28.823" UserId="659" />
  <row Id="8785" PostId="6976" Text="The general impression seems to be that Unity is cool for 3D, but not so cool for 2D. And the question is about a 2D game" CreationDate="2011-01-01T14:29:41.767" UserId="659" />
  <row Id="8786" PostId="6897" Text="Money works well for some puzzles, but sometimes it can be annoying where you thought a solution through well but you were a second too slow, and have to replay to pass." CreationDate="2011-01-01T15:19:22.783" UserId="1156" />
  <row Id="8787" PostId="6992" Score="3" Text="I suggest you take this to [GameDev.SE](http://gamedev.stackexchange.com/) - this is right up their alley." CreationDate="2011-01-01T09:19:26.400" UserId="2698" />
  <row Id="8788" PostId="6997" Text="it's have only 5 tutorials :( very hard for understanding" CreationDate="2011-01-01T16:54:08.997" UserId="4347" />
  <row Id="8789" PostId="6992" Score="1" Text="Right now, unless you are a licensed Xbox 360 developer, you cannot make Kinect games. (http://gamedev.stackexchange.com/questions/4971/can-you-access-kinect-motion-sensing-from-xna.) To become a licensed Xbox 360 developer you need to make business arrangements with Microsoft; the details of that process are personal and usually under NDA." CreationDate="2011-01-01T17:14:17.383" UserId="744" />
  <row Id="8790" PostId="6997" Text="5 tutorials isn't too bad to get started. I'm sure the community over there would help if you're stuck (they have a community-forum just like flixel and FlashPunk)" CreationDate="2011-01-01T17:21:02.280" UserId="20" />
  <row Id="8791" PostId="6976" Score="1" Text="Considering I've shipped a 2D game with Unity (and so have other people: http://unity3d.com/gallery/game-list/), I'm going to have to disagree with the general impression.  Yes, there's no *built in* way of drawing batched animated sprites, but you can easily extend the editor to do it yourself.  That, combined with the closest thing to real push-button cross platform compatibility and the low barrier to entry makes it the most obvious answer." CreationDate="2011-01-01T17:26:02.417" UserId="51" />
  <row Id="8792" PostId="6916" Text="For example I tried swapping { viewDir = rotatedViewDir; } with { viewDir[0] = rotatedViewDir[0]; viewDir[1] = rotatedViewDir[1]; viewDir[2] = rotatedViewDir[2]; }" CreationDate="2011-01-01T18:35:31.173" UserId="3536" />
  <row Id="8793" PostId="6916" Text="I figure if I can determine which way around the camera is facing I can just apply a hack to { rotatedViewDir[1] = (Math.cos(g_mouseYDelta * g_rotationDelta * -1) * viewDir[1]) - (Math.sin(g_mouseYDelta * g_rotationDelta * -1) * viewDir[2]); }&#xA;so that the first part is added to the second part instead of subtracted." CreationDate="2011-01-01T18:42:20.187" UserId="3536" />
  <row Id="8794" PostId="6999" Score="4" Text="I find it ironic you can't develop Microsoft Kinect programs in a Microsoft OS." CreationDate="2011-01-01T19:05:15.120" UserId="1156" />
  <row Id="8795" PostId="6999" Text="+1 definitely agreed. But I suppose it's down to how easily (used in the loosest possible way) low level you can get in Linux compared to Windows. Hope the Microsoft versions come out fairly soon though, I like Visual Studio :P" CreationDate="2011-01-01T19:28:07.903" UserId="2332" />
  <row Id="8796" PostId="6887" Text="http://create.msdn.com/en-US/education/catalog/sample/shatter" CreationDate="2011-01-01T19:42:33.713" UserId="2631" />
  <row Id="8797" PostId="6956" Text="Thx :) I found these sites too, but I'm looking for some more information" CreationDate="2011-01-01T20:04:30.053" UserId="4314" />
  <row Id="8798" PostId="7000" Text="Thanks Stephen, the include guards where just left out for shortness sake." CreationDate="2011-01-01T20:40:28.133" UserId="4210" />
  <row Id="8799" PostId="6985" Text="Just a suggestion, but you might consider using the farseer physics engine. I'm assuming your just doing 2D and your using XNA. I've had pretty good experiences with it and it's fast enough usually." CreationDate="2011-01-01T22:12:53.210" UserId="3547" />
  <row Id="8800" PostId="6916" Text="Did it solve the problem? Isnt the problem in that that you are performing Y rotation and than X rotation? Did you try to do it in one step? I mean do not use rotation around X,Y but use Yaw Pitch Roll rotation matrix? I'm pretty sure that that is the problem " CreationDate="2011-01-01T22:18:09.790" UserId="3794" />
  <row Id="8801" PostId="7000" Text="Ah sorry. Missing inclusion guards had me stumped for quite a while when I started the first serious c++ programming." CreationDate="2011-01-01T22:37:44.763" UserId="4345" />
  <row Id="8803" PostId="6276" Text="Is it really worth the effort? Do you need people with ancient computers to play your game?" CreationDate="2011-01-02T01:07:34.043" UserId="3547" />
  <row Id="8804" PostId="4463" Text="The LÖVE library is actually easier to start out with than PyGame's because a lot of nice little things like sprite animation are already done for you." CreationDate="2011-01-02T01:21:18.450" UserId="1317" />
  <row Id="8805" PostId="7010" Text="I want to scale my game without having to draw it differently. You just told me how to change the resolution. If I just change the resolution it wont change the scale, it will just change the size of the game, which is what I don't want." CreationDate="2011-01-02T05:20:35.817" UserId="962" />
  <row Id="8806" PostId="7010" Text="Ah, gotcha.  I misunderstood what you were asking about.  Editing answer to address that." CreationDate="2011-01-02T05:56:54.307" UserId="4296" />
  <row Id="8807" PostId="6977" Text="Flash is sometimes used for stuff like UIs and minigames with middleware like Scaleform ( http://www.scaleform.com/products/gfx ).  I'm not able to find much info on Java for consoles, although the PS3's Bluray support seems to involve a simple JVM.&#xA;&#xA;Regardless, you have to do a bunch of work to port anything to a console (less for the 360 if it's originally in XNA). If you design your code for portability, even switching languages in a port isn't infeasible." CreationDate="2011-01-02T07:15:19.790" UserId="953" />
  <row Id="8808" PostId="6992" Text="Maths Books and Programming Books for Both Hardware and Software." CreationDate="2011-01-02T07:37:08.067" UserId="4210" />
  <row Id="8813" PostId="7008" Score="1" Text="Have some resolution as a default, and draw everything at a scale of original dimensions * (user resolution/default resolution)? " CreationDate="2011-01-02T11:35:11.250" UserId="1156" />
  <row Id="8815" PostId="7010" Text="I edited my question. I want to be able to render everything the same on all systems but scale it after the fact." CreationDate="2011-01-02T15:23:29.333" UserId="962" />
  <row Id="8816" PostId="7017" Text="Isn't a serializer adapted to that kind of problem ? I guess not but I don't see a clear difference. But to me this answer seems appropriate. But also tar/gzip the xml files will greatly reduce their size (since it's text, but I guess it will also work for xml), so that might be the &quot;easier&quot; solution. Anyhow XML is an easy language, but it's very expensive in term of parsing/ memory using: when you use XML you should read/write as few times as possible." CreationDate="2011-01-02T16:57:37.823" UserId="1829" />
  <row Id="8817" PostId="7017" Text="It's an interesting option, but looks more like a complete alternative to using XML anywhere in the pipeline. To be honest, I woudln't be very enthusiastic about generated code, though - and another complication is that I'm using C# for the tools side of things (I'm happy for tools to continue to work with the large .XML files). An XML-&gt;PB convertor may be an option, although I think I'm still looking for something that's more 'general purpose binary XML', rather than ways to bake specific 'binary level data' (even if that would be a bit more efficient)" CreationDate="2011-01-02T17:21:17.877" UserId="659" />
  <row Id="8819" PostId="524" Text="Just tried it - quite impressive!" CreationDate="2011-01-02T18:05:06.683" UserId="3830" />
  <row Id="8820" PostId="7020" Text="Just to clarify, are you talking about using a Physics engine to create a simulation or creating the physics from scratch and a Visualiser to use with your code?" CreationDate="2011-01-02T20:03:25.100" UserId="2332" />
  <row Id="8821" PostId="7020" Text="Physics from scratch. Though if it only exists in combination with an engine, that would be interesting to know." CreationDate="2011-01-02T20:08:29.590" UserId="2942" />
  <row Id="8822" PostId="7024" Score="2" Text="Is there any reason why you are using Mingw instead of Visual Studio Express editions? You'll be able to get a lot more help and support that way, and most would agree that it's by far the best free IDE for Windows." CreationDate="2011-01-02T21:51:16.020" UserId="2390" />
  <row Id="8823" PostId="7025" Score="1" Text="-1 - Stack Exchange sites exist to give better answers than Google (ideally, they _are_ the answers on Google). There is an awful lot of garbage in that list, and it's not immediately clear what's good and what's not. The question is clear and specific - it deserves a real answer." CreationDate="2011-01-02T23:08:06.220" UserId="744" />
  <row Id="8824" PostId="7025" Score="1" Text="And certainly, there is no reason to abuse your edit privileges to add a tag that is both derogatory and useless." CreationDate="2011-01-02T23:11:52.427" UserId="744" />
  <row Id="8825" PostId="7024" Text="Issues of IDE bigotry aside, it is an uphill battle to compile a &quot;platform&quot; library with something other than the standard platform compiler (compare trying to compile a Linux kernel module with ICC rather than GCC). At best you can hope for stuff from WINE and other interop projects, because Microsoft has zero interest in supporting your compiler configuration." CreationDate="2011-01-02T23:16:59.087" UserId="744" />
  <row Id="8826" PostId="7025" Text="There's humor and there's insult.  This was intended as humor (and an answer to boot).  My apologies if it was taken for insult." CreationDate="2011-01-02T23:42:28.683" UserId="3830" />
  <row Id="8827" PostId="7008" Score="1" Text="Are you looking for the SpriteBatch.Draw overload? If your using XNA 4.0, you have to use this one for the transformation matrix : http://msdn.microsoft.com/en-us/library/ff433701.aspx It's the last argument. Next time, try specifying the actual code." CreationDate="2011-01-02T23:55:33.203" UserId="3547" />
  <row Id="8828" PostId="6877" Text="In SF 2 turbo you could destroy things and use the nets on vegas' level. Loved that game!" CreationDate="2011-01-03T01:40:59.370" UserId="3455" />
  <row Id="8829" PostId="6864" Score="3" Text="+1 Any game will get boring fast without graphical and musical variance." CreationDate="2011-01-03T01:43:28.993" UserId="3455" />
  <row Id="8831" PostId="2526" Score="1" Text="@BlueMonkMN The verification of safe places to save are what we don't want. We want to be able to save in the middle of a fight if we want to. It wouldn't be a bad thing for the game to roll back our saves to just before we entered the fight in those cases though (such as to the start of a boss fight) There does have to be a limit though; if a user could just save-reload-save-reload his way through bosses then what's the point in the boss? :)" CreationDate="2011-01-03T02:09:17.660" UserId="3455" />
  <row Id="8832" PostId="7027" Text="Adding features is always a possibility, but I also wanted to see if background in themselves had any added value =)." CreationDate="2011-01-03T02:36:17.353" UserId="919" />
  <row Id="8833" PostId="6877" Text="I forgot matador's stage, which should be and exception to the example =p" CreationDate="2011-01-03T02:37:23.077" UserId="919" />
  <row Id="8834" PostId="7008" Text="Reading through the example code, I got it to work with only changing one line in the Draw function - the parameters for SpriteBatch.Begin changed in 4.0:  &#xA;&#xA;spriteBatch.Begin(SpriteSortMode.Immediate, BlendState.AlphaBlend, null, null, null, null, Resolution.getTransformationMatrix());" CreationDate="2011-01-03T03:42:09.313" UserId="4296" />
  <row Id="8835" PostId="4668" Text="It's fairly easy to export a database into XML too.  With only a small bit of forward planning, you can write your component loader as a interface - then just plug in either the database reader or xml file reader.  While building out components, a database might be easier as there are ready-made GUI's for all data manipulations vs editing multiple files.  Then, in the final build process, just save out the database to xml, bake into binary, etc... and the production version of the game just uses the appropriate loader." CreationDate="2011-01-03T03:59:31.490" UserId="4296" />
  <row Id="8836" PostId="7031" Text="What size is your company/group?  Are you just one person dealing with another person, or are we talking several-person companies where more people than yourself and the contractor are depending on the deal?" CreationDate="2011-01-03T04:53:45.800" UserId="953" />
  <row Id="8837" PostId="7031" Text="Im alone, so the contract is only between me and another person who's doing graphics, sounds or so on." CreationDate="2011-01-03T05:28:05.390" UserId="4116" />
  <row Id="8838" PostId="7024" Text="That's odd, I have directX headers in my MinGW, and I don't remember adding them separately. Granted, my MinGW install is quite old, but when and why would they stop supplying those headers?" CreationDate="2011-01-03T06:22:46.600" UserId="3991" />
  <row Id="8839" PostId="4668" Text="How would that help? Using a custom editor and then outputting to text files actually gives you the worst parts of each option :-P" CreationDate="2011-01-03T07:15:02.710" UserId="395" />
  <row Id="8841" PostId="7024" Score="1" Text="I am interested in a very small subset of all the available DirectX methods, so I think any compiler will be fine. I also use LoadLibrary() and GetProcAdress() whenever I can, it helps." CreationDate="2011-01-03T09:14:26.293" UserId="4092" />
  <row Id="8842" PostId="7026" Score="1" Text="It seems the Mame site has something to avoid deep linking, so first click the Mame site before you try to download the headers." CreationDate="2011-01-03T09:16:30.583" UserId="4092" />
  <row Id="8843" PostId="7036" Text="Please add some additional information about what you want to achieve. Do you need 2D or 3D collision detection? How many objects will have to be checked? What precision do you need?" CreationDate="2011-01-03T09:23:08.103" UserId="2050" />
  <row Id="8844" PostId="4564" Text="what do you mean &quot;of Windows&quot;?" CreationDate="2011-01-03T09:25:31.803" UserId="4092" />
  <row Id="8845" PostId="7039" Text="Thank you for enlightening me. Honestly I've found plenty of resources on different algorithms. Just having idea block on exactly how to implement in a semi-efficient/realistic way. Again thanks." CreationDate="2011-01-03T10:21:39.333" UserId="4377" />
  <row Id="8846" PostId="7040" Text="Hrm, thank you for the input. Yea, from what I've found and for what I'm trying to achieve (asteroids clone), I've decided on a circle-circle-&gt;AABB type system. But again, was just looking for implementation ideas. Hitting idea blocks and just reaching out for a bit of help :). Thanks!" CreationDate="2011-01-03T10:32:48.840" UserId="4377" />
  <row Id="8847" PostId="7035" Text="It looks slightly more compact than XML, but still has the main issue of duplicated attribute names. If the file contained a list of game objects with 'XPosition', 'YPosition', and 'Scale' attributes, the strings 'XPosition'/'YPosition'/'Scale' would be duplicated for every single game object.  This is the main thing that I'm aiming to 'compress' at the moment" CreationDate="2011-01-03T10:36:13.383" UserId="659" />
  <row Id="8848" PostId="7041" Score="1" Text="It doesn't really make a difference whether you use Ogre or jMonkeyEngine or whatever. However, have you any gamedev experience before? If not, I would strongly advise against going straight into 3D and take a detour via 2D." CreationDate="2011-01-03T11:47:03.593" UserId="1156" />
  <row Id="8849" PostId="7039" Text="No problem, I've been through the same questions again and again and now that I got this book I have a solid reference to work on immediately." CreationDate="2011-01-03T12:42:47.123" UserId="364" />
  <row Id="8850" PostId="7041" Text="the case is that i do know how to model in 3d ( was hard core 3dsmax user 10 years ago ) " CreationDate="2011-01-03T12:56:18.553" UserId="3689" />
  <row Id="8851" PostId="7041" Score="1" Text="If you still are new to game development, it probably would still be a much better idea to start with 2D. You could always screenshot the models and 2D-ify them." CreationDate="2011-01-03T13:34:23.193" UserId="1156" />
  <row Id="8852" PostId="7043" Text="I take it you mean the Obj-C port of Cocos2D, not the Cocos2D Python library and tagged as such." CreationDate="2011-01-03T13:35:10.417" UserId="1156" />
  <row Id="8853" PostId="7043" Text="Also, I get very confused by 'if it's move according to move the other object should move left or right.'" CreationDate="2011-01-03T16:02:52.727" UserId="1156" />
  <row Id="8854" PostId="2681" Text="+1 really informative, thank you." CreationDate="2011-01-03T16:57:20.337" UserId="1251" />
  <row Id="8855" PostId="7045" Text="Well, if you just want to start programming a game, starting with OpenGL is *way* low-level. Implementing a scene-graph, asset-managers and loaders for textures and 3D geometry are not trivial tasks and you're probably better off with an engine that covers that already. Sure, these things are great for learning how stuff works under the hood but not necessarily the place to jump in. Also if you choose a good framework, you can use the same libraries to build more complex games later on, while your OpenGL code is most likely not reusable unless you write your own engine..." CreationDate="2011-01-03T18:07:43.127" UserId="20" />
  <row Id="8856" PostId="2526" Text="I'm not saying you shouldn't be able to save anywhere you want, just that you shouldn't be able to overwrite a game that was saved at a confirmed &quot;safe&quot; place with a save that you are saving whenever you want.  Otherwise instead of buring an hour to get from your save point to where you were, you burn a month playing the whole game over again because you (or someone not as sensible as you) save at the wrong time overwriting the safer save you had.  So to get the best of borh worlds there should be different storage for non-safe saved games." CreationDate="2011-01-03T18:34:40.143" UserId="1375" />
  <row Id="8857" PostId="90" Score="3" Text="I think one reason people think it's a lame question is that the OP didn't posit even one reason developing such a game would seem to be easy.    Kind of like asking &quot;Why is it so hard to fly like superman?&quot;" CreationDate="2011-01-03T18:37:47.790" UserId="4398" />
  <row Id="8858" PostId="5445" Score="1" Text="I don't think your definition of massive is really the definition of massive.  Your def sounds like an old school BBS game.  Massive to me implies thousands or millions, not just &quot;people you don't know&quot;." CreationDate="2011-01-03T18:42:23.263" UserId="4398" />
  <row Id="8859" PostId="5445" Score="1" Text="OTOH I really like the sentence where you ask &quot;why is it hard to make a huge 3d interactive world....&quot;  That really does make it seem obvious." CreationDate="2011-01-03T18:43:22.203" UserId="4398" />
  <row Id="8860" PostId="5445" Score="2" Text="@Peter Recore Well, I was trying to speak to the qualities of the game rather than just the popularity. If you need a specific number of people for that extra M, then you could argue that WOW wasn't an MMO when it first launched, or you'd have to have agreed upon numbers for what constitutes 'massive'. - on the other hand I'd argue that there's a major difference between games you play with your friends, and games you play with strangers, many of whom you don't need to interact with. I think a more important adjective to argue over would be 'Persistent'." CreationDate="2011-01-03T19:22:21.050" UserId="3234" />
  <row Id="8861" PostId="7043" Text="I think the question is about limiting the response to a collision with another object to the Y axis, but that's a guess." CreationDate="2011-01-03T20:11:16.100" UserId="154" />
  <row Id="8862" PostId="7045" Text="no way , man im to much years in this to know not to invite the wheel " CreationDate="2011-01-03T21:22:05.273" UserId="3689" />
  <row Id="8863" PostId="7042" Text="its all have bad licensing , what if i like to sell the game?&#xA;after i learned the engine " CreationDate="2011-01-03T21:22:56.350" UserId="3689" />
  <row Id="8864" PostId="7008" Text="You could also render to a render target and then just scale that. Just another way to go about it. (not really sure about efficiency) I don't think it would be a terrible problem." CreationDate="2011-01-03T22:05:40.073" UserId="3547" />
  <row Id="8865" PostId="6996" Text="There are also plug-ins to Studio that attempt poly-reduction." CreationDate="2011-01-03T23:02:35.950" UserId="3081" />
  <row Id="8866" PostId="1986" Text="Thats so incredibly annoying I don't know what to do" CreationDate="2011-01-03T23:04:46.133" UserId="2239" />
  <row Id="8867" PostId="2526" Text="If I have to manually save, at least let me save in the middle of the boss fight even if it means that save will bring me back to the beginning... because having the save option disabled is really annoying (eg like certain parts in Phoenix Wright games where you couldn't bring up the game menu)." CreationDate="2011-01-03T23:08:16.990" UserId="2239" />
  <row Id="8868" PostId="7044" Text="+1 So agreed on wanting this and the polish and feeling it adds but I don't think the majority cares anymore. Today's expensive digital billboards flicker, tear and stutter and people don't even seem to notice. The same seems to hold true to games. Perhaps if you get someone to drag a window back and forth on a 60Hz and a 120Hz TFT screen and experience the magical difference they might start to care, but I doubt it ^^" CreationDate="2011-01-03T23:13:45.397" UserId="2239" />
  <row Id="8869" PostId="7050" Text="Thanks. Will test this tomorrow since I'm at a different computer. I let you know then. " CreationDate="2011-01-04T01:05:18.870" UserId="4403" />
  <row Id="8871" PostId="7035" Score="1" Text="@bluescrn: No, it doesn't have that issue. Objects are one structure; you could also use arrays [which,just,look,like,this]. That means you can end up with something like this for storing the names and properties of cars: `&quot;cars&quot;:{&quot;ford&quot;:[8C,FA,BC,2A,384FFFFF],&quot;holden&quot;:[00,00,04,FF,04FF54A9]}` You can even omit the &quot;cars&quot; identifier and just go straight into an array if you know where the cars field will be. You can even omit the &quot;ford&quot; and &quot;holden&quot; names if you don't need to save that data, leaving you with: `[...,[[8C,FA,BC,2A,384FFFFF],[00,00,04,FF,04FF54A9]]]`. Does it get more compact?" CreationDate="2011-01-04T05:03:08.793" UserId="2698" />
  <row Id="8873" PostId="7053" Text="You're being your own worst critic. Listen to your customers. One of them says to get rid of auto-aim. Maybe you want to work on compatibility issues? It seems like some people can't get it to run." CreationDate="2011-01-04T05:09:27.330" UserId="2029" />
  <row Id="8874" PostId="7049" Score="2" Text="Shouldn't you be working on exposing government corruption and solving your personal sexual assault case? :p" CreationDate="2011-01-04T05:12:07.110" UserId="2029" />
  <row Id="8875" PostId="7043" Text="Yes i want to move  the object left or right" CreationDate="2011-01-04T05:16:40.810" UserId="4380" />
  <row Id="8876" PostId="6996" Text="Last time I read over the Daz3D EULA, it had a clause saying that use of Daz3D models in a real-time rendering environment was forbidden.  Do you know whether this has changed recently?" CreationDate="2011-01-04T05:41:55.577" UserId="4212" />
  <row Id="8877" PostId="7053" Score="1" Text="related: http://gamedev.stackexchange.com/questions/657/approaching-the-fun-factor-in-game-design" CreationDate="2011-01-04T05:42:37.013" UserId="51" />
  <row Id="8878" PostId="7053" Text="@ShrimpCrackers: those reviews are all bogus. The auto-aim is not at all auto-aim; he just doesn't know how to aim (explained in the help menu). There has been no other reports of failure to run. I find that the first reviewers for a new version are often full of hyperbole. Anyway, any thoughts on the initial question re: fun? @tetrad: thanks, decent read there." CreationDate="2011-01-04T06:20:47.167" UserId="4406" />
  <row Id="8879" PostId="7057" Text="Keep in mind if you're talking to them _whilst they're playing_ you're going to affect how they play, possibly reducing their skill as they divide their concentration between gameplay and speech." CreationDate="2011-01-04T07:54:34.667" UserId="2698" />
  <row Id="8880" PostId="7045" Score="1" Text="bummzack, that is the way graphics programming is taught at universities. What I wrote was more or less a major part of my syllabus when I started doing games development.&#xA;&#xA;OP, if you are really years into this, you'd know there is a subtle difference between reinventing the wheel and learning the basics." CreationDate="2011-01-04T09:33:51.833" UserId="4391" />
  <row Id="8881" PostId="7049" Text="ShrimpCrackers ... :-D" CreationDate="2011-01-04T09:42:33.787" UserId="3794" />
  <row Id="8882" PostId="7060" Text="I should add that the camera I'm using works perfectly well for the purposes of drawing.  The rotation, panning and zooming works exactly as expected.  I'm using SpriteBatch with a custom BasicEffect parameter and setting the BasicEffect's View and Projection matrices to the corresponding camera transforms." CreationDate="2011-01-04T09:58:07.450" UserId="2735" />
  <row Id="8883" PostId="7049" Score="1" Text="@ShrimpCrackers: First I must code my super game so I can earn money and escape from the earth." CreationDate="2011-01-04T10:22:28.407" UserId="4403" />
  <row Id="8884" PostId="7057" Score="1" Text="Yes, it's best not to guide them at all while they're playing, as that'll show you if you have made the game less intuitive than you think." CreationDate="2011-01-04T11:40:03.967" UserId="4264" />
  <row Id="8885" PostId="6860" Text="It actually really surprised me that they would do it this way. I suppose it must be because it was built primarily for console, where frame rate can be relied upon. Disappointing!" CreationDate="2011-01-04T12:02:50.477" UserId="119" />
  <row Id="8887" PostId="7050" Text="Hm, the rendering become kinda sticky when I changed the gravity. Like the prediction is messed up, although I followed the dewitters guide..." CreationDate="2011-01-04T13:10:57.620" UserId="4403" />
  <row Id="8888" PostId="7062" Text="related: http://gamedev.stackexchange.com/questions/195/any-tips-for-creating-cross-platform-games" CreationDate="2011-01-04T15:31:30.790" UserId="51" />
  <row Id="8889" PostId="7042" Text="as far I know Ogre is MIT, so no problem about that. Unity and UDK offers a indie license that allows you some freedom until you make some money and (specially with unity) after you go beyond their money limits, buying a license will not be a issue." CreationDate="2011-01-04T16:08:39.887" UserId="3232" />
  <row Id="8890" PostId="7073" Text="By diamond square, do you mean the simplex noise algorithm? It's like Perlin noise, but operates on a triangular grid. Also, this article may be some use http://www.nolithius.com/game-development/world-generation-breakdown and potentially this question too http://gamedev.stackexchange.com/questions/4628/huge-procedurally-generated-wilderness-worlds ." CreationDate="2011-01-04T16:38:23.760" UserId="1156" />
  <row Id="8891" PostId="7059" Score="3" Text="Learn 2D gamedev first, like Pong. Then Tetris or something. Then maybe a Mario clone. **Then** try coding a game server. If you're planning on doing this in 3D, add a number of 3D games to the above. I would give it at least a year, if not a couple before you're far enough for this (assuming you're a proficient programmer to start)." CreationDate="2011-01-04T16:40:39.453" UserId="1156" />
  <row Id="8892" PostId="7069" Text="No it doesn't really matter too much for your 50 odd sprites. But what's to lose?" CreationDate="2011-01-04T16:43:05.970" UserId="1156" />
  <row Id="8893" PostId="7055" Text="wouldn't this risk to interrupt the immersion for the player?" CreationDate="2011-01-04T16:54:59.317" UserId="1217" />
  <row Id="8894" PostId="7070" Text="Thanks, I hadn't considered either of those points - Do you know roughly what the limit is on the number of available textures? I've never seen this stat mentioned on graphics specifications - is the limit basically equal to the amount of graphics RAM?" CreationDate="2011-01-04T17:16:18.653" UserId="4103" />
  <row Id="8895" PostId="7055" Text="Depends on how you do it. For example, in Titan Quest if you hover your mouse in the top right corner (which is unlikely to happen by accident, there are no buttons or other UI to interact with up there) it shows the current time. This interrupts immersion a lot less than Alt+Tab or fumbling for your cell phone." CreationDate="2011-01-04T17:38:15.293" UserId="395" />
  <row Id="8896" PostId="7070" Text="Usually the limit would be the GPU memory, yes. I thought there were some restrictions on the number of textures on older cards but I can't seem to find a reference that proves that point." CreationDate="2011-01-04T17:51:41.497" UserId="20" />
  <row Id="8897" PostId="7074" Text="+1. Although the OP isn't using Flash, the embedding or loading is also a point in favor of spritesheets. It's also relevant when assets are loaded from a Webserver where 1 request is preferred over several hundred requests (for each &quot;frame&quot;)." CreationDate="2011-01-04T17:55:29.327" UserId="20" />
  <row Id="8898" PostId="7071" Text="+1. Also good points." CreationDate="2011-01-04T17:55:59.013" UserId="20" />
  <row Id="8899" PostId="3707" Text="Did you ever come up with a solution SoulBeaver?" CreationDate="2011-01-04T20:25:28.370" UserId="4338" />
  <row Id="8900" PostId="7080" Text="Much appreciated. Links are down at the moment, though. I'll try it again in a few hours." CreationDate="2011-01-04T21:22:35.247" UserId="1135" />
  <row Id="8901" PostId="7080" Text="They are? They're all working fine for me." CreationDate="2011-01-04T21:23:07.853" UserId="1156" />
  <row Id="8902" PostId="7070" Score="5" Text="Even if there isn't a limit on quantity, the bus-traffic for moving lots of little images is not as efficient as one (or a few) large transfer(s)." CreationDate="2011-01-04T21:24:20.463" UserId="3860" />
  <row Id="8904" PostId="7080" Score="1" Text="Mediafire uploaded and edited into the answer." CreationDate="2011-01-04T21:42:12.593" UserId="1156" />
  <row Id="8905" PostId="7073" Score="1" Text="Perlin noise has nothing to do with Diamond-Square, which is a refined Random Midpoint Displacement Fractal algorithm. http://en.wikipedia.org/wiki/Diamond-square_algorithm" CreationDate="2011-01-04T22:37:36.623" UserId="543" />
  <row Id="8906" PostId="7088" Score="1" Text="Creating music is creating music, regardless of what medium you are creating it for. This question is not really relevant to us I don't think, you'll probably have more chance of a decent response at http://audio.stackexchange.com/" CreationDate="2011-01-04T23:01:19.733" UserId="2332" />
  <row Id="8907" PostId="7088" Text="MuseScore is the best. I suggest, although, that you simply &quot;steal&quot; some music off Classical Music Composers. If you have no musical experience there's Garage Band for the Mac (or, as I like to call it, &quot;*Garbage* Band&quot;)." CreationDate="2011-01-05T00:50:11.357" UserId="3637" />
  <row Id="8908" PostId="7089" Score="2" Text="Might want to actually read the terms on Wolfram Tones. &quot;Unless otherwise specified, this Site and content presented on this Site are for your **personal and noncommercial use.** You may not modify, copy, distribute, transmit, display, perform, reproduce, publish, license, create derivative works from, transfer, or sell any information or content obtained from this Site. For commercial and other uses, contact us.&quot; Bolding was done by me." CreationDate="2011-01-05T00:58:08.290" UserId="962" />
  <row Id="8910" PostId="7091" Text="I think the repo link on CAAT's page is pointing to the old one so make sure you use this one instead! repo: https://github.com/hyperandroid/CAAT" CreationDate="2011-01-05T08:43:45.187" UserId="4360" />
  <row Id="8912" PostId="7091" Text="(sorry i can only add one link per post currently) Here is a demo I created of which contains a hello-world template for CAAT - http://onedayitwillmake.com/CAATCirclePack/" CreationDate="2011-01-05T08:45:11.410" UserId="4360" />
  <row Id="8913" PostId="1393" Score="7" Text="This answer I think misses the fundamental economic point involved here. Currency is no different to any other resource, it's just there to facilitate trading real items. There are no items of fixed value that can be used to measure other items' value against. If you artifically fix the number of coins in the system, but allow infinite amounts of, say, food to be generated, then it all breaks down. It _all_ has to be a closed system to work in the long term; fixing parts of it won't work. The key design decisions come in how you choose to manage the distribution through sources/sinks." CreationDate="2011-01-05T10:46:22.493" UserId="741" />
  <row Id="8914" PostId="6983" Text="That first link is very informative. Good article." CreationDate="2011-01-05T12:10:49.413" UserId="20" />
  <row Id="8915" PostId="7091" Text="Thanks for the links, I'll def. check it out. I have heard rumblings of Canvas being slow but I'm one who usually has to see things himself :) I should also note that the game I'm creating is VERY light on the animations. Never more than one or two running at the same and at intervals of once every 5-10 seconds for a minute at a time. Nothing crazy. Also, to verify, are you suggesting not using Canvas at all but using plain old DOM objects with CSS/translate3d?" CreationDate="2011-01-05T12:55:39.717" UserId="4429" />
  <row Id="8916" PostId="7092" Text="This already happens and does not prevent inflation. At all." CreationDate="2011-01-05T13:09:17.093" UserId="2188" />
  <row Id="8917" PostId="1395" Text="Exactly: those are offline game that are somehow played online too. Real online games can't suffer from this problem. Offline, fake-online, games are irrelevant to this question, and irrelevant in general." CreationDate="2011-01-05T13:11:21.960" UserId="2188" />
  <row Id="8918" PostId="1125" Text="And how does that prevent inflation? Even if you cap the gold earned per day, the total gold increases anyway." CreationDate="2011-01-05T13:12:37.903" UserId="2188" />
  <row Id="8919" PostId="7086" Text="thx for the advice, I'll give that a try next time." CreationDate="2011-01-05T13:50:34.583" UserId="2469" />
  <row Id="8920" PostId="7094" Text="That's great, can you link to any examples of double-buffered textures used in this way?" CreationDate="2011-01-05T14:27:42.833" UserId="3188" />
  <row Id="8921" PostId="7045" Text="Up voted. I completely agree that the correct way to learn game programming is to start with OpenGL, a small scene graph, asset manager, etc. and work from there. Honestly, if you can't build a small 2D engine or simple 3D engine from OpenGL, you probably won't be able to handle Ogre3D. They're both complex, it's just a different level of complexity. Understanding how an engine works at its core, or a renderer, will benefit you in the long run. You've spent 15 years working with C++, why rush learning game programming?" CreationDate="2011-01-05T14:51:55.563" UserId="138" />
  <row Id="8922" PostId="7035" Score="1" Text="@Axidos: If you're going to make the markup that unreadable and unstructured, you might as well just make it binary. Aside from that, it's a false savings, unless you're parsing uncompressed data during runtime (in which case, you're probably screwed anyway), or somehow constrained for a few hundred bytes of string memory during parsing (unless you're on a microwave, you're not)." CreationDate="2011-01-05T15:23:45.987" UserId="744" />
  <row Id="8924" PostId="1099" Score="4" Text="World of Warcraft is even more clever than that. Players will almost always offer superior prices than vendors for items, so any decent trade is done with players - where no money is generated. In fact, since a lot of trading is done through the Auction House, and the Auction House either takes a cut (for a successful auction) or your deposit (for an unsuccessful one), _the best route for earning money acts as a gold sink_." CreationDate="2011-01-05T15:34:44.120" UserId="2698" />
  <row Id="8925" PostId="1099" Text="Most of the items _not_ worth selling to players are quest rewards (which are normally soulbound) and the countless useless drops fondly referred to as vendor trash. These are just currency in disguise that force you back to town regularly to cash in." CreationDate="2011-01-05T15:36:54.150" UserId="2698" />
  <row Id="8927" PostId="7035" Text="@Joe: bluescrn seems to be searching for a readable format that doesn't have duplicated names. I was illustrating JSON's capability to offer just that. I totally agree though that at a certain point you might as well just wonder why you're even bothering with markup like this." CreationDate="2011-01-05T15:46:45.580" UserId="2698" />
  <row Id="8928" PostId="7091" Text="To be honest, I can't say for your specific scenario or not.&#xA;However if you want to target mobile-safari specfically then imo yeah you would want to use CSS with divs.&#xA;&#xA;It's very fast at doing that compared redrawing the canvas from my experience. I was able to easily get 45 image based sprites moving around at 30FPS using 'translate3d' to move them into place.&#xA;&#xA;Be sure to place this in the CSS for the objects you plan on moving with 'transform3d', otherwise webkit will animate those objects to where specified instead of placing.&#xA;&#xA;-webkit-transition: transform3d 0s linear; &#xA;&#xA;" CreationDate="2011-01-05T16:29:20.440" UserId="4360" />
  <row Id="8929" PostId="7099" Text="This is perfectly clear. Thanks a lot. I kinda had the right idea, but I was going to make a central system to log movement, but having each character log its own movement is a much easier way to go about it. Thanks." CreationDate="2011-01-05T17:14:10.073" UserId="4183" />
  <row Id="8930" PostId="7065" Text="Didn't it help? You can post example values i will try to help you" CreationDate="2011-01-05T17:28:05.010" UserId="3794" />
  <row Id="8931" PostId="7097" Text="A 'basic' 3D engine is not huge, and C++ is terrible for prototyping. Try Python for that." CreationDate="2011-01-05T17:52:42.253" UserId="1156" />
  <row Id="8932" PostId="7073" Text="I didn't think diamond-square sounded like the name of an algorithm, apologies. I'm too used to 'Perlin', 'Simplex', 'Riemann Zeta' or whut. :P" CreationDate="2011-01-05T17:54:20.130" UserId="1156" />
  <row Id="8933" PostId="3239" Text="DDO expansions etc can't be bought with in-game currency.  They are bought with Turbine Points which can either be bought for cash or obtained by earning favor by quest completion.  While favor has in-game effects as well it's a character attribute, not currency.  Favor via quest completion is limited by the fact that there is only a certain amount of favor to be obtained from a quest.  Running it again won't produce any more.  (A higher difficulty will but one run at the highest difficulty yields all the favor you'll get.)" CreationDate="2011-01-05T18:13:48.850" UserId="3175" />
  <row Id="8934" PostId="671" Text="Well its not just about autonomy, Its also about content. People are shown a list of things that can be unlocked if they do something. So curiousity encourages them to complete." CreationDate="2011-01-05T18:47:42.347" UserId="3458" />
  <row Id="8935" PostId="7085" Text="Check my update." CreationDate="2011-01-05T19:10:44.517" UserId="4419" />
  <row Id="8936" PostId="7092" Text="The fact it didn't work for you doesn't mean it will not work for anyone" CreationDate="2011-01-05T19:13:38.430" UserId="4153" />
  <row Id="8937" PostId="7104" Text="Why is it 'proper' alpha? There's alpha support, and no alpha support, right? " CreationDate="2011-01-05T20:05:52.577" UserId="1156" />
  <row Id="8938" PostId="7059" Score="1" Text="Best advice I can give you is to make something small first, as mentioned like pong or tetris. Any type of card game (developing a card interface then trying to support more and more card game types actually helps in learning how to architect some of things and the like)." CreationDate="2011-01-05T21:06:05.317" UserId="4443" />
  <row Id="8939" PostId="7068" Text="a little chime in here.. There is complication to networking, but if you can develop a generic enough input interface, then it should not matter where the 'commands' come from.. Keyboard, Mouse.. network packet.. Just a little thought to keep in mind, but yeah, get a single player version working first so you are only debugging one aspect of a program at a time." CreationDate="2011-01-05T21:07:25.817" UserId="4443" />
  <row Id="8940" PostId="6360" Score="3" Text="I ported a certain well-known DOS game to windows a couple years ago - one of the things I would have loved to add to it, if we were going to make any changes to the gameplay - would have been achievements. So if I could add achievements to a over 10 year old game clearly not designed for it, I'd pretty much say they can be added anywhere. Heck, this very site has achievements.." CreationDate="2011-01-05T21:11:46.550" UserId="4264" />
  <row Id="8942" PostId="7105" Text="Yep, it looks like the NonPremultiplied is going to do the trick (at least according to the link you posted).  I'm going to wait and see if it works when I get home tonight before accepting but it looks like this is the answer.  Thanks!" CreationDate="2011-01-05T21:16:50.330" UserId="3843" />
  <row Id="8944" PostId="7108" Text="That would be quite nice to use this game engine with code instead of boxes... maybe it's not clean enough to use, but I wonder..." CreationDate="2011-01-05T21:25:57.667" UserId="1829" />
  <row Id="8945" PostId="7104" Text="You should be able to edit the title by pressing 'edit' and then the title should be at the top. Unless something's changed." CreationDate="2011-01-05T21:54:07.210" UserId="1156" />
  <row Id="8946" PostId="7103" Text="Thats a really good solution for the post development implementation. I'll keep this in mind because I'm still not sure if I want to implement it. I might do it in a later phase because I don't want the scope of my project to get out of control." CreationDate="2011-01-05T22:19:10.857" UserId="2910" />
  <row Id="8947" PostId="7109" Text="Thanks for your reply! Very good points. I'm actually building my own engine right now. Started it using Canvas but going to be modifying it a bit to test CSS3/WebKit stuff. Only reason I'm building my own is because the game is too 'simple' for a 'real' engine. We don't even really have a main game loop. The only reason it's even there is for animation, but considering how infrequently those happen we could probably just start/stop timers as needed :)" CreationDate="2011-01-06T00:00:32.150" UserId="4429" />
  <row Id="8948" PostId="7098" Text="What you are looking for is more of a 'Replay' than time control. You might find some nice articles on ways to deal with this, but I still say the answer below is also a good start in this area. Keep in mind that things that are 'random' in the game will screw up replays for the 'ghost' character running it again if they can affect progress." CreationDate="2011-01-06T00:25:09.210" UserId="4443" />
  <row Id="8949" PostId="7057" Text="+1 for achievements. Badges are the reason I visit SE so often." CreationDate="2011-01-06T01:15:47.137" UserId="647" />
  <row Id="8950" PostId="7085" Text="@Gabriel: Re: your update. It's a matter of implementation. In my example, the first two iterations are seeded, first iteration using the &quot;standard&quot; corners seed, then, instead of calculating the diamond average, the center point's pre-seeded value is used instead. Common trick when you want to specify some important geographical constraints and let the rest be Plasma'd." CreationDate="2011-01-06T02:02:41.093" UserId="543" />
  <row Id="8951" PostId="7084" Text="&quot;and incorporates features that mean it's probably not a proper CA&quot;...what do you mean by that? Do these CA's only differ on having more rules or something more?" CreationDate="2011-01-06T02:09:59.917" UserId="3446" />
  <row Id="8952" PostId="7105" Text="@Alex that was the trick.  I didn't realize they changed that in 4.0.  That article you linked was very illustrative.  Thank you." CreationDate="2011-01-06T03:06:16.207" UserId="3843" />
  <row Id="8954" PostId="7114" Text="No custom classes here. Microsoft.Xna.Framework.Graphics.Texture2D, Microsoft.Xna.Framework.Color. And I'm simply using Vector2 out of laziness (no IntVector2, although I suppose Short2 sould be okay); while the values are kept in floats, they're integer values and not large enough to round do different numbers. Changing how `data`'s number of elements is calculated changes nothing." CreationDate="2011-01-06T05:34:10.797" UserId="1954" />
  <row Id="8955" PostId="7114" Text="Also, Type with a capital T is a lot different than a generic type. GetData() doesn't take a Type; it takes in an array of a generic type derived from ValueType (i.e. a struct), where that type matches the surface format's bit size -- as Color does for my texture images (32-bit, ARGB)." CreationDate="2011-01-06T05:36:49.187" UserId="1954" />
  <row Id="8956" PostId="7114" Text="Actually Point is what I should be using, and I've switched to that. Still no difference; GetData() continues to toss." CreationDate="2011-01-06T05:54:09.773" UserId="1954" />
  <row Id="8957" PostId="7116" Text="That was exactly it, and I feel like such an idiot for not checking Reflector earlier to discover this. Thanks, Andrew!" CreationDate="2011-01-06T06:32:02.003" UserId="1954" />
  <row Id="8958" PostId="6361" Score="1" Text="+1 for not writing irregardless :)" CreationDate="2011-01-06T07:39:14.740" UserId="4035" />
  <row Id="8959" PostId="7098" Score="3" Text="Good point about the &quot;random&quot; parts. Be sure to use a random generator that generates its numbers based on a seed. Then save the seed with your replay and use the same seed when playing that replay." CreationDate="2011-01-06T07:49:48.750" UserId="20" />
  <row Id="8960" PostId="7029" Text="Prevention is the cure?: http://www.gamasutra.com/view/feature/3015/pool_hall_lessons_fast_accurate_.php" CreationDate="2011-01-06T08:21:54.580" UserId="3637" />
  <row Id="8962" PostId="7120" Text="+10 if I could. Great considerations. Replaying either movement vectors or position would be superior to replaying input, depending on the desired effect. Tens of milliseconds of inaccuracy between frames is probably easier to account for when working with movement and position than it is with input." CreationDate="2011-01-06T09:04:35.157" UserId="2698" />
  <row Id="8964" PostId="7128" Text="I have heard of enignes like cryengine, ut3, etc... (I know this are top notch game engiens) that write all the entities in script. So, they offer a real good information for the game editor, this is why I wanted to do something alike, but much simpler. And this is why I asked for define my entitiens un lua side. Could you suggest any doc or something about the fake RTTI in C++?" CreationDate="2011-01-06T21:15:31.507" UserId="4469" />
  <row Id="8965" PostId="7128" Score="1" Text="Having worked with one of those and other engines, I can say that they do fully expose their system and you are able to make objects within their scripting interfaces as well as large amounts of game logic.. However.. The base core objects, the components if you will, are almost entirely C++ objects that are then exposed via RTTI and the scripting interface for people to muck with.  On the RTTI side of things, give me a day or two and Ill see if I can not find something, maybe even a bit of a code example from one of my non-professional projects so I can give away the code with out worry :)" CreationDate="2011-01-06T21:35:20.153" UserId="4443" />
  <row Id="8966" PostId="7128" Score="1" Text="A second note, cause I ran out of space on that one.. Is that you do not strictly need a complicated RTTI just to expose things through a scripting language.. Having a generic way to define and wrap properties and methods may make exposing them through a scripting language easier, but especially with lua (Ive embedded it into 3 engines so far, but the last one was about 3 years ago so this may have changed) you can just go through and manually expose the parts that you want, no RTTI needed in the strictest sense of the word since you are defining the types from C++ to Lua yourself." CreationDate="2011-01-06T21:37:41.510" UserId="4443" />
  <row Id="8967" PostId="7128" Text="Hi James, and thanks a lot for your comments they are really good (sorry I can't give you credits, I'm new user :S). If I understand correctly, you mean that as I expose my components to lua, then from my editor, there's no need to support RTTI to get this information, I can directly get it from lua, am I right?. The problem, my editor is now an external editor, so I don't have this information exported from my game C++ part to lua.If you don't mind could we talk through IM or something to have a more fluently conversation?Don't wanna rush you with questions,just it is a pain to speak here :)." CreationDate="2011-01-06T22:05:50.743" UserId="4469" />
  <row Id="8968" PostId="7111" Text="Thank you for your answer. Especialy for clearification about paralelism of physx and rastarization. " CreationDate="2011-01-06T22:57:38.633" UserId="3794" />
  <row Id="8969" PostId="7128" Text="I would have to say for exposing to the editor that some sort of a generic RTTI system for being able to look up properties and methods would be the way to go, this same system could also be used to expose the objects through Lua as well as I would assume your Editor is going to be using Lua when dropping in the entities and the like." CreationDate="2011-01-06T23:20:11.030" UserId="4443" />
  <row Id="8970" PostId="7128" Text="Well, I'm a bit lost right now :). At first I was thinking about using lua in the editor to import my entities templates (because I first thought to define my components in lua). Now that I have decided (thanks to you and other articles I have read) to use C++ Components exposed to lua to build my entities can't see its use. Anyway, would it be a better option to make the editor in-game? This way I will have everything I need. I will have all my components and systems registered to lua, and the in-game editor could suck it from there.The cont is that I won't be able to use Qt for the UI" CreationDate="2011-01-06T23:33:11.477" UserId="4469" />
  <row Id="8971" PostId="7111" Text="It's also easy to get confused with PhysX and thinking the GPU has a PPU onboard to handle physics. They used to do a separate Physics PPU acceleration card for PC's back when they were Ageia. They were since bought by NVidia who was interested in having acclerated GPU physics of their own." CreationDate="2011-01-07T00:05:45.027" UserId="4410" />
  <row Id="8972" PostId="7128" Text="Even if the editor is a separate application, it does not mean it can not be using your in-game objects. What data format are you going to use for your entities? Do you want to link together the logic you mentioned in your original post (I had just assumed the editor was going to write that logic in little Lua scripts and use Lua to define object composition and initial values and such, so my bad on that). Sorry for any confusion, completely not intended!" CreationDate="2011-01-07T00:07:34.377" UserId="4443" />
  <row Id="8973" PostId="1754" Text="Valid, but not especially compatible with actual players.  Or even especially representative of any useful level of wear on money in reality.  I'm sure that you can get a good 7000 or so transactions from each bill or each coin, not really useful as a money sink, and anything more frequent than that rings false." CreationDate="2011-01-07T01:27:35.113" UserId="284" />
  <row Id="8974" PostId="1395" Text="Don't feed the troll." CreationDate="2011-01-07T01:28:25.330" UserId="284" />
  <row Id="8975" PostId="7130" Score="2" Text="This isn't a good question.  We have no idea what kind of difficulties you might run in to.  We don't know if it's &quot;too much&quot; of a leap.  Come back when you have a specific question that we can answer." CreationDate="2011-01-07T03:40:31.723" UserId="51" />
  <row Id="8976" PostId="7134" Score="1" Text="Wait... What are you using (language) and what is your current strategy?" CreationDate="2011-01-07T06:15:18.793" UserId="3637" />
  <row Id="8977" PostId="7136" Score="1" Text="It's more of how do I tackle rendering. Do I save the block ID and player offset in each block?" CreationDate="2011-01-07T06:40:52.833" UserId="2262" />
  <row Id="8978" PostId="7139" Text="It's not clear what you're asking here. Are you asking how to program an AI to make intelligent decisions, or how to allow an AI to interact with the gameboard and cards? Or both? If it's the first, you might be interested in these questions: http://gamedev.stackexchange.com/questions/6189/useful-resources-for-beginning-ai http://gamedev.stackexchange.com/questions/2194/new-to-creating-ai-where-to-start" CreationDate="2011-01-07T08:25:02.947" UserId="2698" />
  <row Id="8979" PostId="7139" Text="how to allow an AI to interact with the gameboard and cards. I have no experience in this kind of develloping, but i know how to develop. Thanks" CreationDate="2011-01-07T08:26:55.970" UserId="4481" />
  <row Id="8980" PostId="7142" Text="Many thanks. I'm studyng Strategy techniques for solve my doubt!" CreationDate="2011-01-07T11:29:14.387" UserId="4481" />
  <row Id="8981" PostId="7144" Text="It is known as &quot;gamefication&quot; - adding game elements to non game subjects." CreationDate="2011-01-07T13:29:53.210" UserId="2721" />
  <row Id="8982" PostId="7145" Text="It's just no true. OpenGl and directx are equal in their capabilities and performance. Personally i like directx more, because for me it is not that &quot;messy&quot; as ogl. Directx also has its own gpgpu language which can be easily connected with graphic pipeline (which is pretty cool, i'm working with it just now). I know there is openCl ... but connection with graphic pipeline is torture :)" CreationDate="2011-01-07T14:06:03.527" UserId="3794" />
  <row Id="8983" PostId="7145" Text="It is true that DirectX only works for Microsoft platforms, while OpenGL is quite portable.  An OpenGL game is much easier to release for Mac, Windows, and Linux." CreationDate="2011-01-07T14:17:30.467" UserId="953" />
  <row Id="8984" PostId="5968" Text="Change the 3_0 to 2_0 and see what breaks :)" CreationDate="2011-01-07T14:32:31.120" UserId="4327" />
  <row Id="8985" PostId="7146" Text="Starcraft2 uses openGL on mac OS and D3D10 on windows." CreationDate="2011-01-07T14:35:14.600" UserId="2469" />
  <row Id="8986" PostId="7145" Score="2" Text="-1, subjective." CreationDate="2011-01-07T14:58:09.930" UserId="51" />
  <row Id="8987" PostId="7145" Text="Also, examples of OpenGL games: http://gamedev.stackexchange.com/questions/5544/aaa-games-and-opengl" CreationDate="2011-01-07T14:58:43.830" UserId="51" />
  <row Id="8988" PostId="7147" Score="1" Text="+1 It's all in the psychology | related:  http://www.escapistmagazine.com/videos/view/extra-credits/2487-The-Skinner-Box" CreationDate="2011-01-07T15:26:33.490" UserId="14" />
  <row Id="8989" PostId="5546" Text="According to wikipedia, in Starcraft II Blizzard used Direct3D for windows and OpenGL for mac - reference: http://en.wikipedia.org/wiki/StarCraft_II:_Wings_of_Liberty#Development" CreationDate="2011-01-07T15:35:59.483" UserId="1581" />
  <row Id="8990" PostId="5628" Text="+1 for the general idea of being data-driven. I don't agree with suggesting xml. There are better formats out there - yaml, json or a plain .lua file if you are embedding Lua." CreationDate="2011-01-07T15:42:19.183" UserId="1581" />
  <row Id="8991" PostId="7155" Text="After reading @Tetrad's answer I suppose you could combine a cross product and an `arccos`.  This way you'll only use one trig function, but still have the actual angle.  However I recommend against this optimization until you're sure you AI angle tracking is making a noticeable impact on your game's performance." CreationDate="2011-01-07T16:09:51.173" UserId="370" />
  <row Id="8992" PostId="5546" Text="@egarcia True, I never claimed that Starcraft 2 uses OpenGL on windows. Just mentioned Starcraft 2 as an example of an AAA Game that runs on OpenGL (because there is a Mac version of the game)" CreationDate="2011-01-07T16:15:56.050" UserId="20" />
  <row Id="8993" PostId="7084" Score="1" Text="A canonical CA has each cell's state in generation N+1 defined by a function that depends on the states of the cell's close neighborhood in generation N, and the function is generally the same for each cell.&#xA;&#xA;Many &quot;powder&quot; games contain things like boids or constraint-based physics objects, which don't really fall under this definition.  I doubt they're coded entirely as a CA. Even if they are, at some point, the neighborhood gets large enough and the transition function gets complex enough that you're really not dealing with a CA." CreationDate="2011-01-07T16:50:29.240" UserId="953" />
  <row Id="8995" PostId="7143" Score="1" Text="Also http://gamedev.stackexchange.com/questions/5279/how-can-i-make-my-score-based-game-addictive and http://gamedev.stackexchange.com/questions/5667/what-makes-puzzle-games-addictive, this is really a vague subject and the answers always end up pretty useless and forum-y." CreationDate="2011-01-07T17:05:46.463" UserId="744" />
  <row Id="8996" PostId="7147" Text="Interesting, thanks for sharing" CreationDate="2011-01-07T17:31:33.473" UserId="3794" />
  <row Id="8997" PostId="5545" Score="2" Text="This isn't necessarily true from the programming end. Most EA titles ported to the Mac are done at the binary level (http://transgaming.com/business/cider), although they are using OpenGL when actually running on the Mac." CreationDate="2011-01-07T17:42:52.070" UserId="4491" />
  <row Id="8998" PostId="7157" Text="Which language and framework is this?" CreationDate="2011-01-07T17:51:57.407" UserId="2698" />
  <row Id="9000" PostId="5524" Text="+1 I don't know why this got marked down, it seems a well thought out response." CreationDate="2011-01-07T19:07:09.447" UserId="3455" />
  <row Id="9001" PostId="5499" Score="1" Text="Even if it doesn't help you get hired, a stronger grasp of mathematics will help you with most areas of development. I certainly regret not learning more math when I had the chance!" CreationDate="2011-01-07T19:10:31.863" UserId="3455" />
  <row Id="9002" PostId="7155" Text="@deft_code the magnitude of the cross product vector gives you the sin of the angle between them, not the cos.  So you need to use `arcsin`." CreationDate="2011-01-07T19:29:23.997" UserId="51" />
  <row Id="9003" PostId="7105" Text="+1 Thank you! I was just looking online trying to figure out why the alpha was only working partially. This solved it. The terms I was using on google were Spritebatch Opacity, hopefully those terms will now help gogglers find this answer." CreationDate="2011-01-07T19:30:22.740" UserId="962" />
  <row Id="9004" PostId="7140" Text="Don't put more information in an answer, unless you are actually answering your own question. Put additional information in comments or on the original post." CreationDate="2011-01-07T19:39:34.493" UserId="962" />
  <row Id="9005" PostId="7111" Text="Thanks again Roger" CreationDate="2011-01-07T19:55:53.997" UserId="3794" />
  <row Id="9006" PostId="5569" Text="wow... reverse AJAX? really? do you call websockets, flash, long poll and polling reverse AJAX?" CreationDate="2011-01-07T20:51:14.373" UserId="666" />
  <row Id="9007" PostId="7143" Text="Seems like looking for duplicate is more important then trying to give good answers." CreationDate="2011-01-07T21:01:16.343" UserId="2721" />
  <row Id="9008" PostId="7143" Text="@Ross: The point of marking questions as a duplicate is to funnel all the answers into one question, making that question the best resource. Splitting the good answers across multiple questions is as bad as not getting answers in the first place (and worse, if you're trying to get a good Google position)." CreationDate="2011-01-07T21:42:05.763" UserId="744" />
  <row Id="9009" PostId="2069" Text="If you are going to be writing a physics engine then much more than a physics class is going to be needed, you are going to need to know numerical methods.   " CreationDate="2011-01-07T21:49:11.330" UserId="2447" />
  <row Id="9010" PostId="7137" Score="1" Text="Better answer than I was looking for" CreationDate="2011-01-07T22:18:04.547" UserId="2262" />
  <row Id="9011" PostId="7157" Text="If your camera is in unit vectors and the Z axis is the one that goes into and out of the screen, isnt the X axis the unit direction for strafing?" CreationDate="2011-01-07T22:58:20.160" UserId="4443" />
  <row Id="9012" PostId="7140" Text="Sorry but I do not see any more questions in there, just that you have taken what I have said, found a plan and now I think you should just see where it takes you. You look on the right track to me :)" CreationDate="2011-01-07T23:02:22.840" UserId="4443" />
  <row Id="9013" PostId="7164" Score="2" Text="You have some answers below so Ill just chime in with a quick: You will generally want to keep your model data and your animation data and the like separate.. Maybe closely related/named files, but if you ever need to change things, its nice to have one thing not require the change of many.. For 'Production' vs 'Development' assets you could always combine all your raw animation, model, collision data, etc.. into a single concatenated object, but that level of asset processing may not be immediately needed either." CreationDate="2011-01-07T23:14:07.900" UserId="4443" />
  <row Id="9014" PostId="7155" Text="Yes, when converting between vectors and angles, atan2() is most definitely your friend." CreationDate="2011-01-07T23:30:37.570" UserId="659" />
  <row Id="9015" PostId="7139" Text="The AI for the card game is very different from game to game, i do not think you are going to find much of an answer with out some specific card game in mind. (You do not play poker in the same way you would spades, gin or rummey for example)" CreationDate="2011-01-07T23:32:00.990" UserId="4443" />
  <row Id="9016" PostId="7157" Text="@Jonathan: The language is JavaScript and the framework is Google O3D WebGL" CreationDate="2011-01-07T23:57:09.910" UserId="3536" />
  <row Id="9017" PostId="7157" Text="@James: I allow the user to spin the camera around, so the Z and X axis are not always relative to the direction in which the camera is facing, therefore I must align the strafe X with the camera's direction which is what Jonathan has attempted to assist me with" CreationDate="2011-01-08T00:02:27.287" UserId="3536" />
  <row Id="9019" PostId="7134" Text="possible duplicate of [What are different ways to define items in an RPG like game?](http://gamedev.stackexchange.com/questions/4516/what-are-different-ways-to-define-items-in-an-rpg-like-game)" CreationDate="2011-01-08T00:34:22.000" UserId="744" />
  <row Id="9022" PostId="7159" Text="Hi Jonathan, I greatly appreciate your response, thank you. I fully take on board the requirement for a re-factor, the language I am using is JavaScript which I am new to using so intensively, so I am being careful not to overwrite any variables whilst attempting to implement a solution. The camera's rotation matrix would appear to be the final piece of the puzzle, now that I have an explanation as to how the rotation matrix would be applied to the movement vector. I have taken a look at the example you provided, which fits the bill (by taking the camera position and target)," CreationDate="2011-01-08T00:42:15.677" UserId="3536" />
  <row Id="9023" PostId="7159" Text="unfortunately I am still having trouble wrapping my head around how I take these values to produce the rotation matrix. The example mentions using a quaternion which is new to me, are you able to help me understand how I create the quaternion from these values? The framework I am using does have a quaternion helper, maybe it will make more sense to you? (http://code.google.com/p/o3d/source/browse/trunk/samples_webgl/o3djs/quaternions.js?r=215) it does appear to only provide functions for manipulating quaternions, but does have quaternionToRotation" CreationDate="2011-01-08T00:42:50.107" UserId="3536" />
  <row Id="9024" PostId="7165" Text="Also i release UAV before creating and using SRV" CreationDate="2011-01-08T00:48:54.963" UserId="3794" />
  <row Id="9025" PostId="7132" Text="Thank you for the response.  To be clear for future browsers, taking the inverse sine of the magnitude of the 2d cross product would yield values between 0 and 90.  Taking the sine of the z-component of the 2d cross product yields the desired results." CreationDate="2011-01-08T02:58:26.037" UserId="4212" />
  <row Id="9026" PostId="7155" Text="Thanks! I've found that I actually don't really need the angle, grabbing the 2D cross product is simple enough for my needs." CreationDate="2011-01-08T02:59:53.400" UserId="4212" />
  <row Id="9027" PostId="7159" Text="@Chris: After taking a look through o3d I've found a way to compute the camera's rotation matrix (I believe) using `o3djs.math.matrix4.lookAt = function(eye, target, up)`. I've also changed almost everything that was in the pseudocode block, including determining the `xMovement`. Hopefully it's now all legal JavaScript!" CreationDate="2011-01-08T03:46:01.440" UserId="2698" />
  <row Id="9028" PostId="7159" Text="@Chris: Quaternions turned out not to be necessary, but it would be good if you were to learn about them. They are very useful in 3D for rotations since they're far more efficient than rotation matrices." CreationDate="2011-01-08T03:46:54.670" UserId="2698" />
  <row Id="9029" PostId="7159" Text="@Chris: Do note I've left delta in the xMovement multiplication. If you are using the delta value to control how many units you move per second, you may want to take that out of the movement vector and move it to the speed variable (e.g. `var speed = delta * 4.2`). The movementVector is only being used for direction, only the speed variable introduces actual distance to it. Any speed information would be lost when the matrix is normalized just before rotating it." CreationDate="2011-01-08T03:55:54.227" UserId="2698" />
  <row Id="9030" PostId="7132" Text="@Error 454, you're absolutely right, fixed my post." CreationDate="2011-01-08T04:11:13.963" UserId="51" />
  <row Id="9031" PostId="7173" Text="Thank you,I got it." CreationDate="2011-01-08T08:35:00.807" UserId="4432" />
  <row Id="9032" PostId="7175" Text="Ya sure ti helped me alot Thank you Hobbs.. :-* " CreationDate="2011-01-08T11:11:42.823" UserId="4432" />
  <row Id="9033" PostId="7096" Text="Thanks, I think your answer is the closest to one, that I was looking for. I'm pretty familiar with general multiplatform development, just wanted some information on how Blizzard does it. I'd be grateful, if you post links to additional information about their development process." CreationDate="2011-01-08T11:37:08.390" UserId="4412" />
  <row Id="9034" PostId="7177" Text="Wow! Tell your game designer friend to at least consider something like SQLite :)" CreationDate="2011-01-08T11:45:34.273" UserId="20" />
  <row Id="9036" PostId="7177" Text="@bummzack: SQLite is a relational database. Excel is a spreadsheet. A RDB may be (poorly) replaced by a spreadsheet program, but you can't replace a spreadsheet program with just an RDB." CreationDate="2011-01-08T13:23:44.700" UserId="744" />
  <row Id="9037" PostId="7170" Score="1" Text="If you don't get an answer here, consider posting this to a place like http://www.polycount.com/forum/. If you get an answer over there, you can also post it here." CreationDate="2011-01-08T13:26:10.417" UserId="20" />
  <row Id="9038" PostId="7170" Text="Thanks for the suggestion @bummzack" CreationDate="2011-01-08T13:28:03.040" UserId="1130" />
  <row Id="9039" PostId="7159" Text="Scratch that, I moved Delta over to speed anyway." CreationDate="2011-01-08T13:33:03.457" UserId="2698" />
  <row Id="9040" PostId="7177" Text="(I have endless professional anecdotes about why Excel is great/horrible for this kind of thing, which I might write up in a day or two if I think I can do it without getting sued, but I'm hoping someone has a more evidence-based answer.)" CreationDate="2011-01-08T13:42:55.300" UserId="744" />
  <row Id="9041" PostId="7180" Text="Yes, excel is a common tool. The point of the question is:&quot;a single huge table for all items&quot;, items include equipments, consumes, etc. Is it necessary to divide the huge one into small ones? Even separated config file for each item? I'm afraid the huge table may hurt their eyes :o)" CreationDate="2011-01-08T14:02:04.457" UserId="3630" />
  <row Id="9043" PostId="7180" Text="Sorry i don't know this. I'm engine programmer. I just wanted to say &quot;Hey why are you all saying SQL and making jokes of excel, when it is common tool?&quot;. Question is good and i am interested in some sofisticated answer, better than mine is." CreationDate="2011-01-08T14:10:39.450" UserId="3794" />
  <row Id="9044" PostId="7159" Text="@Jonathan: I have spent some time playing with your code, and it  appears to be Very close to the desired effect :) you are a legend, there is however a peculiarity. When the camera is facing straight ahead (by default) the strafe works OK, but as soon as I turn the camera 45 degree the strafe moves me forward and backward. If I turn another 45 degree to make it a full 90 degree rotation the strafe starts to work fine again. I have spent quite some time tweaking but I only end up throwing the camera far from my sandbox." CreationDate="2011-01-08T14:23:26.013" UserId="3536" />
  <row Id="9045" PostId="7159" Text="@Jonathan: Actually when I am at 90 degree for example, the left starts to move me right, and the right starts to move me left, if I make it to a 180 then it works fine. It is as if I need to invert the rotation matrix, i have tried to multiply by -1 but not having much luck" CreationDate="2011-01-08T14:32:10.533" UserId="3536" />
  <row Id="9046" PostId="7159" Text="This is the first time I am fully playing with 3d development, all the work I have done so far is on picking to allow me to drop objects into the scene, move them around etc. so I should possibly strip the camera functionality out and drop it into a separate script so you can see where I am at, but am gonna have a break now ;-)" CreationDate="2011-01-08T14:36:23.527" UserId="3536" />
  <row Id="9047" PostId="7159" Text="@Chris: Sounds like the camera and movement are rotating in opposite directions: i.e. when the camera's turned 10 degrees left, the movement turns 10 degrees right, and they end up 20 degrees apart. At 180 degrees they would meet up correctly. At 45 degrees, they would be 90 degrees apart, so movement would be perpendicular to what it should be (the camera would be facing sideways to the movement - so sideways movement would become forward and backward!). There may be a few ways to keep them in sync." CreationDate="2011-01-08T14:38:38.143" UserId="2698" />
  <row Id="9048" PostId="7159" Text="@Chris: Does it work if you turn `var up = [0, 1, 0];` into `var up = [0, -1, 0];` ?&#xA;" CreationDate="2011-01-08T14:40:00.203" UserId="2698" />
  <row Id="9049" PostId="7182" Text="how do you set up material? Add it to your post please." CreationDate="2011-01-08T14:40:19.423" UserId="3794" />
  <row Id="9050" PostId="7184" Score="1" Text="Start here: http://gamedev.stackexchange.com/questions/41/what-are-some-good-resources-for-getting-a-beginner-started-in-developing-games" CreationDate="2011-01-08T14:45:02.383" UserId="3794" />
  <row Id="9051" PostId="7184" Score="1" Text="And i especially recommend reading this: http://gamedev.stackexchange.com/questions/90/why-is-it-so-hard-to-develop-a-mmo" CreationDate="2011-01-08T14:48:00.887" UserId="3794" />
  <row Id="9052" PostId="920" Text="Xbox 360 achievements link is dead." CreationDate="2011-01-08T14:48:05.327" UserId="4154" />
  <row Id="9053" PostId="7183" Score="1" Text="+1, great summary of the issues. One thing I'll add is that players tend to be pretty forgiving of minor grammatical errors for generated text like this as long as the rest of the information (damage amount, source, target, procs) is accurate - shoot for 95% correct grammar, because the last 5% is ridiculously hard." CreationDate="2011-01-08T14:52:05.473" UserId="744" />
  <row Id="9054" PostId="7159" Text="@Jonathan: Brilliant, using this fixes the problem.. var cameraRotationMatrix4 = g_math.matrix4.lookAt(g_eye, g_target, [0, g_up[1]*-1, 0]);" CreationDate="2011-01-08T15:02:21.317" UserId="3536" />
  <row Id="9055" PostId="7159" Text="@Jonathan: I previously only handled the difference in the mouse X position when dragging the screen, to allow the user to spin around horizontally, when I include handling for the Y value to allow tilting the camera up and down, the strafe causes the camera's Y position to go up and down whilst strafing which is a bit awkward and not as you would expect for a first person camera, I have tried changing the other values in the camera up value but it doesn't seem to make a difference, maybe I am using the wrong combinations, any advice on that? this is the last thing now! :D" CreationDate="2011-01-08T15:05:39.503" UserId="3536" />
  <row Id="9056" PostId="7159" Text="@Chris: Hooray for the turning fix! I've marked this post as community wiki so you can edit it if you find anything else broken." CreationDate="2011-01-08T15:07:48.473" UserId="2698" />
  <row Id="9057" PostId="7159" Text="@Chris: I'd probably need to see some source code to work on that with you. If you've got MSN, can you contact me through the email in my profile? Failing that, send me an email." CreationDate="2011-01-08T15:09:39.300" UserId="2698" />
  <row Id="9058" PostId="7157" Text="Cross product between the up axis and the camera's forward vector will give you one of your strafe directions." CreationDate="2011-01-08T15:17:11.550" UserId="4189" />
  <row Id="9059" PostId="7180" Text="My original SQl answer was due to me missing out the 'game designer' part of the question and I deleted it because it would be misleading." CreationDate="2011-01-08T15:44:47.677" UserId="1156" />
  <row Id="9060" PostId="7185" Text="Yeah I know what you mean Huang F.lei just I only 14 so hard for me to put lots of money into it" CreationDate="2011-01-08T15:58:51.960" UserId="4506" />
  <row Id="9062" PostId="7186" Text="One thing I have found in pure-Python octrees is that the additional overhead for function calls for tree traversal quickly dominates your runtime and makes them worse than simple searches in lists, for any amount of objects you could process in pure-Python anyway. That particular example also looks very unoptimized. " CreationDate="2011-01-08T16:22:42.440" UserId="744" />
  <row Id="9063" PostId="7177" Score="1" Text="I guess I misinterpreted the context here. I thought this would be used as in game data-source and not as a &quot;design-tool&quot;." CreationDate="2011-01-08T16:31:06.967" UserId="20" />
  <row Id="9064" PostId="7162" Text="Nice insight! I wonder how it is for KD trees, what I've seen from them is they are pretty though to implement (there are a lot of tricky detail to take into account). Maybe someone knows more about this?" CreationDate="2011-01-08T16:32:38.840" UserId="1219" />
  <row Id="9065" PostId="7187" Text="K but what should i use to make them I need something that is easy to use " CreationDate="2011-01-08T16:38:38.320" UserId="4506" />
  <row Id="9066" PostId="7182" Text="sorry i'm not able to log-in with that account and with few post i can't comment.&#xD;&#xA;i don't use material.." CreationDate="2011-01-08T17:01:35.060" UserId="4508" />
  <row Id="9067" PostId="7187" Text="Try Unity3d (http://unity3d.com/) or maybe GameMaker (http://www.yoyogames.com/gamemaker). If you're interested in 3D Modelling, Blender and the Blender Game Engine might be for you: http://www.blender.org/" CreationDate="2011-01-08T17:24:13.667" UserId="20" />
  <row Id="9068" PostId="7182" Text="@nkint I merged your two accounts you should be able to edit it now" CreationDate="2011-01-08T17:41:46.777" UserId="51" />
  <row Id="9069" PostId="7184" Text="Not a valid question.  See here: http://meta.gamedev.stackexchange.com/questions/171/how-to-make-an-entire-game-x-off-topic" CreationDate="2011-01-08T17:44:23.780" UserId="51" />
  <row Id="9070" PostId="7159" Text="I fixed the problem by ignoring the Y value&#xA;realMovementVector = g_math.mulVectorScalar([realMovementVector[0],0,realMovementVector[2]], -speed);" CreationDate="2011-01-08T18:22:05.917" UserId="3536" />
  <row Id="9071" PostId="7189" Text="what is domain? or p0? I'm sorry but it is quite impossible to have parametric cube." CreationDate="2011-01-08T18:55:19.130" UserId="3794" />
  <row Id="9072" PostId="7192" Text="@Loren: ASAP??? Can you provide a link?" CreationDate="2011-01-08T19:17:36.543" UserId="191" />
  <row Id="9073" PostId="7191" Text="Might want to consider making the platform very cheap. It might be able to tap a market or integrate into the market very well if the console is cheap and if the games are cheap as well. (not dirt cheap, but cheaper than PS3 games that are like $60, if I saw a decent looking game for $25-30 that was new, I'd buy it)" CreationDate="2011-01-08T21:31:46.687" UserId="3547" />
  <row Id="9074" PostId="7162" Text="Are kd-trees actually tougher to implement? I think they're tougher to reason about, especially without drawing pictures,  because they divide the geometry in a less intuitive way. But the basic building / querying algorithms aren't really any longer or less explored than the octree." CreationDate="2011-01-08T22:06:33.883" UserId="744" />
  <row Id="9075" PostId="7144" Text="Stack Exchange and Farmville are variable ratio reward compulsion loops, which are nearly the opposite of flow in terms of psychological experience." CreationDate="2011-01-08T22:12:21.490" UserId="744" />
  <row Id="9076" PostId="7189" Text="and for blendig you can use glsl mix funtion. example: mix(value1,value2,mixFactor) where mixFactor is number in range 0-1" CreationDate="2011-01-08T22:14:42.730" UserId="3794" />
  <row Id="9077" PostId="7190" Text="I don't mind downvotes at all...except when I don't know why. Is there something incorrect about the options I provided or my advice on organizing a spreadsheet? Or did someone just *not like* my options?" CreationDate="2011-01-08T22:22:11.900" UserId="191" />
  <row Id="9078" PostId="7198" Text="it's quit clear but i think i missed something. normal=positionOnCube makes no sense.. vertex? i wrote it, it compile saying: Warning: vertex shader writes varying 'Normal' which is not active" CreationDate="2011-01-09T00:07:42.310" UserId="4508" />
  <row Id="9079" PostId="7198" Text="well yes it is stupid to use normal. Are you rendering points or triangles? Instead of try to use: Normalize(randomVertexPosition - cubeOrigin) ... it has to be normalized." CreationDate="2011-01-09T00:11:11.680" UserId="3794" />
  <row Id="9080" PostId="7144" Text="Ok, thanks for clearification" CreationDate="2011-01-09T00:12:46.453" UserId="3794" />
  <row Id="9081" PostId="7199" Text="In fact I was thinking about how the 3D game market was going to be, since it requires experienced people, which needs to be more and more experience for cutting edge graphic systems, I was wondering if it would have a good impact for the industry to think more about simple 3D products rather than &quot;see my big shader ?&quot;. I was imagining tomorrow as if 3D programming experience would become scarce." CreationDate="2011-01-09T02:16:13.807" UserId="1829" />
  <row Id="9082" PostId="7198" Text="If you want full source code, just say ;)" CreationDate="2011-01-09T02:16:45.863" UserId="3794" />
  <row Id="9083" PostId="7194" Text="did this answer help?" CreationDate="2011-01-09T02:36:31.690" UserId="3794" />
  <row Id="9084" PostId="5108" Text="you should change name of this to  &quot;3D stereoscopic&quot; only &quot;3D&quot; is little confusing" CreationDate="2011-01-09T02:50:50.497" UserId="3794" />
  <row Id="9085" PostId="7192" Text="@dboarman: http://www.asap-utilities.com/" CreationDate="2011-01-09T03:25:18.677" UserId="3175" />
  <row Id="9086" PostId="7177" Text="Has anyone thought of using XML files for this purpose?" CreationDate="2011-01-09T05:22:08.063" UserId="3321" />
  <row Id="9087" PostId="7202" Text="Nifty!  There's a Python port of this library too: http://pypi.python.org/pypi/inflect/0.2.1" CreationDate="2011-01-09T06:59:05.077" UserId="2472" />
  <row Id="9089" PostId="7207" Text="What is your collation set to in the mysql table you are trying to insert into?" CreationDate="2011-01-09T08:50:04.210" UserId="4519" />
  <row Id="9090" PostId="7207" Text="utf8_unicode_ci for the entier database and fields. And I am using the InnoDB engine." CreationDate="2011-01-09T08:50:04.303" UserId="3817" />
  <row Id="9091" PostId="7208" Text="You are right,but this is not correct answer. If you read question carefuly or read another answers or comments you will know that question is about game design,not storing data." CreationDate="2011-01-09T09:39:44.350" UserId="3794" />
  <row Id="9092" PostId="7207" Score="1" Text="Could you post an example what gets inserted into the DB (when sent from flash) and what you were sending originally?" CreationDate="2011-01-09T09:41:14.297" UserId="20" />
  <row Id="9093" PostId="7208" Text="I know its about the design and red the questions and answers. What I understand is that, Huang F. Lei, is trying to chose between RDB and spreadsheet. My answer trying to show the difference between the two!" CreationDate="2011-01-09T10:13:17.107" UserId="3817" />
  <row Id="9094" PostId="7186" Text="Whilst that's a nice bit of code to digest if you were to make your own octree, out of the box that octree lacks all the features - ray and fustrum intersection for example - that I cited in the question.  In fact, it doesn't even have nearest neighbour search.  I wonder what they use that octtree for, if they can put data in but not query it other than by exact point?  And it stores points, rather than things with bounds.  I list all these shortcomings because this is indicative of all the python octrees I've found on the web; maybe others can find a fuller octree on google?  I can't :(" CreationDate="2011-01-09T10:13:25.107" UserId="4129" />
  <row Id="9095" PostId="7199" Text="-1 What's the relation between game prices and indie games? &#xA;XNA is not a valid option for almost any successful indie. Getting devkits require to already having been successful as indie OR to have a veteran team.&#xA;Mobiles put players in a different way of mind than consoles and are not suitable to every category of games.&#xA;I think it's not only about hardware, it's about having a common hardware plus common OPEN api, plus a centralized place to distribute software AND a really low barrier to be allowed to develop and distribute your game." CreationDate="2011-01-09T10:18:57.050" UserId="364" />
  <row Id="9096" PostId="7207" Score="1" Text="Also: Use a tool like Firebug (http://getfirebug.com/) to debug what flash sends to the server." CreationDate="2011-01-09T10:45:56.917" UserId="20" />
  <row Id="9097" PostId="2739" Text="'Best' is rather subjective. Do you mean easiest to use, fastest, or most elegant?" CreationDate="2011-01-09T11:13:29.650" UserId="1156" />
  <row Id="9098" PostId="7194" Text="houch. thanks to your answer i understand that is not specular light that does not work but diffuse!" CreationDate="2011-01-09T11:33:59.377" UserId="4508" />
  <row Id="9099" PostId="7182" Text="@Tetrad thanks for account merging" CreationDate="2011-01-09T11:36:56.707" UserId="4508" />
  <row Id="9100" PostId="7194" Text="i added some screenshot to explain better!" CreationDate="2011-01-09T11:39:07.390" UserId="4508" />
  <row Id="9101" PostId="7194" Score="1" Text="Do you specify normal?" CreationDate="2011-01-09T12:04:41.920" UserId="3794" />
  <row Id="9102" PostId="7207" Text="well, this is an example of what flash is sending (http://localhost/Asmsam/SaveCity.php?XXX=?&lt;?xmlversion=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&lt;worlds&gt;&lt;wname&gt;ارض الحياة&lt;/wname&gt;&lt;wdisc&gt;منطقة غنية بالمواقع الطعام&lt;/wdisc&gt;&lt;/worlds&gt;) When I use this excatly the same in the browser, the data is inserted correctly - with correct encoding- but when the FLASH send it, the PHP code just stoped and can't insert anything to the database!" CreationDate="2011-01-09T12:11:57.563" UserId="3817" />
  <row Id="9103" PostId="7207" Text="I am new to web programming, So, I don't now much about how to use FireBuge thing. So, if you please tell me how to use it with FLASH (I am using the SendAndLoad() method in flash, it seems data is not sent to the browser because I did not see any thing on the firebug windows!)" CreationDate="2011-01-09T12:26:19.613" UserId="3817" />
  <row Id="9104" PostId="7194" Text="Do you have enabled depth buffer and correctly set up gl_cullface? I will post some code to help you, after i return from work (yeah workoholics works at sunday too :))" CreationDate="2011-01-09T13:13:39.577" UserId="3794" />
  <row Id="9105" PostId="7208" Text="Cite: Huang F. Lei:&quot; Yes, excel is a common tool. The point of the question is:&quot;a single huge table for all items&quot;, items include equipments, consumes, etc. Is it necessary to divide the huge one into small ones? Even separated config file for each item? I'm afraid the huge table may hurt their eyes :o)&quot;" CreationDate="2011-01-09T13:29:19.397" UserId="3794" />
  <row Id="9106" PostId="7210" Text="I would've said that it is appropriate - Blender *is* a gamedev tool, so learning it would be on topic too." CreationDate="2011-01-09T13:38:10.610" UserId="1156" />
  <row Id="9107" PostId="7210" Text="Yeah but the OP wasn't explicitly asking about the *Blender Game Engine* or how to create assets for games. He could also have asked &quot;Any good screencasts for learning Photoshop/Maya/3DSMax/Flash&quot; and these would probably be off-topic?" CreationDate="2011-01-09T13:58:18.370" UserId="20" />
  <row Id="9108" PostId="7199" Text="@Klaim: &quot;XNA is not a valid option for almost any successful indie.&quot; - XNA is not XBLIG; XNA is a fine platform for development. XBLIG may not be making a lot of money, but XNA is still an open _API_, for a console, with a low barrier to entry, and with XBLIG, someone else handling non-discriminatory distribution. (And no one in this answer mentioned game prices except you.)" CreationDate="2011-01-09T14:12:05.243" UserId="744" />
  <row Id="9109" PostId="7199" Text="Two good points (misread the $ values). I'll retire the -1, this answer seems valid. However I still don't think XNA is a valid platform for indie dev. Good for developpement for most games, but not for something like the best-sellers XBLA games.&#xA;edit&gt; I cant retire my downvote without an change in the answer." CreationDate="2011-01-09T14:24:07.350" UserId="364" />
  <row Id="9110" PostId="7177" Text="I tried, but seems like they don't want to have a look at xml one second :( " CreationDate="2011-01-09T15:07:40.067" UserId="3630" />
  <row Id="9111" PostId="7208" Score="1" Text="Thanks for your answer:o) The question is about how game designer provides data for making game, not about how programmer store/access player's data in game." CreationDate="2011-01-09T15:16:40.603" UserId="3630" />
  <row Id="9112" PostId="7210" Score="1" Text="By gamedev tool I meant the modelling side. I'm pretty sure it counts as on topic. I'll go ask meta." CreationDate="2011-01-09T15:32:20.883" UserId="1156" />
  <row Id="9113" PostId="6824" Text="Technically the edge of the Minecraft world is unreachable - as you get about a third (IIRC) of the way there, the game starts seizing up and saves every second and is unplayable. ;-)" CreationDate="2011-01-09T15:36:49.680" UserId="1156" />
  <row Id="9114" PostId="7194" Text="ehm.. yeah.. the normals : )" CreationDate="2011-01-09T17:05:20.150" UserId="4508" />
  <row Id="9115" PostId="7194" Text="Heh ... so problem solved? :)" CreationDate="2011-01-09T17:25:28.317" UserId="3794" />
  <row Id="9116" PostId="7207" Text="In Firebug there's the &quot;Net&quot; tab. You should see all the requests there. Maybe you're just sending the stuff to a wrong address or you didn't encode/decode things properly." CreationDate="2011-01-09T17:44:28.763" UserId="20" />
  <row Id="9117" PostId="7171" Text="Wouldn't this fall under the 'how do I make game X?' category and therefore be off-topic?" CreationDate="2011-01-09T18:33:13.047" UserId="1156" />
  <row Id="9118" PostId="7217" Text="For reference, the game type was called &quot;Team Melee&quot;, which was partially made obsolete by the &quot;Shared Control&quot; option in standard melee games. Unfortunately they took out the option of shared resources. " CreationDate="2011-01-07T21:26:44.433" UserId="3000" />
  <row Id="9122" PostId="7028" Text="Why cant I use the &lt;code&gt; tag in comments grrrr" CreationDate="2011-01-09T20:21:44.197" UserId="3536" />
  <row Id="9123" PostId="7028" Text="I have tried to apply this method using the following code but my camera just ends up pointing to space, any idea where I am going wrong?" CreationDate="2011-01-09T20:22:50.513" UserId="3536" />
  <row Id="9124" PostId="7028" Text="var rotationQuat = g_aball.drag([e.x, e.y]);&lt;br&gt;&#xA;var rot_mat = g_quaternions.quaternionToRotation(rotationQuat);&#xA;g_thisRot = g_math.matrix4.mul(g_lastRot, rot_mat);&#xA;var cameraRotationMatrix4 = g_math.matrix4.lookAt(g_eye, g_target, [g_up[0], g_up[1] * -1, g_up[2]]);&#xA;var cameraRotation = g_math.matrix4.setUpper3x3(cameraRotationMatrix4,g_thisRot);&#xA;g_target = g_math.addVector(cameraRotation, g_target);" CreationDate="2011-01-09T20:23:28.343" UserId="3536" />
  <row Id="9125" PostId="7214" Score="1" Text="While that certainly is an interesting video, -1 since it *hasn't shipped*." CreationDate="2011-01-09T21:05:12.330" UserId="51" />
  <row Id="9126" PostId="7211" Text="[Michael Jackson wrote this.](http://www.gamasutra.com/view/feature/3015/pool_hall_lessons_fast_accurate_.php)" CreationDate="2011-01-09T23:15:09.573" UserId="3637" />
  <row Id="9127" PostId="7215" Text="I didn't watch *that* many tutorials on blender cookie, but so far I never encountered this subscription you speak of. AFAIK the only content that's with costs are high-res versions of the videos and the .blend source files from the tutorials." CreationDate="2011-01-09T23:49:59.417" UserId="20" />
  <row Id="9129" PostId="7133" Text="I would be interested to know if a framework exists for .NET. (or something that could be ported/used without a huge hassle)" CreationDate="2011-01-10T01:18:18.663" UserId="3547" />
  <row Id="9131" PostId="7215" Text="You're right, You can watch the screencasts for free but the source files are extra: http://cgcookiecitizen.com/&#xA;I think when trying to learn how to use blender they can be useful.&#xA;&#xA;Another place to look would be cgtuts: http://cg.tutsplus.com/&#xA;This is similar to blendercookie and has premium subscription too " CreationDate="2011-01-10T02:06:54.880" UserId="4524" />
  <row Id="9133" PostId="7228" Score="1" Text="It looks like you get either wrong character widths or kerning values. Did you try disabling the kerning altogether to check if you get correct character widths this way?" CreationDate="2011-01-10T09:18:02.957" UserId="20" />
  <row Id="9134" PostId="2526" Text="You could use a combo checkpoint/savegame pattern, where your progress is regularly checkpointed but you have the option of exiting and saving the game at any time, as a single action. It's not a quicksave, but you are free to break up the play session as you please." CreationDate="2011-01-10T09:37:03.187" UserId="259" />
  <row Id="9135" PostId="7044" Text="Tearing is bad and distracting, yes (but even then is less problematic in some genres, eg racing), but I think 30fps vs 60 is more of a taste issue. Some people prefer the higher fidelity and immersion that can bring that is only possible at 30fps." CreationDate="2011-01-10T09:39:27.693" UserId="259" />
  <row Id="9136" PostId="7190" Text="I gave you -1 because you compared a spreadsheet to a disk data format, and then made statements like &quot;game data cannot be easily tampered with&quot;. A program/interface and a disk data format are not really comparable, and making your game data binary does very little to dissuade modders. Also, your proposed spreadsheet schema is horrible, since it keeps all the data in one file. Certainly skills and NPCs should be in separate _files_; perhaps all NPCs should be in separate _pages_ in the same _file_, although if you use a locking RCS that's going to be horrible too." CreationDate="2011-01-10T10:52:53.890" UserId="744" />
  <row Id="9137" PostId="7044" Text="I'm absolutely shocked that this is being downvoted!  Is this really how 'modern game developers' think? I'm not arguing for 60fps at the expense of detail, just saying that 60fps is clearly and *very significantly* better than 30fps!" CreationDate="2011-01-10T11:03:05.903" UserId="659" />
  <row Id="9138" PostId="7213" Text="Yes, I get it: one wouldn't always want to have random levels with generation from a seed or else. The thing is, the thing we want level generation to do is just to ease the work of a level designer so he wouldn't have to make everything with maya or max. Level generation isn't always designed to just generate levels, it can also make the software generate chunks of geometry on the fly, instead of leading a big file containing all the geometry, like a heightmap, but for specific sets of levels, like a jungle, an office, or a city: We just ask the artist to do the textures and some " CreationDate="2011-01-10T11:46:33.747" UserId="1829" />
  <row Id="9139" PostId="7213" Text="and some common pieces of geometry we want to repeat. I'm not talking about procedural-only levels, but for big big world, this is a must for saving memory." CreationDate="2011-01-10T11:48:32.923" UserId="1829" />
  <row Id="9140" PostId="5563" Text="if the indie market has its own AAA games, we could say Torchlight is AAA. Unfortunately..." CreationDate="2011-01-10T11:51:48.883" UserId="1829" />
  <row Id="9141" PostId="7194" Text="here for light yess, thanks!" CreationDate="2011-01-10T12:12:21.887" UserId="4508" />
  <row Id="9142" PostId="7235" Text="I know that this is not the main purpouse of branches ... " CreationDate="2011-01-10T12:14:39.407" UserId="3794" />
  <row Id="9143" PostId="7213" Text="What kind of game environment do you want? I mean if you have a city then only buildings would be repeated in different orientations.. Landscapes are as you say a lot easier to generate on the fly.. &#xA;This really depends on the game you want to make, so would it be something like Morrowind/Oblivion or GTA or something else?" CreationDate="2011-01-10T12:53:56.890" UserId="4524" />
  <row Id="9144" PostId="7235" Text="we use mercurial, but I do not like the idea of using branches for that. " CreationDate="2011-01-10T12:56:42.980" UserId="3232" />
  <row Id="9146" PostId="7236" Score="2" Text="you will propably have to explain what the ccp function does. And it would be nice if you format your code in some better way" CreationDate="2011-01-10T13:45:53.887" UserId="3794" />
  <row Id="9147" PostId="7190" Text="I disagree. Take Open Office Calc with the MySql connector. Sure you can create a different file for each. But I wouldn't expect to keep my data in this format once I have a RC." CreationDate="2011-01-10T14:43:16.030" UserId="191" />
  <row Id="9148" PostId="7235" Text="@notabene I feel that is a perfectly acceptable use of branches. " CreationDate="2011-01-10T15:35:45.107" UserId="1198" />
  <row Id="9149" PostId="7238" Text="oops, sorry, the other ones weren't open source. Good editing." CreationDate="2011-01-10T15:42:02.977" UserId="3599" />
  <row Id="9150" PostId="5735" Text="@Everyone: In a vain attempt to at least keep a base level of useful curation in this list, please list only open source projects." CreationDate="2011-01-10T15:44:16.547" UserId="744" />
  <row Id="9151" PostId="5735" Text="(And I am also voting to close again because of the vagary of the question and because the number of multiple and duplicate answers here is ridiculous.)" CreationDate="2011-01-10T15:45:58.573" UserId="744" />
  <row Id="9152" PostId="7190" Text="@dboarman: If designers are using Excel, they _will_ pass data between each other in formats like .xls or .csv. If you don't want to lose that data into an Outlook black hole or when their computer crashes, you need to teach them to keep it in the RCS." CreationDate="2011-01-10T15:49:27.243" UserId="744" />
  <row Id="9153" PostId="7228" Text="Yes I did, I am not getting the correct character widths. how can i properly obtain those?" CreationDate="2011-01-10T16:06:55.430" UserId="4535" />
  <row Id="9154" PostId="7193" Text="ok but i want to calculate how many area its intersected." CreationDate="2011-01-10T16:16:31.990" UserId="4432" />
  <row Id="9155" PostId="7242" Text="How exactly does it &quot;not work?&quot;" CreationDate="2011-01-10T17:25:37.827" UserId="1430" />
  <row Id="9156" PostId="7237" Text="very nice solution, simples and effective. Thanks!" CreationDate="2011-01-10T17:57:05.370" UserId="3232" />
  <row Id="9157" PostId="7252" Score="1" Text="For the points you mentioned - you are right about using that thread. I thought of a support thread for AI calculations but since the user will move their unit, it will throw off calculations. But yes, it is a good idea. I definitely will add a heuristic so the AI will more likely choose one ability over the other - it also allows for 'themed'-AI that do only certain abilities." CreationDate="2011-01-10T18:00:40.833" UserId="3659" />
  <row Id="9158" PostId="7247" Text="There's very little point googling for a game development tutorial on, say, ASP.NET if you don't know the language." CreationDate="2011-01-10T18:57:15.703" UserId="1156" />
  <row Id="9159" PostId="7071" Text="+1 Touches upon draw calls. (something I didn't see in the accepted answer)" CreationDate="2011-01-10T19:03:23.310" UserId="3547" />
  <row Id="9160" PostId="7235" Text="Branching for release is a fine use of branches, but it doesn't really solve the problem - you still need some way to identify the things to remove from / not include in the release branch." CreationDate="2011-01-10T19:13:36.070" UserId="744" />
  <row Id="9161" PostId="7253" Text="With this kind of system it's very easy to beat your head on the wall for an hour trying to fix something and not realize your changes aren't working because someone else checked something into an overlay. Likewise, it's easy to check something into the &quot;underlay&quot; that works fine with its data set, but breaks one of the overlays. It also leaves open the question of what overrides what - if production overrides development, then development is kind of worthless - if development overrides production then you end up with heisenbugs." CreationDate="2011-01-10T19:18:57.327" UserId="744" />
  <row Id="9162" PostId="7244" Score="2" Text="Be aware that the browser may never download it. Many people I know have their browsers configured to only use a fixed set of fonts, and at fixed sizes." CreationDate="2011-01-10T19:23:18.787" UserId="744" />
  <row Id="9163" PostId="7199" Text="@Klaim: XBLA is a distribution platform. XNA is a development platform. Games on XBLA can be written in XNA, such as Schizoid or ilomilo, or with other tools; probably 90% of them could've been written as easily or easier with XNA. Games on XBLIG can only be written with XNA. You are comparing XBLIG and XBLA, not XNA and XBLA." CreationDate="2011-01-10T19:30:37.187" UserId="744" />
  <row Id="9164" PostId="7253" Text="Agreed -- but it's also easy enough to provide debugging aids to understand where content is coming from in the game itself and train developers to use them. What is, admittedly, not so easy, is preventing the system from being overused: it becomes very problematic if you end up with a large number of packages so you want to make sure that everybody isn't making six or seven packages for all their little features, et cetera." CreationDate="2011-01-10T19:39:55.947" UserId="1430" />
  <row Id="9165" PostId="7253" Text="Well, that's if you remember to use the debugging aids. I think it's just far too big a hammer to use for such a simple problem. We used a system like this in conjunction with the system I described in my answer, but for a different purpose - separating data sets for different games - and it was just always getting in the way of something. I don't know a better way to solve the (maybe intractable) &quot;multiple games, same codebase&quot; problem, but I do think we had a much better way to solve the simpler problem the question is about." CreationDate="2011-01-10T20:06:49.777" UserId="744" />
  <row Id="9166" PostId="7199" Text="No, I'm talking about limitations of both XNA and XBLIG that simply makes it unatractive or even not an option when &quot;seriously&quot; targeting XBLA. As you say, I'm comparing XBLA and XBLIG because XBLIG supposing you're using XNA makes it technically limited (even if you can do a lot of things with it - i agree). Now, we're talking about indies here, arent'we? Not only the &quot;indie community&quot; that Microsoft limited to XNA. Indie titles (such as Castle Crashers to name the most successful to this day) on XBLA are simply just made with C++ for good technical and timing reasons." CreationDate="2011-01-10T20:30:36.363" UserId="364" />
  <row Id="9167" PostId="7260" Text="OpenGL ES 2.0 (WebGL)" CreationDate="2011-01-10T23:05:51.250" UserId="3536" />
  <row Id="9168" PostId="3427" Text="I want to be able to make answers favorite now." CreationDate="2011-01-10T23:20:12.973" UserId="1581" />
  <row Id="9169" PostId="7261" Text="Worked first time, thanks for you help! :)" CreationDate="2011-01-10T23:25:32.020" UserId="3536" />
  <row Id="9170" PostId="7267" Text="I really think it is time for me to get some sleep" CreationDate="2011-01-11T00:41:56.430" UserId="3536" />
  <row Id="9171" PostId="7267" Text="Actually .. after testing this further; changing vec4(colour,1) to vec4(colour,0.5) only works on my textures with an alpha channel. Any texture which does not have transparency no longer applies this effect. Very strange, any idea what's going wrong there?" CreationDate="2011-01-11T01:02:35.437" UserId="3536" />
  <row Id="9172" PostId="7267" Text="Switching around the multiplication does not help either, even if a colour is applied." CreationDate="2011-01-11T01:08:23.157" UserId="3536" />
  <row Id="9173" PostId="7267" Score="1" Text="It may well be that you haven't got your blend modes set up correctly and that when a texture has an alpha channel it's automatically activating one of the source blend modes (or another bit of your codes does). I'm not fully up to speed on all things OpenGL as I'm more a D3D person. " CreationDate="2011-01-11T01:18:42.623" UserId="4410" />
  <row Id="9174" PostId="7267" Text="Thanks Roger! your advice made me realise that the non transparent texture was being passed through an alternate draw list, which it turns out; does not have the correct blend mode enabled. This 3d world I have dived into is so hectic! :-D" CreationDate="2011-01-11T01:38:06.140" UserId="3536" />
  <row Id="9175" PostId="7257" Score="2" Text="You should really watch this video: [Extra Credits: Choice and Conflict](http://www.escapistmagazine.com/videos/view/extra-credits/2590-Choice-and-Conflict)" CreationDate="2011-01-11T03:04:29.473" UserId="2698" />
  <row Id="9176" PostId="7270" Text="That's how RuneScape does it. Although I found the idea of a warrior attacking a archer [and warrior can't kill ranger] at point blank kind of weird. And a magician should kill 'em both." CreationDate="2011-01-11T03:09:21.500" UserId="3637" />
  <row Id="9177" PostId="7269" Score="1" Text="+1 Great question!" CreationDate="2011-01-11T04:37:54.760" UserId="4116" />
  <row Id="9178" PostId="7273" Text="This question seems malformed. You want to place things randomly, without using a source of random data? That is a contradiction. What are you actually trying to achieve?" CreationDate="2011-01-11T05:12:22.920" UserId="288" />
  <row Id="9179" PostId="7273" Text="I would like to know if there are any techniques other than relying on XNA's Random class to generate a number between a min and max.  I will try to make a more clear question" CreationDate="2011-01-11T05:21:09.947" UserId="4338" />
  <row Id="9180" PostId="7274" Text="From looking at this it would appear i could use ProDG with any IDE of my choice on the ps3. Would i be able to use GDB?(on ps3). For wii developers they strictly use GDB? i should look more into GDB, it sounds interesting. It sounds like GDB can be used with any language (but i am unsure how it would find source file and line. Maybe any gnu compile embeds that information). I think this answers my question" CreationDate="2011-01-11T05:40:56.913" UserId="1047" />
  <row Id="9181" PostId="7229" Text="I found this approach very pleasing for https://github.com/williame/GlestNG" CreationDate="2011-01-11T06:24:37.590" UserId="4129" />
  <row Id="9182" PostId="7274" Text="GDB is just a command line debugger; it alone isn't all you'd need to develop a game -- and while it is powerful, it can be quite tedious to use. You can use GDB for many platform by virtue of the fact that it's been ported to many -- you'd need to use the rest of the ported GNU toolchain to make it effective." CreationDate="2011-01-11T06:29:44.010" UserId="1430" />
  <row Id="9183" PostId="7274" Text="And if this does answer your question, please mark it as such :)" CreationDate="2011-01-11T06:30:08.520" UserId="1430" />
  <row Id="9184" PostId="523" Text="Already any news on this?" CreationDate="2011-01-11T07:42:51.200" UserId="4116" />
  <row Id="9185" PostId="5715" Text="Thank you, I will check it soon." CreationDate="2011-01-11T07:53:49.787" UserId="3418" />
  <row Id="9186" PostId="7228" Text="Sorry, my comment was probably ambiguous. What I meant is: If you disable the kerning (eg. the whole *if(c != 0)* block). Do you still get these overlapping characters?" CreationDate="2011-01-11T08:12:58.503" UserId="20" />
  <row Id="9187" PostId="7228" Text="This is very difficult to answer without knowing what ObtainCharInformation and SetVertex do, and what's in gm." CreationDate="2011-01-11T11:09:50.710" UserId="744" />
  <row Id="9188" PostId="7228" Text="Also, please don't ask the same question on Stack Overflow and here (http://stackoverflow.com/questions/4601217/bitmap-font-rendering-uv-generation-and-vertex-placement)." CreationDate="2011-01-11T11:10:16.577" UserId="744" />
  <row Id="9189" PostId="7280" Text="He explicitly says &quot;I am trying to do this without using external libraries such as angel bitmap tool or freetype.&quot;, but yes, I would also recommend using the angelcode bitmap font tool. =)" CreationDate="2011-01-11T11:18:45.437" UserId="4264" />
  <row Id="9190" PostId="7244" Text="@Joe - good point, question updated" CreationDate="2011-01-11T11:20:07.797" UserId="1743" />
  <row Id="9191" PostId="7248" Text="that is not a bad idea for font-checking in a js-based environment.." CreationDate="2011-01-11T11:40:16.133" UserId="1743" />
  <row Id="9192" PostId="7263" Text="Doing each by hand would be a tiresome process...that's why you hire unpaid interns if you wanted each to be hand-generated ;)" CreationDate="2011-01-11T11:58:07.890" UserId="1743" />
  <row Id="9193" PostId="4523" Score="1" Text="i still have the entire noob-to-pro wiki printed and bindered" CreationDate="2011-01-11T12:02:07.493" UserId="1743" />
  <row Id="9194" PostId="7191" Score="1" Text="Hasn't the Dreamcast been the 'open console' of choice for the past decade?" CreationDate="2011-01-11T12:03:32.080" UserId="1743" />
  <row Id="9195" PostId="7278" Text="if you got a Y-axis recoil that depends on teh power of the weapon and the time since last cool down, you could do the same for the x-axis with a smaller value. " CreationDate="2011-01-11T12:54:21.897" UserId="338" />
  <row Id="9196" PostId="7269" Score="1" Text="The answer seems obvious to me: who pays prefers to pay a fixed amount (he wants to be in *control*), while who gets paid prefers to be paid hourly (he knows he *can't* be in control, doesn't like to guess how many hours will something take, and doesn't want to risk working more than he is paid)." CreationDate="2011-01-11T13:12:34.337" UserId="2188" />
  <row Id="9197" PostId="7070" Score="1" Text="Good points, but the most important aspect s to minimise pipeline stalls by keeping the draw call count down. GPUs prefer a small amount of large jobs, rather than a large ammont of small jobs. Putting all your sprites in to a small ammount of large sheets means you can set the textue stage up once and draw lots of spites at once in a  batch. Spritebatch does this for you. If you have more than one spritesheet, make sure to tell spritebatch to sort by texture" CreationDate="2011-01-11T14:33:46.557" UserId="120" />
  <row Id="9198" PostId="7271" Score="1" Text="Hmm, so what I can understand from the first paragraph: if you make a really well thought out decision tree, you can make a decent ai in a few layers and increase 'smartness' at the cost of time by going down another layer (of difficulty). I think I will try this out. Also, I like your idea of issuing commands based on the value of a position." CreationDate="2011-01-11T15:15:44.480" UserId="3659" />
  <row Id="9199" PostId="7287" Text="Do you have a more specific question?  Like, &quot;can RenderEngine do this&quot;?" CreationDate="2011-01-11T15:51:28.543" UserId="51" />
  <row Id="9200" PostId="7287" Text="@Tetrad: No, I'm just asking for anyones' general experiences with it. There are [countless questions like this](http://www.google.com/#hl=en&amp;source=hp&amp;biw=1920&amp;bih=941&amp;q=site%3Astackoverflow.com+intitle%3A%22has+anyone+used%22+OR+intitle%3A%22what+is+your+experience%22&amp;aq=f&amp;aqi=&amp;aql=&amp;oq=&amp;gs_rfai=&amp;fp=a7bd6217041f008c), I don't think it's bad if it's not incredibly specific." CreationDate="2011-01-11T15:56:57.193" UserId="4569" />
  <row Id="9201" PostId="7287" Text="Is there a reason for all of the downvotes here? I don't think this is an illegitimate question." CreationDate="2011-01-11T16:11:55.687" UserId="4569" />
  <row Id="9202" PostId="7288" Score="1" Text="Thanks for the resources. I've seen them linked in the site before. I'll have to read it in more depth now to see how I can apply it to my game. I remember reading the influence map idea somewhere around here, and that basic idea is what I was using for my 'current' idea." CreationDate="2011-01-11T16:22:07.023" UserId="3659" />
  <row Id="9203" PostId="7287" Text="It has the only problem of being very localized - HTML5 isn't exactly production stable (or at least, hasn't been for a long time) so there's few people who have developed on it." CreationDate="2011-01-11T16:36:39.093" UserId="1156" />
  <row Id="9204" PostId="4483" Text="How fast is searching through your databse? I've got similiar databse with logs and we've got around 100,000,000 rows afters three months. We use MySQL as storage and its performance is bad. Simple query that lists all actions of a player (only 20,000) rows takes often more than 60 seconds." CreationDate="2011-01-11T16:38:49.353" UserId="1550" />
  <row Id="9205" PostId="7287" Text="@The Communist Duck: Very localized? HTML5 isn't some obscure technology. Sure, it's not mainstream yet, but it certainly isn't worthy of a downvote." CreationDate="2011-01-11T16:44:16.810" UserId="4569" />
  <row Id="9207" PostId="7287" Score="1" Text="Hm, I think localized isn't what I meant. &gt;.&lt; It's certainly not in widespread use, yes, meaning few people are going to use it out of web developers, and thus very few are going to have used RenderEngine. To answer the question, the glaring reason is that HTML5 is not in widespread use." CreationDate="2011-01-11T16:50:42.360" UserId="1156" />
  <row Id="9209" PostId="7291" Text="Making things more realistic/sensible (to a certain point that is) usually adds to the game experience (not always), but it certainty eliminates those moments of &quot;This is ridiculous!&quot;" CreationDate="2011-01-11T18:07:12.077" UserId="3547" />
  <row Id="9210" PostId="7273" Text="The Random class your talking about is part of the .NET framework, not XNA. Just fyi." CreationDate="2011-01-11T18:11:39.310" UserId="3547" />
  <row Id="9211" PostId="7273" Text="@Omnion - I'm aware.  I was a bit tired when creating the question ;)" CreationDate="2011-01-11T19:17:56.190" UserId="4338" />
  <row Id="9212" PostId="7278" Text="Yeah, I didn't spell it out, but the X axis recoil is much smaller in comparison to the Y axis. But after some thought, I think I agree that the randomization might be detrimental." CreationDate="2011-01-11T19:23:03.517" UserId="1198" />
  <row Id="9213" PostId="4483" Text="Simple queries on index columns are instant. Complex queries may take a little, 60 seconds queries do happen, but they are very rare. We indexed the table very heavily and compensated the penalty on insert by doing them asynchronously." CreationDate="2011-01-11T19:23:29.663" UserId="450" />
  <row Id="9214" PostId="7292" Text="What game did this and did create an RPS mechanic? (DSouls did not - the story bosses were all equally approachable by one of a few different builds, and there are two dominant endgame PvP builds, which are killer vs. griefer, not RPS.)" CreationDate="2011-01-11T19:39:57.660" UserId="744" />
  <row Id="9215" PostId="25" Text="Freesound is absolutely great. Thanks a bunch for posting it, I already just found some of the most important effects for my game in about five minutes. I might need to chop them up, but that's totally fine!" CreationDate="2011-01-11T20:27:07.820" UserId="2100" />
  <row Id="9216" PostId="7293" Score="1" Text="This would probably be better suited for gamedev.stackexchange.com" CreationDate="2011-01-11T19:46:25.613" UserId="962" />
  <row Id="9217" PostId="7293" Text="How is `enemy_unit.targeted` determined?" CreationDate="2011-01-11T19:52:21.117" UserId="3470" />
  <row Id="9218" PostId="7277" Text="Great answer, especially with showing the differentiation in results from each approach." CreationDate="2011-01-11T22:59:34.777" UserId="3358" />
  <row Id="9219" PostId="6250" Text="Fantastic answer, great screenshots!" CreationDate="2011-01-11T23:09:04.593" UserId="4212" />
  <row Id="9220" PostId="7286" Score="1" Text="Good general purpose answer. Just a little note for those making more simplistic rebound game like breakout or pong or the like, if you have a axis aligned bounding box and are not doing real physics (you want the velocity to remain the same) then you can just swap the components of the velocity vector. ie: If you reach the left or right edge of the box, negate the X value of the velocity vector. If you reach the top or bottom, negate the Y value of the velocity." CreationDate="2011-01-11T23:24:18.900" UserId="4443" />
  <row Id="9221" PostId="6243" Text="I'm not sure if that name is supposed to sound like &quot;aspire,&quot; but it looks more like &quot;ass fire.&quot; I'm just sayin'." CreationDate="2011-01-11T23:37:38.380" UserId="2306" />
  <row Id="9222" PostId="7296" Text="Question is why do you want this? Maybe learn only theory and then try using some albebra library? But best is in my opinion use ogl or dx and actuly see what that matrices doo. Or absolutly best ... create your own CPU openGl like library that really really pushes you to learn all those things. I did that and never regret time i had spend with it" CreationDate="2011-01-11T23:37:57.833" UserId="3794" />
  <row Id="9223" PostId="6178" Text="It was sad to see that engine get snapped up - it looked pretty promising. " CreationDate="2011-01-11T23:39:39.187" UserId="3830" />
  <row Id="9224" PostId="7295" Text="Hi nkint. How do you move your spheres? Do you move only with their centers or with every vertex? And how do you compute normals? If you have opengl auto normals computation on it is going to be super slow. " CreationDate="2011-01-11T23:40:29.123" UserId="3794" />
  <row Id="9225" PostId="7296" Text="@notabene telling someone to go rewrite OpenGL (while a valid exercise that would make you an expert in a whole lotta stuff) isn't necessarily a good idea: game devs, especially new ones, appreciate immediate gratification and closed-loop feedback." CreationDate="2011-01-11T23:42:40.090" UserId="2306" />
  <row Id="9226" PostId="7296" Score="1" Text="@David Lively I almost agree with you. But you can write really simple rastarizator using world,view,projection matrices and you don't have to use Bresenham's line algorithm as a begining :). You can just use some canvas which enables to use polygons and then it would be great and quite simple exercise. I did not say to write any support for shading. " CreationDate="2011-01-11T23:53:17.283" UserId="3794" />
  <row Id="9228" PostId="7292" Score="1" Text="For the story bosses, the point is that the bosses were approachable by different builds but in different ways.  I see the question as asking about interesting variations, not necessarily rock MUST beat scissors, etc.  For PVP, there are trade-offs mostly among vitality, strength, and dexterity especially at lower Soul Levels.  What I am suggesting is giving an artificial cap so that there are these same trade-offs among stats like health, strength and speed for example." CreationDate="2011-01-12T00:33:28.233" UserId="1320" />
  <row Id="9229" PostId="7296" Text="I made those mine comments into an answer" CreationDate="2011-01-12T00:40:59.830" UserId="3794" />
  <row Id="9230" PostId="5735" Score="1" Text="@JW: Would you mind sharing a place where I could post this question? (I'm not being ironic)" CreationDate="2011-01-12T00:50:08.443" UserId="3446" />
  <row Id="9231" PostId="7248" Text="As for &quot;Is there a way I can use a default font until it is loaded in?&quot; - &quot;If the font-face is not available, it takes up the font-face of the parent element&quot;" CreationDate="2011-01-12T02:08:04.693" UserId="3536" />
  <row Id="9232" PostId="523" Text="sadly, plans change and I am still not ready :(  I haven't had 10 minutes to even touch my code base. Don't worry I will finish this and let you know how it goes :p" CreationDate="2011-01-12T05:23:11.387" UserId="159" />
  <row Id="9233" PostId="7310" Text="Computing the vector will only work if the rectangle has sides of equal length. Otherwise you'll have to factor in the ratio of the rectangle somehow." CreationDate="2011-01-12T09:09:04.497" UserId="20" />
  <row Id="9234" PostId="7179" Score="1" Text="+1 for all game logic being server side" CreationDate="2011-01-12T09:31:50.857" UserId="1743" />
  <row Id="9235" PostId="7303" Text="ohu, gDebugger is really good tools!" CreationDate="2011-01-12T11:07:23.873" UserId="4508" />
  <row Id="9236" PostId="7295" Text="mhm.. i'm using gluSphere!" CreationDate="2011-01-12T11:10:11.917" UserId="4508" />
  <row Id="9237" PostId="7295" Text="ok i resolved, too many triangles! i was calling gluSphere(quadric, radius, 90, 90). how simple.." CreationDate="2011-01-12T11:11:02.823" UserId="4508" />
  <row Id="9238" PostId="7295" Text="bytheway, usefull comment also for slow auto normals and also.. for move only the center!" CreationDate="2011-01-12T11:11:59.780" UserId="4508" />
  <row Id="9239" PostId="7302" Text="ok i resolved it: too many trinagles! " CreationDate="2011-01-12T11:12:57.033" UserId="4508" />
  <row Id="9240" PostId="7316" Text="This is very interesting question." CreationDate="2011-01-12T12:33:43.057" UserId="3794" />
  <row Id="9241" PostId="7318" Text="-1 for lack of sourcing; OpenGL documentation is plentiful and easily linked." CreationDate="2011-01-12T13:24:19.987" UserId="744" />
  <row Id="9242" PostId="7248" Text="so simply defining a default style for the body element would probably suffice?" CreationDate="2011-01-12T14:02:25.353" UserId="1743" />
  <row Id="9243" PostId="7321" Text="very localised particle effects on a beautiful but rarely-redrawn background, fwiw" CreationDate="2011-01-12T14:17:55.723" UserId="4129" />
  <row Id="9244" PostId="7321" Score="2" Text="And are you actually having any speed concerns you think damage tracking might fix?" CreationDate="2011-01-12T14:31:11.387" UserId="744" />
  <row Id="9245" PostId="7307" Text="Yeah, floating the character around wasn't a problem. Just making sure people saw that it was a requirement. You did give me the key answer: Tiles having vectors! I can't believe I didn't think of that. Thank you." CreationDate="2011-01-12T14:31:26.957" UserId="4584" />
  <row Id="9246" PostId="7306" Text="Thanks, I think this might be the answer. I'll give it a shot and see how well it works." CreationDate="2011-01-12T15:47:10.653" UserId="4581" />
  <row Id="9247" PostId="7262" Text="I'd not seen the Root Motion Computer from Mixamo, nor have I heard it called that, so thanks for the link and explanation! So basically it's as I thought, either animate it explicitly or auto-generate it, and either at build-time or at runtime. I guess I'll have to code this up myself in the exporter script.&#xA;&#xA;One thing I'm now mega confused about is motion that changes over the course of one cycle - how on earth would you drive that from gameplay? &quot;Move at 5m/s&quot; now means something else... And direction changes will be a nightmare for AI! Perhaps it's best to use agerage motion?" CreationDate="2011-01-12T15:52:52.813" UserId="4552" />
  <row Id="9248" PostId="7262" Text="Ran out of characters; I'll wait a bit before marking this as accepted to get some more opinions. Thanks for your answer!" CreationDate="2011-01-12T15:55:22.827" UserId="4552" />
  <row Id="9249" PostId="7304" Text="I might be completely wrong here since I looked both these algorithms up the other day, but aren't they essentially one and the same thing?" CreationDate="2011-01-12T16:25:54.663" UserId="2332" />
  <row Id="9250" PostId="7304" Text="@Ray Dey, both can be used to accomplish path refining in a mesh after the path-find has been executed." CreationDate="2011-01-12T16:29:07.970" UserId="1516" />
  <row Id="9251" PostId="7310" Text="Errr yup, that's totally correct, I was definitely thinking of squares and not rectangles. &gt;_&lt;" CreationDate="2011-01-12T16:40:53.023" UserId="1430" />
  <row Id="9252" PostId="7306" Text="The downside to this approach is that it requires far more checks and doesn't scale particularly well in general." CreationDate="2011-01-12T16:42:19.933" UserId="1430" />
  <row Id="9253" PostId="7323" Text="Your question is very vague. What kind of multiplayer game? What problems do you have? Please be more specific." CreationDate="2011-01-12T16:42:32.580" UserId="20" />
  <row Id="9254" PostId="7262" Text="For root motion you don't control the speed of the player directly.  You only have control, really, of the playback of the animation rate and then you let the animation be in direct control of the forward z value.  The 5m/s example I gave was for the traditional way of solving foot sliding, which is to try to just match up playback rate with how fast you're moving and assuming a constant speed." CreationDate="2011-01-12T16:46:00.860" UserId="51" />
  <row Id="9255" PostId="7304" Text="Sorry, what I meant to say was WHEN I looked both these algorithms up, they seemed to point to the same resources (on Google anyway)" CreationDate="2011-01-12T17:12:53.003" UserId="2332" />
  <row Id="9256" PostId="7326" Text="This is solved in comments under mine answer. But of course you are right ;)" CreationDate="2011-01-12T17:51:10.560" UserId="3794" />
  <row Id="9257" PostId="7324" Text="Define distorted? Are you trying to draw two separate quads on the screen and seeing triangles from the first to the second quad due to the tri-stripping?" CreationDate="2011-01-12T17:51:30.780" UserId="4410" />
  <row Id="9258" PostId="7323" Text="Additionally, what experience do you have?  Have you made a single-player game in Flash or Flex?  Do you have programming experience?  It'll also be easier to understand your question if you use punctuation and proofread your spelling." CreationDate="2011-01-12T17:54:58.963" UserId="953" />
  <row Id="9259" PostId="7324" Text="Thanks for the response.  Yes I'm trying to draw two separate quads.  I've read a bit more and it sounds like I should use GL_TRIANGLES instead of GL_TRIANGLE_STRIPS.  When I use GL_TRIANGLES the distortion I see looks kinda like the first star is being folded over on itself while the second star is kinda stretched &quot;out of the screen&quot; (my game is 2D btw)." CreationDate="2011-01-12T17:58:22.467" UserId="1021" />
  <row Id="9260" PostId="7329" Text="Awesome thanks for the response!  Using GL_TRIANGLES and duplicating the vertices worked.  I also referenced this SO question: http://stackoverflow.com/questions/4319073/correct-format-for-loading-vertex-arrays-from-file" CreationDate="2011-01-12T18:11:47.560" UserId="1021" />
  <row Id="9261" PostId="7332" Text="@notabene - cross() and dot() are 3d matrix functions? or are they math for triangles? could I ask for those too :)? You see I'm porting it to a much dumber language..." CreationDate="2011-01-12T18:43:52.200" UserId="2862" />
  <row Id="9263" PostId="7328" Text="I asked for how I can by myself design, not for free ones." CreationDate="2011-01-12T18:50:49.330" UserId="4403" />
  <row Id="9264" PostId="7334" Text="http://stackoverflow.com/questions/2215088/opengl-gpu-memory-cleanup-required." CreationDate="2011-01-12T18:51:33.310" UserId="744" />
  <row Id="9265" PostId="7332" Score="1" Text="@Jenko Yes float t is a Z value. And cross and dot are the algebraic functions. What language are you using. I'm sure that there is some kind of simple algebra library." CreationDate="2011-01-12T18:51:41.577" UserId="3794" />
  <row Id="9266" PostId="7328" Text="Ah, apologies. In that case, they'll certainly fall under inspiration. Let me go find that really good spriting tutorial I've used I don't know how many times. ;-)" CreationDate="2011-01-12T18:52:47.483" UserId="1156" />
  <row Id="9270" PostId="7332" Text="@notabene - Thank you! I'll try it out and let you know if it works ... :)" CreationDate="2011-01-12T19:06:48.960" UserId="2862" />
  <row Id="9273" PostId="7332" Score="1" Text="@Jenko - Yes you are always counting dot/cross product for 2 vectors. And good luck." CreationDate="2011-01-12T19:13:57.503" UserId="3794" />
  <row Id="9274" PostId="7332" Text="@notabene - what does `aRay.org` and `aRay.dir` do? the origin and the direction of the vector? how can I calculate these?" CreationDate="2011-01-12T19:14:46.070" UserId="2862" />
  <row Id="9275" PostId="7332" Text="@Jenko - Correct: aRay.org is origin of the ray and aRay.dir is direction of the ray." CreationDate="2011-01-12T19:15:10.703" UserId="3794" />
  <row Id="9276" PostId="7332" Text="@notabene - Nice. But what about `divisor`? what value is that? what can I keep it? I just need a simple ray to triangle intersection." CreationDate="2011-01-12T19:19:33.337" UserId="2862" />
  <row Id="9277" PostId="7332" Text="@Jenko - Those IFs will tell you if triangle is actually hit. So you need it all. Divisor is scalar pointing float number (like 3.549). Result of dot product is one number. Result of cross product is new vector." CreationDate="2011-01-12T19:23:43.197" UserId="3794" />
  <row Id="9278" PostId="7332" Text="@notabene - No, I like your code! very small and fast ... only problem is how to calculate the `divisor`?" CreationDate="2011-01-12T19:26:46.577" UserId="2862" />
  <row Id="9279" PostId="7332" Text="@Jenko - It seems that i should comment my code much more. I assumed that you know those stuff if you are making rays. BTW are you sure that rays are ok?" CreationDate="2011-01-12T19:27:14.300" UserId="3794" />
  <row Id="9280" PostId="7332" Text="It is the only way to calculate the intersection ... I want to calc the Z of a ray-rectangle intersection .. sorry for not understanding :) ... " CreationDate="2011-01-12T19:36:32.440" UserId="2862" />
  <row Id="9281" PostId="7331" Score="1" Text="Well, it seems to be right." CreationDate="2011-01-12T19:39:23.350" UserId="3794" />
  <row Id="9282" PostId="7332" Text="@Jenko - Your code in edit seems to be quite ok. Do you know how to compute normal?" CreationDate="2011-01-12T19:42:05.203" UserId="3794" />
  <row Id="9283" PostId="7332" Text="Yes ... thank you, shall I use that?" CreationDate="2011-01-12T19:42:58.787" UserId="2862" />
  <row Id="9284" PostId="7332" Text="Yes. Don't forgot to normalize normal ;)" CreationDate="2011-01-12T19:44:50.660" UserId="3794" />
  <row Id="9285" PostId="7332" Text="Thank you very very much for all the help :) I will surely write back if it works ... thank you!" CreationDate="2011-01-12T19:51:01.683" UserId="2862" />
  <row Id="9286" PostId="7332" Text="You are welcome. But i am not sure if you did not solved it by yourself :-)" CreationDate="2011-01-12T19:52:20.137" UserId="3794" />
  <row Id="9289" PostId="7330" Text="Thanks Gregory - your answer worked beautifully! " CreationDate="2011-01-12T20:51:23.057" UserId="1058" />
  <row Id="9290" PostId="7338" Score="3" Text="which platform? PC, NextGen console, smartphones ?" CreationDate="2011-01-12T21:57:45.143" UserId="721" />
  <row Id="9291" PostId="7341" Text="Some of links leads to my projects. I don't want to promote them this silly. Actually there is no reason, I just like them, so I suggested them. :)" CreationDate="2011-01-12T21:59:45.203" UserId="3794" />
  <row Id="9292" PostId="7337" Text="I voted up. So somebody voted down for this. Why? I think that this very good question/wiki" CreationDate="2011-01-12T22:46:11.153" UserId="3794" />
  <row Id="9293" PostId="7337" Score="2" Text="I'm not the voter, but my guess would be that it's subjective, and not a particularly good subjective question either: http://blog.stackoverflow.com/2010/09/good-subjective-bad-subjective/" CreationDate="2011-01-12T23:17:33.767" UserId="51" />
  <row Id="9294" PostId="7337" Text="Well, just read the question and ignore the subjective (what is interesting) part of it. He is clearly looking for a list like the answer I see below, a list of game technologies that are being pushed further and further now that near photo-realistic rendering has been around." CreationDate="2011-01-13T01:06:09.447" UserId="4443" />
  <row Id="9295" PostId="7238" Text="Nice one, thanks" CreationDate="2011-01-13T01:08:50.147" UserId="3446" />
  <row Id="9297" PostId="7226" Text="Wow, those are really nice ones..." CreationDate="2011-01-13T01:09:18.760" UserId="3446" />
  <row Id="9298" PostId="7346" Score="1" Text="I think another way of doing it is to just have an identifier for each object saying what collision channel it is in and have another field/property that has a list of identifiers for which this object will collide with. You could use an integer/long with some bit operators to just make this an integer for the identifier and another integer for the &quot;list&quot;." CreationDate="2011-01-13T01:12:12.903" UserId="3547" />
  <row Id="9299" PostId="7346" Text="Also, I think it depends on how you want collisions to be resolved. Do you want to do some logic and then resolve the collision? Do you always want collisions resolved first?" CreationDate="2011-01-13T01:13:17.880" UserId="3547" />
  <row Id="9300" PostId="7337" Text="He's asking for topics, not a discussion. I think it's a decent question." CreationDate="2011-01-13T01:15:05.490" UserId="3547" />
  <row Id="9302" PostId="7343" Text="+1 for the mentioning of a Scheduling system.. usually a good place to center thread/system communication :)" CreationDate="2011-01-13T01:23:53.063" UserId="4443" />
  <row Id="9303" PostId="7257" Text="Eh, the only point I really think is concrete enough in that video to be applicable is the consideration of the mario mushroom, i.e. that there can be simple ways to add to the conflict." CreationDate="2011-01-13T01:28:07.450" UserId="284" />
  <row Id="9304" PostId="7259" Text="Personally, I've kinda settled on the idea of leaving intelligence &quot;stats&quot; as aspects of the character that have to be intelligently/tactically acheived by the player...  In other words, if you want your character to seem smart, make them act smart using your own intelligence.  If you want them to seem stupid, have them act stupid.  If you're not that smart yourself, that's a limitation your character is going to share...&#xA;&#xA;Perhaps that's mainly because it's hard to imagine how really really intelligently stated characters should make such stupid decisions." CreationDate="2011-01-13T01:49:59.203" UserId="284" />
  <row Id="9305" PostId="7291" Score="1" Text="I like the simplicity of the health/sanity concept, and the purpose that that brings to the game, which is, presumably running away/surviving as best you can." CreationDate="2011-01-13T01:51:26.083" UserId="284" />
  <row Id="9308" PostId="7341" Score="2" Text="+1 for the contact a company. There is all sorts of stuff out there that have R&amp;D time frames too long for game development schedules to consider spending resources on. Given that you are in Poland I'd think about contacting Crytek. They have a very active R&amp;D department and are fairly local." CreationDate="2011-01-13T02:50:08.497" UserId="154" />
  <row Id="9309" PostId="7081" Text="doesn't look like it comes from google. it's just hosted there." CreationDate="2011-01-13T03:25:15.093" UserId="3597" />
  <row Id="9310" PostId="7228" Text="Why can't I ask on both forums? ObtainCharInformation gets abc widths, SetVertex sets the verticies and GM is the kerning information from GetKerningPairs" CreationDate="2011-01-13T03:47:51.033" UserId="4535" />
  <row Id="9311" PostId="7348" Text="@J.C., welcome to the community. The two images, although look similar, actually differ in the contents of their pixels. By this I mean that if the day picture actually uses all the colors in the palette, then there are pixel values that are not representable in the night image." CreationDate="2011-01-12T17:05:47.247" />
  <row Id="9312" PostId="7348" Score="2" Text="This seems like it might be a game programmming question, not a photography question. " CreationDate="2011-01-12T20:14:16.827" />
  <row Id="9313" PostId="7352" Text="Can anyone confirm this?  I learned graphics programming with OpenGL 1.5 and thought I was advanced because I was experimenting with some of the 2.0 features.  You might say I'm a bit out of the loop.  Dropping support for translation matricies seems to be a huge disadvantage." CreationDate="2011-01-13T06:15:53.133" UserId="370" />
  <row Id="9314" PostId="7352" Score="1" Text="Just double checked. Yes, the matrix stacks are deprecated in 3.0 - 3.2, and removed in 3.3 and 4.x. The idea is that since the whole pipeline has gone programmable you'll just pass your final matrix in to your shader and go from there. There's nothing to stop you from sticking with OpenGL 2.0, though. All the matrix stack functionality you're used to will still be there." CreationDate="2011-01-13T06:19:40.197" UserId="263" />
  <row Id="9315" PostId="7352" Text="Note that that does not mean &quot;support for translation matrices&quot; was dropped, @deft_code. A translation matrix is just a particular set of floating point values after all, you can trivially build one yourself. It's more in the area of &quot;linear algebra&quot; than access to the graphics pipeline, really -- note that D3D doesn't have analogous functions either (they're in a separate utility library, D3DX)." CreationDate="2011-01-13T07:25:46.870" UserId="1430" />
  <row Id="9316" PostId="7321" Text="commenting out the code to draw the backdrop each frame doubles frame-rate.  So of course its natural to think about reusing those pixels rather than regenerating them when the camera doesn't move." CreationDate="2011-01-13T07:29:02.777" UserId="4129" />
  <row Id="9317" PostId="3067" Text="This looks like great resource.  Now if only I could get my in game font rendering to not suck so bad." CreationDate="2011-01-13T08:22:01.853" UserId="370" />
  <row Id="9318" PostId="7357" Score="5" Text="Your question is really hard to understand. Actually I didn't understand it at all." CreationDate="2011-01-13T08:23:09.647" UserId="20" />
  <row Id="9319" PostId="7357" Score="3" Text="Please to be wordsing so sentence is super happy fun time!" CreationDate="2011-01-13T08:58:51.453" UserId="3015" />
  <row Id="9320" PostId="7347" Score="1" Text="The Xbox360 has 2 hardwarethreads per core, so the optimal number of threads is 6." CreationDate="2011-01-13T09:38:31.977" UserId="500" />
  <row Id="9321" PostId="7364" Text="Have a look at Flex, I guess http://en.wikipedia.org/wiki/Adobe_Flex" CreationDate="2011-01-13T11:23:56.473" UserId="2188" />
  <row Id="9322" PostId="7366" Text="No i want move objects automatically on circle.It may look like object must move round And round or back to back like clock  " CreationDate="2011-01-13T11:38:35.997" UserId="4380" />
  <row Id="9323" PostId="7366" Text="Maybe i dont understand, but i'm pretty sure that my code does what you need. (while(true) was just a joke). You can specify angle,circle radius and circle center and move objects. If you want to move multiple objects just use another angles for them ... " CreationDate="2011-01-13T12:03:41.930" UserId="3794" />
  <row Id="9324" PostId="7321" Score="1" Text="When you say &quot;backdrop&quot; do you mean a couple of quads or a 3D scene? When you say &quot;doubles the framerate&quot; do you mean 500 to 1000 or 30 to 60? If it's a 3D scene and static, did you store it in a VBO? Unless it's tens of millions of polys I can't see it making a difference." CreationDate="2011-01-13T12:03:57.687" UserId="744" />
  <row Id="9325" PostId="7321" Text="Partial updates solve a very specific problem - when you can't get the back buffer copied/exchanged fast enough - which is basically not an issue on modern systems. It's more likely that you're drawing the background in a silly way - like millions of glVertex calls, or uploading new pixel data each frame." CreationDate="2011-01-13T12:08:53.657" UserId="744" />
  <row Id="9326" PostId="7369" Text="+1 for good advice, but I still have trouble believing this is a problem in this case." CreationDate="2011-01-13T12:15:24.810" UserId="744" />
  <row Id="9327" PostId="7369" Score="1" Text="As I said, it's a technique that's used for very expensive athmospheric scattering effects, which would otherwise slow you down considerably. At least with an &quot;open&quot; scene, like a terrain or something else where a lot of sky is visible, these techniques can burn a whole lot of fill-rate." CreationDate="2011-01-13T12:20:48.330" UserId="3884" />
  <row Id="9328" PostId="7337" Text="If this is a list CW question, it should be one item per answer. It's also a crappy subjective question, as Tetrad said." CreationDate="2011-01-13T12:30:05.647" UserId="744" />
  <row Id="9329" PostId="7366" Text="i can not get you can you explain me in detail please .The boject must move automatically " CreationDate="2011-01-13T12:46:07.870" UserId="4380" />
  <row Id="9330" PostId="7321" Text="15 to 30 on a laptop with intel integrated graphics.  not everyone has a lot of umph." CreationDate="2011-01-13T12:46:38.590" UserId="4129" />
  <row Id="9331" PostId="7366" Text="I'll edit the code. Just tell me how do you draw object?" CreationDate="2011-01-13T12:51:38.927" UserId="3794" />
  <row Id="9332" PostId="7366" Text="If last edit doesnt help i give it up as a poor teacher..." CreationDate="2011-01-13T13:27:42.513" UserId="3794" />
  <row Id="9333" PostId="7352" Score="1" Text="Slight addition: GLES 1.x is the fixed functionality analogue of OpenGL 1.5 (ish) and includes the texture, modelview and projection stacks. GLES 2.x is the fully programmable embedded OpenGL and does not include the matrix operations at all, or any of the rest of the fixed functionality pipeline. So in GLSL there's also no gl_Vertex/Normal/Color/etc. How you pass information into a shader program is entirely up to you." CreationDate="2011-01-13T13:41:17.707" UserId="4623" />
  <row Id="9334" PostId="7361" Score="2" Text="I'd add that it's always a cost/benefit question. Do as little work as necessary. If you can get away with just frustum culling, great! If you need bleeding edge stuff, and need it now, talk with the umbra people.." CreationDate="2011-01-13T14:02:12.403" UserId="4264" />
  <row Id="9335" PostId="7321" Text="You still didn't answer my question about what GL calls you're actually doing. And certainly, integrated cards aren't going to get great speed boosts out of advanced techniques like FBOs, if they support them at all." CreationDate="2011-01-13T14:02:24.040" UserId="744" />
  <row Id="9336" PostId="7321" Text="Incidentally, I did some performance benchmarks for a similarly confused question at http://gamedev.stackexchange.com/questions/6276/fastest-bit-blit-in-c/6282#6282, which successfully animated 10,000 sprites across the entire sceen buffer at 60fps on an Intel card, and fell over after that because of the CPU, not GPU. Partial updates will _not_ solve whatever you're doing wrong as well as a simpler solution will." CreationDate="2011-01-13T14:05:22.900" UserId="744" />
  <row Id="9337" PostId="7311" Text="As a note, the compression algorithm used by PNG is actually zlib. png might include some filtering that causes zlib to compress better than just zipping up the raw bitmap though." CreationDate="2011-01-13T14:06:09.030" UserId="4264" />
  <row Id="9338" PostId="7361" Text="@Jari Komppa - That sounds a lot more like how the last sentence sounded in my mind as I wrote it. Definately only worth doing things when there's a specific measurable benefit. Different systems can also vary quite a lot on the specific implementation of them too (especially depending on the platform you target). " CreationDate="2011-01-13T14:06:36.023" UserId="4410" />
  <row Id="9339" PostId="7372" Score="1" Text="As ltjax said, this technique works, but it burns through fill rate and memory. Both are far more limited than triangle counts and usually also more limited than bandwidth for sending vertices - which can be mitigated for a complicated static scene by using VBOs anyway." CreationDate="2011-01-13T14:07:38.407" UserId="744" />
  <row Id="9340" PostId="7321" Text="You, Joe, are confusing the scale of the problem?  The logical extrapolation of your argument to just throw all visible polygons at the screen each frame is that billboarding is never needed.  Billboarding is the kind of thing I wanted pros-and-cons about, perhaps I made my question too general because I didn't want a narrow answer, I wanted a wide range of answers to extend my horizons." CreationDate="2011-01-13T14:41:03.467" UserId="4129" />
  <row Id="9341" PostId="7341" Text="Great answer, notebene! This is exactly what I wanted to hear - the list of possible subjects.&#xA;  &#xA;&#xA;&#xA;First I will send emails with proposition of doing free project to some game/graphics companies and in case of negative replies I will choose between:  &#xA;1. &quot;Simple raytracer with global ilumination - propably without accelaration structs.&quot;  &#xA;2. &quot;Volumetric rendering - marching cubes&quot;  &#xA;3. &quot;Fluids rendering - volumetric raycasting&quot;  &#xA;because these topics seem to be interesting to me.  &#xA;&#xA;wkerslake, thanks for suggesting me Crytek! This will be one of my target companies for sure." CreationDate="2011-01-13T14:45:35.627" UserId="4603" />
  <row Id="9342" PostId="7321" Score="1" Text="By asking about partial updates, rather than &quot;How can I render a lot of static geometry from a static view quickly?&quot;, you actually made the question too specific, not too general." CreationDate="2011-01-13T15:05:51.013" UserId="744" />
  <row Id="9345" PostId="7318" Text="+1 because, well, he actually answered and the answer was correct. Sources definitely help, but are by no means required!" CreationDate="2011-01-13T15:48:47.703" UserId="2188" />
  <row Id="9346" PostId="7373" Text="Wow, negative votes. I'm serious about what I wrote about though - especially if you're writing for mobile hardware, be sure to include that clear there." CreationDate="2011-01-13T15:51:44.767" UserId="4264" />
  <row Id="9347" PostId="7365" Text="Can you provide a sample sequence of images of what you're trying to accomplish?" CreationDate="2011-01-13T16:08:16.367" UserId="3081" />
  <row Id="9348" PostId="7318" Text="@Lo'oris: Except, well, he's not correct. He's correct for some platforms, but not all, as my answer explains." CreationDate="2011-01-13T16:14:23.727" UserId="744" />
  <row Id="9349" PostId="7373" Text="I downvoted because your answer is almost identical to David's, still has no references, and like David's, is not correct nor the whole story." CreationDate="2011-01-13T16:15:05.333" UserId="744" />
  <row Id="9350" PostId="7318" Text="@Joe: The only answer that is correct regardless of the &quot;environment&quot; is this one, as *your* answer explains. Coding knowing this will break &quot;somewhere&quot; would be wrong in the first place." CreationDate="2011-01-13T16:15:48.423" UserId="2188" />
  <row Id="9351" PostId="7341" Text="@revers I'm happy you like it. Feel free to contact me via e-mail (my profile) for more info/papers/source codes about raytracers and especially about volume raycasting. I'm working on raycasting now for movie renderer - so i can share materials and also some nice volume data - clouds, fires, nebulas etc. " CreationDate="2011-01-13T16:16:19.590" UserId="3794" />
  <row Id="9352" PostId="7318" Score="1" Text="@Lo'oris: All code, especially rendering code, is likely to break _somewhere_. A good answer doesn't just say that, but explains where that somewhere is." CreationDate="2011-01-13T16:19:49.530" UserId="744" />
  <row Id="9353" PostId="7318" Text="@Joe: &quot;it will break somewhere&quot; is not an excuse for doing something that will certainly break in many known places." CreationDate="2011-01-13T16:22:13.567" UserId="2188" />
  <row Id="9354" PostId="7081" Text="I googled 'isometric javascript engine' and that came up, IIRC. I did not mean it is written, supported, or anything to do with google." CreationDate="2011-01-13T16:46:42.353" UserId="1156" />
  <row Id="9355" PostId="7347" Text="Ah, +1 :) I was always restricted to the networking areas of the 360 and ps3, hehe :)" CreationDate="2011-01-13T16:48:25.400" UserId="4443" />
  <row Id="9356" PostId="7353" Text="The system you mention is very akin to a scheduling system mentioned in the answer given by the Other James, still good detail in that area so +1 as it does add to the discussion." CreationDate="2011-01-13T16:50:57.503" UserId="4443" />
  <row Id="9357" PostId="7373" Text="Ok. The only reference I can give, however, is my own experience. I shall be more careful." CreationDate="2011-01-13T16:53:09.327" UserId="4264" />
  <row Id="9358" PostId="7359" Text="Not worthy of an answer cause I wont go into detail but: Oct-Trees are generally outdoor environments, BSP and Cells &amp; Portals are interior environments.. You are looking for Scene Graph culling techniques.. please do not get confused a zoned loading solution for streaming data :)" CreationDate="2011-01-13T17:12:28.373" UserId="4443" />
  <row Id="9359" PostId="7318" Text="@Lo'oris: I've written and worked on plenty of code that is broken everywhere other than the platform it was written on. The important part is knowing that it's specific and how it will break and how to fix it, not just rote &quot;ABC is undefined by standard XYZ&quot;. As a concrete example, how many game programmers assume a particular behavior for signed right shift or overflow? It's not blessed by the standard, and breaks on many architectures, but it sure is useful to do when you can." CreationDate="2011-01-13T18:06:49.883" UserId="744" />
  <row Id="9360" PostId="7320" Score="1" Text="How many polygons per object? How many draw calls? How many VBOs? How are the VBOs updated? Are you using any shaders? How many state changes? How many textures per object? Are you doing frustum culling? How much memory do you have? How big is the screen?" CreationDate="2011-01-13T18:13:29.460" UserId="744" />
  <row Id="9361" PostId="7351" Text="Depends which GL version you are targeting. They are deprecated in 3.x and onwards." CreationDate="2011-01-13T18:38:01.913" UserId="1156" />
  <row Id="9362" PostId="7339" Text="Or have the collision box be a circle perhaps?" CreationDate="2011-01-13T20:03:38.027" UserId="2239" />
  <row Id="9363" PostId="7365" Text="it move on circle or else it gets the hose again." CreationDate="2011-01-13T21:05:27.130" UserId="4602" />
  <row Id="9364" PostId="7379" Text="Propably too hard for Bsc thesis. Especially behaviors ala naturalmotion.(now i get why mods says that this is argumentative:))" CreationDate="2011-01-13T21:20:58.443" UserId="3794" />
  <row Id="9365" PostId="7360" Text="Collision channels are probably a better way to go, they save memory, are simpler, and are more scalable." CreationDate="2011-01-13T22:27:07.907" UserId="3547" />
  <row Id="9366" PostId="7346" Text="@Omnion: how does that differ from my answer? I honestly can't see the difference." CreationDate="2011-01-13T23:02:52.450" UserId="1581" />
  <row Id="9367" PostId="7360" Text="I'm curious. Care to elaborate?" CreationDate="2011-01-13T23:04:09.640" UserId="1581" />
  <row Id="9368" PostId="5735" Score="1" Text="@Gastón: gamedev.net, gamasutra user blogs, indiegamer formers, freegamedev.net, tigsource forums, etc. There's no shortage of places on the Internet to have open discussions of game development." CreationDate="2011-01-13T23:09:11.437" UserId="744" />
  <row Id="9370" PostId="7368" Text="+1. A quick question: Can I pack a xml file (e.g foo.xml) into a swf by SWFMill?" CreationDate="2011-01-14T02:09:17.000" UserId="3630" />
  <row Id="9371" PostId="7366" Text="when screen is coming objects stand in circle.It move slowly-Slowly on circle.  " CreationDate="2011-01-14T03:56:53.587" UserId="4380" />
  <row Id="9372" PostId="7382" Text="I wonder why this got voted down ?" CreationDate="2011-01-14T04:21:40.153" UserId="4638" />
  <row Id="9373" PostId="7365" Text="it move on circle .Any image." CreationDate="2011-01-14T04:40:46.933" UserId="4380" />
  <row Id="9374" PostId="7382" Text="Possibly because it looks like homework." CreationDate="2011-01-14T06:53:26.867" UserId="4264" />
  <row Id="9375" PostId="7332" Text="@notabene - It worked!!! Thanks so much.." CreationDate="2011-01-14T07:30:22.873" UserId="2862" />
  <row Id="9376" PostId="7332" Text="@Jenko - Glad to hear it. " CreationDate="2011-01-14T07:37:47.720" UserId="3794" />
  <row Id="9377" PostId="5754" Text="+1 thx great to be introduced to it!" CreationDate="2011-01-14T08:00:30.807" UserId="4129" />
  <row Id="9378" PostId="7382" Text="Related: http://meta.gamedev.stackexchange.com/questions/171/how-to-make-an-entire-game-x-off-topic" CreationDate="2011-01-14T08:41:31.117" UserId="51" />
  <row Id="9379" PostId="7348" Text="From a glance, it seems like the images are more or less monochromatic, with one using a color ramp tinted to red and the other tinted to blue. So, I'd store the image as greyscale and alter the palette accordingly at runtime." CreationDate="2011-01-14T10:39:19.833" UserId="4264" />
  <row Id="9380" PostId="6692" Text="SDL's swapbuffers won't do anything magical if you set your driver settings never to do vsync." CreationDate="2011-01-14T11:23:28.143" UserId="4264" />
  <row Id="9382" PostId="7373" Text="I downvoted because this answer was strictly worst then the other two (which I both upvoted): it added nothing and was much less clear." CreationDate="2011-01-14T12:49:20.660" UserId="2188" />
  <row Id="9384" PostId="161" Text="ES isn't a straight subset of OpenGL, so your claim that all ES apps work on non ES systems isn't true." CreationDate="2011-01-14T13:22:05.137" UserId="4264" />
  <row Id="9385" PostId="267" Text="I'd add a fine point, not only make games, but **finish your projects**. Surprisingly many people have a portfolio of lots of half-finished thingies. Finished projects are much more valuable, even if you have a feeling you want to move on to your next fun idea." CreationDate="2011-01-14T13:28:18.817" UserId="4264" />
  <row Id="9386" PostId="373" Score="2" Text="C can be understood by mere mortals. C++ seems to have lots of features and edge cases seasoned programmers learn about even after a decade of using it every day for living." CreationDate="2011-01-14T13:30:49.597" UserId="4264" />
  <row Id="9387" PostId="7382" Text="It doesn't look like homework to me, but still a terrible &quot;question&quot; anyway." CreationDate="2011-01-14T14:00:08.507" UserId="2188" />
  <row Id="9388" PostId="6888" Text="Hints are a **horrible** practice that should be abandoned ASAP. wkerslake and IQpierce gave enough good advices that make hinting completely useless." CreationDate="2011-01-14T14:06:32.073" UserId="2188" />
  <row Id="9389" PostId="373" Score="2" Text="C++ is a big language, but it's fearsome reputation is spread mostly by people who've just read horror stories and haven't taken the time to learn it. There is a lot to learn, but you get a lot of value in return for that. C++ lets you express lots of things that C simply can't." CreationDate="2011-01-14T16:13:08.347" UserId="160" />
  <row Id="9390" PostId="7392" Text="We already have lots of questions about this." CreationDate="2011-01-14T16:42:21.217" UserId="744" />
  <row Id="9391" PostId="7382" Text="Its not homework. I know how to make pong and have made more complex games than that. I was having a hard time trying to find something which uses the latest sdk/ndk to establish the same framework as a game, which is why I asked for some references!" CreationDate="2011-01-14T16:42:36.513" UserId="4638" />
  <row Id="9392" PostId="7392" Text="Point me to a question that has organized and compiled the given answers to a full list like this and I'll close this as a duplicate while completing that other question..." CreationDate="2011-01-14T16:53:49.950" UserId="4654" />
  <row Id="9393" PostId="7392" Text="http://gamedev.stackexchange.com/questions/8/where-can-i-find-free-sounds-for-my-game http://gamedev.stackexchange.com/questions/14/where-can-i-find-free-music-for-my-game http://gamedev.stackexchange.com/questions/20/where-can-i-find-free-sprites-and-images. All three are on the sidebar and were probably suggested while you were typing in this question." CreationDate="2011-01-14T17:00:02.830" UserId="744" />
  <row Id="9394" PostId="7392" Text="None of these questions have been revised by the author, none has consolidated the results, none of these are sorted by resources... My question is pasted from Stackoverflow so it can be deleted from there since it belongs here more. It was asked more than 2 years ago and edited numerous times to reflect the best answers given by different people. If you feel like this question is a waste of time then I'll close it down here and leave it on SO." CreationDate="2011-01-14T17:11:12.540" UserId="4654" />
  <row Id="9395" PostId="7392" Text="None of them are consolidated by resource since all the questions are resource-specific.  Also here we prefer to have one answer per question with voting on those answers.  If your content is different than what's in those questions you should add them as answers." CreationDate="2011-01-14T17:20:35.250" UserId="51" />
  <row Id="9397" PostId="7395" Text="Migrated from gaming.stackexchange.com.  How embarrassing!  : )" CreationDate="2011-01-14T17:53:41.043" UserId="4657" />
  <row Id="9398" PostId="7395" Text="@Norla an honest mistake :) also, I think you can ask a moderator here to merge your account with the phantom author of this question." CreationDate="2011-01-14T18:11:06.093" UserId="102" />
  <row Id="9399" PostId="7396" Score="2" Text="You should ask a lawyer. If you desperately want bad legal advice, you can try http://gamedev.stackexchange.com/questions/1653/how-closely-can-a-game-resemble-another-game-without-legal-problems." CreationDate="2011-01-14T18:12:15.560" UserId="744" />
  <row Id="9400" PostId="7398" Text="Thanks for that... Since Pocket Tanks hasn't been updated in three years, then I guess there shouldn't be much problems. The only thing I wanted to copy was the general idea for the game(tanks shooting at eachother, etc.)." CreationDate="2011-01-14T18:19:05.353" UserId="1189" />
  <row Id="9401" PostId="7129" Text="I did occasionally see some cancelled touches.  However I eliminated the problem by improving the performance of my game loop (OpenGL performance improvements)." CreationDate="2011-01-14T18:37:12.097" UserId="1021" />
  <row Id="9402" PostId="7398" Text="Then I say go for it, and best of luck." CreationDate="2011-01-14T20:10:27.797" UserId="4657" />
  <row Id="9403" PostId="7163" Text="Thanks for the links i actually like the shading that's going on in that sky sphere a lot!" CreationDate="2011-01-14T20:16:56.790" UserId="4193" />
  <row Id="9404" PostId="7163" Text="@Wade: Are you writing the code in XNA 4.0?" CreationDate="2011-01-14T20:40:17.430" UserId="2763" />
  <row Id="9405" PostId="7163" Text="Yeah i am however, i was able to convert the project up to 4.0 and VS2010 with only minor issues. It's working great i think you've pretty much answered my questions here! Thanks!" CreationDate="2011-01-14T20:47:50.467" UserId="4193" />
  <row Id="9406" PostId="7402" Text="One thing to look at may be the DPC (Deferred Procedure Calls - basically a network card or something deferring an interrupt and having the processing done later)  See http://superuser.com/questions/202254/steps-to-troubleshooting-a-problem-with-high-dpc , more specifically it links a tool at http://www.thesycon.de/deu/latency_check.shtml" CreationDate="2011-01-14T18:28:10.983" />
  <row Id="9407" PostId="7402" Text="Is this maybe something that should be on SO?" CreationDate="2011-01-14T20:42:41.587" />
  <row Id="9408" PostId="7402" Score="1" Text="Even better, since you're a game developer there's an even better place for this: Game Dev" CreationDate="2011-01-14T20:56:07.273" UserId="1450" />
  <row Id="9409" PostId="7401" Text="question - where are the methods?" CreationDate="2011-01-14T21:19:54.620" UserId="1581" />
  <row Id="9410" PostId="7405" Text="Please format the post better, being sure to put code into blocks (shift code in by four spaces)." CreationDate="2011-01-14T21:55:10.350" UserId="4604" />
  <row Id="9413" PostId="7407" Text="You are right! What stupid error!!! But CHECKGL didn't said nothing. It is very strange, because the code works fine, but no error is found..." CreationDate="2011-01-14T22:21:17.123" UserId="916" />
  <row Id="9414" PostId="7401" Text="Is there something wrong with an entity type and it can have a constructor?" CreationDate="2011-01-14T22:43:30.733" UserId="4662" />
  <row Id="9415" PostId="7411" Score="4" Text="What is CHECKGL #defined as?" CreationDate="2011-01-14T23:02:40.537" UserId="744" />
  <row Id="9416" PostId="7401" Text="@DeadMG Component systems are made up of multiple objects, each of the sub objects can have a constructor but the object itself doesnt... depending on implementation. A factory to make the object based on a template is the most common method of piecing together component objects." CreationDate="2011-01-14T23:09:49.877" UserId="4443" />
  <row Id="9417" PostId="7412" Text="You are right. Thank you very much" CreationDate="2011-01-14T23:21:57.313" UserId="916" />
  <row Id="9418" PostId="7406" Text="Hi James! Thanks a lot for your time again. In 1 I wasn't asking how to represent the template to be loaded (I decided like you to do it through XML, or just with a creation function in LUA, sorry If I wasn't clear), but how to manage this data in memory eficienly to quicly create the requested entity. One solution I have come with, is at loading time, create the templates that will contain instances of the components they will have and when requesting a new entity just use the copy constructor of the real component to clone it with the one in the template. What do you think?" CreationDate="2011-01-14T23:45:48.973" UserId="4469" />
  <row Id="9419" PostId="7406" Text="I added another comment because I needed some more space. James when I said that it was a lot of work I was refering to all the things the system has to do to create an entity or delete it. When creating, we have to get the template send it to the systems (all, I don't know how many system could be, but I guess a lot for every aspect of the entity), then the system decide if it has a component it is interested, instantiate it, and init it, etc...  Don't know if this will slow down things, anyway, deletion and creation won't happen a lot of times each frame. " CreationDate="2011-01-14T23:50:06.943" UserId="4469" />
  <row Id="9420" PostId="7409" Text="I forgot to actually create the link in my OP, but this is the article that mentions exactly as your describe with the identity matrix for the viewport transform: http://www.gamedev.net/topic/502536-enablingdisabling-viewport/ . The only problem is that it's impossible to setup an identity matrix since it requires to pass in negative values to a function that only takes unsigned values." CreationDate="2011-01-15T00:03:18.893" UserId="325" />
  <row Id="9422" PostId="7402" Score="1" Text="I'm not really sure this is better for this site instead of SO - most game developers are not strong WinAPI programmers, and there's nothing game-specific about the question." CreationDate="2011-01-15T00:54:09.727" UserId="744" />
  <row Id="9424" PostId="7381" Text="Funny that you mention Thermite3D, just a couple of days ago I stumbled upon its site. Nice tool you've made!" CreationDate="2011-01-15T02:46:53.260" UserId="3446" />
  <row Id="9425" PostId="7384" Text="Actually, too awesome to be true...I may have to check it out :)" CreationDate="2011-01-15T02:49:26.877" UserId="3446" />
  <row Id="9426" PostId="7379" Text="Well, one brilliant thing about thesis is that they get to define their scope. You don't need to solve a whole problem, but a finite aspect of it." CreationDate="2011-01-15T04:20:44.163" UserId="4602" />
  <row Id="9427" PostId="7412" Text="Very counter-intuitive, but true. Those errors are a headache" CreationDate="2011-01-15T05:39:01.143" UserId="1663" />
  <row Id="9428" PostId="7406" Text="Hi!, yes James you helped out as allways. I had in mind to add a pooling system per system too as you stated, just, now I'm justg more aware of the design. One of the nice things about having components per system is that they hold a homogenous list or whatever TAD that is pretty easy to pool, loop, etc... So, rewritting my thoughs to clarify: From the xml (or a template build in lua and registered to C++) we create entity templates that it is just, a list of pre created and initialized components (componets know how to load themselves from xml). &quot;Continues next chunk&quot;" CreationDate="2011-01-15T08:27:01.507" UserId="4469" />
  <row Id="9429" PostId="7406" Text="(resuming) When we want to create an entity this template is passed to systems, and they check for the components they care and take out a free component from its own pool and clone from the one that comes in the template and registers it in a used list or whatever. When an entity is deleted, the id of the entity is given to systems, they flag components as dead, and in a later iteration (end of frame) they return to the pool. I think this is the way I could do it. What do you think?" CreationDate="2011-01-15T08:31:55.967" UserId="4469" />
  <row Id="9430" PostId="7409" Text="@Jim Buck: You could, however, multiply the projection matrix by it's inverse, since you know the matrix you're producing." CreationDate="2011-01-15T08:56:04.910" UserId="4662" />
  <row Id="9431" PostId="7394" Text="Make sure that you are in fact using OpenGL 3.3 in both cases.&#xA;glGetString(GL_VERSION) should return something like: &#xA;&quot;3.3.10317 Core Profile Context&quot;" CreationDate="2011-01-15T09:05:22.003" UserId="3991" />
  <row Id="9432" PostId="7145" Text="-1 since 'better' is not on topic. If it was 'What are the differences between DX and GL' it could be a good question." CreationDate="2011-01-15T09:06:38.463" UserId="1156" />
  <row Id="9433" PostId="7415" Score="1" Text="Most probably has been asked and answered over a thousand times over here http://gamedev.stackexchange.com/" CreationDate="2011-01-15T08:35:00.807" />
  <row Id="9434" PostId="7401" Text="@egarcia Methods are hold in the systems. Components will just contain data. This is good for example to get tight loops, because you have a system with just one method to process a list of components... Good caching!. Anyway it is not all good, there are some foes like in any other design." CreationDate="2011-01-15T10:07:03.423" UserId="4469" />
  <row Id="9435" PostId="7394" Text="The nVidia and ATI compilers have been notoriously different in the way they accept some small nuances of glsl. Be sure to check any compilation and linking logs." CreationDate="2011-01-15T10:45:05.687" UserId="4264" />
  <row Id="9436" PostId="7416" Text="Minecraft currently lacks a plugin API, and plugins are currently ugly business. I would wait and ask again once Minecraft's developers introduce a plugin API. There are no words of _when_ that will occur, but it is basically [second priority](http://notch.tumblr.com/post/2623477410/strategy-meeting-day-results) on their New Features list (first being a new save file format)." CreationDate="2011-01-15T14:43:00.617" UserId="2698" />
  <row Id="9439" PostId="7363" Text="You can use the Thread Parallel Tasking library if your using .NET (I think that's what it's called)." CreationDate="2011-01-15T17:05:19.503" UserId="3547" />
  <row Id="9441" PostId="4898" Text="I would totally be up for working on that C# project. Yeah, there isn't a huge consensus on how a standard one should work, but maybe we could focus on XNA (whatever floats your boat). Just because a bunch of giants haven't declared the best way to do it doesn't mean we can't try/experiment." CreationDate="2011-01-15T18:58:46.693" UserId="3547" />
  <row Id="9442" PostId="7409" Text="Yeah, I'm going to try that tonight to see if it solves the issue in the current codebase (as per bluescrn's answer and your comment)." CreationDate="2011-01-15T19:36:08.643" UserId="325" />
  <row Id="9443" PostId="7408" Text="-1 for 1st Paragraph - There are many other explanations for this besides an actual bug in any component.  The simple insertion of multiple filter drivers (anti-virus) can cause all sorts of symptoms like this.  +1 for second paragraph." CreationDate="2011-01-15T21:17:26.700" UserId="4212" />
  <row Id="9444" PostId="7426" Text="Thanks for the link. It was very helpful in giving me an estimation how much work an artist will do for what price. " CreationDate="2011-01-15T22:08:09.647" UserId="3659" />
  <row Id="9445" PostId="3191" Text="for me it goes to a 404 error..." CreationDate="2011-01-15T22:21:37.770" UserId="1743" />
  <row Id="9446" PostId="7424" Score="1" Text="The internet is big, if you have any recommendations for *where* to look, it would help." CreationDate="2011-01-15T22:38:13.573" UserId="4212" />
  <row Id="9447" PostId="7411" Text="It is a macro in the assert style. If debug, make a glGetError and type error into a log" CreationDate="2011-01-16T00:05:11.307" UserId="916" />
  <row Id="9449" PostId="7404" Text="Thanks - that's certainly helped a bit... though given my complete ineptitude when it comes to AI, I suppose a little more description of/a link to a good introduction on 'planning AI' would be useful!  In either case, I've +1'd, but I'd like to wait for some more replies before accepting an answer! :)  Once again, thanks." CreationDate="2011-01-16T01:23:21.187" UserId="2853" />
  <row Id="9450" PostId="7430" Score="1" Text="See also gamedev.stackexchange.com" CreationDate="2011-01-14T22:43:41.830" />
  <row Id="9451" PostId="7430" Text="Does that mean I need to repost this there?" CreationDate="2011-01-14T23:05:13.130" UserId="4664" />
  <row Id="9452" PostId="7430" Text="You don't have to, this is appropriate for here since it is a programming question.  Its just a suggestion since you might get better answers there where there is a higher proportion of game developers." CreationDate="2011-01-14T23:11:43.003" />
  <row Id="9453" PostId="7431" Text="Wow, thank you. I liked how you explained it. That one explanation enlightens the whole concept to me." CreationDate="2011-01-14T23:17:41.960" UserId="4664" />
  <row Id="9454" PostId="7431" Text="@semajhan: Just ask if you have more problems. :)" CreationDate="2011-01-14T23:18:50.067" />
  <row Id="9455" PostId="7431" Text="This is what I have in my head: GameEngine class that acts as a &quot;link&quot; or &quot;reference&quot; to all other classes with the panel. Activity &gt; Panel &gt; GameEngine &gt; all other classes." CreationDate="2011-01-14T23:27:16.747" UserId="4664" />
  <row Id="9456" PostId="7431" Text="@semajhan: Exactly. For your knowledge only: if you decide to go with `OpenGL ES` you should know that the renderer in `OpenGL ES` already have its own thread and in that case you don't need to manually create and start a new `Thread` and `Runnable` for that system." CreationDate="2011-01-14T23:30:44.810" />
  <row Id="9457" PostId="7431" Text="Ignore this comment." CreationDate="2011-01-14T23:50:29.537" UserId="4664" />
  <row Id="9458" PostId="7432" Text="That german tutorial is nice but it was roughly translated vai google so it's kind of hard to understand." CreationDate="2011-01-14T23:28:35.843" UserId="4664" />
  <row Id="9459" PostId="7433" Text="related, possible dupe: http://gamedev.stackexchange.com/questions/16/cross-platform-2d-graphics-engines" CreationDate="2011-01-16T07:02:57.793" UserId="51" />
  <row Id="9460" PostId="7435" Text="Sounds like a problem which could be solved using BSP. I could think of a couple of ways to get the overlapped pixels (using stencil or alpha), but getting back to 3d would be a hassle. With BSP you should be able to calculate the actual overlapping geometry. " CreationDate="2011-01-16T09:22:20.610" UserId="4264" />
  <row Id="9461" PostId="7429" Text="I thought that iPhones cannot execute Flash?" CreationDate="2011-01-16T10:39:55.013" UserId="450" />
  <row Id="9462" PostId="7435" Text="What are yor objects? Points? Lines? Polygons? If they are polygons, there is not only one intersection point. Points, lines are always easy. For polygons i have solution, which needs off-screen rendering (rendering to texture). Is this ok for you as a beginer?. @JariKomppa - I have no idea how to use BSP for this, please share your idea how to do it." CreationDate="2011-01-16T11:49:56.903" UserId="3794" />
  <row Id="9464" PostId="7435" Text="I hadn't giving the Lines/Points/Polygons question much thought, but now I have, they'd probably be Lines (I'm visualising &quot;beams&quot; that *might* also be formed by cubes, in a editor for example). JFYI, I'm a corporate Java/C# dev, more at home with MySQL and Servlets, but I'm hoping to retarget my code skills at the App-Dev goldmine ;-), thanks." CreationDate="2011-01-16T14:25:07.130" UserId="4682" />
  <row Id="9465" PostId="7429" Score="3" Text="They might have made an identical clone that ran natively on the App store." CreationDate="2011-01-16T14:52:50.573" UserId="962" />
  <row Id="9466" PostId="7429" Score="1" Text="Since it's most definitely a re-implementation... how much of the original game actually is there? If they &quot;stole&quot; the graphics it's one thing, if they just copied the gameplay don't even bother." CreationDate="2011-01-16T15:10:04.887" UserId="2188" />
  <row Id="9467" PostId="7346" Text="I don't remember there being an answer when I posted. My comments were based of Farseer (which is based of Box2D). I wasn't trying to copy you or anything of the sort." CreationDate="2011-01-16T15:17:55.400" UserId="3547" />
  <row Id="9470" PostId="7439" Text="Will, I'll have to do a little background research on the techniques you mention before I can fully understand which way to go, but many thanks. As for whether my occlusion calculation is performed via OpenGL or non-library coding, I have no overall preference, other than I thought I'd employ OpenGL for 3D rendering, due to its universal usage (C/C++, C#, Java etc.)." CreationDate="2011-01-16T16:21:03.723" UserId="4682" />
  <row Id="9471" PostId="7428" Text="Thanks Tetrad, your reply has been very helpful. I still have a bit of research to do before I'll have a grasp on how the components model works (do I have any concrete classes atall for a character or simply some collection of components etc etc) but I'm sure I'll get there soon. Any other advice would be a bonus. Thanks for your time and help mate." CreationDate="2011-01-16T18:23:30.220" UserId="4679" />
  <row Id="9473" PostId="7406" Text="That does not sound too bad for me and I think is a good place for you to further your progress on your engine :)" CreationDate="2011-01-16T21:14:56.950" UserId="4443" />
  <row Id="9474" PostId="7406" Text="Thanks for all the coments James. By the way, if you ahve another magical &quot;better way to do it&quot; I'm all ears :D" CreationDate="2011-01-16T21:39:44.107" UserId="4469" />
  <row Id="9475" PostId="5104" Text="I'd suggest you'd do better actually asking a question (rather than just searching for existing answers) at the official forum's editing section: http://forums.bistudio.com/forumdisplay.php?f=92  There is a wealth of knowledge in the BI community... and most people are very willing to share their findings.  A number of community-made O2/Visitor scripts have been made for different purposes, so the knowledge is definitely available there." CreationDate="2011-01-16T22:15:33.770" UserId="2853" />
  <row Id="9476" PostId="7406" Text="Sorry, forgot the real question I wanna make. How many components/systems do you have in a game? I'm a bit scared of having to notify a lot of systems when an entity is created/killed (In my current implementation the template is passed to all registered systems)." CreationDate="2011-01-16T22:35:10.097" UserId="4469" />
  <row Id="9478" PostId="7435" Text="Do you know where on the screen your intersection is?" CreationDate="2011-01-16T23:24:12.460" UserId="3794" />
  <row Id="9479" PostId="7439" Text="I deleted my previos comment, because it wasnt right." CreationDate="2011-01-16T23:24:35.173" UserId="3794" />
  <row Id="9480" PostId="7443" Text="Get something on that screen. That's the mind set I'm in whenever I start a game." CreationDate="2011-01-17T00:44:14.033" UserId="3547" />
  <row Id="9481" PostId="7429" Score="1" Text="There's an iPhone packager put out by Adobe that will convert Flash apps into native iPhone apps." CreationDate="2011-01-17T01:15:45.707" UserId="953" />
  <row Id="9482" PostId="7404" Text="http://en.wikipedia.org/wiki/Automated_planning_and_scheduling is a good place to start.  For a more in-depth source, my introduction to AI was Russell and Norvig's Artificial Intelligence: A Modern Approach.  It's a fairly standard textbook, so you might be able to get a used copy cheap." CreationDate="2011-01-17T01:18:00.787" UserId="953" />
  <row Id="9484" PostId="7408" Text="@Error: How is that not the definition of a bug in the filter drivers?" CreationDate="2011-01-17T01:40:14.803" UserId="4662" />
  <row Id="9485" PostId="7408" Text="@DeadMG Resource contention causes performance bottlenecks.  Just because a filter driver is slow doesn't mean that it has a bug.  It can be a victim as well." CreationDate="2011-01-17T02:15:22.270" UserId="4212" />
  <row Id="9487" PostId="7406" Text="Honestly when you swap over to components it really merges systems together pretty well. One system to manage all components, then a system for the scene graph that can use the positional and rendering components to know what to use for rendering, an audio system that uses positional and audio representation components to play sound effects or music and the like. Another system that handles input from devices or networking that then passes them off to the positional components. To answer the questions though, there is no magical way to do any one thing, just have to do what works for you." CreationDate="2011-01-17T06:15:04.963" UserId="4443" />
  <row Id="9488" PostId="7447" Score="1" Text="As much as they claim that content policy, there are items of several of those categories in the Market anyway. For one, spyware/malware is apparently rampant and there have been a lot of articles in the press about this. Point is, you might be able to publish such content anyway, but SyaZ has already pointed out the risk involved." CreationDate="2011-01-17T07:03:48.243" UserId="3723" />
  <row Id="9489" PostId="7433" Text="Also pretty much the same as: http://gamedev.stackexchange.com/questions/6975/what-tools-should-i-consider-if-my-aim-is-to-make-a-game-available-to-as-many-pla/" CreationDate="2011-01-17T08:18:53.860" UserId="20" />
  <row Id="9490" PostId="4991" Text="Using skinning for such a simple model seems an overkill for me." CreationDate="2011-01-17T08:50:46.800" UserId="2798" />
  <row Id="9491" PostId="7406" Text="Hi!, I see. I was thinking about having a system for the health component, another for recharging enemy systems, etc... Perhaps I should be thiking a bit more general as you say :). My main aim was to have a system per component this is why I was a bit scared about having lota systems :). THanks for the answer again." CreationDate="2011-01-17T08:52:46.453" UserId="4469" />
  <row Id="9492" PostId="7380" Text="In my case, it turned out the vertex shader wasn't using the whole matrix &quot;chain&quot;, but your idea applied to the vertex shader's actual calculations did work. (i.e. reversing out the viewport matrix calculations so that, when combined with the inevitable viewport matrix, was effectively the identity matrix)" CreationDate="2011-01-17T09:11:46.613" UserId="325" />
  <row Id="9493" PostId="7424" Text="@Bryan: rudeness will get you nowhere." CreationDate="2011-01-17T11:41:11.487" UserId="2188" />
  <row Id="9494" PostId="7450" Text="+1 like your answer!" CreationDate="2011-01-17T14:16:25.583" UserId="4703" />
  <row Id="9495" PostId="7455" Text="Thanks, just what I wanted to know.. Did a few searches for a c# .Net 2d engine but seems to be many &quot;dead&quot; projects out there, anyone you would suggest?" CreationDate="2011-01-17T14:30:56.570" UserId="4463" />
  <row Id="9496" PostId="7455" Text="There seems to be quite some c# ports of box2d linked on the home page. http://www.box2d.org/links.html" CreationDate="2011-01-17T14:52:26.847" UserId="2792" />
  <row Id="9498" PostId="2375" Text="My droid 2 global just scored a 176 (out of ?) on the html5test.  Full points for canvas." CreationDate="2011-01-17T15:56:14.810" UserId="284" />
  <row Id="9499" PostId="7443" Text="This mindset also helps me to simplify my code designs a bit. It forces me to think hard about what exactly are the most basic and essential components of the system, and build upward from those." CreationDate="2011-01-17T16:38:48.063" UserId="4690" />
  <row Id="9500" PostId="7445" Text="Thanks; it seems the vibrant beta community is already way ahead of me. I've even heard rumblings of a rudimentary FPS!" CreationDate="2011-01-17T16:44:23.753" UserId="4690" />
  <row Id="9501" PostId="7406" Text="No worries :) remember that most of the functionality of a component is in the component. All that is needed are the specific ways to update and fetch the components, as mentioned. For general management of components though, a single system to handle access, memory and a generic update loop can work for all component types. :)" CreationDate="2011-01-17T17:32:54.250" UserId="4443" />
  <row Id="9502" PostId="7457" Score="1" Text="The question is a bit unclear. The platform is apparently either osx or (more probably) iphone. No idea how the memory use is measured, or what memory is being discussed (video or system). As to why less memory is consumed if nothing is rendered is due to the way OpenGL may be implemented; the driver may postpone any operations (such as texture conversion, shader compilation, etc) related to resources until they're actually used." CreationDate="2011-01-17T18:32:48.330" UserId="4264" />
  <row Id="9503" PostId="2372" Text="This answer would be more helpful if it had anything to do with the question." CreationDate="2011-01-17T18:47:49.323" UserId="4709" />
  <row Id="9504" PostId="2372" Score="1" Text="I should be more specific. I don't see how IE8 has anything to do with the question at all. And I don't think monolithic html5test totals are helpful anyway. The question is whether the parts that *are* implemented are any good for games (the answer seems to be yes) and whether those games could really be expected to run on a variety of phones (I think yes again)." CreationDate="2011-01-17T18:57:48.203" UserId="4709" />
  <row Id="9505" PostId="7457" Text="Any particular reason you're not using PVR compressed textures?  They take up significantly less memory, although are lossy." CreationDate="2011-01-17T19:23:16.083" UserId="51" />
  <row Id="9507" PostId="7284" Text="+1 took the words right out of my mouth, even distribution seems to be mix with random distribution all the time (I myself have made the same mistake)" CreationDate="2011-01-17T20:22:36.667" UserId="2301" />
  <row Id="9508" PostId="7460" Score="1" Text="+1 for low-res lightmaps. Lightmaps can be surprisingly low-res while providing acceptable appearance, as long as the base texture looks good." CreationDate="2011-01-17T20:23:19.040" UserId="4082" />
  <row Id="9509" PostId="7424" Text="@Lo'oris: In the development community we try to promote a do-it-yourself approach to things. I'm sure your familiar with &quot;You can lead a horse to water but you cannot make it drink&quot;. While it is not my intent to insult/undermine anyones intelligence, but I have no links to provide. I would love to help but I do not know what types of media people are looking for. The main focus of this topic was &quot;How much to pay for game art&quot;. I felt my original suggestion was a good one! =)" CreationDate="2011-01-17T20:51:10.477" UserId="2910" />
  <row Id="9510" PostId="2372" Text="My experience with anything HTML related is that different browsers always do things slightly differently. Even when they all in theory support a feature, they may support it slightly differently. The html5test is useful guide for seeing the disparity of support across platforms. As long as you stick to a small subset of options that are supported by all the browsers you plan to work with, then a game just might work. I just don't have a lot of faith in browsers to properly build and/or maintain support for these standards. (See Chrome dropping its existing H264 support)" CreationDate="2011-01-17T21:50:03.017" UserId="154" />
  <row Id="9511" PostId="7460" Text="The only thing I'd add is that &quot;baked lighting&quot; can also (used to?) refer to baking the lighting data into the vertex attributes, which is lighter memory-wise than a lightmap, but obviously looks much worse." CreationDate="2011-01-17T22:10:21.490" UserId="744" />
  <row Id="9512" PostId="7460" Text="@Joe Wreschnig: True. Per vertex lighting almost all the time worse than per pixel lighting." CreationDate="2011-01-17T22:13:17.010" UserId="4598" />
  <row Id="9513" PostId="5109" Text="If you want to reuse slots ( which you definitly want ), than you need to make sure that invalid IDs are recognized. &#xA;&#xA;ex. &#xA;Object at ID 7 is in List A, B and C.&#xA;Object is destroyed and in the same slot another object is created.&#xA;This object registers itself to List A and C. &#xA;The entry of the first object in List B now &quot;points&quot; to the newly created object, which is wrong in this case.&#xA;&#xA;This can be perfectly solved with the Handle-Manager from Scott Bilas http://scottbilas.com/publications/gem-resmgr/.&#xA;I've used this in commercial games already and it works like a charm.&#xA;" CreationDate="2011-01-17T22:13:50.693" UserId="500" />
  <row Id="9514" PostId="7017" Text="&quot; I'm using C# for the tools side of things&quot; there are several projects for c#. updated my answer." CreationDate="2011-01-17T22:16:34.973" UserId="4345" />
  <row Id="9515" PostId="7464" Score="1" Text="They also have user blogs, and regularly feature excellent posts from them." CreationDate="2011-01-17T22:24:36.050" UserId="744" />
  <row Id="9516" PostId="7461" Score="2" Text="What are some game development publications that actually have an editorial staff supporting only &quot;inside&quot; articles? (Heck, what publications period can support such a thing these days?)" CreationDate="2011-01-17T22:28:05.267" UserId="744" />
  <row Id="9517" PostId="7310" Text="After reviewing all of the proposed solutions, I believe that separating axis theorem is the way to go here. Thanks." CreationDate="2011-01-18T00:24:15.027" UserId="4581" />
  <row Id="9518" PostId="7468" Text="you set the variable ret = true/false, but you just return true explicitly, is this a &quot;typo&quot; or actual code error?" CreationDate="2011-01-18T02:52:31.867" UserId="728" />
  <row Id="9519" PostId="7468" Text="sorry typo, its really a return false there instead of setting it to false" CreationDate="2011-01-18T06:33:15.947" UserId="4712" />
  <row Id="9520" PostId="7463" Text="I wrote an article for them, and can recommend it.. it was a very interesting experience, in a positive way." CreationDate="2011-01-18T07:07:20.210" UserId="4264" />
  <row Id="9521" PostId="4662" Text="+1 for the obvious: if you need a reference then keep one." CreationDate="2011-01-18T07:08:29.873" UserId="3656" />
  <row Id="9522" PostId="7477" Text="Thanks for your answer. My main goal is to bring a world to life. A story, characters, whatever you know about common rpgs. But that does not mean that I wouldn't want to do what it takes to accomplish that, I'm open to learn about rendering etc. Experiences in game dev: none. C++: very good. Of course, learning a new (and better fitting) language is something I could consider. Assumed I would stay with C++, do u have recommendations for engines or libraries my framework would take place in?" CreationDate="2011-01-18T09:46:55.373" UserId="4564" />
  <row Id="9523" PostId="7476" Text="thank youo for answer," CreationDate="2011-01-18T11:05:06.413" UserId="4707" />
  <row Id="9524" PostId="1215" Text="I'm going through the superbible now and it's really good for people who don't have a graphics background as it explains all the concepts as you go along." CreationDate="2011-01-18T11:16:36.630" UserId="122" />
  <row Id="9525" PostId="7457" Text="Platform is Iphone. I guess that OpenGL postpone allocating somehow until first usage of the texture. But Why? Why 4Mb per texture? and how to release this memory later. I am not using the PVR because I need to render several semi transparent leyers one on top of another and (as I have never used PVR) I don't know about quality of the result." CreationDate="2011-01-18T11:33:46.477" UserId="4707" />
  <row Id="9526" PostId="7480" Text="I don't know if there's any real technical advantage, but if I were to start making a flash game, I'd probably go with a sprite sheet because I'm more familiar with that approach than flash timelines.." CreationDate="2011-01-18T12:24:17.033" UserId="4264" />
  <row Id="9527" PostId="2375" Text="Ah indeed, my Droid Incredible which now has Android 2.2 also scores 176 and no bonus points out of 300. I'll add it in the answer." CreationDate="2011-01-18T13:37:55.883" UserId="189" />
  <row Id="9528" PostId="2375" Text="Also update on the status of Vanthia, the developer remains nearly silent but considering that he quit his day job for the game, I can only assume he will surprise us all with a huge release one of these days. I just wish he'd be more open about it." CreationDate="2011-01-18T13:46:05.777" UserId="189" />
  <row Id="9530" PostId="7445" Text="I've seen a video of a Wolfenstein-3D-style raycasting FPS, but it was pretty rudimentary; it looked like they were rendering using a grid of square columns that were made visible or invisible to represent surfaces in the world." CreationDate="2011-01-18T15:39:18.587" UserId="953" />
  <row Id="9531" PostId="7490" Score="1" Text="Have you perhaps tried to reorder the multiplySelf instructions?" CreationDate="2011-01-18T16:04:58.520" UserId="4264" />
  <row Id="9532" PostId="7485" Score="2" Text="Suddenly it makes sense why they force you to pause training if you change your attributes that affect the speed of the training! Because they recalculate the needed delta... Awesome, thanks!" CreationDate="2011-01-18T16:19:15.273" UserId="1910" />
  <row Id="9533" PostId="7491" Text="Jari, is there any way to force the compiler not to discard unused variables?" CreationDate="2011-01-18T16:39:29.660" UserId="3563" />
  <row Id="9534" PostId="7491" Text="@dugla: The glUniform function family specifically does not error on location -1 to make situations like this work, as unused variables are fairly common with stitched shaders. Why worry about it?" CreationDate="2011-01-18T16:46:47.300" UserId="744" />
  <row Id="9535" PostId="7491" Text="Jari you nailed it. The newly added uniforms were indeed unused. Assigning them to int dev_null forced them to be recognized. Good catcht. Sigh, GL is such a pain. Cheers." CreationDate="2011-01-18T16:47:32.860" UserId="3563" />
  <row Id="9536" PostId="7491" Text="@Joe_Wreschnig, I am building a basic shader dictionary for an iOS app I am writing. My thought was to create an dictionary for each shader in my library with the uniforms and attributes as elements in the shader dictionary. Just a way to clean up some of the endless bookkeeping in GL." CreationDate="2011-01-18T16:49:46.723" UserId="3563" />
  <row Id="9537" PostId="7491" Score="1" Text="@dugla: But you're doing more bookkeeping than necessary. Just store the glGetUniform returns, pass them back in to set the uniforms later, and you don't need to care if they're -1 or not." CreationDate="2011-01-18T16:52:16.793" UserId="744" />
  <row Id="9538" PostId="7483" Text="I don't think this is entirely on topic." CreationDate="2011-01-18T16:54:25.790" UserId="1156" />
  <row Id="9540" PostId="7457" Text="Thank you for Answer,&#xD;&#xA;&#xD;&#xA;Since yesterday I did some progress and I have loaded images twice. :) stupid mistake.&#xD;&#xA;Bit is is not end of the problem.&#xD;&#xA;&#xD;&#xA;Now It uses about 6MB per texture but 2MB is allocated while I load texture and 4Mb is allocated while I render the pictures. This memory is not released even if I stop rendering while application works.&#xD;&#xA;&#xD;&#xA;Is there a way to release memory allocated during rendering 4MB per texture?&#xD;&#xA;In fact I can load only 4 such textures in order to run this app on Device - Ipod first gen. (3.1.3). If I will load 5 textures (even without rendering I see debugge" CreationDate="2011-01-18T17:24:28.940" UserId="4707" />
  <row Id="9541" PostId="7457" Text="(Mod note: answer to comment migration seems to fail for long answers, here's the rest of his answer) error and app finish)&#xA;&#xA;When I load Pictures through Texture2D I release all UIImages. I load 32 bit PNG pictures and convert them in Texture2D to 5551. I am not using mipmaps of course.&#xA;&#xA;What do you mean? &quot;you use uncompressed (raw) textures by mistake&quot;&#xA;&#xA;So 2 problems I have now: - Why it allocates 4 Mb per texture during rendering and how to release this memory if is not used. - Why after loading more the 4 textures 1024 App break?" CreationDate="2011-01-18T17:26:48.017" UserId="51" />
  <row Id="9543" PostId="7477" Text="If you have no experience with game dev, I'd recommend starting in the modding route just to get your feet wet.  That's the quickest way to get to your goal.  Once you have a better understanding of what it takes from the game side of things, you will be in a better situation to know what you need from your engine to accomplish your game's needs." CreationDate="2011-01-18T17:30:46.767" UserId="51" />
  <row Id="9544" PostId="7485" Score="1" Text="@Dream Lane, if this answers your question you should mark it as &quot;accepted&quot;" CreationDate="2011-01-18T17:32:51.257" UserId="51" />
  <row Id="9545" PostId="7494" Score="1" Text="But the existing users have no account information that I have access to, as far as I know. Apples servers handle in app purchases." CreationDate="2011-01-18T17:34:38.223" UserId="1386" />
  <row Id="9547" PostId="7497" Text="+1 I'd like to add: call the free version &quot;lite&quot;. Thus you won't risk upsetting people having the paid version who erroneously think that the &quot;free&quot; version is like theirs." CreationDate="2011-01-18T17:39:35.487" UserId="2188" />
  <row Id="9548" PostId="7497" Text="I think this may be the way to go." CreationDate="2011-01-18T17:50:03.880" UserId="1386" />
  <row Id="9549" PostId="7481" Text="For a hobby project I couldn't agree more.  Don't waste time reinventing the wheel with your own 'custom' tech - just make a game and have fun." CreationDate="2011-01-18T17:57:20.800" UserId="4604" />
  <row Id="9550" PostId="7485" Score="4" Text="@Dream Lane, To ease any potential computational overhead this will have. Only recalculate the earned skills/points when the user logs on. So having thousands of logged off people wont incur any overhead." CreationDate="2011-01-18T18:19:50.210" UserId="962" />
  <row Id="9551" PostId="7491" Text="@Joe_Wreschnig, not parsing your answer. My hack around rather dim GLSL compiler is to assign the currently unused uniforms to a local var in my frag shader - dev_null. This is needed to force a valid location returned from glGetUniformLocation. I store return values from glGetUniformLocation in my shader dictionary. Easy peasy. Storing -1 makes no sense. I am simply putting a thin layer of lightweight middleware between Cocoa Touch land and GL land." CreationDate="2011-01-18T18:28:28.213" UserId="3563" />
  <row Id="9552" PostId="7483" Score="3" Text="@Duck: why not? Where would it be otherwise?" CreationDate="2011-01-18T19:18:14.373" UserId="2188" />
  <row Id="9553" PostId="7497" Text="@CiscoIPPhone, if this is the strategy you end up using be sure to mark my answer as &quot;accepted&quot;" CreationDate="2011-01-18T19:18:43.477" UserId="51" />
  <row Id="9554" PostId="7491" Text="@dugla: Why does storing -1 make no sense? (Or rather, why does it make less sense than storing the location of unused variables at all?) My point is that -1 _is_ a valid value for glUniform. Plus, your &quot;solution&quot; breaks as soon as you have a better optimizing compiler." CreationDate="2011-01-18T20:35:34.433" UserId="744" />
  <row Id="9555" PostId="7491" Text="@Joe_Wreschnig: I assume he's planning to really use those new uniforms eventually, and was just confused about the compiler behavior before he did." CreationDate="2011-01-18T21:02:10.343" UserId="4264" />
  <row Id="9556" PostId="7498" Score="1" Text="What browsers are you targeting?" CreationDate="2011-01-18T21:30:27.370" UserId="962" />
  <row Id="9557" PostId="7491" Text="@Jari: Which seems like all the more reason not to care that they're -1, and not a reason to force the compiler not to optimize them out." CreationDate="2011-01-18T21:30:40.933" UserId="744" />
  <row Id="9559" PostId="7474" Text="I don't see how that fixes the problem? Maybe I'm not getting something." CreationDate="2011-01-18T21:43:03.397" UserId="3547" />
  <row Id="9560" PostId="7474" Text="Hmm I misread the question, and thought of the XML serialization stuff (it was 4 in the morning . . .). But it sounds like he's running into the issue of referencing the ContentPipeline in an editor project, but also reusing the class from the game and editor projects as well as the ContentPipeline project. Maybe I'm getting it wrong, but following the same principle from my answer (separating common classes into a separate assembly) could help." CreationDate="2011-01-18T22:10:20.193" UserId="3656" />
  <row Id="9561" PostId="7502" Text="Maybe add screenshot of wireframe model. And also why are you using bump mapping and no bump map? (or it looks like you have none)" CreationDate="2011-01-18T22:27:55.123" UserId="3794" />
  <row Id="9562" PostId="7502" Text="I added a wireframe.  There's a bump map, but it's intentionally very subtle.  This object is a couple of meters tall, and the bump pattern is really only visible from close up." CreationDate="2011-01-18T22:38:54.170" UserId="953" />
  <row Id="9564" PostId="7477" Text="Tedrad is right. I think modding an existing RPG is the closest thing to an &quot;RPG-Framework&quot; you'll get." CreationDate="2011-01-18T23:15:34.687" UserId="20" />
  <row Id="9565" PostId="7506" Text="And a note: this won't be a super robust solution. If you click on the link a bunch of times in a row, you'll only hear the sound once." CreationDate="2011-01-18T23:28:49.130" UserId="378" />
  <row Id="9566" PostId="7005" Text="XNA uses a left handed coordinate system" CreationDate="2011-01-18T23:43:50.953" UserId="1621" />
  <row Id="9567" PostId="7494" Text="@CiscoIPPhone: That's only half the truth - take a look at the Server Product Model. http://developer.apple.com/library/ios/#documentation/NetworkingInternet/Conceptual/StoreKitGuide/APIOverview/OverviewoftheStoreKitAPI.html#//apple_ref/doc/uid/TP40008267-CH100-SW1" CreationDate="2011-01-19T00:19:06.520" UserId="4116" />
  <row Id="9569" PostId="7480" Text="Just because Flash is not hardware accelerated yet does not mean that it isnt processing things in the same way... Remember that graphics can be done on a CPU, the GPU was just made specifically to do it (And alot of other things as of late, hehe)" CreationDate="2011-01-19T00:56:13.167" UserId="4443" />
  <row Id="9570" PostId="7496" Text="any reason in particular you recommend this one? there are quite a few " CreationDate="2011-01-19T00:59:40.073" UserId="4710" />
  <row Id="9571" PostId="7491" Text="Dudes, chill. @Jari is correct. Just growin' some shader code here my friends. Unused vars a given. All is working now. Shader dictionary loveliness. Cheers." CreationDate="2011-01-19T02:09:54.043" UserId="3563" />
  <row Id="9572" PostId="7505" Text="To fix vertex normals in Blender, select all the vertices (A) then use &quot;recalculate normals outside&quot; (Ctrl+N)." CreationDate="2011-01-19T02:15:57.927" UserId="2081" />
  <row Id="9573" PostId="7505" Text="adurdin: this worked perfectly.  Thank you very much.  Purdy: I'd tried recalculating normals outside; the problem is that the vertex normals were (quite reasonably) the average of the face normals.  I needed to Select Sharp Edges, then Split Vertices to separate each contiguous flat surface from the rest of the model." CreationDate="2011-01-19T03:15:34.617" UserId="953" />
  <row Id="9574" PostId="7506" Text="Also be sure to test your game on a computer with no audio devices! At least in the past, having html-audio caused a pop-up dialog appear every single time.." CreationDate="2011-01-19T06:34:30.887" UserId="4264" />
  <row Id="9575" PostId="7505" Text="I guess selecting *Flat-Shading* instead of *Smooth* in Blender (Mesh Tools) would have worked as well." CreationDate="2011-01-19T06:36:33.643" UserId="20" />
  <row Id="9576" PostId="7481" Text="I was under the impression that most people use Javascript with Unity, and that it supports C# w/Mono as well as Boo (a Python-like)." CreationDate="2011-01-19T08:39:10.240" UserId="3656" />
  <row Id="9577" PostId="7481" Text="shiva3d is also a good  engine similar to unity.  The scripting language is LUA but plugins can be written in C." CreationDate="2011-01-19T09:20:40.167" UserId="4212" />
  <row Id="9578" PostId="7512" Text="1. While I will change internal format it will affect of the rendering quality - I have 16 bit textures but lot of alpha blending on screen." CreationDate="2011-01-19T09:55:32.467" UserId="4707" />
  <row Id="9579" PostId="7512" Text="2. In fact 4 textures is not much including fact that all of them are in 16 bit. I could understand 4 textures in 32 bits and let's say about 7 textures in 16 bit. but 4 textures in 16 bits is a bit low I would say. " CreationDate="2011-01-19T09:57:55.223" UserId="4707" />
  <row Id="9580" PostId="7512" Text="1. The point 1 was the question." CreationDate="2011-01-19T09:58:30.510" UserId="4707" />
  <row Id="9581" PostId="7515" Text="interesting question" CreationDate="2011-01-19T10:50:52.940" UserId="3794" />
  <row Id="9582" PostId="7481" Score="1" Text="@bearcdp Most people use unityscript. Most _programmers_ use C# as it is way better documented. Actually, unityscript, and Boo, are not documented at all." CreationDate="2011-01-19T11:27:43.780" UserId="2710" />
  <row Id="9583" PostId="7410" Text="Just to be a bit more precise: GPUs do not use thread pools instead the thread scheduler is implemented in hardware, which makes it very cheap to create new threads and switch threads, as opposed to CPUs where thread creation and context switches are expensive. See Nvidias CUDA Programmer Guide for example." CreationDate="2011-01-19T12:08:06.147" UserId="4717" />
  <row Id="9584" PostId="7518" Text="Where are you setting the value of dSpace?" CreationDate="2011-01-19T13:12:19.897" UserId="1386" />
  <row Id="9585" PostId="7518" Text="Is the problem that the turret keeps firing when space is held?" CreationDate="2011-01-19T13:13:14.077" UserId="1386" />
  <row Id="9586" PostId="7518" Text="I've edited the thread: dSpace is being handled in the doKeyDown method... The problem is that the bullet should have a constant motion from the turret to the edge of the screen. I doesn't have it, that's my problem, I don't know how to do the physics in the updateGame method when dSpace is true...." CreationDate="2011-01-19T13:30:45.797" UserId="4745" />
  <row Id="9587" PostId="7521" Score="1" Text="Very similar to [this question](http://gamedev.stackexchange.com/questions/4157/what-are-some-programming-design-patterns-that-are-useful-in-game-development) which has some great answers." CreationDate="2011-01-19T14:51:30.873" UserId="4514" />
  <row Id="9588" PostId="7519" Text="Why the down vote?" CreationDate="2011-01-19T15:04:11.320" UserId="1386" />
  <row Id="9589" PostId="7519" Score="4" Text="For the ludicrous suggestion you can't &quot;embed machine code in a firefox plugin.&quot; The entire point of plugins is to supplement web content with some set of &quot;native&quot; code." CreationDate="2011-01-19T15:28:59.283" UserId="744" />
  <row Id="9591" PostId="7505" Text="bummzack: I don't see that option under either Mesh Tools panel.  There's a &quot;Set Smooth&quot; and &quot;Set Solid&quot; under Link and Materials, but it doesn't seem to translate into Unity.  Must be Blender-internal." CreationDate="2011-01-19T15:47:40.580" UserId="953" />
  <row Id="9592" PostId="7519" Text="well we can still discuss the dictionnary entries for addon, extension, plugin, mod, etc... It's still better to be precise about what does what..." CreationDate="2011-01-19T16:05:39.393" UserId="1829" />
  <row Id="9593" PostId="7523" Text="I don't see how this is a singleton at all and when discussing the flyweight pattern the word &quot;registry&quot; is redundant. This is just flyweight." CreationDate="2011-01-19T16:13:40.677" UserId="744" />
  <row Id="9594" PostId="7519" Score="4" Text="@jokoon: And &quot;plugin&quot; is exactly what has, since Netscape Navigator 2, referred to executing unsandboxed (native or otherwise) code on the client machine." CreationDate="2011-01-19T16:14:33.657" UserId="744" />
  <row Id="9595" PostId="7519" Score="2" Text="netscape navigator 2, are you talking about a car, some kind of SUV ? I don't see any connection with the question ..." CreationDate="2011-01-19T16:20:35.333" UserId="1829" />
  <row Id="9596" PostId="7524" Score="2" Text="I think you might need to form your question a bit better, but a quick answer to above so that you might do that is in general the state removes the If checks. switch (state) { case blah } to create a jump table, or my personal favourite way of doing things, function pointers or delegates on a stack or queue if AI should return to what they were doing before or move on to the next thing..." CreationDate="2011-01-19T16:40:16.610" UserId="4443" />
  <row Id="9597" PostId="1576" Score="1" Text="Totally agree with @Zorba: it would be completely foolish to do hard work on it and then not even knowing if you *could* sell it." CreationDate="2011-01-19T16:45:04.040" UserId="2188" />
  <row Id="9598" PostId="7523" Text="My understanding from the SO thread was that people identified Singleton as being part of it because of the definitions being set up as classes.  As far as Registry goes, I don't see how it can be redundant when it can be replaced or combined with Factory." CreationDate="2011-01-19T17:14:39.363" UserId="4191" />
  <row Id="9600" PostId="7509" Text="This is exactly what it was.  Blender can't modify vertex normals, so I needed to separate the flat surfaces into separate submeshes in the same object." CreationDate="2011-01-19T17:50:57.773" UserId="953" />
  <row Id="9601" PostId="7531" Text="Good suggestions, but how would you organize those 3 bullet points at a higher level. That's fine for a few little scenes. But for 100+, you'd need a more organized structure." CreationDate="2011-01-19T18:09:46.493" UserId="4752" />
  <row Id="9602" PostId="4162" Text="I think the italized text above is really misleading if not plain wrong. Is the author really advocating that we expand the scope of language to encapsulate all of the behavior found today in common design patterns? For example, should the MVC or MVVM patterns mentioned above really become parts of the language itself? This seems rather wrong to me as it would make the language more complex and more closely tied to a specific expression of an idea. " CreationDate="2011-01-19T18:33:28.827" UserId="539" />
  <row Id="9603" PostId="7531" Text="Cocos2D itself has a structure of using Scenes and transitions between them, so that takes a lot of the work for you. Backgrounds could be stored in a texture atlas if you wanted. And how much more organized do you want that a Lamp, which has a description when you press it? And event flags are a good way to run things - not only is there the check(Player_Found_Door) way, but as the flag is set in a function you can change all the items you need then." CreationDate="2011-01-19T18:33:44.730" UserId="1156" />
  <row Id="9604" PostId="27" Score="1" Text="Also note that the makers of Torque have [shut down](http://www.gamasutra.com/view/news/31506/Browserbased_Gaming_Platform_InstantAction_Shutting_Down.php) and are looking for a buyer to take over the engine." CreationDate="2011-01-19T19:18:29.360" UserId="4514" />
  <row Id="9605" PostId="27" Text="Well, in the interest of full disclosure, I landed on Unity for all of my creative projects henceforth. An RTS will simply have to work for it. ;)" CreationDate="2011-01-19T19:24:24.873" UserId="53" />
  <row Id="9606" PostId="256" Text="That GDC presentation was very informative on the topic, thanks!" CreationDate="2011-01-19T19:30:33.507" UserId="1910" />
  <row Id="9607" PostId="7460" Text="Well answered, that's confirmed a lot of stuff to me :) Thanks!" CreationDate="2011-01-19T19:37:33.823" UserId="4552" />
  <row Id="9608" PostId="7262" Text="As a gameplay programmer, that sounds like a complete nightmare :) Putting animators in control of something as important as movement speeds of anything animated? No thanks! I much prefer to extract the information so I can invert it and set the animation play speed based on the movement speed, rather than the other way round. That's why nonlinear motion confuses the hell out of me though, and perhaps that's a good reason to do it the other way round." CreationDate="2011-01-19T19:43:08.903" UserId="4552" />
  <row Id="9609" PostId="7262" Text="Gah, curse Stack Exchange for entering the comment on trying to start a new line... I was about to say, even if you let the animation drive the motion, it'll still be a problem for e.g. AI characters. What if they're trying to get to a point but their movement animation lurches from side to side (say, it's a drunken stagger animation)? How can they know which direction to face?" CreationDate="2011-01-19T19:44:51.537" UserId="4552" />
  <row Id="9610" PostId="7523" Text="-1, to the extent patterns are about quickly communicating, this is probably the biggest failure I've seen. I really can't take this description seriously." CreationDate="2011-01-19T19:49:18.443" UserId="744" />
  <row Id="9611" PostId="7533" Text="Ah ok, I have pointed my sprite upwards! Haha! Many thanks! " CreationDate="2011-01-19T19:53:53.043" UserId="4755" />
  <row Id="9612" PostId="4162" Text="@Alex: Lisp takes &quot;the strategy pattern&quot; and makes it part of the language (long before anyone knew what the strategy pattern was). JavaScript takes prototypes, Python takes decorators, plenty of languages take flyweight, Erlang and Go take many synchronization patterns, etc. C++ takes inheritance and vtables, which to C programmers is a design pattern. C and Pascal take on while and for, which to assembly programmers is a design pattern implemented via jumps. Why _shouldn't_ we lift repetition out of our designs and into our languages?" CreationDate="2011-01-19T20:39:06.167" UserId="744" />
  <row Id="9613" PostId="4162" Text="(Unity, much loved on this site, lifts the component pattern, also much loved on this site, directly into its programming language.)" CreationDate="2011-01-19T20:41:21.123" UserId="744" />
  <row Id="9614" PostId="7523" Text="Jesus, pardon me for not being cookie-cutter enough for you.  Are you going to vote down the &quot;Entity systems&quot; answer too because it isn't instantly summarizable in GOF terms?" CreationDate="2011-01-19T20:47:14.433" UserId="4191" />
  <row Id="9615" PostId="7523" Text="Some amount of &quot;cookie-cutter,&quot; or at least semantic clarity, is exactly what patterns must be to be useful. Terms like &quot;flyweight&quot; and &quot;singleton&quot; as they are commonly understood are mutually exclusive. The first is about automatically sharing data between multiple instances; the second is about having exactly one instance. I'm not saying your design choice is useless or even bad, but cramming &quot;close enough&quot; pattern names together just confuses everyone more. (Please don't take downvotes personally, especially on CW.)" CreationDate="2011-01-19T21:01:42.050" UserId="744" />
  <row Id="9616" PostId="7440" Text="I don't think I'm going to mark this as the answer because it's not really an answer to the question, but this is another excellent resource, and much appreciated." CreationDate="2011-01-19T21:01:49.477" UserId="2100" />
  <row Id="9617" PostId="7536" Text="What's wrong with using a timer?" CreationDate="2011-01-19T21:07:26.990" UserId="744" />
  <row Id="9618" PostId="7536" Text="Why do you think a timer would make it choppy?" CreationDate="2011-01-19T21:08:46.067" UserId="744" />
  <row Id="9619" PostId="7536" Text="On the lower framerate, if I'm skipping frames to keep up, it will be choppy... maybe it will still be acceptable?" CreationDate="2011-01-19T21:15:36.993" UserId="1198" />
  <row Id="9620" PostId="7536" Score="4" Text="You have two basic options, animate by frame or animate by time. If you animate by frame it will run twice as long. If you animate by time it will skip half the frames. Choppiness in this case is largely the result of bad animation (no blur, no squash+stretch, no ease-in/out); 30fps is more than smooth enough for sprites in motion." CreationDate="2011-01-19T21:25:05.437" UserId="744" />
  <row Id="9621" PostId="7536" Text="Of course it's going to be more choppy on the phone. There are less frames! It's acceptable for graphics to be more choppy on a phone, it's not a crazy powered behemoth or anything." CreationDate="2011-01-19T21:29:54.303" UserId="3547" />
  <row Id="9622" PostId="7536" Text="@Joe thanks for that -- as an answer I could accept it ;-) as a comment, I can only +1..." CreationDate="2011-01-19T21:49:04.570" UserId="1198" />
  <row Id="9623" PostId="4162" Text="@Joe you sidestepped my deliberately picked example. I think it does make sense to incorporate certain patterns into the language. I'll add to your examples the iterator pattern which is now present in all modern languages. &#xA;&#xA;However, the library of patterns extends well beyond the ones you've listed or found in the GoF. For instance, the patterns found in &quot;Enterprise Design Patterns&quot;. I think it's a stretch to claim that the ideas captured by these types of patterns should be language features. It simply makes no sense to move MVC or Active Record into the language itself." CreationDate="2011-01-19T21:50:02.973" UserId="539" />
  <row Id="9624" PostId="7262" Text="Well for a stagger effect, it's still the case that only the forward z axis has any effect on the actual game object position.  If you wanted to sway left and right, that's actually built into the animation so the swaggering character's model may be offset from his actual game object position on the right axis (+/-).  Alternatively, you do &quot;stumble left&quot; and &quot;stumble right&quot; and control it in code." CreationDate="2011-01-19T21:51:04.147" UserId="51" />
  <row Id="9625" PostId="7536" Text="Moved to an answer with some pseudocode for the simplest way I know how to use a timer to do it." CreationDate="2011-01-19T22:02:44.653" UserId="744" />
  <row Id="9626" PostId="4162" Text="@Alex: LINQ and Entity Framework moves active record into the language itself, it's massively successful. As for MVC, we have not moved it &quot;into the language&quot; so much as we have split the languages to make them only suitable for one of M or V or C - HTML+JS, for example." CreationDate="2011-01-19T22:05:02.467" UserId="744" />
  <row Id="9627" PostId="4162" Text="(I will note, though, that we have kicked MVC _out_ of languages - MVVM was designed because MVC was seen as a bad fit for the ideas in Silverlight+WPF.)" CreationDate="2011-01-19T22:10:37.450" UserId="744" />
  <row Id="9628" PostId="7523" Text="My mistake in relying on the results of my SO inquiry, then.  I didn't arrive at this pattern by thinking inside GOF boxes, so I suppose I shouldn't try to cram it into them, either.  I've edited my answer to remove all direct references to Flyweight or Singleton; please feel free to re-evaluate the pattern being described on its own merits rather than in terms of how easily it's summarized in telegraphic GOF-speak." CreationDate="2011-01-19T22:26:18.890" UserId="4191" />
  <row Id="9629" PostId="7538" Score="1" Text="Might I point you to this question? http://gamedev.stackexchange.com/questions/6137/how-do-i-find-rotation-in-3d-based-on-a-vector-normal/6139" CreationDate="2011-01-19T23:56:51.720" UserId="2187" />
  <row Id="9630" PostId="7537" Text="Excellent, thanks for including the bit about how you would go about implementing it." CreationDate="2011-01-20T03:25:07.217" UserId="1198" />
  <row Id="9631" PostId="7468" Text="Thank you for looking at the code, everyone that did, I have fixed the problem.  The problem was that our level editor's coordinate system was flipped on the x axis.  So what we had to do was flip the x on the vectors of the min/max of the bounding boxes so that they were accurate.  However, eventually we will go back and fix the level editor so that it has the correct coordinate system. lol" CreationDate="2011-01-20T07:21:45.370" UserId="4712" />
  <row Id="9632" PostId="877" Text="Could you post the name of the article from GameDev? Their site's all changed around." CreationDate="2011-01-20T08:28:11.297" UserId="3656" />
  <row Id="9633" PostId="1576" Text="@Lo'oris: true. That's probably one of the reasons [Onlink](http://www.onlink-mod.net/) was announced to be rewritten from scratch. Although it seems to have gone stale since then :(" CreationDate="2011-01-20T08:39:45.867" UserId="252" />
  <row Id="9634" PostId="7440" Text="Thats fair enough, but I don't think that you'll find a Post Processing library on its own as it has a lot to do with how you are rendering your scene." CreationDate="2011-01-20T08:44:43.830" UserId="2763" />
  <row Id="9635" PostId="7512" Text=" I have tried GL_RGB16 but on iPhone 3GS with OpenGl 1.1 it doesn't work :( - From the description above I understand that picture is loaded Texture2D allocate 2MB memory for it and later system allocate another 4Mb memory for it again. So can we release the previous buffer? 2Mb?" CreationDate="2011-01-20T08:49:37.457" UserId="4707" />
  <row Id="9636" PostId="7309" Text="I'd like to say thanks for your help and I actually went with an intersect triangle test. For me this was a lot easier to understand as well as it was really all I needed to use for my picking, instead of needing a plane. I was using this picking code to determine an intersection of a navigation mesh and I would then convert the barycentric coordinates I obtained from the test into an actual world position that I could use. After realizing that I have the 4 vertices from the navigation mesh I wouldn't need to check picking vs. a plane (I was making it hard on myself). Thank you very much." CreationDate="2011-01-20T08:52:36.237" UserId="4585" />
  <row Id="9637" PostId="437" Score="2" Text="This has always been a big vague to me, so I figured a bit more discussion about it might be good." CreationDate="2011-01-20T11:04:55.603" UserId="4264" />
  <row Id="9638" PostId="623" Text="This is kind of how full throttle did it." CreationDate="2011-01-20T11:15:50.443" UserId="4264" />
  <row Id="9639" PostId="7477" Text="Thanks for your advice! I think I will have a look at the construction set of Oblivion, because I played this game for years. Any other suitable modding frameworks?" CreationDate="2011-01-20T11:23:11.463" UserId="4564" />
  <row Id="9640" PostId="7511" Text="Is there a free version of it or is it only commercially licensed?" CreationDate="2011-01-20T11:26:02.333" UserId="4564" />
  <row Id="9641" PostId="7482" Text="Thanks for your support :) I already had a look at Ogre and worked my way through some of the tutorials and it seems like it would fit perfectly for my needs. Am I right that Ogre works well with meshes I create in Blender? And CEGUI should be suitable to create a GUI I guess." CreationDate="2011-01-20T11:31:26.757" UserId="4564" />
  <row Id="9642" PostId="7493" Text="Thanks for your answer. I already discovered Gamedev.net, that will certainly be a place I will often go to! As I already said in another comment, I will concentrate on Ogre3D. I had a look at the threading issue and like one of the quotes said, I will use thread for things like sound or AI scripts. Would you recommend using boost for that? I made good experiences with other boost libs so far." CreationDate="2011-01-20T11:37:47.560" UserId="4564" />
  <row Id="9643" PostId="7481" Text="Although I will focus on Ogre3D, I will certainly have a look at Unity3D. And you're right, 'reinventing the wheel' is unnecessary. I don't want to create an engine, just a game. And I'm not afraid of coding like hell, so I wouldn't even need an editor like the one of Unity3D. But I will certainly consider using it. It will be Unity3D or Ogre3D at the end. Currently I'm tending toward Ogre. Thanks a lot for your advice!" CreationDate="2011-01-20T11:42:15.713" UserId="4564" />
  <row Id="9644" PostId="7545" Text="I can't find a version specific tutorial. (except for 3.0)" CreationDate="2011-01-20T12:40:45.870" UserId="3995" />
  <row Id="9645" PostId="50" Text="Actually Civilization IV uses python..." CreationDate="2011-01-20T12:56:19.663" UserId="2231" />
  <row Id="9646" PostId="7545" Text="There's plenty linked from that page, under &quot;Tutorials and How To Guides&quot;, but basically you have a choice between OpenGL 1.x and &quot;anything else&quot;." CreationDate="2011-01-20T13:06:51.537" UserId="4264" />
  <row Id="9647" PostId="7542" Text="Nice explanations and additions Jason, thanks. I like yours acceleration function" CreationDate="2011-01-20T15:25:43.970" UserId="3794" />
  <row Id="9648" PostId="439" Text="Ok ... you are right but that is what can think out propably everyone. I really dont get why this particular answer has too many up points. No offense, it is completely right. " CreationDate="2011-01-20T15:44:01.883" UserId="3794" />
  <row Id="9649" PostId="7546" Score="1" Text="Not a real question, also a duplicate of http://gamedev.stackexchange.com/questions/5735/interesting-innovative-open-source-tools-for-indie-games (which is not a real question)." CreationDate="2011-01-20T16:14:39.133" UserId="744" />
  <row Id="9650" PostId="437" Text="Awesome question! I'm wondering this myself" CreationDate="2011-01-20T16:39:47.743" UserId="1910" />
  <row Id="9651" PostId="7493" Text="boost.threads is definitely a good choice if you want threading, yes. I doubt you would want a whole separate thread for AI or sound, though. " CreationDate="2011-01-20T16:43:20.580" UserId="1156" />
  <row Id="9652" PostId="7548" Text="After getting those figures, you would certainly want to increase them slightly, in case your game was running at a low memory usage." CreationDate="2011-01-20T16:46:32.930" UserId="1156" />
  <row Id="9653" PostId="7546" Text="-1 I am not denying this could be a potentially valuable list, but here is not the place to write it." CreationDate="2011-01-20T17:01:47.530" UserId="1156" />
  <row Id="9654" PostId="7538" Score="2" Text="And to your own? ;) http://stackoverflow.com/questions/4740434/drawing-a-model-on-a-slope" CreationDate="2011-01-20T17:09:32.467" UserId="4598" />
  <row Id="9655" PostId="7546" Score="1" Text="Not a question, lists like this should have the results put in answers so it can be voted on, and in general it's too broad.  If you wanted to, say, have a question of &quot;What free/open source c/c++ pathfinding libraries would you recommend&quot;, then that would be a good question." CreationDate="2011-01-20T17:12:53.620" UserId="51" />
  <row Id="9656" PostId="7543" Score="4" Text="The downsides to VM testing is that you're essentially always running the same clock speed and the 3D support is still fairly abysmal.  They will help cover your bases in making sure your game works on 32/64-bit and the gamut of windows choices." CreationDate="2011-01-20T18:10:17.617" UserId="4212" />
  <row Id="9657" PostId="7534" Text="How does &quot;everyone&quot; else do it?" CreationDate="2011-01-20T19:46:42.957" UserId="4720" />
  <row Id="9659" PostId="7493" Text="I just want to avoid any kind of performance decreases, that's why I thought about threading." CreationDate="2011-01-20T21:47:01.463" UserId="4564" />
  <row Id="9660" PostId="7493" Text="You're optimizing prematurely. A good use of threads is for background loading. Syncing across threads is a pain - try to keep each thread's data use as separate as possible." CreationDate="2011-01-20T21:56:09.660" UserId="1156" />
  <row Id="9661" PostId="7551" Text="Added your links in for you." CreationDate="2011-01-20T22:00:40.653" UserId="1156" />
  <row Id="9662" PostId="7538" Score="1" Text="-1, please don't cross post." CreationDate="2011-01-20T22:02:36.297" UserId="1156" />
  <row Id="9663" PostId="7551" Text="Thank you! //Deleted the comment containing unformatted links..." CreationDate="2011-01-20T23:23:25.667" UserId="1562" />
  <row Id="9664" PostId="7541" Text="@notabene: That worked perfectly. Normalize was the function I needed. Thanks." CreationDate="2011-01-21T00:24:25.110" UserId="4761" />
  <row Id="9665" PostId="7542" Text="@Jason: random() in that scope was a typo. Your explanation and code with what notabene wrote help me get the game working. Thanks. " CreationDate="2011-01-21T00:27:55.107" UserId="4761" />
  <row Id="9666" PostId="7556" Text="Is this homework?" CreationDate="2011-01-21T00:59:15.143" UserId="51" />
  <row Id="9667" PostId="888" Score="2" Text="For most software, that relationship between number of cores and frame rate is not linear." CreationDate="2011-01-21T01:34:50.817" UserId="373" />
  <row Id="9668" PostId="7534" Score="1" Text="BINK video, which isn't free." CreationDate="2011-01-21T01:35:55.493" UserId="395" />
  <row Id="9669" PostId="7555" Score="1" Text="+1 this describes essentially how I created my State Machine. It is working out well." CreationDate="2011-01-21T02:25:06.750" UserId="2787" />
  <row Id="9670" PostId="7506" Text="Nice, I had no idea the api for the audio stuff was so simple for basic stuff, I'll have to persue that." CreationDate="2011-01-21T02:58:58.237" UserId="284" />
  <row Id="9671" PostId="7498" Text="Erm, it's not a corporate site, so I try to avoid IE7 and IE6, so for simplicity's sake, ie8, webkit, and the latest version of safari." CreationDate="2011-01-21T03:00:34.710" UserId="284" />
  <row Id="9672" PostId="7498" Text="Err, latest version of Firefox, that is." CreationDate="2011-01-21T04:07:20.193" UserId="284" />
  <row Id="9673" PostId="7543" Text="I do agree, while VM's cover a whole lot of bases, it does have limitations. Judging by the plethora of responses however I think the asker will be just fine ^_^" CreationDate="2011-01-21T05:02:43.560" UserId="4456" />
  <row Id="9674" PostId="7559" Text="Community Wiki is a mod-only feature now.  I see no reason in particular to make this post CW, since I would hope the answers would be more &quot;why&quot; rather than just a list of answers." CreationDate="2011-01-21T05:36:30.890" UserId="51" />
  <row Id="9675" PostId="7538" Text="at least I got any kind of answer there. " CreationDate="2011-01-21T05:50:28.620" UserId="4129" />
  <row Id="9676" PostId="888" Score="2" Text="This relationship also implies that game is CPU limited, which is not true often." CreationDate="2011-01-21T06:29:50.443" UserId="3644" />
  <row Id="9677" PostId="7556" Text="True, it's written a bit in that way.. I'd love to know what school gives such schoolwork though =)" CreationDate="2011-01-21T07:09:05.583" UserId="4264" />
  <row Id="9679" PostId="7493" Text="I'll keep that in mind. Thx." CreationDate="2011-01-21T08:53:33.160" UserId="4564" />
  <row Id="9680" PostId="7561" Score="1" Text="Which renderer do you use? Mean maya software, mental ray? Another else?" CreationDate="2011-01-21T08:56:10.490" UserId="3794" />
  <row Id="9681" PostId="7556" Score="2" Text="No, it's not a homework. I would love too to have such a project as a home task." CreationDate="2011-01-21T09:38:30.157" UserId="4776" />
  <row Id="9682" PostId="7561" Text="-1, off topic..." CreationDate="2011-01-21T10:55:51.757" UserId="20" />
  <row Id="9683" PostId="7566" Text="thanks for replying to offtopic question! Do tell the right stackoverflow family site where i can put more such questions." CreationDate="2011-01-21T10:56:19.587" UserId="4782" />
  <row Id="9684" PostId="7566" Text="my team says vray would take double time but quality will be good.  i did not knew that before! I hope my client accepts the work...and any option to improve quality after rendering from maya default render option ?!" CreationDate="2011-01-21T10:58:47.137" UserId="4782" />
  <row Id="9685" PostId="7566" Text="Vray would take double time? No ... It will be much faster. For speeding up, try to turn off some of secondary rays - mean most of indirect lighting (maybe you dont need it at all...), use less values for antialiasing ... " CreationDate="2011-01-21T11:09:34.283" UserId="3794" />
  <row Id="9686" PostId="7561" Text="i gave -1 also. This is not right place to ask" CreationDate="2011-01-21T11:12:25.763" UserId="3794" />
  <row Id="9687" PostId="7566" Text="Try some CG artist forums. Not game developers QA. You will most propably not get your answer here. " CreationDate="2011-01-21T11:13:23.967" UserId="3794" />
  <row Id="9688" PostId="7538" Text="You didn't get an answer here because your question was a duplicate of an existing one, and because people here tend not to answer questions posted on SO also." CreationDate="2011-01-21T11:30:01.017" UserId="744" />
  <row Id="9689" PostId="7567" Text="-1: Read the question more carefully." CreationDate="2011-01-21T11:47:27.963" UserId="2698" />
  <row Id="9691" PostId="7534" Text="I would love to, but I don't have $6000, as I mentioned, so that's not even close to a viable option. I will look into theora and webm, though. Thank you." CreationDate="2011-01-21T16:06:04.477" UserId="4720" />
  <row Id="9692" PostId="6557" Score="2" Text="Technically it's possible, yes. Realistically is another matter." CreationDate="2011-01-21T16:10:19.573" UserId="1156" />
  <row Id="9693" PostId="6567" Text="top rated answer says basically the same thing.." CreationDate="2011-01-21T16:51:31.907" UserId="4212" />
  <row Id="9694" PostId="7571" Text="That is an excellent blog post; thank you! Exactly what I was looking for!" CreationDate="2011-01-21T17:23:47.020" UserId="2100" />
  <row Id="9695" PostId="7534" Text="The alternative is not use video at all, just use normal animated sprites." CreationDate="2011-01-21T17:35:52.640" UserId="395" />
  <row Id="9696" PostId="7477" Text="@Exa, That thread is full of them (although for some reason that particular asker didn't want to use neverwinter nights for some reason).  Also if this is the path you go down, you should mark my answer as &quot;accepted&quot;." CreationDate="2011-01-21T17:55:56.883" UserId="51" />
  <row Id="9697" PostId="7468" Text="Could help if you put that in an answer and accept it in case anyone else runs into a similar problem :)" CreationDate="2011-01-21T18:25:34.303" UserId="2332" />
  <row Id="9698" PostId="7538" Text="No Joe, I posted to SO because I didn't see any activity here.  In fact, I generally note that SO is a better place for getting answers as a hobby games programmer." CreationDate="2011-01-21T19:26:19.817" UserId="4129" />
  <row Id="9699" PostId="7534" Text="Looked into Theora, and I believe that's a viable codec for us. For those who are worried about &quot;submarine patents&quot;, it states on the Theora website: &quot;Theora (and all associated technologies released by the Xiph.org Foundation) is released to the public via a BSD-style license. It is completely free for commercial or noncommercial use. That means that commercial developers may independently write Theora software which is compatible with the specification for no charge and without restrictions of any kind.&quot;http://www.theora.org/faq/#24" CreationDate="2011-01-21T20:08:50.640" UserId="4720" />
  <row Id="9700" PostId="7576" Text="I do not know what you mean by 'mini-game'. What you are meaning is isometric." CreationDate="2011-01-21T20:25:30.290" UserId="1156" />
  <row Id="9701" PostId="7531" Score="1" Text="I've heard tons of great stuff about using cocos2d for any 2d iphone game." CreationDate="2011-01-21T21:21:44.853" UserId="1910" />
  <row Id="9702" PostId="7421" Text="You can always try forming a team, and dividing the amount made. Though this usually requires trust, and at least a prototype of the game (so the artist doesnt feel the project is going nowhere)" CreationDate="2011-01-21T21:26:49.277" UserId="2301" />
  <row Id="9703" PostId="7421" Text="Yes that is true, unfortunately I do not know many artists. Perhaps once the game is more completed, I can post on forums to see if anyone is interested in doing the artwork." CreationDate="2011-01-21T21:37:03.587" UserId="3659" />
  <row Id="9704" PostId="7233" Score="1" Text="have fun waiting several seconds for it to open! Bah its slow (even on fast machines)" CreationDate="2011-01-21T21:43:05.700" UserId="2301" />
  <row Id="9705" PostId="344" Text="-1 that don't answer the question." CreationDate="2011-01-22T00:06:03.927" UserId="364" />
  <row Id="9706" PostId="344" Text="@Mike One died from... well I can't tell you. It's a secret." CreationDate="2011-01-22T04:51:22.717" UserId="3637" />
  <row Id="9707" PostId="7177" Text="Partial duplicate of http://gamedev.stackexchange.com/questions/4666/would-it-be-better-to-use-xml-json-text-or-a-database-to-store-game-content. Definitely related at least." CreationDate="2011-01-22T06:23:24.960" UserId="395" />
  <row Id="9708" PostId="7563" Text="Ah, CEGUI, I did see it some time, thanks for mentioning it, +1" CreationDate="2011-01-22T10:34:59.940" UserId="4284" />
  <row Id="9709" PostId="7565" Text="+1 Thanks for the valuable info on performance, I did know about NeHe's tutorials. I think I did use bitmap fonts... but it didn't scale: about 60 labels floating in a scene above spheres joined by lines, any insight to that? (I was thinking I should have looked for a way to implement a flyweight pattern)" CreationDate="2011-01-22T10:38:50.603" UserId="4284" />
  <row Id="9710" PostId="7177" Text="@coderanger: thanks for you tip." CreationDate="2011-01-22T13:16:03.767" UserId="3630" />
  <row Id="9711" PostId="7591" Score="3" Text="In my experience, pathfinding and swarm AI are far, far easier to properly implement than neural networks or fuzzy logic.  Both pathfinding and swarm have simple, established algorithms: neural nets are messy and hard to tune." CreationDate="2011-01-22T14:15:07.423" UserId="953" />
  <row Id="9712" PostId="7592" Text="+1 - Interesting thing about the shamble, sounds like a pretty nice technique to consider (because of the realism factor). Thing is, AI is a requirement for this project." CreationDate="2011-01-22T14:48:39.683" UserId="4284" />
  <row Id="9713" PostId="7592" Score="1" Text="@dukeofgaming AI != neural nets/fuzzy logic/genetic algorithms. Any solution you use to give your zombies an element of &quot;intelligence&quot; is AI, be that steering behaviours, FSMs, pathfinding, fuzzy logic, etc. Just because universities like to teach about neural networks and genetic algorithms, does NOT mean that you can automatically equate them with AI. AI is a much, much broader topic." CreationDate="2011-01-22T16:01:57.687" UserId="2332" />
  <row Id="9714" PostId="7573" Text="Thanks @bluescrn. I'm doing a image visual f/x app. Entirely gesture driven." CreationDate="2011-01-22T16:16:53.560" UserId="3563" />
  <row Id="9715" PostId="7585" Text="I'm not worried about memory usage, I'm more interested in managing dependencies (in the Object Oriented Design sense).  It's not the extra memory the first solution would entail that worries me, it's the cyclic dependency I'm leery of, as much as I like the O(1) co-ord getter. Also, I know a lot of games are pixel based now, but I like tiles so that's what I'm using. :P" CreationDate="2011-01-22T16:28:11.057" UserId="4802" />
  <row Id="9716" PostId="7587" Text="So, the spatial partitioning data structure you mention could just be the map (which in my case is ostensibly a 2D grid of tiles).  I assume when a unit moves (or is added, or is removed) I still need to update both the unit and the spatial partitioning structure to keep them in sync.  Perhaps it's one of those things I'll have to live with?" CreationDate="2011-01-22T16:33:41.470" UserId="4802" />
  <row Id="9717" PostId="7589" Score="1" Text="What programming language / environment are you using?" CreationDate="2011-01-22T16:38:14.810" UserId="450" />
  <row Id="9718" PostId="7587" Score="1" Text="Yes, the map is the most fine grained spatial partition you would use. The global list of all units is the most coarse grained partition. ;) You only need to update the partition before it's used. If you're using it all the time you probably want to update it every time the unit is moved. However if you're only using it for some phases of the update logic, you can go through the unit list in one pass and compute the partition data structure, then discard it when you're done. That way you don't have to keep them in sync all the time." CreationDate="2011-01-22T16:56:55.960" UserId="2472" />
  <row Id="9719" PostId="7596" Text="+1 For the comprehensive explanations and advices. I have already taken a course on AI, however the farthest we made it was neural nets. I think I might have accidentally answered myself about swarm intelligence being useful, but after reading your answer now I know its not about one simple algorithm, but many and for each case, I think the book (which I do remember having seen) will be quite the resource. Thanks. BTW, what is BSP?." CreationDate="2011-01-22T17:17:18.810" UserId="4284" />
  <row Id="9720" PostId="7585" Text="@AJM, same, the paid apps I will be releasing on android will be using tiles." CreationDate="2011-01-22T17:21:33.783" UserId="4803" />
  <row Id="9721" PostId="877" Text="It was called &quot;'How do I make games?' A Path to Game Development&quot;. I couldn't find it on their new site But here is the Google cache: http://webcache.googleusercontent.com/search?q=cache:tmgnfaNiK2oJ:www.gamedev.net/reference/articles/article892.asp+tetris+breakout+plat+former+site:gamedev.net&amp;cd=7&amp;hl=en&amp;ct=clnk&amp;gl=ca&amp;client=safari" CreationDate="2011-01-22T17:36:45.990" UserId="8" />
  <row Id="9722" PostId="6946" Text="^ +1 for XM/IT. Or if you wanna go crazy, implement your own NSF player with System::createDSPByType() for your tone generators. ^_^" CreationDate="2011-01-22T17:43:33.257" UserId="3656" />
  <row Id="9723" PostId="7596" Text="@dukeofgaming BSP stands for Binary Space Partitioning. It's a method that constructs a binary tree out of your level by splitting the level up into sections. It uses the walls in the level to construct subsections (hence why it's suited for indoor levels). This, like the octtree or the quadtree makes it easier to detect collisions, draw certain objects, etc. It's just an optimization." CreationDate="2011-01-22T18:12:45.280" UserId="2332" />
  <row Id="9725" PostId="7596" Text="Furthermore, all of those algorithms are collectively known as steering behaviours. Actually I'll edit my answer to add that and another link which may be of use to you :)" CreationDate="2011-01-22T18:27:48.520" UserId="2332" />
  <row Id="9726" PostId="7600" Score="2" Text="So... eating brains does not make them smarter?" CreationDate="2011-01-22T20:03:48.650" UserId="2188" />
  <row Id="9727" PostId="7600" Text="+1 one, I like that =)" CreationDate="2011-01-22T20:15:16.510" UserId="2910" />
  <row Id="9728" PostId="7591" Score="1" Text="You've got a little bit of a contradiction there - quick and dirty + neural nets? ;-)" CreationDate="2011-01-22T20:20:23.387" UserId="1156" />
  <row Id="9729" PostId="7600" Text="@Lo'oris I actually made that joke to my teammates. Then I told them what we actually needed was artificial stupidity." CreationDate="2011-01-22T20:53:39.960" UserId="4284" />
  <row Id="9730" PostId="7600" Text="Well, as I said, AI (in some form that enhances gameplay) is a requirement... doesn't really mean they are intelligent enemies, only that they can adapt to the environment in some form that represents a challenge to the player." CreationDate="2011-01-22T20:55:27.480" UserId="4284" />
  <row Id="9731" PostId="7591" Text="@The Communist Duck Yeah, I think I have a case of the its-the-only-thing-I-learned-so-i-want-it-to-use-everywhere-itis. I made a very simple and reusable neural net some time ago (https://bitbucket.org/dukeofgaming/chibi-nn), so I was thinking that using it (or parting from there enhancing it) would be quick and dirty... mind modelling the actual game for training cases." CreationDate="2011-01-22T21:00:02.073" UserId="4284" />
  <row Id="9732" PostId="7600" Score="1" Text="Considering adding more than just these two states. These are the most basic not including evade (Zombies don't really evade). Think of additional states that you want your Zombies to have. Maybe a Frenzy state, maybe they reanimate after a they player has walked another direction? This is the endless fun with game design =)" CreationDate="2011-01-22T21:18:57.530" UserId="2910" />
  <row Id="9733" PostId="7602" Text="Irrlicht is just a rendering engine. You would still need to write the game play portion of it." CreationDate="2011-01-22T21:37:57.603" UserId="14" />
  <row Id="9734" PostId="7591" Score="1" Text="I don't think it needs the Homework tag, as even though this is homework, the question and answer would be the same regardless of the source. Do other people have to tag their questions in regards to their current occupation on the project?" CreationDate="2011-01-22T21:49:17.620" UserId="962" />
  <row Id="9735" PostId="7606" Score="3" Text="Please don't use bit.ly links. This isn't Twitter." CreationDate="2011-01-22T23:26:19.910" UserId="744" />
  <row Id="9736" PostId="6297" Text="I couldn't figure out how to implement it your way so I have posted my answer.  If you could elaborate on your answer referencing my answer it would be greatly appreciated." CreationDate="2011-01-22T23:27:30.550" UserId="1037" />
  <row Id="9737" PostId="7608" Score="5" Text="Please explain downvotes so I can revise the question or vote to close if you feel this question is inappropriate." CreationDate="2011-01-22T23:34:15.170" UserId="4212" />
  <row Id="9738" PostId="7544" Text="Let me rephrase your question. Whats the difference between fixed function rendering and Shaders?" CreationDate="2011-01-23T01:15:30.203" UserId="4086" />
  <row Id="9739" PostId="7589" Text="Primarily C++, but potentially C# in the future" CreationDate="2011-01-23T01:44:21.587" UserId="659" />
  <row Id="9740" PostId="7591" Text="@Hobo: on SO if it's homework (and doesn't get closed) it is tagged homework. This clearly should not be closed, but I think it deserves the tag anyway." CreationDate="2011-01-23T01:46:41.303" UserId="2188" />
  <row Id="9741" PostId="7607" Text="I guess you mean crawl? Unless these zombies are somehow bird-propelled, of course." CreationDate="2011-01-23T01:48:46.667" UserId="2188" />
  <row Id="9742" PostId="7607" Score="2" Text="Zombies are stupid, but hungry still. I can't imagine a game like L4D being fun with totally stupid idiotic zombies that can't find you... I mean, all you would need to survive would be a broom to push them away." CreationDate="2011-01-23T04:22:55.790" UserId="4284" />
  <row Id="9743" PostId="7591" Text="About the homework thing, I'll just keep in mind not to say again that any stuff I do is about or relevant-to any academic projects =)" CreationDate="2011-01-23T04:28:06.703" UserId="4284" />
  <row Id="9744" PostId="7596" Text="Thanks for your answer" CreationDate="2011-01-23T04:28:44.813" UserId="4284" />
  <row Id="9745" PostId="7607" Text="@Lo'oris:  I mean that it should evaluate the distance from squares by the straight-line distance, not the minimum path." CreationDate="2011-01-23T05:19:00.457" UserId="3175" />
  <row Id="9746" PostId="7607" Score="1" Text="@Dukeofgaming:  How do you get that?  The broom isn't going to push them and if you're that close they'll be trying to attack you.  Give them a long sense range if you want but zombies are not intelligent, don't give them intelligence in hunting." CreationDate="2011-01-23T05:22:24.663" UserId="3175" />
  <row Id="9747" PostId="489" Text="Good question! I'm more prepared to launch an app successfully thanks to the answers here... ... at least I hope so haha" CreationDate="2011-01-23T07:07:43.243" UserId="1910" />
  <row Id="9748" PostId="7615" Score="1" Text="I had forgotten about Homeworld... that was a cool game" CreationDate="2011-01-23T07:14:33.110" UserId="1910" />
  <row Id="9749" PostId="7618" Text="I looked into this. It seemed like a great idea. However, the license prohibits me from using the source as a starting point&#xA;&#xA;  `(b) distribute the SOFTWARE PRODUCT and the MODIFIED SOFTWARE, solely for&#xA;non-commercial purposes, and only to registered members of RDN-RELIC&#xA;Developer's Network who have agreed to abide by the terms of this Agreement.`" CreationDate="2011-01-23T08:40:45.380" UserId="4086" />
  <row Id="9750" PostId="7598" Text="I did that, but I still facing the same problem!" CreationDate="2011-01-23T09:43:13.623" UserId="3817" />
  <row Id="9751" PostId="7608" Score="1" Text="Not sure what the difference between GAE and an &quot;authoritative server&quot; here is. Are you suggesting you want to transfer all your game data to a remote server every minute? Google will probably object to that more than slightly." CreationDate="2011-01-23T10:32:00.080" UserId="395" />
  <row Id="9752" PostId="7609" Text="Warcraft III editor and &quot;engine&quot; have very much limitations, such as interface, hotkey system, etc... I'm looking for C++ engine." CreationDate="2011-01-23T10:56:42.380" UserId="4818" />
  <row Id="9753" PostId="7605" Text="I checked this. Glest work's very slow, especially on my ubuntu. Is this design problem or specific?" CreationDate="2011-01-23T10:57:22.893" UserId="4818" />
  <row Id="9754" PostId="7614" Text="so the hash function would accept an x and a y argument and this would be mapped to basically an associative array with keys like 1x1, -1x3, etc?" CreationDate="2011-01-23T11:06:16.483" UserId="4820" />
  <row Id="9755" PostId="7594" Text="Ah, side-effectless approach. It would be a good solution for some situation. Thanks for your answer! " CreationDate="2011-01-23T11:08:55.040" UserId="2442" />
  <row Id="9756" PostId="7615" Score="1" Text="Potential duplicate: http://gamedev.stackexchange.com/questions/7602/rts-engine-or-dota-like-game" CreationDate="2011-01-23T11:39:29.480" UserId="1156" />
  <row Id="9757" PostId="7614" Text="Yeah. In C++ I'd just use an std::pair&lt;int,int&gt;; in Python, a dict with (x,y) tuples for keys. I'm not sure what language you're using." CreationDate="2011-01-23T13:43:09.923" UserId="744" />
  <row Id="9758" PostId="7612" Text="That question was actually called a slight duplicate of this one." CreationDate="2011-01-23T13:43:33.190" UserId="14" />
  <row Id="9759" PostId="7627" Text="This will perform poorly and require much more bookkeeping than a hash table or array. There's no benefit in the rooms having both an X,Y hash key _and_ forming a directed graph." CreationDate="2011-01-23T13:45:22.900" UserId="744" />
  <row Id="9761" PostId="7617" Text="possible duplicate of [What are the best iPhone game development resources?](http://gamedev.stackexchange.com/questions/5/what-are-the-best-iphone-game-development-resources)" CreationDate="2011-01-23T13:50:20.507" UserId="744" />
  <row Id="9762" PostId="7609" Text="I don't know what you mean by &quot;interface&quot;, but if you look at many of the Starcraft II editor examples, they don't look anything like Starcraft's UI. DotA itself was made in the WC3 engine, so the &quot;interface&quot; can certainly support a DotA-like game." CreationDate="2011-01-23T13:54:08.517" UserId="744" />
  <row Id="9763" PostId="7627" Text="How would you do fast access of rooms with only the directed graph? How would you do path finding with only an X,Y hash key? This would require additional logic to determine the adjacent rooms. The hash key is really just another view of the game world. I agree that handling a graph is more trouble, but will benefit algorithms using the graph. Performance depends on the size of the game world. So this has to be prototyped. Thx for the down-vote. Cheers!" CreationDate="2011-01-23T14:41:32.853" UserId="4345" />
  <row Id="9764" PostId="7538" Text="You were also given a possible duplicate question with an accepted answer to your request. If you feel that way, I suggest you use SO, but questions are starting to be migrated here more frequently from SO that refer to games dev. Just something to think about." CreationDate="2011-01-23T15:32:06.413" UserId="2332" />
  <row Id="9765" PostId="6603" Text="@Nicolas K. - Do you mean Jan _2011_?" CreationDate="2011-01-23T17:25:41.357" UserId="2946" />
  <row Id="9766" PostId="7627" Text="Nothing in pathfinding precludes using a hash of X,Y pairs. Successor states are successor states, it doesn't matter if you maintain a crazy graph or look it up on a hash table, except that the hash table is faster and uses less memory." CreationDate="2011-01-23T17:56:43.740" UserId="744" />
  <row Id="9767" PostId="7468" Text="@Matthew Poole: what happens to P?  You compute it but don't test it?" CreationDate="2011-01-23T19:04:01.347" UserId="4129" />
  <row Id="9768" PostId="7627" Text="The hash key solution is less abstract. As I wrote before the pathfinder must know which rooms are adjacent to each other, how to calculate the distance to the target room etc. You would put knowledge about the game world into your pathfinding algorithm. If the setup of the game world changes e.g. movement from rooms which are diagonal to each other is permitted or a third dimension is added, you would need to change every algorithm accessing the game world. Graphs abstract this away. Nothing crazy about it. There are always drawback to every solution." CreationDate="2011-01-23T20:24:47.640" UserId="4345" />
  <row Id="9770" PostId="7627" Score="1" Text="&quot;Graphs abstract this away.&quot; So does any iterator, generator, coroutine, or list-building method, and they don't require O(n) structure bloat nor more build-time bookkeeping." CreationDate="2011-01-23T21:14:55.257" UserId="744" />
  <row Id="9771" PostId="7615" Text="not a duplicate. Homeworld would not be a suitable Dota engine, and Starcraft 2 would not be a suitable Homeworld engine." CreationDate="2011-01-23T22:07:01.677" UserId="4086" />
  <row Id="9772" PostId="7612" Text="True is same topic, but it has additional resources I thought notable to link as well." CreationDate="2011-01-23T22:14:04.477" UserId="1037" />
  <row Id="9773" PostId="7635" Score="3" Text="More adrenaline? In games like Operation Flashpoint you can save game only when you finish mission. I was so scared at the end of the 30-45 minute mission like no game before and after did with me :) " CreationDate="2011-01-23T23:24:23.383" UserId="3794" />
  <row Id="9775" PostId="7638" Score="6" Text="-1 argumentative, sorry. It really depends on a company. And they will consider you for your skills not what you wear. And at the end this is not fashion.stackexchange.com :-)" CreationDate="2011-01-24T01:11:18.713" UserId="3794" />
  <row Id="9776" PostId="7608" Text="An authoritative servers is simply a server running a process which is able to get full *authority* to the database.  The server maintains the current world state, pulling in state variables from the database to calculate the next world state.  In client-centric network models, sometimes this is called an authoritative client because it extends some control over the overall state of the game world.  Whether authoritative server is the proper term or not, it's simply a server with full DB access." CreationDate="2011-01-24T01:12:05.983" UserId="4212" />
  <row Id="9777" PostId="7638" Score="1" Text="This doesn't relate to games in any way. Regardless, you always want to convey a professional appearance. It doesn't matter about the culture, you want to make a professional first impression. Formal." CreationDate="2011-01-24T01:12:48.090" UserId="2332" />
  <row Id="9778" PostId="7638" Score="3" Text="How is this argumentative in any way? I expect that many people using this Game Development exchange are or have been involved in professional game development companies at some point and would have some insight into my question. I know it depends on the company, which is why I gave a specific example of my target company. Please refer to the gamedev.stackexchange FAQ. What kind of questions can I ask here? &quot;Game industry (careers, trends, technology, etc)&quot;" CreationDate="2011-01-24T01:13:58.600" UserId="4690" />
  <row Id="9779" PostId="7638" Score="2" Text="@Bill if you were to ask &quot;What types of interview questions can I expect for a role at a games company?&quot; or something to do with the content of the interview itself, then I'm sure a lot of people would help you. What you are asking at the moment is a common sense question. There is no difference between a job at a games company and a job at another company, both are professional." CreationDate="2011-01-24T01:45:49.833" UserId="2332" />
  <row Id="9780" PostId="7638" Score="2" Text="A good way to see if a question is off topic. If you remove &quot;Game Development&quot; from the question does it still seem like it would be on-topic? " CreationDate="2011-01-24T02:09:30.020" UserId="14" />
  <row Id="9781" PostId="7606" Score="1" Text="Joe, analytics are a key tool that you should be taking advantage of anywhere you can (including your games). It never hurts to see where your traffic is coming from." CreationDate="2011-01-24T02:46:45.960" UserId="55" />
  <row Id="9782" PostId="7640" Text="You mention only view matrix. Do you consider perspective matrix in your code? Means ... how do you define angle in this function:  Frustum(hsMatrix44 cam, float znear, float zfar, float angle, float aspect). Do you use correct Fov and aspect?" CreationDate="2011-01-24T02:52:24.773" UserId="3794" />
  <row Id="9783" PostId="489" Text="The answers will definitely help as long as you dedicate the time to it (this is time consuming stuff). I've read a lot of good stuff since my last project but by far the link I just recently posted below is the best." CreationDate="2011-01-24T03:01:59.280" UserId="55" />
  <row Id="9784" PostId="7636" Score="1" Text="I think @Tim Holt 's answer is more correct. Developers do not want the player to save moments before death. In a HL1 mod a while ago I was going through it with quicksave. I fell off a cliff and in mid-air I tried to quick-reload, instead I hit quick save. So my only working save file was me midair heading towards the ground at terminal velocity. Not allowing to save in a firefight prevents broken save files." CreationDate="2011-01-24T03:12:18.453" UserId="962" />
  <row Id="9785" PostId="7636" Text="@AttackingHobo I did say that was the main reason in the first paragraph. Although I'm not certain if it was very clear." CreationDate="2011-01-24T03:22:04.010" UserId="2332" />
  <row Id="9786" PostId="7404" Text="Whilst I was hoping for more answers to supplement yours... this has pointed me in the 'right direction' so I've accepted your answer :)  Many thanks." CreationDate="2011-01-24T03:54:42.597" UserId="2853" />
  <row Id="9787" PostId="7636" Text="Being in a firefight is a bit different from an entirely un-winable game state." CreationDate="2011-01-24T05:28:36.237" UserId="962" />
  <row Id="9788" PostId="7640" Score="1" Text="There have been several frustum/aabb culling code questions recently; would some expert make a definitive how (not why) guide that shows the steps e.g. how/  *when* to make the frustum, what transform to use on the things to test etc?" CreationDate="2011-01-24T06:00:55.407" UserId="4129" />
  <row Id="9789" PostId="7637" Text="However, if they had prevented you from saving your Dead Space game during the combat, all you'd have was your VERY old save. If they mean to disable saving at certain points, they should either warn you when you won't be able to save soon, or implement a nice auto-save (and imho, every game needs an auto-save!)" CreationDate="2011-01-24T06:09:19.773" UserId="3333" />
  <row Id="9790" PostId="7637" Score="1" Text="@Konerak: You're neglecting the possibility he had saved very soon before the boss fight, then overwrote that save during the fight. Otherwise I agree, autosaving before a spot like that is a very nice idea." CreationDate="2011-01-24T07:43:03.113" UserId="2698" />
  <row Id="9791" PostId="7637" Score="1" Text="An auto save when approaching the area where combat begins is much better than not being able to save in combat at all. It's very frustrating when you can't save in a long combat sequence, which Mass Effect has plenty of." CreationDate="2011-01-24T08:27:33.473" UserId="4838" />
  <row Id="9792" PostId="7637" Score="2" Text="@Jonathan: you're right - maybe I overlooked it because imho **no serious gamer should ever overwrite a savegame** - why, you don't want to spend the 20Mb diskspace? The savegame-list loads slower? The advantages don't outweigh the possible disadvantage: you're stuck... or just the fun of having an area ready to replay!" CreationDate="2011-01-24T08:33:38.663" UserId="3333" />
  <row Id="9793" PostId="7637" Text="@Konerak: I have no idea about Dead Space but some games don't lend themselves to a large save list. In Fallout 3 all you have to distinguish save games is a date and a pretty picture - managing multiple characters becomes a nightmare, and finding other characters in a long list of save files becomes a game of hide-and-seek. When two characters are wearing similar armour around the same date, it becomes marco polo for the deaf. Keeping a short save list with a limited number of saves per character is the only good way to manage this." CreationDate="2011-01-24T08:48:17.657" UserId="2698" />
  <row Id="9794" PostId="7637" Score="1" Text="@Konerak: Of course, if a game's got a half-decent save system all those problems will evaporated. Gamer profiles for the different people using the same installation, multiple characters per profile, each character only sees its own saves. But sometimes when it comes to overwriting a savegame you have little choice to keep things manageable." CreationDate="2011-01-24T08:50:17.763" UserId="2698" />
  <row Id="9795" PostId="7646" Score="1" Text="Two points: You might want to clarify what you want the VM for.  When I hear &quot;virtual machine&quot; I think virtualbox, namely being able to, say, run a bunch of different OSes virtually for testing games.   Obviously after reading the question I understand a little bit better, but you might want to explicitly call it out as a scripting back end." CreationDate="2011-01-24T09:03:31.877" UserId="51" />
  <row Id="9796" PostId="7646" Text="Also, these kinds of questions are expressly frowned upon in the FAQ: &quot;your answer is provided along with the question, and you expect more answers: “I use ______ for ______, what do you use?”&quot;.  Do you have a specific problem with specific requirements that you need a VM for?  " CreationDate="2011-01-24T09:05:07.113" UserId="51" />
  <row Id="9797" PostId="7648" Score="1" Text="&quot;it's not because these developers are unaware of RL&quot; Are you sure?  That seems to be a big assumption." CreationDate="2011-01-24T09:10:57.213" UserId="51" />
  <row Id="9798" PostId="7617" Text="Joe is right. Maybe we could merge the two questions/answers?" CreationDate="2011-01-24T09:11:27.133" UserId="20" />
  <row Id="9799" PostId="7646" Text="@Tetrad: Thanks for your comments. I've included the problem I'm trying to solve at the end of my question." CreationDate="2011-01-24T09:14:42.293" UserId="1581" />
  <row Id="9800" PostId="7637" Score="1" Text="@Jonathan: again, I agree :) As a developer I apply my experience as a gamer (often even using windows explorer to copy/backup savegame files! (Oblivion, multiple characters indeed)). This goes beyond games: imho in this modern day and age, each software tool should auto-save regularly." CreationDate="2011-01-24T09:46:47.987" UserId="3333" />
  <row Id="9801" PostId="7637" Score="2" Text="Important developer savegame lessons: 1/ Autosave regularly, and why not multiple non-overwriting autosaves? 2/ Allow gamer to &quot;name&quot; a savegame, so he can organize. 3/ Remind the gamer to save often! (I did like that about Oblivion: &quot;Planes of Oblivion are a dangerous place, remember to save often&quot; - a bit Out Of Character, but excellent advice)" CreationDate="2011-01-24T09:48:56.480" UserId="3333" />
  <row Id="9802" PostId="7589" Text="I pitched this as a business idea to some web-hosting-guys I knew some years ago, but the business case is hard to make.. " CreationDate="2011-01-24T10:39:44.417" UserId="4264" />
  <row Id="9803" PostId="7650" Text="From a quick glance, A* seems to be cheaper to implement, faster to process, takes less memory, is more predictable, etc. than RL. RL might, however, produce more realistic results." CreationDate="2011-01-24T10:52:24.260" UserId="4264" />
  <row Id="9804" PostId="7544" Text="That's a completely different question though." CreationDate="2011-01-24T11:35:07.453" UserId="4264" />
  <row Id="9805" PostId="7648" Text="Care to share some links or papers on RL in pathfinding?" CreationDate="2011-01-24T12:06:36.050" UserId="653" />
  <row Id="9807" PostId="7605" Text="Seems likely to be your machine setup.  Try MegaGlest, it has lots of rendering performance improvements though." CreationDate="2011-01-24T12:37:30.640" UserId="4129" />
  <row Id="9808" PostId="7644" Score="2" Text="*&quot;in console emulators with &quot;save state&quot; functions, you can practically tune your game to be perfect&quot;* &lt;-- welcome to Tool Assisted Speedruns http://tasvideos.org/" CreationDate="2011-01-24T13:03:05.440" UserId="2188" />
  <row Id="9809" PostId="7649" Text="-1 answer very redundant with the already posted ones" CreationDate="2011-01-24T13:04:15.517" UserId="2188" />
  <row Id="9810" PostId="7644" Score="1" Text="@Lo'oris Yep I've seen those. I love them. Especially the quadruple Mega Man." CreationDate="2011-01-24T13:07:14.840" UserId="141" />
  <row Id="9811" PostId="7648" Score="2" Text="Given the various optimality / bounds proofs for A* (and related algorithms), what do you think RL brings to the table for pathfinding?" CreationDate="2011-01-24T13:40:28.047" UserId="744" />
  <row Id="9812" PostId="7650" Score="4" Text="On the contrary, RL agents tend to produce hilariously unreal results during their initial learning phase. A* with some small steering behaviors looks a lot more natural." CreationDate="2011-01-24T13:42:21.663" UserId="744" />
  <row Id="9813" PostId="7615" Score="1" Text="I remain wary of a million questions &quot;What engine is good for a game like X?&quot; for all possible games. From the perspective of choosing an engine, Homeworld and DotA are very similar. More specialization is really asking for someone to have made your game for you." CreationDate="2011-01-24T13:49:32.403" UserId="744" />
  <row Id="9814" PostId="7645" Score="2" Text="&quot;`whose` native language is obviously not English.&quot; :)" CreationDate="2011-01-24T13:55:59.010" UserId="744" />
  <row Id="9815" PostId="7638" Score="6" Text="**Pajamas** - indicating a willingness to work the 23 hours a day, only sleeping for an hour under the desk, that most large commercial game-development companies will expect from you..." CreationDate="2011-01-24T14:18:16.983" UserId="165" />
  <row Id="9816" PostId="7603" Text="That's some pretty sweet screenshots. I think this has got to be the accepted answer." CreationDate="2011-01-24T14:23:52.390" UserId="4662" />
  <row Id="9817" PostId="7640" Text="@notabene: the fov and apsect passed to my Frustum constructor match the ones used to generate my perspective matrix. I didn't see any reason to complicate things further trying to extract them from a perspective matrix when they were relatively easy to forward" CreationDate="2011-01-24T14:24:06.773" UserId="1974" />
  <row Id="9818" PostId="7608" Text="Just gonna comment since I don't have much experience with this. The idea makes sense to me. But do you know for sure that a world update is too CPU intensive for GAE? And what would stop you from making your GAE app incrementally send updates to the authoritative server so GAE doesn't have to handle a big request every time you update the world?" CreationDate="2011-01-24T14:33:24.707" UserId="3656" />
  <row Id="9820" PostId="7613" Text="That is awesome how streamlined it ends up being. Good to know that at the end of the day there's still a fairly big chunk of engineering to do handling the logic of audio playback despite the middleware available." CreationDate="2011-01-24T14:36:47.717" UserId="3656" />
  <row Id="9821" PostId="7657" Text="Kinda duplicate of http://gamedev.stackexchange.com/questions/41/what-are-some-good-resources-for-getting-a-beginner-started-in-developing-games" CreationDate="2011-01-24T14:38:57.780" UserId="2050" />
  <row Id="9822" PostId="7657" Score="1" Text="I wasn't certain if this was a duplicate, since @Will Marcouiller has a good deal of experience, it's more a change of scene." CreationDate="2011-01-24T14:40:08.377" UserId="2332" />
  <row Id="9823" PostId="7657" Text="I wouldn't call it a duplicate of that one. But there is a question somewhere with a competent developer looking for assistance in developing games." CreationDate="2011-01-24T14:41:34.623" UserId="14" />
  <row Id="9824" PostId="7659" Text="+1 That is the kind of answer I'm looking for! =) Thanks a lot Ray Dey! I've heard of XNA before, but I was not sure whether it was worth learning, since it is .NET specific. Is it not preferable to master any resources in game development, such as in C++? I shall check for XNA anyway as per your recommendation. Thanks! =)" CreationDate="2011-01-24T14:43:41.017" UserId="2778" />
  <row Id="9825" PostId="7659" Score="4" Text="No problem :) If you want to be able to prototype things a lot quicker without having to worry about the in's and out's or C++ with regards to game dev, then I'd suggest using XNA to get your head round basic games architecture first of all. After you've got the design in your head, it's a lot easier to transition to C++ (in my opinion)." CreationDate="2011-01-24T14:46:12.770" UserId="2332" />
  <row Id="9826" PostId="7657" Score="1" Text="To beat my own drum - http://iki.fi/sol/gp/" CreationDate="2011-01-24T14:47:25.327" UserId="4264" />
  <row Id="9827" PostId="7650" Text="Okay, more realistic results _eventually_ =)" CreationDate="2011-01-24T14:48:36.963" UserId="4264" />
  <row Id="9828" PostId="7640" Text="@Will: I don't think there is such a thing as a definitive tutorial. There's nothing special about a frustum, it's just another application of linear algebra and matrices. The problem is that matrices are like burritos (http://byorgey.wordpress.com/2009/01/12/abstraction-intuition-and-the-monad-tutorial-fallacy/)." CreationDate="2011-01-24T14:50:00.767" UserId="744" />
  <row Id="9829" PostId="7659" Text="Excellent point of view, Ray Dey, as for you mentionning about getting around with the basics with XNA, then drill down to C++ afterwards. You help me. Thanks! =)" CreationDate="2011-01-24T14:53:49.080" UserId="2778" />
  <row Id="9830" PostId="7657" Text="@Jari Komppa: Thanks for bringing up your drum-beat! =)" CreationDate="2011-01-24T14:57:13.803" UserId="2778" />
  <row Id="9831" PostId="7661" Score="1" Text="+1 2D games seem the way to go for easier and faster learning, in my opinion. What do you think of that?" CreationDate="2011-01-24T15:03:40.377" UserId="2778" />
  <row Id="9832" PostId="7660" Score="3" Text="Why did someone downvote this? I've run across plenty professional software engineers (and once, interviewed one!) that thought a game development team was entirely programmers, who also somehow produced all the graphics. The answer is simple, but it's a legitimate question." CreationDate="2011-01-24T15:19:28.313" UserId="744" />
  <row Id="9833" PostId="7660" Text="Thanks for your support Joe Wreschnig! In fact, I have a clue that 3D design is necessary to produce such game as FFXIII, for instance. But since there are 3D engines, etc. I am only wondering whether these are enough to begin with, somehow. I know this sounds vague, but my idea about game development is as well! =)" CreationDate="2011-01-24T15:27:03.160" UserId="2778" />
  <row Id="9834" PostId="7659" Text="And what do you think, Ray Dey, of the tutorials I have brought up after you wanswer my question, though I shall keep in mind to get in touch with XNA first? =)" CreationDate="2011-01-24T15:28:59.180" UserId="2778" />
  <row Id="9835" PostId="7609" Score="2" Text="You and your future players will both have to own the game, which a big minus in my opinion. Blizzard should release a SDK like Unreal did, even if only an outdated and old version, I think it would be awesome. Sell licenses to people who want to develop commercially for it, and keep it free for hobbyists." CreationDate="2011-01-24T15:30:19.083" UserId="1792" />
  <row Id="9836" PostId="7659" Text="I'll edit my answer to add what I think about the tutorials :)" CreationDate="2011-01-24T15:32:57.157" UserId="2332" />
  <row Id="9837" PostId="7663" Score="2" Text="When you say &quot;infrastructure&quot; do you mean software, hardware, services, or did you just want us to critique your existing plan as is?" CreationDate="2011-01-24T15:40:18.490" UserId="51" />
  <row Id="9838" PostId="7663" Text="I did mean all the above and just mentioned my idea - I don't know if it's any good :)" CreationDate="2011-01-24T15:43:22.307" UserId="4851" />
  <row Id="9839" PostId="7663" Text="Do you want/need this to scale up in a big way? or do you intend to go the WoW route, and just completely duplicate the above structure everytime you need to add more capacity? -- in other words, are you hoping to just add hardware to the existing system to add more use capacity, or just duplicate and move on?" CreationDate="2011-01-24T15:47:53.720" UserId="1198" />
  <row Id="9840" PostId="7663" Score="1" Text="@Nate - we are planing to scale up, not duplicate - so it should be fully scalable." CreationDate="2011-01-24T15:54:25.370" UserId="4851" />
  <row Id="9841" PostId="7659" Text="Accepted! Your answer definitely helps! =) Thanks!" CreationDate="2011-01-24T15:55:23.503" UserId="2778" />
  <row Id="9842" PostId="7660" Score="1" Text="Question should say &quot;required for 3D game development&quot;.  Answer is trivially &quot;no&quot; if you're not making a 3D game." CreationDate="2011-01-24T16:15:46.257" UserId="4191" />
  <row Id="9843" PostId="6557" Text="As a side note: Google made a JavaScript library on WebGL that is pretty cool: http://code.google.com/p/o3d/" CreationDate="2011-01-24T16:24:22.100" UserId="4858" />
  <row Id="9844" PostId="7638" Score="1" Text="Re-opening this for a variety of reasons mostly related to chat discussion here: http://chat.stackexchange.com/transcript/message/407025#407025" CreationDate="2011-01-24T16:44:27.653" UserId="14" />
  <row Id="9845" PostId="7666" Score="2" Text="+1, and especially for cologne. (If your interviewer is anything like me) It's very hard to consider you for employment if I can't stand to sit across from you." CreationDate="2011-01-24T17:03:00.990" UserId="14" />
  <row Id="9846" PostId="7663" Score="2" Text="-1 because http://teddziuba.com/2008/04/im-going-to-scale-my-foot-up-y.html - You don't cover any capacity requirements, you say the game isn't sharded but is it zoned, etc. The nature of performance optimizations - including scalability - requires specific information, and there is no absolute best architecture." CreationDate="2011-01-24T17:19:12.470" UserId="744" />
  <row Id="9847" PostId="7646" Text="When I hear Virtual Machine in the gaming world I think of game engines. A well written non-typed engine is pretty much a virtual machine for games. And if one is written to support all the different platforms... well you can see where I am going with this.. One of the best Gaming Virtual Machines? Unreal.. I have seen so many different types of games come out citing their technology its becoming annoying :)" CreationDate="2011-01-24T17:40:23.800" UserId="4443" />
  <row Id="9848" PostId="7667" Score="8" Text="Actually, the general rule (at least that I've heard since high school) for any job interview is to dress one step above what you'd wear every day. So if they wear jeans and a tshirt (as in common for the game industry), wear slacks and a button down shirt." CreationDate="2011-01-24T17:42:15.997" UserId="744" />
  <row Id="9849" PostId="7661" Text="2D games are indeed fertile ground for learning.  They also can be developed into commercial products.  Many web, phone, and downloadable games have been made by independent studios with only a handful or even a single developer." CreationDate="2011-01-24T17:45:51.280" UserId="4862" />
  <row Id="9850" PostId="7661" Text="And quite many 3d games are 2d at heart.. mass effect 2 is actually pretty 2d =)" CreationDate="2011-01-24T17:52:40.697" UserId="4264" />
  <row Id="9851" PostId="7667" Score="3" Text="Agree with Joe.  The one-step-fancier thing, which I also referenced in my answer, is a social commonplace indicating that you recognize the significance of the event." CreationDate="2011-01-24T18:10:51.733" UserId="4191" />
  <row Id="9852" PostId="7589" Text="Yeah, it'd be cool if there was an indie equivalent of Xbox Live for this sort of thing. It'd need to be cross-platform, support many languages, and be very quick+easy to integrate. But most importantly, open enough and inexpensive enough for developers to use the service" CreationDate="2011-01-24T18:45:24.733" UserId="659" />
  <row Id="9853" PostId="7638" Text="This is more suited to programmers.stackexhange.com , is it not?" CreationDate="2011-01-24T18:50:11.373" UserId="1156" />
  <row Id="9854" PostId="7667" Score="1" Text="That's a helpful rule of thumb to get me thinking in the right direction. Thanks, guys." CreationDate="2011-01-24T18:59:15.080" UserId="4690" />
  <row Id="9855" PostId="7666" Score="3" Text="'First impressions matter' -- This is the gem. Don't come into my interview like you just walked out of a party that ended at 3AM. Show that you care about yourself and this interview. How serious you take this interview is how serious I can expect you to take your job." CreationDate="2011-01-24T19:05:11.760" UserId="55" />
  <row Id="9856" PostId="7638" Score="2" Text="'Programmers' do not define dress-code standards. The industry the programmer works within does. It can vary widely from a game studio to a finance company." CreationDate="2011-01-24T19:09:24.187" UserId="55" />
  <row Id="9857" PostId="7661" Text="-1 For &quot;like math&quot;. Math is ALWAYS required (note: I did not actually downvote)." CreationDate="2011-01-24T19:19:35.717" UserId="3656" />
  <row Id="9858" PostId="7662" Text="yes, I definitely do not want to focus on the car physics or bells and whistles. thanks for a nice answer" CreationDate="2011-01-24T19:22:49.693" UserId="3818" />
  <row Id="9859" PostId="7638" Text="@The Communist Duck, there's nothing about the question that specifically implies that it's for a programmer's position." CreationDate="2011-01-24T19:34:50.273" UserId="51" />
  <row Id="9860" PostId="7382" Score="1" Text="In this question's current state, I feel it would fall under 'how do I make game X'. And if you've made more complex games, couldn't you simply pick up an up-to-date API reference and write a framework? ;-)" CreationDate="2011-01-24T19:35:51.377" UserId="1156" />
  <row Id="9861" PostId="7638" Text="Hm, good point. I overlooked that. Wouldn't the general idea be the same, however? It does seem a lot more informal than most other places are probably. But would the dress code change that much, depending whether it was a programmer or designer?" CreationDate="2011-01-24T19:37:58.957" UserId="1156" />
  <row Id="9862" PostId="7663" Score="1" Text="I would rephrase your question to something more concrete. What is 'best', in a factual, non-subjective way? Do you mean easiest to scale, easiest to manage, easiest to get going, fastest, or what?" CreationDate="2011-01-24T19:38:58.393" UserId="1156" />
  <row Id="9863" PostId="7661" Score="1" Text="Some bits are required, true, but for most of it, it's enough that you know someone who does. =) It doesn't matter if you know how matrices work if you can just use them as black boxes.." CreationDate="2011-01-24T19:58:18.320" UserId="4264" />
  <row Id="9864" PostId="7672" Text="Couldn't you split the cells into triangles, and test triangle-triangle?" CreationDate="2011-01-24T20:11:14.033" UserId="1156" />
  <row Id="9865" PostId="7638" Text="The dress code can change for, e.g., lead designer/programmer/artist and marketing/community reps, who are often the public face of a project. It is also sometimes higher for business development roles. But yes, I doubt there's a studio where the designers all wear suits and the programmers tshirts and sandals." CreationDate="2011-01-24T20:12:33.580" UserId="744" />
  <row Id="9866" PostId="7672" Text="The cells aren't physical polygons, just a spatial representation, and it takes advantage of the O(1) access times of an array. If I had a neighbourhood circle around the agent, to approximate the cells, I could create an AABB using the radius of the circle and easily find the intersections. The problem here is that only want the cells that are in front of me. I'm sure there's some geometric equations to help out, I just can't think of any for the life of me." CreationDate="2011-01-24T20:17:09.457" UserId="2332" />
  <row Id="9867" PostId="7638" Score="2" Text="I was more specifically talking about how the question wouldn't be as suitable on programmers.SE (although the answers are probably the same) given that the asker may or may not be a programmer." CreationDate="2011-01-24T20:39:43.837" UserId="51" />
  <row Id="9868" PostId="7663" Score="1" Text="&quot;Easiest&quot; is also subjective. Easiest for whom, over what timeframe, given what resources? Stack Exchanges work best with specific questions - &quot;I have built this server using LINQ and MSSQL, but it fell over after 70 transaction/second, here are my top two transactions accounting for 73% of my runtime, how should I increase my throughput?&quot;" CreationDate="2011-01-24T20:48:05.987" UserId="744" />
  <row Id="9869" PostId="7383" Text="Doesn't using the NDK imply C/C++?  Your examples are all Java." CreationDate="2011-01-24T20:50:25.013" UserId="370" />
  <row Id="9870" PostId="6603" Score="1" Text="@Nicolas K - Availability of a browser, and install base of a browser are very different things. 13% of internet traffic is still IE6. Source: http://marketshare.hitslink.com/browser-market-share.aspx?qprid=2" CreationDate="2011-01-24T21:14:30.743" UserId="154" />
  <row Id="9871" PostId="6603" Text="@DMan: Probably, since it's out now. I can't wait until someone figures out how to bluescreen (or kernel panic, or whatever it is Macs do) a crappy OpenGL driver using WebGL..." CreationDate="2011-01-24T21:15:24.563" UserId="744" />
  <row Id="9872" PostId="6557" Text="My assumption is that your question implies a 3D MMO. 3D is not a requirement for the genre, and in fact many MMOs have exist on the web for years as little more than HTML forms (See http://urbandead.com) Not to mention all the PHP games from Gameforge (http://en.gameforge.com) or the more exotic AJAX/Javascript stuff like Lord of Ultima (http://www.lordofultima.com)" CreationDate="2011-01-24T21:24:59.337" UserId="154" />
  <row Id="9873" PostId="7506" Text="Awesome. By the way... do you think you could mark my answer as accepted? I could use the karma!" CreationDate="2011-01-24T21:27:54.970" UserId="378" />
  <row Id="9874" PostId="7661" Text="For proof, see [Minecraft](http://minecraft.net/)" CreationDate="2011-01-24T22:05:55.357" UserId="4871" />
  <row Id="9875" PostId="7383" Text="&gt;eventually I want to make it in NDK" CreationDate="2011-01-24T22:19:01.863" UserId="4116" />
  <row Id="9876" PostId="7681" Score="1" Text="By &quot;game development&quot; are you referring primarily to programming?" CreationDate="2011-01-24T23:12:53.410" UserId="4690" />
  <row Id="9877" PostId="7681" Text="Yes, forgot to mention sorry" CreationDate="2011-01-24T23:15:08.300" UserId="2111" />
  <row Id="9878" PostId="7673" Text="Thanks for your feedback. Do you happen to know how much memory does it take by itself? I have no idea." CreationDate="2011-01-24T23:28:59.633" UserId="1581" />
  <row Id="9879" PostId="7671" Text="Thanks for the reference. For interpreter implementation I can only recommend any of the antlr books by Terrence Parr. I might give this a try, if I can get hold of a used version (The new one is just prohibitive ... 400 bucks wow)" CreationDate="2011-01-24T23:33:31.517" UserId="1581" />
  <row Id="9880" PostId="7652" Text="Your answer was very rich, thank you. I think I need something a bit less on the extremes: more current than SCUMM or AGI but more efficient than the jvm." CreationDate="2011-01-24T23:57:38.713" UserId="1581" />
  <row Id="9881" PostId="7685" Score="3" Text="And just a piece of advice - when someone asks what your favorite game is, don't just give the name. Talk about why you like it, what you don't, what you'd change in it. Otherwise, it tells the interviewer you really aren't thinking that much about games." CreationDate="2011-01-25T00:12:27.683" UserId="744" />
  <row Id="9882" PostId="7684" Text="-1 because you have just thrown out ACID and are just using the database as a big data store. That's fine, Windows' disk scheduler is crappy enough that is still a performance gain, and you can probably do some neat offline metrics with the data in it, but you still need ACID - i.e. a database - backing the transactions in the game itself, in real(ish) time." CreationDate="2011-01-25T00:28:34.777" UserId="744" />
  <row Id="9883" PostId="7687" Text="projection matrix?  Isn't that just if you're using cameras?  My game is only in 2D so I'm not using a camera." CreationDate="2011-01-25T02:29:45.780" UserId="4873" />
  <row Id="9884" PostId="7696" Text="So based on your example, 0.25 would be 1/4th?" CreationDate="2011-01-25T02:31:56.123" UserId="4869" />
  <row Id="9885" PostId="7697" Score="2" Text="I can't find the sucker punch programming test via google...could you provide a link?" CreationDate="2011-01-25T02:55:55.577" UserId="4690" />
  <row Id="9886" PostId="7685" Score="3" Text="Around graduation time years ago, I knew a handful of people who interviewed at a local established game company after a job fair.  All of them mentioned that the interviewer asked about their favorite game, and none of them had played any games except maybe Pac Man or Pong, and this was in the era of Quake 3 engine games.  I have no evidence how this affected their interviews, but it couldn't have been positive." CreationDate="2011-01-25T02:57:20.003" UserId="1671" />
  <row Id="9887" PostId="7608" Text="@bearcdp I don't know for sure.  I just know a handful of the algorithms that are floating point heavy.  My fear is that the CPU will be the most highly used resource and I'd like to avoid paying further down the road.  Sending incremental updates to the AS is a good idea, although I may need to pull from GAE to the server, not sure if I can open an outgoing connection.  It sounds like I may be the first person here going down the path of running MMO world logic in GAE." CreationDate="2011-01-25T03:14:23.307" UserId="4212" />
  <row Id="9888" PostId="7665" Score="1" Text="Almost all of the modern browsers support the function keys (http://www.quirksmode.org/js/keys.html#link6). In fact, that page is at least several years old and the support for them in modern browsers is probably even better." CreationDate="2011-01-25T03:22:37.647" UserId="189" />
  <row Id="9891" PostId="7695" Score="1" Text="What's your goal? We can tell you how to use this tool of quarter-detection, but it may not be the best tool for your goal. For instance if you want to make the ball bounce in a different direction depending on the part of the bat hit, you would not determine the quarter. Instead you'd calculate the normal of the paddle where it's hit, perpendicular at the centre and closer to parallel when the ball hits closer to the side. This works fine on top of rectangle collision, whilst mathematically creating the illusion the rectangle is an ellipse (though only once it has collided with the rect)." CreationDate="2011-01-25T03:44:17.097" UserId="2698" />
  <row Id="9892" PostId="7608" Text="I'd agree that I don't really see the distinction you're trying to make with this question. GAE will have authoritative access as well. If the question is really over the CPU vs datastore tradeoff then it would help to focus on that aspect and the pros and cons - is this about pricing, performance, or what?" CreationDate="2011-01-25T03:54:07.090" UserId="1101" />
  <row Id="9893" PostId="7676" Text="+1 thanks for this, I've used a bounding box for the triangle to quickly select the appropriate cells and have used a point-in-triangle test to determine which members of those cells are within the Field-of-View :)" CreationDate="2011-01-25T04:40:34.587" UserId="2332" />
  <row Id="9894" PostId="7684" Text="While sparse, that is what I was going toward in the last paragraph. I'm recommending a bit of a hybrid, where you use IN-Memory where possible, and the database when necessary." CreationDate="2011-01-25T05:36:55.010" UserId="1198" />
  <row Id="9895" PostId="7637" Text="@Tim - Thanks for this.  I wish I could accept two answers - it was a very close decision." CreationDate="2011-01-25T06:26:23.373" UserId="4257" />
  <row Id="9897" PostId="6552" Text="presumably even faster if you do all that normals work when you set the frustum instead of each intersection test" CreationDate="2011-01-25T06:33:53.587" UserId="4129" />
  <row Id="9898" PostId="7589" Text="My business idea was that you get N free connections a month for a starter fee (some 20 bucks or some such), and if your game gets successful, you need to upgrade to a more premium, monthly fee package. The starter fee is to cull the accounts so that 99.999% of the accounts are not just sitting idle.." CreationDate="2011-01-25T07:23:29.773" UserId="4264" />
  <row Id="9899" PostId="7695" Text="Related to: http://gamedev.stackexchange.com/questions/7300/how-to-detect-which-edges-of-a-rectange-touch-when-they-collide-in-ios" CreationDate="2011-01-25T07:29:26.880" UserId="20" />
  <row Id="9900" PostId="5730" Score="1" Text="This question was about camera movement, not what makes 2d games fun in general (or shmups specifically)" CreationDate="2011-01-25T07:29:40.780" UserId="4264" />
  <row Id="9901" PostId="7695" Text="My goal is to have it function like this:&#xA;&#xA;Ball hits 1st Quarter = rebounds higher (aka Y++)&#xA;Ball hits 2nd Quarter = rebounds higher (using random value)&#xA;Ball hits 3rd Quarter = rebounds lower (using random value)&#xA;Ball hits 4th Quarter = rebounds lower (aka Y--)" CreationDate="2011-01-25T07:47:28.733" UserId="4869" />
  <row Id="9902" PostId="7695" Text="I take it from your description you mean vertical quarter, so that a paddle oriented like so: ====== would have the 1st quarter facing upwards, the 4th downwards, and the 2nd and 3rd are essentially inside (except where exposed on the ends)?" CreationDate="2011-01-25T08:31:48.140" UserId="2698" />
  <row Id="9904" PostId="7684" Text="The problem is that you have glossed over what's in memory, which is an entire other database, and you've given no direction on how to implement that, which is the actual tricky bit." CreationDate="2011-01-25T10:39:55.583" UserId="744" />
  <row Id="9905" PostId="7663" Text="*&quot;FPS like. max 1s lag&quot;* 1s is *way* too much for an FPS to be playable. It's not an &quot;upper bound&quot;, it's so above the upper bound that is floating in the (red) sky." CreationDate="2011-01-25T10:42:12.983" UserId="2188" />
  <row Id="9906" PostId="7434" Text="I've spent some time with Corona and I really like it. It did not satisfy all my original criteria, but very impressed at the moment." CreationDate="2011-01-25T13:34:34.807" UserId="4671" />
  <row Id="9907" PostId="7436" Text="+1 Thanks for your advice. I'm amazed at the options out there." CreationDate="2011-01-25T13:35:45.010" UserId="4671" />
  <row Id="9908" PostId="7707" Text="My school taught C, Java and Assembly, at the same time. I think that was a good selection of languages from low to high level. Even if the students end up writing java, they'll have some kind of idea what kinds of things the computer _really_ has to do, down below.." CreationDate="2011-01-25T13:54:27.167" UserId="4264" />
  <row Id="9910" PostId="7657" Text="@Will please ask a new question if you are going to edit most of your question. It makes the existing answers look irrelevant. Rolling back." CreationDate="2011-01-25T14:28:45.900" UserId="14" />
  <row Id="9911" PostId="7657" Text="@Noctrine: Tell me that we didn't lose any of the tutorial links while rollbacking!?..." CreationDate="2011-01-25T14:44:34.590" UserId="2778" />
  <row Id="9913" PostId="7707" Text="your school might be awesome, ASM is not a programming language, and &quot;high level language&quot; is an obscure definition to me." CreationDate="2011-01-25T15:39:11.323" UserId="1829" />
  <row Id="9914" PostId="7684" Text="True, though the question was about big picture architecture, not implementation details." CreationDate="2011-01-25T15:54:46.080" UserId="1198" />
  <row Id="9917" PostId="7657" Text="They are still there and still in your previous question." CreationDate="2011-01-25T16:42:25.817" UserId="14" />
  <row Id="9918" PostId="7673" Text="@egarcia: Edited my answer." CreationDate="2011-01-25T16:49:34.967" UserId="4604" />
  <row Id="9920" PostId="7697" Score="1" Text="@Bill. Sorry it seems they have no open programming positions so the programming test is not on their site.. I did however find a Google Cache link to an old programming job and have put the link in the post. Enjoy!" CreationDate="2011-01-25T17:07:26.727" UserId="4443" />
  <row Id="9921" PostId="7694" Score="3" Text="The last question is very dangerous in the game industry mind you.. Average time someone works in the games industry (especially programmers) is 5 years and that usually includes 2-3 job switches (Games industry is not known for internal promotion)" CreationDate="2011-01-25T17:07:59.270" UserId="4443" />
  <row Id="9922" PostId="7696" Text="@Slateboard, Yup. Multiplication of decimal forms of fractions is faster than division in most cases :) Bit shifting can also half values (Num &gt;&gt; 1) very fast. I was unsure what data type .Y and .Width would be so I went with the straight math :)" CreationDate="2011-01-25T17:16:13.920" UserId="4443" />
  <row Id="9923" PostId="7694" Score="1" Text="I think you're being a little too cynical. For example, when I ask those questions of people I am looking to make sure that they have and value a work/life balance because that's important to me and I want the people I work with to feel the same way. Similarly, I want to know if the candidate is somebody who wants to move to more senior roles or not, because that may or may not be what we're looking for at the time, et cetera." CreationDate="2011-01-25T17:17:14.620" UserId="1430" />
  <row Id="9924" PostId="7694" Text="I applaud you.  Do you believe that your motivations in this are typical of the industry, or are to some degree exceptional?" CreationDate="2011-01-25T17:19:37.423" UserId="4191" />
  <row Id="9926" PostId="7686" Score="1" Text="The problem is explained above (Monitors will generally stretch out an image to make it fit in full screen). I however think the easiest solution is to just change your rendering resolution with the adapter to a support full screen resolution. I would imagine that XNA still has the render mode enumerable that you can get that information from." CreationDate="2011-01-25T17:22:45.767" UserId="4443" />
  <row Id="9927" PostId="7673" Text="Embedding a JVM inside something else can be exceedingly hard bordering on impossible. Unless you also intend to write the rest of the engine in Java, this isn't a good option." CreationDate="2011-01-25T17:22:50.273" UserId="395" />
  <row Id="9928" PostId="7673" Text="He mentions win/mac/linux as required, mobiles and consoles as possible.  The JVM satisfies the requirements." CreationDate="2011-01-25T17:42:43.610" UserId="4604" />
  <row Id="9929" PostId="7671" Text="My opinion of that book comes from skimming it once in a bookstore, but it looked absolutely terrible. It was comprehensive, but comprehensively terrible. The Dragon Book is probably still best if you want to learn to write your own; if you want to make a stack-focused language instead, pick up any of the free Forth books online." CreationDate="2011-01-25T17:58:41.760" UserId="744" />
  <row Id="9930" PostId="7694" Score="3" Text="Is there any evidence that the games industry promotes less than others? Most things I've read say that job-hopping is more profitable _everywhere_, if you want to deal with the stress and risk. If anything, games is probably the only software industry where you can get a &quot;senior&quot; or &quot;lead&quot; title in five years." CreationDate="2011-01-25T18:01:45.530" UserId="744" />
  <row Id="9931" PostId="7685" Text="Well, if they could talk at length about why Pac-Man is a great game, I'd prefer that to the common response I got when interviewing, of &quot;Yeah, I love $X&quot; with no followup. (And 80% of the time, X was either WoW or the most recently released high-marketing-budget game.)" CreationDate="2011-01-25T18:05:08.133" UserId="744" />
  <row Id="9932" PostId="7707" Score="1" Text="-1 because this does nothing to answer the question, which is a reasonably objective question about what languages are _common_, and instead tries to derail it into the stupid conversation of what languages are _good_." CreationDate="2011-01-25T18:06:46.460" UserId="744" />
  <row Id="9933" PostId="339" Score="3" Text="I _suspect_ the reason you got this response was because mobile development - which has been historically Java-based - was much bigger in Europe than the US (since smartphones were much bigger in Europe than the US), and the C++-based console development studios, vice versa. &quot;Gaming companies&quot; is a wide range of platforms and markets and budgets." CreationDate="2011-01-25T18:09:52.417" UserId="744" />
  <row Id="9934" PostId="7679" Text="i may as well mark this as the answer. have to do a bit more google-ing." CreationDate="2011-01-25T18:24:58.847" UserId="1251" />
  <row Id="9935" PostId="7645" Text="@joe: you're not standing for the election?? !" CreationDate="2011-01-25T18:30:05.287" UserId="1251" />
  <row Id="9936" PostId="7714" Text="Please clarify your question. I don't know what you mean when you say &quot;NavMeshes&quot; (capitalized as if it's a Product Name™). Are you asking for alternative algorithms to A* which produce more approximate paths but in faster time?" CreationDate="2011-01-25T18:37:50.040" UserId="189" />
  <row Id="9937" PostId="7715" Score="1" Text="OO languages aren't slower than procedural languages at all. If you write some code in C++ that does bit-shifting, it won't be any slower than in C. A language or program is not slower compared to procedural at all just because it is object orientated. Programs only exhibit performance detriments because they're *poorly written*. As a result, I feel the need to downvote your answer." CreationDate="2011-01-25T18:38:49.307" UserId="4662" />
  <row Id="9938" PostId="7714" Score="1" Text="@Ricket http://www.ai-blog.net/archives/000152.html" CreationDate="2011-01-25T18:47:07.160" UserId="1516" />
  <row Id="9939" PostId="7716" Text="-1. MVC is a design-time decision. Inheritance is a design-time decision. Both occur before compile-time and run-time. Both have major impacts on performance. Inlining does not always make code faster. Your threading proposal is incredibly naive. Nothing is free." CreationDate="2011-01-25T18:56:32.513" UserId="744" />
  <row Id="9941" PostId="7713" Score="2" Text="-1 and vote to close. Everything worth saying about MVC in games was said at http://gamedev.stackexchange.com/questions/3426/why-are-mvc-tdd-not-employed-more-in-game-architecture, and so far all we've got here is garbage." CreationDate="2011-01-25T19:03:14.033" UserId="744" />
  <row Id="9942" PostId="7715" Text="Hi Ricket, thank you for yoru explanation. It sounds very logical.  DeadMG, well, on the one side you are correct, On the other side, I think that OO approach adds more bits of information in the compiled code than procedural language. This extra bits of OO related code makes the resulting code slower. Do you agree?" CreationDate="2011-01-25T19:07:34.860" UserId="2229" />
  <row Id="9944" PostId="7715" Score="2" Text="Whoa now... Sure a simple line in C++ like `a++` will be the exact same as `a++` in C (where `a` is a primitive type, etc. etc.). But consider a simple C++ class with a virtual function that does something, that virtual function incurs a hefty overhead vs. a simple C function, even if the inner code is identical. Object-oriented languages have an **overhead**. Sorry for explicitly saying &quot;speed&quot;. If extra memory allocations and such don't result in a slower program then you're absolutely correct." CreationDate="2011-01-25T19:12:48.297" UserId="189" />
  <row Id="9945" PostId="7716" Text="Thank you DeadMG for your answer. Basically, I mean that with every level of abstraction, the code gets slover, as more and more intermediate steps are added. MVC is more abstract design, that will most likely result in more steps to achieve the same task. This would have influence on speed, imo." CreationDate="2011-01-25T19:13:30.797" UserId="2229" />
  <row Id="9946" PostId="7717" Text="Dear Chaos, I like your answer the most, therefore I am marking it as an answer to my question. MVC approach adds abstraction into code design. Abstraction ususally adds extra steps of code, that could be avoided with more straighforward design. As I understood correctly, I do not need to worry of the cost introduced by the abstraction added as a result of MVC design." CreationDate="2011-01-25T19:16:39.557" UserId="2229" />
  <row Id="9947" PostId="7714" Text="Gotcha, thanks! I've heard of them but never done anything with them so I didn't recognize the condensed name :)" CreationDate="2011-01-25T19:21:51.280" UserId="189" />
  <row Id="9948" PostId="7645" Score="4" Text="I have no interest in being patient, fair, respectful, or light." CreationDate="2011-01-25T19:24:01.233" UserId="744" />
  <row Id="9950" PostId="7719" Text="Hi Ricket, thanks for your answer. You asked what other ways could be used to let the game objects communicate each other. What comes to my mind is direct methods calls. It is corect, that it does not give you so much flexibility, but on the other hand, it avoids event message generation, passing, reading, etc.. We still talk about mobile platforms, not about high-end games.  Operating system havily uses internal messaging system. However, it is not designed to run in real-time, where even small delays cause disruptions." CreationDate="2011-01-25T19:29:09.990" UserId="2229" />
  <row Id="9951" PostId="7719" Text="Let me keep this question open for a while. I would like to gather more opinions, before closing it." CreationDate="2011-01-25T19:30:17.150" UserId="2229" />
  <row Id="9952" PostId="7684" Text="True, but you've left out the entire middle tier. Is it a low-latency RDB? An ODB? Key/value store? No DB and give up on ACID? STM or locking? To be fair, it's very hard to answer that because there's not much information in the question, but all this answer does to the architecture diagram is take the big bubble in the middle with a &quot;?&quot; in it and connect two more services to it, not actually fill in what &quot;?&quot; is." CreationDate="2011-01-25T19:38:54.257" UserId="744" />
  <row Id="9953" PostId="7722" Text="Hi Lollancf, if you addressed my comment on operating system here is my understanding:  Operating System needs to be firstly stable and secure, and speed comes afterwards. It is acceptable (not pleasant) if an operating system has delays, and it often has. However, computer game has higher criteria on application speed, as even minor delay is imeddiatelly noticeable and is strongly disruptive. I therefore believe that speed requirements of operating system and a game are different. Therefore, I think that not everything that is used for OS design can be used for game design." CreationDate="2011-01-25T19:44:13.833" UserId="2229" />
  <row Id="9954" PostId="7722" Text="Somewhere I have read, that Realtime applications are those that must work without a single delay: example: medical software controling life supporting system. According to this defition, Operating System is not realtime application - but I might be wrong. It has been a long time, I have read it." CreationDate="2011-01-25T19:47:09.260" UserId="2229" />
  <row Id="9956" PostId="7713" Text="@Joe Wreschnig that's pretty harsh, but I guess true..." CreationDate="2011-01-25T19:49:26.770" UserId="2301" />
  <row Id="9957" PostId="7718" Score="4" Text="Yes, plain and simple.. Communication needs to happen and while there are situations where 'Are we there yet?' type of polling is required, you generally are wasting time having things check to see if they should be doing something else, when you can have them react to things they are told to do... Plus... a well defined communication pathway between objects/systems/modules helps significantly in multithreaded/process/core/computer setups." CreationDate="2011-01-25T19:50:52.670" UserId="4443" />
  <row Id="9958" PostId="7723" Text="Hi Joe, thanks for your answer, I like it. You believe, that there is no need to push any aproach artifically. I should design applications as I think would work, and if something does not work later, I will simply redo it. " CreationDate="2011-01-25T19:53:08.127" UserId="2229" />
  <row Id="9959" PostId="7718" Text="Hi James, thank you for your answer. I like it, although the book describes Event Driven communication as really complex system seemingly consuming significantly a lot of CPU resources. " CreationDate="2011-01-25T19:59:08.553" UserId="2229" />
  <row Id="9960" PostId="7724" Text="Manhattan distance, no?" CreationDate="2011-01-25T20:16:35.113" UserId="2332" />
  <row Id="9961" PostId="7648" Text="Related (found this in a different Question): http://www.ai-blog.net/archives/000178.html" CreationDate="2011-01-25T20:17:30.233" UserId="51" />
  <row Id="9962" PostId="7718" Text="@James that really should be an answer." CreationDate="2011-01-25T20:22:33.193" UserId="51" />
  <row Id="9963" PostId="7713" Text="Thanks, guys.  &quot;Garbage&quot;.  That's just lovely." CreationDate="2011-01-25T20:30:12.173" UserId="4191" />
  <row Id="9964" PostId="7720" Text="These are for grid maps. Nav meshes I assume would use a different heuristics to move from one poly to the other. Probably some form of geometry heuristic to select the next best poly based on the size of the edge or something." CreationDate="2011-01-25T20:40:07.530" UserId="1516" />
  <row Id="9965" PostId="7718" Text="Put it into an answer and added in a link to high level overview of an event messaging system I gave as an answer over on stack overflow. Enjoy! Just remember that what some people consider complex doesn't have to be :)" CreationDate="2011-01-25T20:46:08.867" UserId="4443" />
  <row Id="9966" PostId="7725" Text="Hello James, as I am thinking about internal event messaging system more, I think it does not need to add more cost to the engine. For example, if there are 50 objects on the screen, but only 5 of them are supposed to change their behavior; under traditional system, all the 50 obejcts would need to check for all their possible actions, to see if they should do something. However, with the usage of event messaging, only 5 messages will be sent to those 5 obejects with specific change of action. That looks like a time saving approach." CreationDate="2011-01-25T20:55:42.953" UserId="2229" />
  <row Id="9967" PostId="7717" Text="@Chaos, Good answer, +1 on that.. Theory is all fine and well but it can cause games to not be shipped if you just do not get it done." CreationDate="2011-01-25T20:57:12.857" UserId="4443" />
  <row Id="9968" PostId="7724" Text="I thought it was, then edited it out since I though it might not have been." CreationDate="2011-01-25T21:07:34.800" UserId="1156" />
  <row Id="9969" PostId="7725" Text="The way the system linked to in my above answer works is that objects only register to hear about the messages they want.. We would use this to our advantage in video games where there may be 100-200 objects in a level, but you only 'activate' the ones the player can directly interact with, keeping the number of things listening down to about 10 or so. All in all this type of system should be 'smarter' than an 'are we there yet?' polling system, and should reduce the overhead of an engine, atleast as far as communication is concerned." CreationDate="2011-01-25T21:12:24.847" UserId="4443" />
  <row Id="9970" PostId="7713" Text="@chaos: Actually, I voted your answer up, but we really did not need another answer saying &quot;use patterns if they help, don't if they don't.&quot; Or maybe we did, but then that's still really sad. I still don't know how to refer to expressions like &quot;Run-time designs like inheritance&quot; other than garbage, though." CreationDate="2011-01-25T21:22:34.640" UserId="744" />
  <row Id="9971" PostId="7725" Text="There is one thing related to event driven system that confuses me: Under traditional system where every object has predefined set of methods (OnUpdate(), OnMove(), OnAI(), OnCollisionCheck()...) regularly called, every object is resposnsible for checking and managing its state. Under event driven system, there must be some master system chcecking condition of every object, and then sending messages to those where some event was detected. To me, this standardizes the possible object states, and limits the freedom to create unique object behavior. Is that true?" CreationDate="2011-01-25T21:24:01.550" UserId="2229" />
  <row Id="9972" PostId="7719" Text="Direct method calls generally result in coupling of the classes who call each other. This isn't good for a system separated into components which are supposed to be interchangeable. There are some patterns which can facilitate direct method calls with less cohesion (e.g. the &quot;controller&quot; part of MVC basically serves this purpose for facilitating view's queries of the model, unless you couple them) but in general, message passing is the only way for a system to have zero coupling between subsystems (or at least the only way I know of)." CreationDate="2011-01-25T21:28:04.540" UserId="189" />
  <row Id="9973" PostId="7725" Text="The Observer pattern is the typical alternative to polling. http://en.wikipedia.org/wiki/Observer_pattern" CreationDate="2011-01-25T21:28:52.243" UserId="189" />
  <row Id="9974" PostId="7713" Text="@Joe: Oh, well thanks. :)  The argument that OOP is cost-free does somewhat boggle the mind.  I suppose by some standard we *shouldn't* need points like mine reiterated, but noobs do happen and so do debatably duplicate questions.  It also serves the function of letting latecomers to the site like me scrape together a tiny bit of rep despite activity having massively died down. :)  I mean, damn, I have 40K rep on SO, but here I can't even edit a tag wiki." CreationDate="2011-01-25T21:34:42.030" UserId="4191" />
  <row Id="9975" PostId="7719" Text="Ah, so now we started discussing patterns. I have heard a bit about this programming approach. Now, I start understanding what patterns are. It is completely different look at the application design. You masivelly control objects, while using the same code to check every object. After checking the object you set its attributes accordingly." CreationDate="2011-01-25T21:41:06.500" UserId="2229" />
  <row Id="9976" PostId="7654" Score="1" Text="+1 for your statement on the reward function.  And, no, I believe it's a fair characterization.  RL can be great at what it does, but I would not expect strict pathfinding to be in that set.  (Note that I am deliberately excluding *motion planning* from this discussion. RL has been successfully applied to that sort of problem)." CreationDate="2011-01-25T21:50:52.250" UserId="4665" />
  <row Id="9977" PostId="7720" Score="2" Text="Agreed, but heuristics are used to estimate the shortest path to the final absolute destination to help with the cost to the next poly. They should underestimate the distance to be an &quot;admissable heuristic&quot;. A navigation mesh is still a graph, just like a grid map is a graph. So I reckon most of those heuristics are applicable, it's down to the developer to see which is most applicable." CreationDate="2011-01-25T21:55:38.047" UserId="2332" />
  <row Id="9978" PostId="7722" Text="One definition of a real time application that I know is that it's an application from which the delay while treating an input has direct influence on the exactitude of the result. for your operting system to be stable, I think it must be real time." CreationDate="2011-01-25T22:18:57.890" UserId="4854" />
  <row Id="9979" PostId="7727" Text="What is the discussion from this question going to add beyond the question you linked?" CreationDate="2011-01-25T23:04:08.120" UserId="744" />
  <row Id="9980" PostId="7727" Text="I present the Scrum framework of project management in Agile software development and argue as to what Scrum wants from a developer during a Sprint, hence making TDD viable as an option. I want to get the others' point of view on the subject from the Scrum point of view, not only under the TDD or MVC aspect. I want to understand how is TDD not viable when argued from this side of the medal, other than just considering TDD itself as a standalone approach." CreationDate="2011-01-25T23:11:36.913" UserId="2778" />
  <row Id="9981" PostId="7725" Text="@Ricket looks like a spot on description of the setup used for the EMS :) @Bunaki.Satori Hope the extra response helps sort out some more of your questions :)" CreationDate="2011-01-25T23:24:07.627" UserId="4443" />
  <row Id="9982" PostId="7730" Score="7" Text="These are great proposals for the presence of automated testing, but not at all for test-driven development." CreationDate="2011-01-25T23:25:12.540" UserId="744" />
  <row Id="9983" PostId="7725" Text="Hi James, yes your response helped very much. Thanks. Your's and Ricket's responses were the most valid. " CreationDate="2011-01-25T23:41:00.410" UserId="2229" />
  <row Id="9984" PostId="7725" Text="Glad to help, and good luck on your project :)" CreationDate="2011-01-25T23:48:58.040" UserId="4443" />
  <row Id="9985" PostId="7727" Text="@Will TDD == Top Down Design or Test Driven Design? I was thinking Top Down and was going to give an answer of manageability in the long term but then saw the other answer were interpreting TDD in a way I was not..." CreationDate="2011-01-26T00:00:31.670" UserId="4443" />
  <row Id="9986" PostId="7727" Text="@James: Test Driven Development." CreationDate="2011-01-26T00:04:47.190" UserId="4191" />
  <row Id="9987" PostId="7606" Text="@David Wouldn't it be easier to analyze where your traffic is coming from if it's NOT coming through bit.ly before it gets to you?" CreationDate="2011-01-26T00:24:41.463" UserId="48" />
  <row Id="9989" PostId="7727" Text="@James: Sorry for the confusion! I didn't know about the other meaning of the acronym, since what I had in mind was Agile Software Development with Scrum." CreationDate="2011-01-26T00:49:26.537" UserId="2778" />
  <row Id="9990" PostId="7727" Text="I kept reading it as Technical Design Document @Will changed the title to clear up future confusion." CreationDate="2011-01-26T00:53:42.770" UserId="154" />
  <row Id="9991" PostId="7731" Score="3" Text="What do you mean when you say that game development isn't of compliance to specifications? My point is that you must know what kind of game you write when you want to write one. As such, specifications, requirements shall be written as features or the like; let's take a Product Backlog example in Scrum. You know the user stories you will have to develop in your game so that you write the expected game! Then, for another example, you will perhaps need to detect collisions in a fighting game, these are testable things! Whether the game is fun is more of the story or  than programming, IMHO." CreationDate="2011-01-26T00:58:02.343" UserId="2778" />
  <row Id="9992" PostId="7731" Text="@Will Marcouiller: I don't mean to imply that we don't have specifications or can't measure compliance with them, but that less of what's important about the project *can* be meaningfully specified than in other kinds of development.  You can write &quot;the game should be fun&quot; into your spec, but that's not a specification with technical meaning.  You can and should test for what's testable, but the point of TDD is that testing isn't just part of the process, it's *the entire basis of* the process, a fundamental mindset, and I don't see that jibing well with a highly subjective field." CreationDate="2011-01-26T01:03:54.363" UserId="4191" />
  <row Id="9993" PostId="7730" Score="1" Text="Interesting opinion, Tetrad! Thanks for your grain of salt. You ask how to test visual animation? Hard to say as for 3D systems, since I've never yet written a single game, perhaps after some having developed a few tiny games! Besides, in 2D, I have often seen objects represented by matrix, and matrix parsers to render the image on screen. Hence, making sure that after some directional key-pressed, the right information's found at the right place in the resulting matrix could be a beginning, I guess. I just don't yet know enough about visual components of a game, and I sure will this year! =)" CreationDate="2011-01-26T01:07:53.170" UserId="2778" />
  <row Id="9994" PostId="7715" Score="1" Text="If the function is virtual, that implies that the program needs to choose between 2 different versions of the same function at run time. (Otherwise, you wouldn't make it virtual.) In this case, you have an extra conditional or level of indirection anyway, which you'd have to implement yourself in a procedural language (eg. via a function pointer or switch statement). That's not overhead - that's intrinsic to the problem." CreationDate="2011-01-26T01:11:52.413" UserId="1101" />
  <row Id="9995" PostId="7733" Score="1" Text="Unfortunately, TDD and Scrum are still misunderstood. And this is true for existing projects that neither will help speed up bug corrections or else. Scrum is a framework to develop complex systems, as a game seems to be. Scrum encourages bug-fixing from a Sprint to another so that they never accumulate. TDD place you on the user's side. By user, I mean colleague programmers who will use your code. It forces you to think how it should be used to make your code easy to use for others. Hence, it leads to better design, per experience. That all said, you got interesting views on subject." CreationDate="2011-01-26T01:19:12.387" UserId="2778" />
  <row Id="9996" PostId="7727" Text="@Will No worries, all is well and I think that article you linked to was a very good read on this topic as well as the 'you can do what you want at the end of the day' answers below, it all is just maintainability and motivation at the end of the day it seems :)" CreationDate="2011-01-26T01:43:34.453" UserId="4443" />
  <row Id="9997" PostId="7637" Text="No worries Steve V. And yes, it was very dumb of me to save over my previous game in DeadSpace and leave me in that fix.  " CreationDate="2011-01-26T01:59:20.270" UserId="3830" />
  <row Id="9998" PostId="7608" Text="I think I need to spend some time implementing the specifications I have before trying to ask questions that I don't have all the variables for.  I will likely discover the best answer experimentally." CreationDate="2011-01-26T04:07:06.887" UserId="4212" />
  <row Id="9999" PostId="7727" Text="@Will Marcouiller, what kind of Game Development procedures do you see being able to use with Test Driven Development?" CreationDate="2011-01-26T06:05:24.383" UserId="962" />
  <row Id="10000" PostId="7731" Score="2" Text="@Will Marcouiller, I highly, highly, disagree that the fun of the game comes down to the story. All the fun in the game comes down to the gameplay, story is just a bonus." CreationDate="2011-01-26T06:09:52.160" UserId="962" />
  <row Id="10001" PostId="7722" Text="The formal defintition of 'realtime' *is the study of hardware and software systems that are subject to a &quot;real-time constraint&quot;—i.e., operational deadlines from event to system response. Real-time programs must execute within strict constraints on response time.* (wiki) http://en.wikipedia.org/wiki/Real-time_computing" CreationDate="2011-01-26T06:41:03.327" UserId="2050" />
  <row Id="10002" PostId="7727" Text="related: http://gamedev.stackexchange.com/q/1905/450" CreationDate="2011-01-26T07:30:43.163" UserId="450" />
  <row Id="10003" PostId="7645" Text="@joe :) nice one " CreationDate="2011-01-26T07:54:58.793" UserId="1251" />
  <row Id="10004" PostId="7724" Text="You could also use the squared length (Pythagorean distance without taking the square root). It's fast and most likely a better heuristic than Manhattan distance (unless your character can only move horizontally and vertically)" CreationDate="2011-01-26T08:42:21.953" UserId="20" />
  <row Id="10005" PostId="7722" Text="That's pretty much it." CreationDate="2011-01-26T08:59:13.440" UserId="4854" />
  <row Id="10006" PostId="7673" Text="@coderanger: actually, there are several projects out there that compile non-java code directly to the jvm. For example, see http://groovy.codehaus.org/" CreationDate="2011-01-26T10:18:38.207" UserId="1581" />
  <row Id="10007" PostId="7673" Text="@James 512M still looks like a lot. I'm really targeting something a smaller; 100MB stack or so. Your post in fact helped me confirm that I should rule out jvm :). I would +1 again if I could. Thanks again." CreationDate="2011-01-26T10:20:54.740" UserId="1581" />
  <row Id="10008" PostId="7722" Text="Thanks Sum1stolemyname (funny nickname :-)) and Lollancf for your comments. :-)" CreationDate="2011-01-26T10:55:01.830" UserId="2229" />
  <row Id="10009" PostId="7736" Text="where did you find? some links or reference? i don't know this approach (but i know quite weel design pattern in general, and i advice a good use of object orientations principles in general), but i think event based one is better.. think of evolution in network systems: from polling to asynchronous calls.. it is optimized in computations and in abstraction level" CreationDate="2011-01-26T11:46:00.163" UserId="4508" />
  <row Id="10010" PostId="7736" Text="Hi Nkint, thank you for your comment. I basically wished to compare event driven communication vs calls to virtual functions. I will modify my question a bit. Btw, take a look at this link containing game desing patterns: http://gameprogrammingpatterns.com/." CreationDate="2011-01-26T11:55:56.613" UserId="2229" />
  <row Id="10011" PostId="5427" Text="I made an account just to upvote this answer" CreationDate="2011-01-26T12:09:31.260" UserId="4936" />
  <row Id="10012" PostId="7737" Text="I don't think this will work by just &quot;shooting&quot; a ray to the right. Maybe I misread your approach, but from what I understood it would fail with a setup as depicted here: http://imgur.com/Whg2u" CreationDate="2011-01-26T12:59:46.593" UserId="20" />
  <row Id="10013" PostId="7737" Score="2" Text="Yes but this is described in the first case. Shooting ray will solve only the Polygon containing circle (second case in my description). You have to test both cases. It is fast, easy to implement and do not need any memory. " CreationDate="2011-01-26T13:02:03.600" UserId="3794" />
  <row Id="10014" PostId="7741" Text="Hi, Bummzack. Finally, the first answer arrived. Thank you for that :-) When I mentioned Event Driven Architecture, I meant a MVC system with three key layers: Appliaction, GameView, GameLogic. All the communication between these trhee would be done via messaging. This is significantly different as the traditional system with update loop. Every system has different architecture, some advantages and disadvantages, and they have different performance cost. I therefore believe, one would be slightly better in some areas. After good analysis, we should be able to conclude which one is better." CreationDate="2011-01-26T13:32:36.627" UserId="2229" />
  <row Id="10015" PostId="7741" Score="3" Text="I fail to see why this is any different? You'll need an update loop somewhere and that will probably update the Controller if you want to stick with MVC. Then the controller can message the model and the view.. but since the controller usually *knows* view and model, it could also update them directly. But this is not replacing any polymorphism. Your question and assumptions sound very theoretical.. maybe back them up with some example code or some references?" CreationDate="2011-01-26T13:58:27.457" UserId="20" />
  <row Id="10016" PostId="7737" Text="I'm sorry I confused &quot;edge&quot; with &quot;vertex&quot; and therefore misinterpreted your first check. When reading it correctly, it works :)" CreationDate="2011-01-26T14:04:37.403" UserId="20" />
  <row Id="10017" PostId="7734" Text="Don't you think that fun factor should be considered to be when analyzing the game itself, functional analysis or the like? You may set up a set of features that together will make the game fun to play, and thise features are then testables! I'm only trying to put different opinions forward to go in-depth about the topic and the arguments that you come up with. Thanks for your contribution! =)" CreationDate="2011-01-26T14:10:00.670" UserId="2778" />
  <row Id="10018" PostId="7731" Text="@AttackingHobo: Are you saying that the gameplay is differs from a set of features that are testables independantly from each other?" CreationDate="2011-01-26T14:12:23.880" UserId="2778" />
  <row Id="10019" PostId="7727" Text="@AttackingHobo: In fact, I have never developed a single game, but as an experienced programmer who has used these techniques for quite a while now, and the game development being first of all a development, I don't get how a game is not much written using Test Driven Development, looking at game development to be programming before all." CreationDate="2011-01-26T14:15:40.957" UserId="2778" />
  <row Id="10020" PostId="7741" Text="The above mentioned book, Game Coding Complete, recommends event messaging over direct calls to virtual methods. Although, the messaging system looks more complex, its advantage is, that every game object does not need to check the game world. Game world is checked by game logic only once, and then only those objects are addressed which are supposed to change their states. This is one difference, and can mean cost savings. If you decide that your game objects will communicate via messages they won't be called each frame - therefore the two approaches are mutually exclusive." CreationDate="2011-01-26T14:42:51.490" UserId="2229" />
  <row Id="10021" PostId="7733" Score="1" Text="Forcing bugs to not accumulate just causes features to slip - you can't magically produce more time. My understanding is that Scrum does not have any particular method specific to bugs anyway. As for TDD forcing you to think about how other people will use your code, it is not the only way to go about that. Therefore it is not necessarily better, and certainly not necessarily the most effective use of time." CreationDate="2011-01-26T14:46:32.123" UserId="1101" />
  <row Id="10022" PostId="7741" Text="Anoter differences are that with event messaging system, objects are called asynchronously, it is easier to have muliple views, game console can be easily created, it is easier to have multiplayer game. Event messaging system helps to remove class circular dependencies, game AI communictes in the same way as player's actor. The other side is, messaging system seems to be more complex than per-frame calls to all objects. I am not sure how it performs on mobile platforms too." CreationDate="2011-01-26T14:50:37.513" UserId="2229" />
  <row Id="10023" PostId="7736" Score="5" Text="Maybe I'm being dumb, but how are you going to make a messaging system work *without* using polymorphism?  Aren't you going to need some kind of base class (abstract or otherwise) to define your event receiver interface? (Edit: assuming you're not working in a language with proper reflection.)" CreationDate="2011-01-26T15:13:14.187" UserId="51" />
  <row Id="10024" PostId="7736" Score="2" Text="Also, efficiency is going to be highly tied to implementation details.  I don't think &quot;which one is more efficient&quot; is a question that can be answered in its current form." CreationDate="2011-01-26T15:14:37.553" UserId="51" />
  <row Id="10025" PostId="7743" Text="Hi Eric, thank you for your detailed opinion on my question. As I read your's and other's responses, implementing event messages probably does not cause a miracle in overall game performance increase. Instead it is going to complicate things a lot. I would like to see some more answers, before closing this question. As the the whole book covered this topic, it looked like a good idea to consider. I am not very sure, if the decision to use or not to use messages can be made in the middle of the project. If event messages are used, I would say, the overall object design must be adjusted too." CreationDate="2011-01-26T15:38:32.727" UserId="2229" />
  <row Id="10026" PostId="7744" Text="Hi Bearcdp, thanks for your reply. It makes sense to me. There is one thing in my mind, that votes for event messages: say, there are 200 ojects in the scene. If you use per-frame function calls on all objects, you have to check all 200 objects for colision every frame (an example; of course the call intervals can be managed.) With event messaging, the gameworld is examined only once. If there are 5 collisions, only 5 objects get notified by messages about collision event, instead of 200 collison detection tests with per-frame calls. What is your opinion?" CreationDate="2011-01-26T15:49:04.173" UserId="2229" />
  <row Id="10027" PostId="7719" Score="1" Text="The &quot;Data Structures...&quot; question has an AMAZING answer.  I'd say, your selected answer and the accompanying Nebula3 article are the best description of game engine architecture of their size I've ever seen." CreationDate="2011-01-26T15:58:00.447" UserId="370" />
  <row Id="10028" PostId="7736" Text="Hi Tetrad, thanks for your comment. Surely I did not mean excluding polymorphism completely. Polymorphisim will be present in many places in the engine. I meant: the game objects state can be updated either via virtual function calls on regular basis (per frame) or via messaging. I wish to understand if messaging adds so much value to the engine design, that is is really worth of implementing. I am affraid, that messaging system can significantly slow down game performance. In my opinion, if I decide to use per-frame updates now, it will be complicated to switch to messaging later." CreationDate="2011-01-26T16:00:34.373" UserId="2229" />
  <row Id="10029" PostId="7744" Score="2" Text="examine the gameworld?? what does that mean? It would have to mean running the same 200 checks to isolate the 5 that it needs to send messages about. With the virtual function concept, the gameworld is only being checked once too (each object's function in turn), and then moves onto only the 5 that need state changes... without the overhead of a messaging system." CreationDate="2011-01-26T16:58:15.970" UserId="1923" />
  <row Id="10030" PostId="7744" Score="1" Text="Listen to Steve H, the world doesn't collide itself. I primarily use events for high level happenings, such as PlayerJump, EnemyHit. For handling efficiency of collision checking, you need choose a data structure to organize the physical location of objects in your game so you can prioritize which objects need and need not be checked for collision. Once you've determined all the pairs of objects which have collided, then you can dispatch an event with the relevant collision data (the two objects, velocity/position/normals data, etc.). " CreationDate="2011-01-26T17:07:21.993" UserId="3656" />
  <row Id="10032" PostId="7684" Text="I agree. It depends upon the specific issues encountered. To be honest, I'd implement it as simply as possible and refactor and redesign if I ran into performance issues (to avoid premature optimizations). Depending on the nature of the game, a key/value store + db when necessary may be all thats needed." CreationDate="2011-01-26T17:15:26.743" UserId="1198" />
  <row Id="10033" PostId="7734" Score="3" Text="A lot of development comes down to tweaking small things and seeing how fun they are to play. You can't test those things unless they are 100% set in stone. And testing a system after it is done is not TDD, it is testing, but not Development that is driven by testing." CreationDate="2011-01-26T17:15:34.373" UserId="962" />
  <row Id="10034" PostId="7744" Text="Hi Steve and Beardcp, thanks for your comments. What you wrote makes sense. It looks like there can be many possible implementations of event messaging system. There can be the pure replacement of the per-frame virtual function concept, as the book mentioned above says so. However, the messaging system can coexist with the per-frame virtual function concept as well, as you say." CreationDate="2011-01-26T17:17:52.230" UserId="2229" />
  <row Id="10037" PostId="7736" Score="1" Text="Game objects need to tick.  Game objects need to communicate with each other.  Those two things both need to happen.  The first you don't do with messaging because it's redundant (you probably have a list of all the objects somewhere, just call `update` on them).  The second you can do with messaging for various reasons." CreationDate="2011-01-26T17:32:57.697" UserId="51" />
  <row Id="10038" PostId="7745" Text="There are several questions about this already (check the related questions). Also, what's the difference between &quot;Facebook&quot; and &quot;Web&quot;? Most likely this is just a difference in the backend and doesn't affect your gameclient directly." CreationDate="2011-01-26T17:33:03.603" UserId="20" />
  <row Id="10039" PostId="7673" Text="Okay, yes, you can use other JVM langs together, but that doesn't change that fact that you can't really embed a JVM instance in, say, C++ or C# the way you can with Lua/Python/TCL. You might be able to use Dalvik like that, but it would be rather tricky and you wouldn't have tons of docs and examples like with the others." CreationDate="2011-01-26T17:37:20.283" UserId="395" />
  <row Id="10040" PostId="7747" Text="This answer is great. Basically, Id like to build something for the web and facebook first. It will have graphics but it will be mainly text based, it's not city ville, it's more equivalent to something like scrabble, but less graphic intensive even than that. I think HTML5 webapp and facebook is a good place to start, and then I can port it to iphone. Does that sound reasonable?" CreationDate="2011-01-26T17:42:21.553" UserId="4946" />
  <row Id="10041" PostId="7747" Text="One other question: What did you mean build the interface in HTML? Wouldn't I still need to use PHP/MySQL? Seems like HTML is doing a lot more these days, so forgive me if that sounds very amateur, just wanted to clear things up." CreationDate="2011-01-26T17:44:30.050" UserId="4946" />
  <row Id="10042" PostId="7747" Text="@Iv31 If this answer is your solution, don't forget to mark it as accepted :D" CreationDate="2011-01-26T17:58:46.443" UserId="14" />
  <row Id="10043" PostId="7736" Text="@Tetrad: I see. Thanks for your responses, and you are right, that objects need to tick to get their positions updated frame by frame, etc. If you have some spare time, just check the book Game Coding Complete mentioned above. It has very good rating on Amazon.com, and it is fairly new title (publication year 2009). It is good book." CreationDate="2011-01-26T18:10:08.620" UserId="2229" />
  <row Id="10044" PostId="7743" Text="I disagree.  If the overall object design is well encapsulated, it should be flexible enough to be used in any kind of framework.  I have been able to swap out communication methods in large projects with very little work because each piece was well encapsulated." CreationDate="2011-01-26T18:18:52.727" UserId="1040" />
  <row Id="10045" PostId="7749" Text="Hi DeadMG, let me explain: In the above mentioned case, the design is divided among three main parts: Appliaction layer (hardware access), Game Logic, Game View. What gets rendered per frame basis is the Game View. However, when Game View records an user input (ex. brake pedal pressed in chasing game) it send a message &quot;Car 2 Brake Pressed&quot; to Game Logic for processing. Game Logic evaluates this action, calculates behavior of the car, and sends message to the Game View: &quot;Car 2 Block Tires&quot;, &quot;Car 2 Move to X, Y&quot;. This way it is not needed to check per frame, if brake was pressed on every car." CreationDate="2011-01-26T18:21:43.640" UserId="2229" />
  <row Id="10046" PostId="7749" Text="@Bunkai: So you have some designs that are event-driven and some designs that are called each frame. That pretty much agrees with my answer." CreationDate="2011-01-26T18:23:52.270" UserId="4662" />
  <row Id="10047" PostId="7749" Text="@DeadMG: I am happy to find understanding with you, as this question was a bit controversial here today :-)" CreationDate="2011-01-26T18:27:57.593" UserId="2229" />
  <row Id="10049" PostId="7747" Text="Noctrine, sorry I'm new, will do that. " CreationDate="2011-01-26T18:39:52.003" UserId="4946" />
  <row Id="10050" PostId="7731" Score="1" Text="@Will: No, he's saying that the enjoyment a user derives from a game cannot be determined via automated test, and that games have large quantities of things that can only be tested by sending the game into consumer's hands." CreationDate="2011-01-26T18:40:36.523" UserId="4662" />
  <row Id="10051" PostId="7747" Text="Nate Bross: Okay, well, my game will require minimal animation. Maybe one or two little things. It's really just a card game. What would you suggest for something like that? Say, someone wanting to build &quot;go fish&quot;" CreationDate="2011-01-26T18:42:17.633" UserId="4946" />
  <row Id="10055" PostId="7731" Score="1" Text="@DeadMG: That's more true than anyone would like, but my point (not necessarily AttackingHobo's) involves the fact that the development process itself has to incorporate testing, by designers and producers and developers and testers, that can't be quantified in a unit test, that is to do with the quality of experience and feel and style and aesthetic effect that the game creates.  To tell people that they're doing TDD when that's such an important part of development is basically just to lie to them." CreationDate="2011-01-26T18:47:36.743" UserId="4191" />
  <row Id="10056" PostId="7743" Text="Thanks Erick... " CreationDate="2011-01-26T18:47:58.513" UserId="2229" />
  <row Id="10059" PostId="7090" Text="Keep in mind that Canvas isn't supported in IE yet (IE9 allegedly will)... so that removes a huge market share for your game.&#xD;&#xA;&#xD;&#xA;There's a javascript patch that attempts to get it to work in IE, but it falls short of working well (SLOW as hell... not worth it)." CreationDate="2011-01-26T19:03:23.593" UserId="4952" />
  <row Id="10060" PostId="7717" Text="@Bunkai.Satori: It does add abstraction, and IMO it's useful abstraction that pays its way.  I agree with your last statement, with the clarification that there *is* a cost, and that I do not think you need to worry about it." CreationDate="2011-01-26T19:08:22.920" UserId="4191" />
  <row Id="10061" PostId="7736" Text="@Bunkai.Satori @Tetrad is right, these things are not exclusive to each other and are 90% of the time both required. The tick of the objects is what will generate the messages after all. I am starting to think that the book you keep referring to may not be a good book though if it has spawned this many questions to get clarity on its subjects. Update Loops == The game world figuring out what it will do next, the Event Messaging is for when things take a turn and are 99% likely to come from the Update loop itself (PlayerDied, TriggerEntered, PlayerWithinRange, etc). " CreationDate="2011-01-26T19:24:01.840" UserId="4443" />
  <row Id="10062" PostId="7741" Score="1" Text="Up-voted for an answer that reflects Tetrad's comments below the original question. @Bunkai.Satori The 'game world is checked only once' is the update loop, everything that needs updating gets it. The Event Messages are meant to be the seldom done but still key things in the engine (PlayerDied, MonsterDied, etc) that checking for every frame in an Update() loop would be a waste on but they are most likely to be generated by the Update() loop itself." CreationDate="2011-01-26T19:28:15.513" UserId="4443" />
  <row Id="10063" PostId="7736" Text="@James: thank you for this clarification. The misscommunication might have be caused by me, not providing enough information. " CreationDate="2011-01-26T19:44:55.220" UserId="2229" />
  <row Id="10064" PostId="7741" Text="+1 I've actually got Game Coding Complete and I really don't think he meant to use messaging rather than polymorphism, he was saying to use messaging....and that's it. He wasn't making comparisons as far as I'm aware." CreationDate="2011-01-26T19:47:54.880" UserId="2332" />
  <row Id="10065" PostId="7750" Score="1" Text="Without a comparison to a control group that did the same project (clone an existing trivial arcade game in a very high level language), it says nothing about whether TDD is effective or not. It just says he used TDD." CreationDate="2011-01-26T19:50:55.150" UserId="744" />
  <row Id="10066" PostId="7741" Text="@James: thank you for your comment. As I understand, under normal circumnstances the event messaging system might be redundant and therefore unnecessary. A good way can be keeping the proposed MVC (Application Layer, Game Logic, Game View) architecture, but avoiding messaging if it is not absolutely necessary." CreationDate="2011-01-26T19:56:22.083" UserId="2229" />
  <row Id="10067" PostId="7753" Score="1" Text="Happy to see that you joined now instead of waiting!" CreationDate="2011-01-26T20:07:44.070" UserId="14" />
  <row Id="10068" PostId="7645" Text="@Joe , it was really late, I have not been getting enough sleep, and I was slightly inebriated when asked to post my nomination. I am usually much better with my words." CreationDate="2011-01-26T20:09:56.350" UserId="962" />
  <row Id="10069" PostId="7741" Text="@Ray: Hi, I am glad you have read that book. I understand what you mean, but look: the author uses messaging for AI, collision detection, changing object posistion and rotation, spawning objects, playing sounds, multiplayer game, multiple views, to modify game state where possible. This means, if object position and rotation are updated via messaging, what would be point of havin a secondary non-messaging system doing the same thing?" CreationDate="2011-01-26T20:10:20.983" UserId="2229" />
  <row Id="10070" PostId="7741" Score="1" Text="If you've got the Second Edition, look at the chapter named Controlling the Main Loop. It should be named the same thing in the 3rd edition. That should really answer your question." CreationDate="2011-01-26T20:23:34.320" UserId="2332" />
  <row Id="10071" PostId="7738" Text="Do you have a reference for splitting a concave polygon into convex polygons? The SAT link you provided doesn't mention anything of the sort." CreationDate="2011-01-26T20:50:57.853" UserId="4929" />
  <row Id="10072" PostId="7741" Text="I've got the Third Edition. I quickly went through chapter 6 (Controlling the Main Loop) and I see the following virtual functions for Game Actor: MoveActor(), RemoveActor(), LoadGame(), OnUpdate(), ChangeState(). It looks like AI, CollisionDetection, Spawning objects, Mutliple Views, etc.. are done purely via messaging. Even if they weren't the key question of my interest is evaluating messaging system, and the benefit it brings. Thanks for helping, Ray." CreationDate="2011-01-26T21:01:29.683" UserId="2229" />
  <row Id="10073" PostId="7090" Text="@Adam - See flashcanvas: http://flashcanvas.net/" CreationDate="2011-01-26T21:02:17.283" UserId="4929" />
  <row Id="10074" PostId="538" Text="Don't leave out the new crop of web-based Javascript Canvas/WebGL games that run in web browsers!" CreationDate="2011-01-26T21:19:32.867" UserId="4929" />
  <row Id="10075" PostId="7754" Score="1" Text="The question is a bit vague, what is your intended goal or final result?" CreationDate="2011-01-26T21:23:22.487" UserId="962" />
  <row Id="10076" PostId="7741" Text="**This is from the book:** *When the game logic makes changes in the game state, such as creating or moving an object, a number of game systems will respond. Here‘s an example. Imagine that one object in your game is a portable radio. The graphics system will need to create polygons and textures so you can see the radio. The sound system will create a sound effect so your radio will play some great music—perhaps a little Jimi Hendrix. AI processes might respond to the presence of the object. In this case, they might just chill out and enjoy the sublime guitar from our boy Jimi.*" CreationDate="2011-01-26T21:24:45.933" UserId="2229" />
  <row Id="10077" PostId="7741" Text="*All three of these subsystems—the graphics system, the audio system, and even the AI system—need to know that this radio exists and what it is doing. These systems are notified through events. Just like a Windows application hears about a WM_MOUSEMOVE event, your game systems can listen and react to a game event for practically any change in game state or input from a player. There are also global game events, such as events to inform subsystems that a new level has been loaded or the game is being saved.*  - to me it looks, like the author recommends using events wherever possible." CreationDate="2011-01-26T21:26:12.717" UserId="2229" />
  <row Id="10078" PostId="7747" Text="For a go-fish type of game, you could probably use HTML and javascript, which you could adapt to work on all of your listed platforms, with minimal changes." CreationDate="2011-01-26T21:39:15.303" UserId="1198" />
  <row Id="10079" PostId="7756" Score="2" Text="You are right, it is normalization. But it is always better to try to find good answer in previous questions. And if you are answering it is always better to little explain or share code or whatever you think that can be useful, not just point to the google. " CreationDate="2011-01-26T22:12:25.303" UserId="3794" />
  <row Id="10081" PostId="7755" Score="2" Text="Hello guest. What are you looking for is normalization. Please read answers to this question: http://gamedev.stackexchange.com/questions/7540/enemy-movement-in-straight-line-to-player-in-chase-game . One offers code which you need, second explains how it works very nicely." CreationDate="2011-01-26T22:18:45.063" UserId="3794" />
  <row Id="10082" PostId="7757" Text="Note also that the if the length of sprite.Direction (before normalization) is less than some threshold, your sprite has arrived." CreationDate="2011-01-26T22:22:25.997" UserId="3081" />
  <row Id="10083" PostId="7755" Text="Hello, I've looked at the link and it was exactly what I needed. Thank you!" CreationDate="2011-01-26T22:23:09.550" UserId="3265" />
  <row Id="10084" PostId="7757" Text="Exactly, I was about to edit my post, but I guess I won't. If you don't want your sprite to constantly seek the target, just set the Direction to Vector2.Zero when it is close enough to the target." CreationDate="2011-01-26T22:26:55.477" UserId="2111" />
  <row Id="10085" PostId="7757" Text="Very good answer... and you also taught me about the use of gameTime (to move sprites at an appropriate speed on slower computers), so two birds with one stone. I'll flag this answer as accepted." CreationDate="2011-01-26T22:27:11.167" UserId="3265" />
  <row Id="10086" PostId="7756" Text="Thanks for your response, it was indeed normalisation." CreationDate="2011-01-26T22:27:36.453" UserId="3265" />
  <row Id="10087" PostId="7757" Text=":) By the way I personally like to put the normalization inside my sprite class(inside my update function), to prevent having to constantly normalize it outside of the class. You should also make sure that the vector's length is not equal to 0, otherwise you'll get a divide by 0 exception. Just check if Direction.LengthSquared() &gt; 0 before normalizing it to be safe(length squared so that you don't have to calculate that expensive square function ;) )." CreationDate="2011-01-26T22:31:08.687" UserId="2111" />
  <row Id="10088" PostId="7757" Text="Lets say we are using a different IDE that didn't have a normalize function, what would be the Normalize equation? " CreationDate="2011-01-26T23:32:16.113" UserId="2301" />
  <row Id="10089" PostId="7741" Text="Some crazy event-dispatcher has flooded this area of the site with lengthy comments! Seriously though: An event is probably an object and you're going to need bucketloads of them to dispatch events for every tiny change in your game world (memory?). I suggest you give it a go. You'll notice the benefits/drawbacks pretty soon I guess." CreationDate="2011-01-26T23:34:12.133" UserId="20" />
  <row Id="10090" PostId="7757" Text="@spooks ... X/length and Y/length (and Z/length if you have it) ... how to determine length? it is sqrt( x*x + y*y + ( z*z if you have it) ). But honestly: This is the total basics. Please look at some basic algebra books and read it again..." CreationDate="2011-01-26T23:54:09.740" UserId="3794" />
  <row Id="10091" PostId="7747" Text="nate bross: I _could_, but what if I wanted to make a gofish game that was a little more than average. HTML/JS/PHP/MySQL maybe, so I can have user accounts, reputations, more advanced features, etc. So if I were to use html/javascript/php/mysql, would this still be likely adaptable to listed platforms, with minimal changes?" CreationDate="2011-01-27T02:41:09.470" UserId="4946" />
  <row Id="10092" PostId="7606" Text="@davr It would if it was my site. I was attempting to gather statistics for whoever owns that link. Whether they use it is on them." CreationDate="2011-01-27T03:26:56.387" UserId="55" />
  <row Id="10093" PostId="7052" Text="I don't know anything about the Game Center... But did you try adding a negative score?" CreationDate="2011-01-27T03:58:56.393" UserId="189" />
  <row Id="10094" PostId="7747" Text="Yes, I would think so. It depends how you build it. It will be most easy if you follow the principles of http://csszengarden.com/" CreationDate="2011-01-27T04:33:09.927" UserId="1198" />
  <row Id="10095" PostId="4886" Text="I've heard there's a tool/method to pull the mesh/object information from the WoW game files. Wonder if that might shed any light?" CreationDate="2011-01-27T04:42:33.390" UserId="2536" />
  <row Id="10096" PostId="7738" Text="This is actually a very complex problem depending on the geometry of the polygon, but all 3D engines do this, as the hardware can generally only render coplanar quads and triangles, not polygons." CreationDate="2011-01-27T05:21:55.230" UserId="7081" />
  <row Id="10097" PostId="7758" Text="Pretty much this- existing formats use bones to support this." CreationDate="2011-01-27T07:40:56.447" UserId="4662" />
  <row Id="10098" PostId="7759" Text="Have you considered asking the question on the farseer discussions page? http://farseerphysics.codeplex.com/discussions ... On second glance, apparently you have, and have an answer too: http://farseerphysics.codeplex.com/Thread/View.aspx?ThreadId=243468" CreationDate="2011-01-27T08:54:06.400" UserId="4264" />
  <row Id="10099" PostId="7738" Score="1" Text="@ehsanul: http://en.wikipedia.org/wiki/Polygon_triangulation describes a couple popular approaches." CreationDate="2011-01-27T09:10:33.280" UserId="744" />
  <row Id="10100" PostId="7724" Text="@bummzack: Please read the &quot;Euclidean distance, squared&quot; section of Amit's heuristic page. Distance squared is not an admissible heuristic, and will result in suboptimal pathing." CreationDate="2011-01-27T09:24:35.910" UserId="744" />
  <row Id="10101" PostId="7760" Text="How might you annotate things so the engine understands what the artist intended for the various meshes in the model?" CreationDate="2011-01-27T09:27:01.210" UserId="4129" />
  <row Id="10102" PostId="2140" Score="1" Text="I find it kind of sad that basically all AI middleware is pathfinding." CreationDate="2011-01-27T09:38:05.893" UserId="4264" />
  <row Id="10103" PostId="7754" Text="@will: are you looking for some easier model of usage than bones? Mean parent-child tranformations as you mention? I've implemented some tanks just using transformations and having objects for body, turret and gun." CreationDate="2011-01-27T09:46:07.273" UserId="3794" />
  <row Id="10104" PostId="7760" Score="3" Text="It's usually done by adding tags to certain bones, or having special bones named a certain way. For example every bone named starting with &quot;foot&quot; is assumed to be the bottom of a foot, the direction of it showing the direction the foot is facing; a bone named &quot;projectile_start&quot; is where you spawn the projectiles of your tank's cannon, and object parts tagged with &quot;steel&quot; have corresponding sparks when hit and have corresponding sound effects assigned." CreationDate="2011-01-27T10:02:38.020" UserId="1141" />
  <row Id="10105" PostId="7724" Text="@Joe Interesting. Thanks for the heads up." CreationDate="2011-01-27T10:17:00.383" UserId="20" />
  <row Id="10106" PostId="7756" Text="I should have commented, you are right." CreationDate="2011-01-27T12:54:56.360" UserId="4956" />
  <row Id="10107" PostId="7756" Text="+1 because Wolfire is great :)" CreationDate="2011-01-27T13:03:24.433" UserId="2111" />
  <row Id="10108" PostId="7753" Text="Thanks Noctrine! I took a few days for some thought and making sure it was something I could handle." CreationDate="2011-01-27T13:38:51.060" UserId="189" />
  <row Id="10109" PostId="2140" Text="This is perfect timing, I just started a game project class this semester and my team is the &quot;tools&quot; team so we'll probably end up being the ones to write the bridge that integrates one of these into the game. :)" CreationDate="2011-01-27T13:40:34.677" UserId="189" />
  <row Id="10110" PostId="6582" Text="Does the downvoter want to add a comment explaining how they disagree with my answer? Just wondering. :)" CreationDate="2011-01-27T15:28:49.167" UserId="1101" />
  <row Id="10111" PostId="7722" Text="Operating systems are not real time unless explicitly made to be so. See this list of current real time operating systems: http://en.wikipedia.org/wiki/Real-time_operating_system#Examples" CreationDate="2011-01-27T15:39:27.827" UserId="189" />
  <row Id="10112" PostId="7330" Score="2" Text="Anyone reading this answer later - Gregory's answer is a great approach, but can be very inaccurate (up to 45d/0.785r!) when dealing with negative angles. Please see my edit for a corrected, semi-optimized answer" CreationDate="2011-01-27T15:46:16.880" UserId="1058" />
  <row Id="10113" PostId="7767" Text="It would cost more money and hassle to enforce patent infringement, let along patenting it." CreationDate="2011-01-27T17:02:45.503" UserId="656" />
  <row Id="10114" PostId="7760" Score="2" Text="Why is bones needed for simple mesh translation and rotation? Aren't bones used to actually deform the meshes while translating and rotating them while a simple mesh/layer parenting setup sounds a lot simpler for non-organic constructs?" CreationDate="2011-01-27T17:13:29.380" UserId="2239" />
  <row Id="10115" PostId="7768" Score="2" Text="I'd add that if your game idea can truly be stolen and properly implemented by someone else, it's probably not worth implementing in the first place.  Value lies in your execution of the idea, not the idea itself.  There are certainly &quot;clones&quot; of popular, _finished_ games, but they're rarely more successful or well-received than the originals." CreationDate="2011-01-27T17:42:12.507" UserId="953" />
  <row Id="10116" PostId="7771" Text="Related: http://gamedev.stackexchange.com/questions/5981/hardware-for-iphone-2d-games-development" CreationDate="2011-01-27T18:20:08.853" UserId="51" />
  <row Id="10117" PostId="7724" Score="1" Text="Squared distances are too small for short distances (A* wastes time) and too large for long distances (A* finds worse paths). There are good reasons to have the heuristic overestimate distances, but avoiding sqrt isn't one of them. Either use a fast sqrt approximation, or use a diagonal distance, or if your navigation graph is explicit, compute the Euclidean/Pythagorean distance once and store it with the edge between nodes." CreationDate="2011-01-27T18:29:43.630" UserId="2472" />
  <row Id="10118" PostId="7768" Score="1" Text="One counter that argument is Angry Birds, which is a clone of many various &quot;knock buildings over&quot; type flash games that have been around forever, but didn't make it quite as big for some reason." CreationDate="2011-01-27T18:56:11.873" UserId="4398" />
  <row Id="10119" PostId="7771" Text="Also don't forget the cost to get at least an iPod Touch to test on the device. Better would be an iPhone/iPod with iOS 3.x and another one with 4.x. Preferably the 4.x device should have a retina display to test this as well..." CreationDate="2011-01-27T19:02:20.320" UserId="20" />
  <row Id="10120" PostId="7770" Score="6" Text="Technically, you CANNOT patent an idea. More info from a more authoritative source: http://ipwatchdog.com/2010/11/23/protecting-ideas-can-you-patent-an-idea/id=13495/" CreationDate="2011-01-27T19:21:07.160" UserId="4690" />
  <row Id="10121" PostId="538" Text="Totally, you're correct. Sadly, there aren't a lot of those games that are being monetized. But, yes, that would be correct to add to the list." CreationDate="2011-01-27T19:50:07.193" UserId="138" />
  <row Id="10122" PostId="7775" Score="8" Text="It would be nice to [attribute the quote](http://en.wikipedia.org/wiki/Howard_H._Aiken)." CreationDate="2011-01-27T19:58:02.817" UserId="4977" />
  <row Id="10123" PostId="7767" Score="9" Text="It sounds like you don't believe in patenting ideas… unless it's *your* idea and you don't want other people to use it." CreationDate="2011-01-27T19:59:02.003" UserId="4977" />
  <row Id="10124" PostId="7768" Score="4" Text="@Peter - I'd say two things about Angry Birds:  1) I think it's a great demonstration that a good implementation is what really matters, not an original idea.  2) It has also done well at least in part because it was released for a new(ish) platform (the modern smart phone, e.g. iPhone/Android) at a critical time in that platform's development -- it beat a lot of its competition to market.  This makes it a bit of an odd case." CreationDate="2011-01-27T20:20:02.033" UserId="1289" />
  <row Id="10125" PostId="7774" Text="That's pretty cool approach. " CreationDate="2011-01-27T20:36:02.170" UserId="3794" />
  <row Id="10126" PostId="7767" Text="I don't even think a game design in production can be patent, otherwise the first person that had a cover system, or rechargeable health, or shooting in a game would be making millions" CreationDate="2011-01-27T20:53:31.263" UserId="2301" />
  <row Id="10127" PostId="7330" Text="You're totally right; modulos don't work as you'd intuitively expect when dealing with negative numbers.  Sorry for the omission, and I'm glad you found it!" CreationDate="2011-01-27T21:33:27.123" UserId="953" />
  <row Id="10129" PostId="4237" Text="Not Separating your logic from your data. Thats a great point, which will almost always cause problems down the road, or while updating!" CreationDate="2011-01-27T21:54:36.837" UserId="2301" />
  <row Id="10130" PostId="7765" Score="1" Text="-1 because there are known issues with all software. Specific questions, please." CreationDate="2011-01-27T22:40:40.617" UserId="744" />
  <row Id="10131" PostId="7330" Score="1" Text="If you're calling Math.Round anyway, I would expect the first algorithm to be faster, and you wouldn't have to deal with the negative modulo crap at all." CreationDate="2011-01-27T22:45:52.843" UserId="744" />
  <row Id="10132" PostId="7686" Text="Exactly, there isn't an automatic way to do this for 2D -- you need to render on something besides the screen, then render that to the screen." CreationDate="2011-01-27T22:51:29.790" UserId="1198" />
  <row Id="10133" PostId="7760" Score="1" Text="@oskar Duveborn: True, so +1, but if you use bones you can add a deforming tank (with a cloth over the turret, or an organic alien tank, who knows) without needing the change the engine." CreationDate="2011-01-27T23:03:45.433" UserId="769" />
  <row Id="10134" PostId="7711" Text="Good answer. One last bit: turn off Z testing before you render the text so that it doesn't render behind stuff." CreationDate="2011-01-27T23:30:21.927" UserId="160" />
  <row Id="10135" PostId="7773" Text="So ridiculous that they will only except code that was programmed on an apple. ridiculous! but thats neither or nor there" CreationDate="2011-01-27T23:45:39.443" UserId="2301" />
  <row Id="10136" PostId="7767" Score="1" Text="See also related questions: http://gamedev.stackexchange.com/questions/1965/is-there-any-level-design-copyright, http://gamedev.stackexchange.com/questions/5684/how-to-protect-a-developed-game" CreationDate="2011-01-28T01:20:51.307" UserId="458" />
  <row Id="10137" PostId="7694" Score="3" Text="You're a realistic person for thinking of these, but it would be good to at least add a disclaimer that this is a worst-case, not every-case scenario." CreationDate="2011-01-28T01:22:09.730" UserId="458" />
  <row Id="10138" PostId="7681" Score="3" Text="Shouldn't this be a community wiki, since there's no single right answer but just a list of questions?" CreationDate="2011-01-28T01:22:43.647" UserId="458" />
  <row Id="10139" PostId="7711" Text="Ah yea, good point. And thanks :D" CreationDate="2011-01-28T01:34:45.973" UserId="1430" />
  <row Id="10140" PostId="7669" Text="+1 for trousers." CreationDate="2011-01-28T02:18:16.580" UserId="1198" />
  <row Id="10141" PostId="7694" Text="@Ian Schreiber: Yeah, you're right.  Edited per." CreationDate="2011-01-28T02:58:04.670" UserId="4191" />
  <row Id="10142" PostId="7773" Text="Well I mean, technically OS X is not licensed to non-Apple machines, so it follows that something which only runs in OS X should only run on Apple machines. I'm not 100% sure that they explicitly say it needs to have been compiled in OS X or if it's just an assumption, but I heard that it was explicitly stated somewhere." CreationDate="2011-01-28T03:15:39.030" UserId="189" />
  <row Id="10143" PostId="7052" Text="GC leaderboards only accept entries that are better than previous so this will have no effect." CreationDate="2011-01-28T04:13:45.320" UserId="4406" />
  <row Id="10144" PostId="7790" Text="Thanks for the response.  Our of curiosity, what were your original reasons for using GAE?  Were server location and scale-out among your criteria?" CreationDate="2011-01-28T05:07:01.113" UserId="4212" />
  <row Id="10145" PostId="7790" Text="It was more that it was easy to get something up and running quickly for prototyping purposes, and that we didn't want to spend effort setting up and maintaining a server. Python was also a factor." CreationDate="2011-01-28T05:14:05.603" UserId="211" />
  <row Id="10146" PostId="7792" Score="1" Text="If you're going to do something &quot;complicated&quot; like a stick figure walking/running while the background changes, and then suddenly the stick figure turns into an eraser and attacks mutant stick bird kids with a flying dog (from Maximum Ride by James Patterson), you're going to have to use Flash." CreationDate="2011-01-28T06:13:07.653" UserId="3637" />
  <row Id="10147" PostId="7728" Text="Yes, I tried that but no good news" CreationDate="2011-01-28T06:45:16.667" UserId="3817" />
  <row Id="10148" PostId="7760" Text="@Oskar Duveborn: Bones aren't *strictly* needed, just useful: they are usually already well-supported in modern engines and in your tool chain of choice, they have all kinds of constraints to the relative movement which you'd otherwise need to implement anyway, they allow for non-organic constructs to have flexible parts as well (connecting hoses, for example), and they allow you to apply IK solutions to your animation: from that perspective, there isn't a lot of difference between an arm moving to reach an apple, and a tank's turret and gun assembly turning around to aim in a direction." CreationDate="2011-01-28T07:05:15.673" UserId="1141" />
  <row Id="10149" PostId="7760" Text="Besides it gives you an easy way to set the pivot position (the &quot;joint&quot;) in the graphic package. Also, there are usually more operations available, and more constraints, in Blender (IMHO), when bones are involved...Besides, a complex chain of 3 parts can be very easy to animate with bones. With same system, you can add many small bones to the flag and make the flag animation. Although from a visual POV, it'd be better to use cloth simulation." CreationDate="2011-01-28T08:44:00.937" UserId="3599" />
  <row Id="10150" PostId="7586" Text="I personally think that this should be moved to StackOverflow." CreationDate="2011-01-28T08:57:33.150" UserId="4662" />
  <row Id="10151" PostId="7792" Score="5" Text="@muntoo Why does one *have to* use Flash? Does it have a button that does that stuff automatically for you? No. You can do that with any animation software. Or draw it by hand and scan the images..." CreationDate="2011-01-28T09:05:02.297" UserId="20" />
  <row Id="10152" PostId="7722" Text="Thanks Ricket. I always thought them to be all Real Time since performance is so demanding in this area." CreationDate="2011-01-28T09:29:02.267" UserId="4854" />
  <row Id="10153" PostId="7779" Score="2" Text="Remember that `penetration` is a less useful measure than `penetration + (1 - penetration) * conversion`." CreationDate="2011-01-28T10:33:24.377" UserId="744" />
  <row Id="10154" PostId="7787" Text="&quot;The good news is that the game industry is mostly a meritocracy.&quot; Sorry, but the abysmal rates of hire, promotion, and retention for non-males (even relative to other IT sectors) expose that claim as bullshit." CreationDate="2011-01-28T10:37:39.113" UserId="744" />
  <row Id="10155" PostId="2140" Text="@Ricket forget middleware, you want to write it all yourself this one time, just so you know not to do it that way. :)" CreationDate="2011-01-28T10:49:52.853" UserId="259" />
  <row Id="10158" PostId="5730" Text="The title was changed AFTER I did my answer" CreationDate="2011-01-28T13:20:29.753" UserId="3443" />
  <row Id="10159" PostId="7768" Text="What if the original inventor of a game that was about using projectiles to knock down a structure would have patented it?  They at least could have made money by licensing the patent to Angry Birds :)" CreationDate="2011-01-28T13:57:10.347" UserId="4973" />
  <row Id="10160" PostId="7769" Text="I got it. I don't think a trade secret is what I want.  I'm concerned about someone copying the concept *after* my product is made available to the public.  I've read the thing about patents, that ideas can't be patented... but it doesn't seem to stop a lot of companies from doing, what looks to me like, just that.  Sometimes it seems like it's a matter of how the patent is worded.  I think that there's also design patents, which seem to be about a unique &quot;look&quot; (from what I understood about them).  " CreationDate="2011-01-28T14:05:52.027" UserId="4973" />
  <row Id="10166" PostId="7813" Text="Think this needs to be community wiki - very subjective" CreationDate="2011-01-28T16:25:07.273" UserId="741" />
  <row Id="10168" PostId="7816" Text="I'd mostly agree, but I don't get the bit about the bulkyness of head-tracking - isn't it enough to have a few IR leds or white balls on the helmet and a webcam + freetrack these days?" CreationDate="2011-01-28T16:59:07.047" UserId="4996" />
  <row Id="10169" PostId="7813" Text="Sorry, first post here, didn't know where to put this exactly." CreationDate="2011-01-28T16:59:57.013" UserId="4996" />
  <row Id="10170" PostId="7816" Text="I'm not sure that that would provide data of sufficient quality to be useful, but I'm not really a domain expert on head tracking, so maybe." CreationDate="2011-01-28T17:00:34.353" UserId="1430" />
  <row Id="10171" PostId="341" Text="Though if the language is simpler, but no dev uses it, is it really simpler?  LIke, lots of things are way simpler in, say, Haskell, or Python or Lisp than in C++.  But is that really so?" CreationDate="2011-01-28T17:00:41.080" UserId="3920" />
  <row Id="10172" PostId="584" Text="+1. Full title is Game Feel: A Game Designer's Guide to Virtual Sensation (http://www.amazon.com/Game-Feel-Designers-Sensation-Kaufmann/dp/0123743281/ref=sr_1_2?ie=UTF8&amp;s=books&amp;qid=1296234528&amp;sr=8-2)" CreationDate="2011-01-28T17:09:25.287" UserId="4690" />
  <row Id="10173" PostId="7817" Text="Thank you very much. this is exactly what I was looking for! ;)" CreationDate="2011-01-28T17:11:49.653" UserId="4997" />
  <row Id="10174" PostId="7769" Text="According to this article game ideas can be patented and people have made money doing it.  http://www.ehow.com/how_4899582_patent-game-idea.html" CreationDate="2011-01-28T17:35:16.650" UserId="4973" />
  <row Id="10175" PostId="7767" Text="And additional related question: http://gamedev.stackexchange.com/questions/2981/the-thin-red-line-what-to-present-to-get-interest-without-showing-too-much/2984#2984" CreationDate="2011-01-28T17:51:33.597" UserId="154" />
  <row Id="10176" PostId="7768" Text="@Christian, Software patents are a really bad idea. They stifle innovation and reduce the experimentation. Most of your favorite games borrow heavily from the previous market leaders in whatever genre they fall in. If id software had patented FPS mechanics there would never be a Call of Duty, Battlefield, Oblivion, Bioshock. Implementation is what sets games apart not concept. If you implement your ideas well you will have a product that sells. Focus on that and you don't have to worry about other people coping what you are doing. " CreationDate="2011-01-28T17:58:25.350" UserId="154" />
  <row Id="10177" PostId="7813" Text="CW is a mod-only feature and should be flagged if you think that's the issue instead of brought up through comments.  That being said I don't think this should be CW, it's more just probably not a very good question because it's mostly speculation." CreationDate="2011-01-28T19:46:50.843" UserId="51" />
  <row Id="10178" PostId="7769" Text="You'll have difficulty enforcing it based on how much of the product is &quot;copied&quot;. Patents are very restrictive in what they protect; it's your EXACT implementation of the concept only. The intellectual property laws of the United States were originally designed to foster innovation by protecting the rights of inventors without unduly stifling creativity in similar products." CreationDate="2011-01-28T20:48:43.500" UserId="4690" />
  <row Id="10179" PostId="7789" Text="I finally figured this out about MSBuild. A very interesting library. My guess, and my hope, is that this gets set as a standard piece of the .Net library some time in a future release." CreationDate="2011-01-28T21:58:06.530" UserId="191" />
  <row Id="10180" PostId="7792" Text="@bummzack Sorry, I meant &quot;you *could* use Flash&quot;." CreationDate="2011-01-28T22:04:01.413" UserId="3637" />
  <row Id="10181" PostId="7681" Score="2" Text="... but if I told you, you'd have an unfair advantage if you interviewed with us." CreationDate="2011-01-28T22:15:47.687" UserId="51" />
  <row Id="10182" PostId="7823" Score="3" Text="Try sticking in a try-catch and check out what exception you're getting. That should help with getting some help on this." CreationDate="2011-01-28T23:23:12.183" UserId="2332" />
  <row Id="10183" PostId="7820" Text="That won't work right at all, you're adding an unscaled 2pi to the scaled rotation. For example, it will round pi/4 to 0.56.  (In fact, I'm not sure what you think in Gregory's answer won't work for negative rotations.)" CreationDate="2011-01-28T23:55:03.783" UserId="744" />
  <row Id="10184" PostId="7798" Text="Why would you use websockets for a native app and a server? Just use real sockets." CreationDate="2011-01-29T01:29:09.893" UserId="395" />
  <row Id="10185" PostId="7798" Text="because websockets are firewall-friendlier." CreationDate="2011-01-29T02:19:21.690" UserId="1581" />
  <row Id="10186" PostId="7831" Score="1" Text="Other than motion blur, all of those seem like an &quot;art problem&quot; (i.e. just things people should be doing as part of their animations they make in max/maya/whatever) instead of some kind of graphics engine tech." CreationDate="2011-01-29T03:11:18.127" UserId="51" />
  <row Id="10187" PostId="7798" Text="How exactly is that the case? If you mean HTTP is usually allowed as an outbound port, then you can just run anything on port 80 (and usually 443) and be fine. If you mean that HTTP is usually allowed through protocol inspection, then that doesn't apply to websockets anyway. Websockets are a hack to create a highly restricted TCP-stream-like API for browsers that no one uses (indeed Firefox recently disabled it due to major security issues)." CreationDate="2011-01-29T03:52:42.890" UserId="395" />
  <row Id="10188" PostId="7823" Text="Good advice. The exception thrown is &quot;System.InvalidOperationException: Song playback failed, please verify that song is not DRM protected.&quot; Also, I have tried with the song encoded as an MP3 and got the same results (worked in emulator, does not work in phone). A side question: is there an easy way to print/save debug text on the phone..? My only option was to draw the text on screen, heh." CreationDate="2011-01-29T04:27:49.570" UserId="5001" />
  <row Id="10189" PostId="7833" Score="1" Text="Do you care about keeping your source closed or not, and do you care about whether or not a service must be self-hosted? Many of the better free options for some of your questions depend on those criteria -- for example, I like Google Code (which supports Mercurial for DCVS) but it requires you make your code available under an open source license." CreationDate="2011-01-29T05:14:48.280" UserId="1430" />
  <row Id="10190" PostId="7835" Score="4" Text="This is an interesting question (though I personally wouldn't ever use the voice stuff), but I'm not sure the actual question is particularly germane to game development specifically. You might get better answers on StackOverflow." CreationDate="2011-01-29T05:17:47.013" UserId="1430" />
  <row Id="10191" PostId="7833" Text="@Josh: I think everything should be able to run on your local network just for reliability reasons (in cause your internet or isp goes down or the operating site is down for maintenance). I think many ppl would want private code so self hosted and private is recommended for these answers." CreationDate="2011-01-29T05:27:36.463" UserId="1047" />
  <row Id="10192" PostId="7835" Score="4" Text="This is the exact thing that shell scripting (and bindable hotkeys) was made for.  " CreationDate="2011-01-29T05:30:22.237" UserId="51" />
  <row Id="10193" PostId="7833" Text="Oh, well, I posted my answer while you were posting this comment I guess, and most of it focuses on hosted stuff, but... hopefully some of it is still useful to you. :D" CreationDate="2011-01-29T05:34:45.610" UserId="1430" />
  <row Id="10194" PostId="7833" Score="1" Text="Converting to CW as this feels like a &quot;list of X&quot; question.  Although, X is pretty vague.  This really feels like it probably should be separate questions." CreationDate="2011-01-29T05:35:03.260" UserId="51" />
  <row Id="10195" PostId="7835" Text="@Tetrad you should make an answer out of your comment :) Here's a good resource regarding XCode and scripting: http://developer.apple.com/library/mac/#documentation/DeveloperTools/Conceptual/XcodeWorkspace/310-User_Scrips/user_scripts.html" CreationDate="2011-01-29T09:28:18.393" UserId="20" />
  <row Id="10196" PostId="7839" Text="Ah, the joys of DRM." CreationDate="2011-01-29T11:00:48.170" UserId="4264" />
  <row Id="10197" PostId="7833" Score="1" Text="This sounds like five community wiki questions to me." CreationDate="2011-01-29T11:02:53.270" UserId="4264" />
  <row Id="10198" PostId="7784" Score="1" Text="Silverlight 70%? I find that difficult to believe." CreationDate="2011-01-29T11:06:18.523" UserId="4264" />
  <row Id="10199" PostId="7847" Text="In order to move in a circle, you must constantly accelerate sideways." CreationDate="2011-01-29T11:40:47.043" UserId="4264" />
  <row Id="10200" PostId="7847" Text="maybe you can check this answer: http://gamedev.stackexchange.com/questions/7365/move-object-on-circle-in-cocos2d-game/7366#7366 " CreationDate="2011-01-29T11:43:41.237" UserId="3794" />
  <row Id="10201" PostId="7847" Text="@notabene Thanks, I actually read that before posting, I'm interested in velocity though instead of position and I don't know how to go from one to the other " CreationDate="2011-01-29T12:03:47.490" UserId="171" />
  <row Id="10202" PostId="7843" Score="3" Text="This is exactly the kind of gender-role-boxing we don't need more of." CreationDate="2011-01-29T12:18:58.450" UserId="744" />
  <row Id="10203" PostId="7847" Score="1" Text="A velocity vector is just the difference between two positions." CreationDate="2011-01-29T13:22:52.603" UserId="744" />
  <row Id="10204" PostId="7835" Text="A batch script? Or some kind of build tool?" CreationDate="2011-01-29T15:36:38.913" UserId="4345" />
  <row Id="10205" PostId="7841" Score="1" Text="+1 Thanks for this, something to look into soon :)" CreationDate="2011-01-29T15:50:40.650" UserId="2332" />
  <row Id="10207" PostId="7627" Text="Please mention more random computer science terms. This is pointless" CreationDate="2011-01-29T16:25:23.673" UserId="4345" />
  <row Id="10208" PostId="7833" Text="It sounds like four CW questions and a dup of http://gamedev.stackexchange.com/questions/480/version-control-for-game-development-issues-and-solutions to me." CreationDate="2011-01-29T17:34:04.533" UserId="744" />
  <row Id="10209" PostId="7833" Text="@acidzombie: Except in very rare cases (one developer once told me their SOX compliance requirements forbid it, e.g.), hosting your own VCS is really more of a liability than an asset. It takes a surprising amount of time/people/money to keep it running well." CreationDate="2011-01-29T17:38:27.397" UserId="744" />
  <row Id="10210" PostId="7855" Score="1" Text="This would be better at http://www.stackoverflow.com/ because it's not truly game development related despite the fact that you are trying to make a game with it." CreationDate="2011-01-29T17:56:15.343" UserId="189" />
  <row Id="10211" PostId="7856" Text="WM_PAINT is generally only sent once and only when there are no other messages in the queue (although DefWindowProc, if called, will validate the update region and potentially allow more to be enqueued). Failure to handle it oneself can cause problems, but shouldn't cause one to peg a core like this." CreationDate="2011-01-29T18:06:20.233" UserId="1430" />
  <row Id="10212" PostId="7857" Text="updated my code snippet." CreationDate="2011-01-29T18:14:25.360" UserId="2999" />
  <row Id="10213" PostId="7857" Text="I get what you're saying, however I'm a bit miffed that my application is occassionally using 94% when particles are created. " CreationDate="2011-01-29T18:17:33.110" UserId="2999" />
  <row Id="10215" PostId="7833" Text="@Joe Wreschnig: Really? Any idea if the same problem with distributed version control? I never had a problem with git and having a bare repository for each user to push to and only pulling seems to work very, very well.  " CreationDate="2011-01-29T18:26:40.400" UserId="1047" />
  <row Id="10216" PostId="7833" Text="@Tetrad: Yes, but i am really hoping someone can mention tools that work well together or a package with two or more of these. Not that i think they should all be in one package such as TRAC or redmine. I'm thinking it would be cool if all of these were separate but have a plugin so if i am looking at bugs i can easily visit the doc on wikimedia and another link say in the toolbar of all of these to bring me to nightly builds and see what failed or not. Or an article to explain how to set the toolchain up but really i like the idea of good solid separate package then one that handles it all" CreationDate="2011-01-29T18:33:46.860" UserId="1047" />
  <row Id="10217" PostId="7798" Text="I didn't know about the security issue you mentioned. Thanks. I wouldn't call them a &quot;hack&quot; though. I can't answer the rest of your questions here. I'd suggest creating a question in Stack Overflow." CreationDate="2011-01-29T18:34:55.373" UserId="1581" />
  <row Id="10218" PostId="7857" Text="yes I have dual core." CreationDate="2011-01-29T18:49:10.807" UserId="2999" />
  <row Id="10219" PostId="7833" Text="On your fifth question, I'd put the assets in source control. Whether in the same repository as the code or not depends on how big they are." CreationDate="2011-01-29T18:50:14.007" UserId="5020" />
  <row Id="10220" PostId="7839" Score="1" Text="Good to know, annoying as hell as I imagine quite a few developers run into this issue." CreationDate="2011-01-29T19:15:14.860" UserId="2332" />
  <row Id="10221" PostId="7859" Text="Also, I'll monitor this question and vote for good answers!" CreationDate="2011-01-29T19:34:21.077" UserId="5021" />
  <row Id="10222" PostId="7859" Text="Is there a reason you must pack the data into a float, or would packing them into a 32 bit integer as a fixed point format work?" CreationDate="2011-01-29T19:49:35.593" UserId="744" />
  <row Id="10223" PostId="7857" Text="Even the updated code is still not sleeping or waiting on anything, which is what you must do, if you want your CPU utilization to drop." CreationDate="2011-01-29T19:52:17.853" UserId="744" />
  <row Id="10224" PostId="7859" Text="I'm using 32R32R32R32R and want to maximize the amount of data that I can fit in there. So it has to be a float." CreationDate="2011-01-29T20:03:12.133" UserId="5021" />
  <row Id="10225" PostId="7779" Text="Equation in word form for posterity: What matters is how many people will use a plugin to view my content, either because they already had it or converted to it just to see my content." CreationDate="2011-01-29T20:11:23.777" UserId="111" />
  <row Id="10226" PostId="7858" Score="1" Text="Might get better responses from Stack Overflow (http://www.stackoverflow.com/) - even though this applies to your games it's really programming. In the meantime... Can you not just put the DLLs in the same folder as your executable?" CreationDate="2011-01-29T20:36:39.453" UserId="189" />
  <row Id="10227" PostId="7863" Score="4" Text="You actually cannot legally do this, the SDK doesn't grant you a license to redistribute the D3DX DLLs, only the installers." CreationDate="2011-01-29T21:13:09.747" UserId="1430" />
  <row Id="10228" PostId="7862" Score="5" Text="If you want to practice Java coding, wouldn't it make sense for you to implement it yourself?" CreationDate="2011-01-29T21:19:39.040" UserId="4662" />
  <row Id="10229" PostId="7857" Text="At the moment it seems to always use 100% of a core (50%), but then it goes above 50% when I start doing other things.  How does it spread over 2 cores like that? I thought it would instead reduce the time it waits for messages, (50%) - (game engine usage%)" CreationDate="2011-01-29T21:20:34.217" UserId="2999" />
  <row Id="10230" PostId="7857" Text="It depends what else your code is doing, I could only speculate based on what you've posted. Why are you concerned about the CPU usage though? It's not, per se, &quot;bad.&quot; I'm not sure it means what you think it means." CreationDate="2011-01-29T21:24:44.620" UserId="1430" />
  <row Id="10231" PostId="7858" Score="1" Text="+1 Microsoft really sucks.. ;)" CreationDate="2011-01-29T21:40:10.547" UserId="4997" />
  <row Id="10232" PostId="7603" Text="So just to be sure: Render the scene from the perspective of a light to a texture, phong shade and blend to backbuffer, repeat for each light but ignore material." CreationDate="2011-01-29T22:18:49.153" UserId="4662" />
  <row Id="10233" PostId="7866" Score="1" Text="You're not allowed to redistribute the web installer, just point them to the microsoft.com page (so not ideal),  And the redistributable components are a minimum of 3Mb (insignificant compared to the size of a 'real game', but not for little spare-time projects)" CreationDate="2011-01-29T22:42:52.303" UserId="659" />
  <row Id="10234" PostId="7858" Text="Hmmm... would it be a silly idea to revert to the oldest possible DX9 SDK version I can get hold of, just to reduce this problem?  Seems a crazy way of doing things, but MS has really created an annoying problem here.  Another equally crazy option would be to re-implement the most important D3DX functionality from scratch, but I don't fancy re-inventing the Effects system..." CreationDate="2011-01-29T22:46:36.060" UserId="659" />
  <row Id="10235" PostId="7866" Text="Er, yup, you're right, I misspoke about the web installer. " CreationDate="2011-01-29T23:12:46.413" UserId="1430" />
  <row Id="10236" PostId="7858" Text="In the recent SDKs (as of some time last year I think) the effect subsystem was largely moved *out* of the core and D3DX SDKs for 10+. You can compile it yourself, in fact -- the code is in the SDK and is redistributable (as are the binaries produced from it). It is probably easier to back port the system to work with 9, and most of the rest of D3DX is pretty easy to re-implement or find alternatives for." CreationDate="2011-01-30T00:16:45.577" UserId="1430" />
  <row Id="10237" PostId="7872" Text="+1 for the blog article.  It says exactly what I would say on the matter." CreationDate="2011-01-30T01:40:07.410" UserId="51" />
  <row Id="10238" PostId="7870" Text="For the book recommendations, this question should help you: http://gamedev.stackexchange.com/questions/455/good-resources-for-learning-about-game-architecture" CreationDate="2011-01-30T01:41:52.353" UserId="51" />
  <row Id="10239" PostId="7848" Text="Thanks, I'm accepting this answer because I just implemented it and it works for my (probably simple) case " CreationDate="2011-01-30T02:18:40.700" UserId="171" />
  <row Id="10240" PostId="7872" Text="+1 for the difference between graphics and game engine." CreationDate="2011-01-30T02:40:47.373" UserId="1663" />
  <row Id="10241" PostId="7835" Text="I would personally use Perl for this, but I'm on windows. I don't think the voice recognition is really needed." CreationDate="2011-01-30T02:46:51.407" UserId="3547" />
  <row Id="10242" PostId="7768" Score="2" Text="&quot;Professional game developers do not trawl the internet looking for ideas to &quot;steal&quot;&quot; - speak for yourself.  If an idea is good, and will add to the end product, I'm using it.  It's part of the evolution of game design as an art form, or something." CreationDate="2011-01-30T04:48:02.697" UserId="51" />
  <row Id="10243" PostId="7862" Score="1" Text="I'm with DeadMG. If you want to solve it yourself, though, you are probably going to need some knowledge of vectors. Luckily, someone posted a [great walkthrough on linear mathematics](http://blog.wolfire.com/2009/07/linear-algebra-for-game-developers-part-1/) elsewhere on this site just the other day." CreationDate="2011-01-30T04:54:08.813" UserId="2698" />
  <row Id="10245" PostId="7874" Text="+1 for the structure, scalability and flexibility point and I did forget to add memory management" CreationDate="2011-01-30T04:59:01.150" UserId="2332" />
  <row Id="10249" PostId="7843" Text="Miyamoto didn't have to work for downvotes like this." CreationDate="2011-01-30T06:56:44.873" UserId="3656" />
  <row Id="10250" PostId="7858" Score="1" Text="Don't use d3dx. Its not nearly as fast/good/efficient/cool anyways." CreationDate="2011-01-30T06:58:34.997" />
  <row Id="10259" PostId="7867" Text="-1, this isn't an *answer*.  If you want to ask a question you should make it a new question." CreationDate="2011-01-30T07:59:56.473" UserId="51" />
  <row Id="10274" PostId="7843" Score="2" Text="Being downvoted for truth? Ouch. @Joe Wreschnig: pretending that we're all completely equal won't do us any good, because gender differences are the basis for social relations. Vent your frustrations elsewhere - this question &amp; answer is about adjusting gender ratio in a game, not tooting the gender equality trumpet. It is up to everyone whether they want to play a game or not; I'm just stating that they may be attracted more by certain features than the other gender. Balancing these features = balancing gender ratio, much like WoW. All in all, it is about personality, not gender." CreationDate="2011-01-30T10:09:23.337" UserId="786" />
  <row Id="10275" PostId="7858" Text="I could pass on the DirectX maths, mesh, texture, and general helper stuff - but can't really give up D3DXEffect.  And I'm stuck with DX9 more-or-less forever. And as far as I'm concerned, DX10+ don't exist, because they don't exist on XP" CreationDate="2011-01-30T10:30:04.317" UserId="659" />
  <row Id="10276" PostId="7883" Text="So, what I take from this is. Aim to be at the top :D" CreationDate="2011-01-30T10:59:18.250" UserId="14" />
  <row Id="10277" PostId="7843" Text="@Mipey: Let's also give women 24% less XP. Pretending we're all equal won't do us any good, it's just an accurate reflection of how much less women make." CreationDate="2011-01-30T11:42:09.340" UserId="744" />
  <row Id="10278" PostId="7843" Score="2" Text="@Joe Wrescnig: Now you're being ridiculous." CreationDate="2011-01-30T11:50:09.890" UserId="786" />
  <row Id="10279" PostId="7843" Score="2" Text="@Mipey: No more ridiculous than your original post. Yes, adding a gardening game might temporarily result in a few more women in your community. It also forces a particular design on you, and may not be congruent with the kinds of games already in your community. If we want to _attract_ female gamers rather than _segregate_ them, we need to address the underlying issues - gendered language and iconography, female objectification, explicit and implicit sexism in the community. Real progress will happen when we start making competitive and aggressive games, without sexism." CreationDate="2011-01-30T12:00:24.837" UserId="744" />
  <row Id="10280" PostId="7843" Score="1" Text="By the way, I am certainly not trying to say &quot;don't make a gardening game.&quot; If you want to make a gardening game, please do! But don't let the cart lead the horse - make the games you want, and make them not sexist, and you will attract female gamers. The line of thought expressed in &quot;Does it appeal to the caring personality&quot; is an excuse to make non-&quot;caring&quot; games sexist, because it claims women won't play them anyway. Women won't play them because your game and its community send off implicit and explicit signals that women are not welcome, not because the game doesn't have enough caring." CreationDate="2011-01-30T12:14:36.420" UserId="744" />
  <row Id="10281" PostId="7812" Score="1" Text="This is a great question." CreationDate="2011-01-30T12:58:09.970" UserId="1156" />
  <row Id="10282" PostId="7865" Score="1" Text="Are you answering your question with a question?" CreationDate="2011-01-30T13:12:40.107" UserId="20" />
  <row Id="10283" PostId="7603" Text="@DeadMG Rendering from perspective of light is only for shadow mapping. For multiple lights just render from position of camera, but using another lights in the way you said in your comment. " CreationDate="2011-01-30T14:02:23.663" UserId="3794" />
  <row Id="10284" PostId="7843" Score="1" Text="Gendered language and iconography have NOTHING to do with gameplay. Most of women actually don't care about the iconography, unlike your belief.&#xA;&#xA;You want to attract men and women alike to your game? Add gameplay features that appeal to their personalities. That is all. Simple as that." CreationDate="2011-01-30T14:19:30.840" UserId="786" />
  <row Id="10285" PostId="7862" Score="1" Text="I don't see how (doing it yourself) implementing a physics algorithm will really help you practice Java." CreationDate="2011-01-30T15:33:43.413" UserId="1156" />
  <row Id="10286" PostId="7884" Score="1" Text="Which of these are Java physics engines though?" CreationDate="2011-01-30T16:34:13.363" UserId="189" />
  <row Id="10287" PostId="4483" Text="Hmmm I think that my problem is that the result set is quite big, often between 3000 and 150000 records for one player. So this may be reason why it takes so long time, because it works very fast for small result sets." CreationDate="2011-01-30T16:40:03.683" UserId="1550" />
  <row Id="10288" PostId="7768" Text="@wkerslake - unless your competitor has more marketing clout.    are any of the games zynga dominates the market with significantly better than the originals?   http://www.businessinsider.com/how-zynga-is-just-like-microsoft-2010-1" CreationDate="2011-01-30T16:40:05.503" UserId="4398" />
  <row Id="10289" PostId="6565" Text="-1 I do not think 'go check out forum XXX' for a specific question such as this is a good answer, unless there's specific links." CreationDate="2011-01-30T16:48:38.347" UserId="1156" />
  <row Id="10290" PostId="7812" Text="@The Communist Duck: thanks. ;)" CreationDate="2011-01-30T17:59:28.777" UserId="4997" />
  <row Id="10292" PostId="6521" Score="2" Text="I was going to write a long page why CS is more than just programming. Somehow, you found a way to do it in 2 sentences." CreationDate="2011-01-30T18:46:43.253" UserId="2910" />
  <row Id="10293" PostId="7843" Text="&quot;Gendered language and iconography have NOTHING to do with gameplay.&quot; Which is why it's so puzzling to me that so many games are full of sexism. There are plenty of competitive women - they just don't have much interest in playing a game that denigrates them from the start." CreationDate="2011-01-30T19:33:48.007" UserId="744" />
  <row Id="10294" PostId="7883" Text="Thanks for the GREAT advise! I'm taking two programming courses (one a 200 level) from a community college, and it's burning me out already. Again, just great, great, great advise. :D" CreationDate="2011-01-30T20:35:33.833" UserId="3971" />
  <row Id="10295" PostId="7883" Text="@Noctrine, well, it's more 'Aim to run your own successful studio' (or run a successful business in general), rather than doing hands on techical and/or creative work 'for the man' forever... " CreationDate="2011-01-30T20:43:24.560" UserId="659" />
  <row Id="10296" PostId="7884" Text="There are Java ports of, or at least bindings for Box2D, Chipmunk, Bullet, and ODE" CreationDate="2011-01-30T20:47:17.193" UserId="659" />
  <row Id="10297" PostId="7872" Score="1" Text="Yes, nobody should be making a game engine before they've made a game. How can you know that your code is reusable if you don't yet know that it's usable?" CreationDate="2011-01-30T21:37:15.710" UserId="1101" />
  <row Id="10298" PostId="7892" Text="I'm first doing an axis-aligned bounding box test to quickly discard distant objects... do you have any more details on the quad-quad test though?" CreationDate="2011-01-30T22:19:00.103" UserId="1437" />
  <row Id="10299" PostId="883" Text="This is it. The problem is not simply the small Linux install base: the problem is that most people who use Linux and are interested in gaming, just dual boot or give up and play with consoles." CreationDate="2011-01-31T00:22:44.630" UserId="2188" />
  <row Id="10300" PostId="45" Text="As of 1/30/2011, it is Pro-only. See the 2nd paragraph of: http://unity3d.com/support/documentation/Manual/ExternalVersionControlSystemSupport.html" CreationDate="2011-01-31T01:07:35.010" UserId="2015" />
  <row Id="10301" PostId="7892" Text="temporarily rotate both quads with the same transform such that one of them ends up axis aligned... then use the SAT test as notabebe mentioned. when result is found, inverse the rotation to get them back." CreationDate="2011-01-31T02:02:57.143" UserId="1923" />
  <row Id="10302" PostId="7831" Text="I'm surprised to hear that - the items I've listed can easily be automated. Maybe they're better automated as part of the animation editor instead of the graphics engine? That would be useful to know, since I plan to couple my graphics engine with a simple editor." CreationDate="2011-01-31T02:17:48.013" UserId="2520" />
  <row Id="10303" PostId="445" Text="Also, there's [this](http://askubuntu.com/questions/6586/what-native-games-are-available) excellent list." CreationDate="2011-01-31T03:38:08.257" UserId="3116" />
  <row Id="10304" PostId="7842" Text="The cocos2d framework exists on multiple platforms, though, not nearly as well as Unity 3D" CreationDate="2011-01-31T04:39:43.750" UserId="5040" />
  <row Id="10305" PostId="7894" Text="Wow, thanks! Perfect answer. I really like this solution and will be looking into it a soon as I am back from work. :-) If I get stuck, I'll bother you with some more questions." CreationDate="2011-01-31T05:37:05.947" UserId="5034" />
  <row Id="10306" PostId="7904" Text="Oopsie, this was in glsl - I'm fairly certain hlsl isn't far off, though." CreationDate="2011-01-31T08:41:35.607" UserId="4264" />
  <row Id="10307" PostId="7904" Text="The HLSL is almost the same, however, bitshifts cant be used on floats in SM 3.0. Can I safely replace those shifts with multiplies? E.g. `&lt;&lt; 8` becomes `*= 2^18`?" CreationDate="2011-01-31T08:44:20.440" UserId="5021" />
  <row Id="10308" PostId="7904" Text="Also, the bitwise OR operation is not permitted on floats in SM 3.0. Correct me if I'm wrong. http://en.wikipedia.org/wiki/High_Level_Shader_Language" CreationDate="2011-01-31T08:45:03.310" UserId="5021" />
  <row Id="10309" PostId="7903" Text="I was hoping someone might say &quot;you really don't want bones for turrets in an rts if your pieces are small; consider MD3 with it's linked models feature instead&quot; or something" CreationDate="2011-01-31T08:50:02.770" UserId="4129" />
  <row Id="10310" PostId="7904" Score="1" Text="You can safely replace shifts with multiples, but like I commented above, those #defines are for C side. ORs can be replaced with additions." CreationDate="2011-01-31T08:50:54.817" UserId="4264" />
  <row Id="10311" PostId="7903" Text="Well I wouldn't use skinning for those kinds of meshes in that kind of situation, but &quot;bones&quot; are just a fancy name for hierarchical transforms. Nothing stopping you from just attaching meshes to them rather than weighting vertices. (in other words, for a turret you might just have two bones and two meshes, and no skinning/weighting at all)." CreationDate="2011-01-31T09:09:53.077" UserId="1091" />
  <row Id="10312" PostId="7671" Text="The Dragon Book is outdated IMHO. It concentrates on details you shouldn't be caring about on the XXIst century. ANTLR, and its associated books, is a great improvement and I can't recommend it enough." CreationDate="2011-01-31T10:50:50.470" UserId="1581" />
  <row Id="10313" PostId="7818" Text="Good answer! I don't think that head tracking can be considered a virtual reality experience though, it's really just another input mechanism. Virtual Reality systems are about making the user feel like they're in an alternate universe (either an augmentation or a replacement for the real one). That pretty much requires a method for shifting the perception of the generated universe from being 'something on a display in the real world' (not very immersive) to being 'the entirety of the universe which I can perceive' (very immersive)." CreationDate="2011-01-31T10:52:37.173" UserId="741" />
  <row Id="10314" PostId="7906" Score="2" Text="The question is somewhat bizarre; why would actions be *states* in the FSM? Why wouldn't they be *inputs* to the FSM?" CreationDate="2011-01-30T19:58:35.640" />
  <row Id="10315" PostId="7910" Score="2" Text="A Well Established Platform™ ?" CreationDate="2011-01-31T12:29:00.647" UserId="769" />
  <row Id="10316" PostId="7911" Score="1" Text="And part of the audience question: What's the target platform? AFAIK, XNA is Windows (and Xbox) only." CreationDate="2011-01-31T12:30:27.073" UserId="769" />
  <row Id="10317" PostId="6558" Score="3" Text="Your answer is wrong, contradictory and badly formatted. Sorry to be so harsh. If you think op should just use unity say so in a comment to his question." CreationDate="2011-01-31T12:48:34.577" UserId="4413" />
  <row Id="10318" PostId="7893" Text="The algorithm described by the geometrictools is the one I would have pointed at." CreationDate="2011-01-31T13:15:25.877" UserId="4264" />
  <row Id="10319" PostId="7899" Text="Hey, thanks for the answer, I was wondering what do you mean when you say &quot; And set UV border method to repeat.&quot; . Thanks !" CreationDate="2011-01-31T13:27:30.377" UserId="2708" />
  <row Id="10320" PostId="7900" Text="Thanks for the explanation, do you have any resources that I could look that somewhat describe your approach ? " CreationDate="2011-01-31T13:28:56.977" UserId="2708" />
  <row Id="10321" PostId="7859" Score="1" Text="What about use 8R8G8B8A used four times? Isn't it easier?" CreationDate="2011-01-31T13:38:48.830" UserId="3794" />
  <row Id="10322" PostId="7908" Score="1" Text="Neither. XNA is not cross-platform, and Java is... well... Java. You need to say something more about what do you want to do; C/Allegro and python/pygame might be better ideas." CreationDate="2011-01-31T13:40:38.283" UserId="2188" />
  <row Id="10323" PostId="7908" Score="4" Text="He didn't say it had to be cross-platform" CreationDate="2011-01-31T13:42:55.753" UserId="4936" />
  <row Id="10324" PostId="7899" Text="I edited my answer for you. Hope it will help. " CreationDate="2011-01-31T14:35:05.897" UserId="3794" />
  <row Id="10325" PostId="7899" Text="But i have to say that Josh's answer is much more complex and you can learn a lot from it. " CreationDate="2011-01-31T14:37:19.933" UserId="3794" />
  <row Id="10326" PostId="7911" Text="Target platforms on XNA are Windows, Xbox and Windows Phone 7." CreationDate="2011-01-31T15:02:02.107" UserId="696" />
  <row Id="10327" PostId="7915" Text="Am I missing something, or could you just switch the Z coords and the Y coords?" CreationDate="2011-01-31T15:25:46.230" UserId="1156" />
  <row Id="10328" PostId="7915" Text="Added clarification to question." CreationDate="2011-01-31T15:35:42.160" UserId="4264" />
  <row Id="10329" PostId="7902" Text="+1, This is a good question.  I've always wondered whether the animation should be done in shading language or on the CPU..." CreationDate="2011-01-31T15:41:42.343" UserId="4604" />
  <row Id="10330" PostId="7915" Text="Isn't an object positional matrix just a 1x4 column matrix? So wouldn't it be easy to switch the elements? I've covered matrices, but not in gamedev specific terms. :p" CreationDate="2011-01-31T15:59:43.960" UserId="1156" />
  <row Id="10331" PostId="7671" Text="@egarcia, I do not think the Dragon Book is outdated. I've flicked through, and it may not be the optimum solution nowadays, with ANTLR and the likes around, but it certainly covers its material very well. And The Game Scripting Mastery is certainly the simplest/clearest I've seen, if the code quality leaves a lot to be desired (i.e. 2 full pages of if(token type) print error; )" CreationDate="2011-01-31T16:10:04.817" UserId="1156" />
  <row Id="10332" PostId="7900" Text="I don't offhand, unfortunately, it's a pretty broad topic. Is there a specific part of my answer you'd like clarification about? Alternatively you could try your hand at implementing something and then post another question when you run in to specific problems." CreationDate="2011-01-31T16:16:13.167" UserId="1430" />
  <row Id="10333" PostId="7908" Score="2" Text="-1 because 1) &quot;which language&quot; questions are boring and 2) it should be more about making the game and not making an &quot;engine&quot;." CreationDate="2011-01-31T16:32:18.573" UserId="51" />
  <row Id="10334" PostId="7920" Text="Like I commented, animations get screwed up." CreationDate="2011-01-31T17:09:14.557" UserId="4264" />
  <row Id="10335" PostId="7915" Text="These are flat 4x4 matrices with translation, rotation and scale applied." CreationDate="2011-01-31T17:09:49.080" UserId="4264" />
  <row Id="10337" PostId="7916" Score="2" Text="I've removed the PS3-specific text / tag, because this is a good question about any architecture, and the answer holds true for all architectures that separate integer and floating point registers, which is practically all of them." CreationDate="2011-01-31T17:26:44.473" UserId="744" />
  <row Id="10338" PostId="7921" Text="The article you linked states that the PS3 Cell Processor is an exception to this because apparently everything is stored in the same set of registers (can be found approximately in the middle of the article or search for &quot;Cell&quot;)." CreationDate="2011-01-31T17:40:57.577" UserId="20" />
  <row Id="10339" PostId="7671" Text="@Duck, What I meant by &quot;outdated&quot; was exactly that - it's not optimum nowadays. It focus on making things easy for the machine (LR-based) and not for the programmer (LL-based). On top of that, new algorithms have been discovered since its writing. Check out LL(*) - http://www.antlr.org/wiki/display/~admin/LL%28*%29+grammar+analysis" CreationDate="2011-01-31T17:41:02.287" UserId="1581" />
  <row Id="10340" PostId="7913" Text="+1 just for that first line." CreationDate="2011-01-31T17:43:55.637" UserId="2332" />
  <row Id="10341" PostId="7908" Text="Cross-platform is not required, and PC/Xbox would be fine for a platform.&#xA;&#xA;Tetrad - apologies for the boring &quot;which language&quot; question but I really wanted developer opinions (hopefully from those who have used XNA well, Java well, or both, especially for gaming) in order to help decide myself.&#xA;&#xA;In response to your second point... I'm not sure I fully understand it or understand correctly, but I am not making a game - as in I am going for generality here to show off my skills. A &quot;closed&quot; project such as a game may not fully allow this - generality and all that comes with it is the key." CreationDate="2011-01-31T17:56:17.637" UserId="5051" />
  <row Id="10342" PostId="7911" Text="I'm going to be my &quot;target audience&quot; (I know it's unusual to start a project like that) but this is to show off my skills. So therefore, a developer would more than likely be the target audience (as I would have to create a &quot;concept&quot; game using my game engine). Thanks for the answer!" CreationDate="2011-01-31T18:01:18.207" UserId="5051" />
  <row Id="10343" PostId="7921" Score="4" Text="@bummzack: That applies only to the SPEs, not the PPE; the SPEs have a very, uh, special, floating point environment, and the cast is still relatively expensive. Also, the costs are still the same for signed vs. unsigned integers." CreationDate="2011-01-31T18:04:09.170" UserId="744" />
  <row Id="10344" PostId="7918" Text="Thanks for this - it is definitely one of my main &quot;sticking&quot; points for making a decision. While I have had several years of experience with Java, less of this has been GUI work, even less to zero on Java gaming. After doing my own research I have found numerous Java libraries (such as the lightweight java gaming library) however at the moment XNA does seem more feature full and from reading tutorials - easier to achieve certain tasks I believe. As for learning C#/XNA - my time on this project is around 30 hours+ a week and learning the ins and outs of XNA/C# would be first priority." CreationDate="2011-01-31T18:04:58.887" UserId="5051" />
  <row Id="10345" PostId="7918" Text="Remember the most important thing is to Get Things Done -- even worse than spending time learning C#/XNA is spending too much time agonizing over which path is better. You can make an awesome game with either technology, so get to it! :D" CreationDate="2011-01-31T18:06:16.670" UserId="1430" />
  <row Id="10346" PostId="7909" Text="I need to fully think out the features (which I shall do shortly) but yes definitely 2D, more than likely a side-scroller engine (think Mario) with different obstacles, enemies, power ups, portals, random world generation (i.e. placing of obstacles), collision detection, use of controller... probably far too many features that I could possibly fit in an engine in 3 months... but again its just to show off my programming skills and does not to be complete... more like a &quot;prototype&quot; really! :)" CreationDate="2011-01-31T18:10:24.637" UserId="5051" />
  <row Id="10347" PostId="7921" Text="Thanks Joe, you beat me to it :)" CreationDate="2011-01-31T18:18:29.557" UserId="634" />
  <row Id="10348" PostId="7820" Text="Ah, you're right. For some reason I thought modulo's negative number behavior was involved, but of course it isn't. This is what I get for posting before coffee." CreationDate="2011-01-31T18:26:33.760" UserId="160" />
  <row Id="10349" PostId="7925" Text="-1 Is this suppose to an answer or advertisment?" CreationDate="2011-01-31T18:58:30.130" UserId="3794" />
  <row Id="10350" PostId="7921" Text="That's a good article and it is important to know about LHS (and I'm voting it up for that) but my question is about those sign-related penalties. I know these are small and probably negligible, but I would still like to see some real numbers or references about them." CreationDate="2011-01-31T19:22:07.707" UserId="5048" />
  <row Id="10351" PostId="7784" Text="Mail RIA stats then..." CreationDate="2011-01-31T19:35:47.740" UserId="539" />
  <row Id="10352" PostId="7908" Score="1" Text="A game will do more to show off your skills rather than creating a flexible game engine. I believe Kylotan said on the other related engine question &quot;How do you know what's reusable when you don't know what's usable?&quot; Even if you have an idea for an algorithm or a shader but can't make a game out of it, just make a little tech demo showing off the technique." CreationDate="2011-01-31T20:17:56.397" UserId="2332" />
  <row Id="10353" PostId="7921" Score="1" Text="@Luis - I was trying to find some public documentation on this but can't find it at the moment. If you have access to the Xbox360 documentation, there's a good whitepaper by Bruce Dawson that covers some of this (and its very good in general)." CreationDate="2011-01-31T20:18:14.677" UserId="634" />
  <row Id="10355" PostId="7932" Text="Now then, how to fix the matrices so that &quot;the sign of the final z&quot; is inverted.." CreationDate="2011-01-31T20:45:13.413" UserId="4264" />
  <row Id="10356" PostId="7930" Text="Please note that i work only with newest hardware. Mean gpu with minimum shader model 4. If you are on the same HW than i can guarantee that what i say is true. If not look at to another answers." CreationDate="2011-01-31T20:47:06.450" UserId="3794" />
  <row Id="10357" PostId="7924" Text="Thanks for the link, I'd never thought to look more into the details of MPQ (and generally assumed they'd be unavailable)" CreationDate="2011-01-31T21:04:19.883" UserId="4690" />
  <row Id="10358" PostId="7932" Score="1" Text="You don't want to fix your matrices, you want to fix your data, which is to apply the transformation when you read the model data in." CreationDate="2011-01-31T21:10:14.937" UserId="656" />
  <row Id="10359" PostId="7931" Score="3" Text="If you're using texture formats that are compressed in memory (PVR or DXT, for example), scaling up to the next power of two is going to use significantly less texture memory than a uncompressed, but smaller, NPOT texture." CreationDate="2011-01-31T21:16:45.970" UserId="51" />
  <row Id="10360" PostId="7931" Score="3" Text="@Jari: Your wording is a little vague, so sorry if this is redundant with what you're trying to say - compressed textures still require pixel sizes in multiples of 4, even on modern hardware that supports NPOT textures." CreationDate="2011-01-31T21:21:51.810" UserId="744" />
  <row Id="10361" PostId="7921" Text="@Luis: I've posted an analysis below, but if it satisfies you, please give celion the answer - everything he said is correct, all I did is run GCC a few times." CreationDate="2011-01-31T22:01:27.130" UserId="744" />
  <row Id="10362" PostId="7933" Score="2" Text="(CW because this is really just a comment on celion's answer, and because I'm curious what code alterations people might have to make it more illustrative.)" CreationDate="2011-01-31T22:16:01.677" UserId="744" />
  <row Id="10363" PostId="7912" Text="I also read the document &lt;a href=&quot;http://gafferongames.com/2010/01/24/what-every-programmer-needs-to-know-about-game-networking-3/&quot;&gt;What every programmer needs to know about game networking&lt;/a&gt;. Very nice, but really FPS oriented =&gt; I edit my original post" CreationDate="2011-01-31T22:29:49.757" UserId="5044" />
  <row Id="10364" PostId="7914" Text="quite unclear :$ Mind to elaborate a bit more? How do you do the &quot;once the variable gets to a certain amount&quot; part?" CreationDate="2011-01-31T22:33:28.257" UserId="5044" />
  <row Id="10365" PostId="7931" Score="1" Text="I would expect current hardware to still be tiling/swizzling textures in the drivers when you upload them. This changes the layout of the texture to make accessing more optimal for the hardware. Consoles (I'm not including XNA in that) require you to manually perform this layout optimisation in your own tool chain, I'm pretty sure these only work on POW2." CreationDate="2011-01-31T23:00:10.580" UserId="4410" />
  <row Id="10366" PostId="6945" Text="wow! and so this is how gluUnproject works?" CreationDate="2011-02-01T00:00:34.053" UserId="4508" />
  <row Id="10367" PostId="7914" Score="1" Text="`if( currentTotalTime &gt; timeWhenSomethingHappens )  { /* do something */ }`" CreationDate="2011-02-01T00:02:35.593" UserId="51" />
  <row Id="10368" PostId="7929" Score="1" Text="Nice Dvole - spot on." CreationDate="2011-02-01T00:09:08.863" UserId="3830" />
  <row Id="10369" PostId="6558" Text="Ironically oberhamsi, my original answer did just say &quot;Use Unity&quot;, but I was told I needed to answer the question more directly." CreationDate="2011-02-01T00:10:11.437" UserId="3830" />
  <row Id="10370" PostId="6945" Text="@nkint Yes. From glu documentation: &quot;gluUnProject multiplies the normalized device coordinates by the inverse of model*proj&quot;. Thats exactly what this code does." CreationDate="2011-02-01T00:18:24.503" UserId="3794" />
  <row Id="10371" PostId="7938" Text="The problem isn't simply proofs in predicate logic over a finite (and tiny!) model, or I would've answered rather than put a bounty up. The goal isn't to _solve_ the problem - the goal is to automatically _make_ the problem, and in an interesting way." CreationDate="2011-02-01T00:29:28.917" UserId="744" />
  <row Id="10372" PostId="7923" Text="What overflow checking are you referring to? Unless you mean a level lower than assembler, the code to add two ints is identical on most systems, and not really longer on the few that use e.g. sign-magnitude. Just different." CreationDate="2011-02-01T00:35:02.760" UserId="744" />
  <row Id="10373" PostId="7924" Text="If it is so secure, why has it been reverse engineered to such a degree and even has 3rd party libraries to interact with it? ;-)" CreationDate="2011-02-01T00:37:03.803" UserId="395" />
  <row Id="10374" PostId="7936" Score="2" Text="Usually one positions polygons, not textures, on-screen. The polygons can be given whatever UVs are necessary - they don't necessarily need to go from 0 to 1; if your texture is only 30 wide, it's fine to go to 0.9375 (which is another reason POT textures are good - UVs are exactly representable)." CreationDate="2011-02-01T00:42:12.123" UserId="744" />
  <row Id="10376" PostId="7861" Text="You've not explained how a user acquires points - is that from completing tasks? Looking at your SQL, it seems to be stored in UserTasks, but then how are the number of points per completed task determined?" CreationDate="2011-02-01T02:23:57.747" UserId="1101" />
  <row Id="10377" PostId="7861" Text="You've also not stated whether a task is unique to a category - this is important as it determines which tasks are relevant to a given query." CreationDate="2011-02-01T02:29:42.200" UserId="1101" />
  <row Id="10378" PostId="7941" Text="Hmmm, ok - so now the tricky part. Say I have 10 balls, and vx0 and vy0 are randomly selected for each ball (within certain constraints). What I want to do is have all the balls moving at roughly the same speed. How do I determine rate based on vx0 and vy0? Or should I be looking at a different set of equations?" CreationDate="2011-02-01T02:35:11.713" UserId="2679" />
  <row Id="10379" PostId="7941" Text="You won't ever get them all moving at the same *speed* -- indeed, the function for `y` ensures, via `0.5*g*t'*t'`, that all balls are constantly accelerating toward the ground. If all you want to do is to match apparent starting velocities, while, say, allowing some balls to travel higher, you need to modulate `rate` based on the magnitude of `(vx0, vy0)`; in other words, `sqrt(vx0*vx0 + vy0*vy0) * rate = &lt;desired global speed&gt;`." CreationDate="2011-02-01T03:33:59.253" UserId="211" />
  <row Id="10380" PostId="7923" Text="@JoeWreschnig: Damn. I can't seem to find it, but I know I've seen examples of different assembler output accounting for defined wraparound behaviour, at least on certain platforms. The only related post I could find: http://stackoverflow.com/questions/4712315/performance-of-unsigned-vs-signed-integers" CreationDate="2011-02-01T04:12:47.943" UserId="2081" />
  <row Id="10381" PostId="7914" Text="@borg: This is assuming you have a main game loop." CreationDate="2011-02-01T04:43:07.880" UserId="5060" />
  <row Id="10382" PostId="7542" Text="Thanks a lot for the explanation." CreationDate="2011-02-01T05:48:51.687" UserId="2560" />
  <row Id="10383" PostId="7911" Text="I'd be *very* careful about building a &quot;2D Game Engine&quot;. There is a reason there are few of them in existence and they all kinda suck." CreationDate="2011-02-01T06:32:00.173" UserId="288" />
  <row Id="10384" PostId="7842" Text="@HS01 That's right, but not too right. The cocos2d on other platforms is written in other languages like Java for android and C#, and those versions are not even API-compatible, as in you can't translate your game into another one without rewriting it alltogether." CreationDate="2011-02-01T06:40:21.143" UserId="5014" />
  <row Id="10385" PostId="7924" Text="Most (read: all) tools for interacting with *.mpq files depend on Stormlib, which is written and maintained by one guy." CreationDate="2011-02-01T07:15:39.533" UserId="5052" />
  <row Id="10386" PostId="7924" Text="As far as I know, Stormlib requires you to have the original game that the archive stems from, as the keys for decryption are stored in the executable. The biggest reason why it is so secure, though, is not because it is impossible to break into. But for on-the-fly data sent through the net, it is second to none. The data is so heavily encrypted that it would be futile for a third party to decrypt on the fly." CreationDate="2011-02-01T07:24:48.440" UserId="5052" />
  <row Id="10387" PostId="7924" Text="And in fact with 'World of Warcraft', Blizzard has pioneered streaming technology, allowing you to play the game with only a few percent of the entire data downloaded onto your harddrive. The *.mpq format excels at this kind of job. Not to mention that when the Starcraft 2 installer was released by Blizzard some days before the official release of the game, its archives were so heavily encrypted that they weren't openable until way after the game was released. :P" CreationDate="2011-02-01T07:27:25.783" UserId="5052" />
  <row Id="10388" PostId="7923" Text="@Jon: Different assembler output for different wraparound behavior is because the compiler can make optimizations in the signed case that, e.g. if b &gt; 0 then a + b &gt; a, because signed overflow is undefined (and thus can't be relied on). It's really a totally different situation." CreationDate="2011-02-01T09:32:23.607" UserId="744" />
  <row Id="10390" PostId="7946" Text="I edited your optimized code to be more reflective of what GCC actually generates, even on -O0. Having a branch was misleading when a test+lea lets you do it branchless." CreationDate="2011-02-01T09:42:51.623" UserId="744" />
  <row Id="10391" PostId="7952" Text="I would like to know, why I get a down-vote? Is my question too broad? off-topic? Is there a need for additional information?" CreationDate="2011-02-01T09:54:34.660" UserId="5076" />
  <row Id="10392" PostId="7952" Text="I'm not the downvoter. But please, this was discussed many times. How about trying search field? It leaded me into this: http://gamedev.stackexchange.com/questions/4666/would-it-be-better-to-use-xml-json-text-or-a-database-to-store-game-content" CreationDate="2011-02-01T09:56:48.770" UserId="3794" />
  <row Id="10393" PostId="7933" Text="Information about the PS3 CPU is readily and legally available, so discussion of CPU stuff relating to PS3 isn't a problem. Up until Sony removed OtherOS support, anyone could stick Linux on a PS3 and program it. The GPU was off limits, but the CPU (including the SPEs) are fine. Even without OtherOS support you can easily grab the appropriate GCC and see what the code-gen is like." CreationDate="2011-02-01T09:59:14.757" UserId="1091" />
  <row Id="10395" PostId="7946" Score="1" Text="On x86, maybe. On ARMv7 it's just conditionally executed." CreationDate="2011-02-01T10:09:30.100" UserId="5061" />
  <row Id="10396" PostId="7952" Score="1" Text="@notabene: I knew about this thread, and somehow thought the scope of my question was different as this one. The was searching an answer for a component-based game (whatever it is, but I take there are other kind of game out there), and had already reduced the choice in a way, and nearly each answer handled one kind of technology. On the other hand I'm asking for a basic methodology on how to choose, and I would like to have more of a comparison. Now, if the community still think of it as a duplicate, I will consider deleting this question and try to get my answer on the other thread." CreationDate="2011-02-01T10:09:59.730" UserId="5076" />
  <row Id="10397" PostId="7952" Text="Otherwise, I would like to know what should I change to make clear it is another question." CreationDate="2011-02-01T10:10:36.143" UserId="5076" />
  <row Id="10398" PostId="7952" Text="@notabene: For example, I'm sure there is scenario where using an external data storage is not used, but instead data would be stored in the _&quot;code&quot;_." CreationDate="2011-02-01T10:22:36.867" UserId="5076" />
  <row Id="10399" PostId="7938" Text="@Joe The problem, even for a tiny set, would still be the 3SAT problem. If you only create AND's and OR's, this could lead to things that are not satisfyable, so I think it would be very hard to just generate a random puzzle. The puzzle should contain at least some restrictions. Sometimes, backwards reasoning could be the answer (have a solution, leave things out)" CreationDate="2011-02-01T10:49:34.947" UserId="4598" />
  <row Id="10400" PostId="7911" Text="Hi Andrew - went with 2D as I thought it would be more achievable within the time I have available, is 3D not much more harder? (this doesn't have to look like an AAA game, it's just a small project). Would 3D not double/triple/even more increase the time taken to build this?" CreationDate="2011-02-01T10:53:57.593" UserId="5051" />
  <row Id="10401" PostId="7955" Text="This is not the case in &quot;AI war&quot; (website down atm).&#xA;He uses a relational database for the AI to be able to do Linq queries when deciding behavior." CreationDate="2011-02-01T11:01:36.663" UserId="1352" />
  <row Id="10402" PostId="7952" Text="@Eldros I gave you +1. It is not fair to this question have -1. Hopefully somebody will answer you. But not me... I'm graphics pipeline guy, not database guy. " CreationDate="2011-02-01T11:04:45.347" UserId="3794" />
  <row Id="10403" PostId="7952" Text="@notabene: Thanks I appreciate, though I would have like to hear from the guy who gave me -1, after all I want to contribute in a positive way." CreationDate="2011-02-01T11:08:09.650" UserId="5076" />
  <row Id="10404" PostId="7938" Text="@Marnix: General predicate logic is actually harder than 3SAT; however, modern proof algorithms are really pretty good in practice. Aside from that, simply generating a model, a puzzle, and checking a solution can be done in linear time - the trick is making sure the constraints provided produce a unique, discoverable solution." CreationDate="2011-02-01T11:12:41.150" UserId="744" />
  <row Id="10405" PostId="7933" Text="@Jason: I've flagged my post as CW so if someone does this they can provide the information. However, anyone with access to Sony's official GameOS compiler - which is really the only one that matters - is probably barred from doing so." CreationDate="2011-02-01T11:16:33.577" UserId="744" />
  <row Id="10406" PostId="6557" Text="I requested the edit to remove reference to SceneJs, Alon's questions seem a bit like SceneJs-Ad-bait. no offense, maybe I'm wrong. I don't see how scenejs is relevant to the question." CreationDate="2011-02-01T11:44:06.450" UserId="4413" />
  <row Id="10407" PostId="6558" Score="1" Text="Okay, fair enough. I think unity is a very different beast then trying to do it natively in the browser. Sure, you can do *anything* with a plugin but the question seems to me: what are the limits of native browser technologies." CreationDate="2011-02-01T11:45:22.657" UserId="4413" />
  <row Id="10408" PostId="7956" Score="1" Text="Yes. http://en.wikipedia.org/wiki/Microsoft_XNA" CreationDate="2011-02-01T12:16:05.377" />
  <row Id="10409" PostId="7956" Score="3" Text="It's all about the performances you need, Minecraft is ok in a managed language, but for high end graphics games, C or C++ or other natives languages are prefered" CreationDate="2011-02-01T12:18:23.180" />
  <row Id="10410" PostId="7171" Text="I don't think so.  At least the final question is perfectly acceptable." CreationDate="2011-02-01T12:36:34.657" UserId="378" />
  <row Id="10411" PostId="7961" Text="So there are three versions at the moment? http://box2d-js.sourceforge.net https://github.com/thinkpixellab/box2d and http://code.google.com/p/box2dweb/" CreationDate="2011-02-01T12:58:07.537" UserId="1868" />
  <row Id="10412" PostId="7911" Text="@Xboxking I've answered your question by adding more information to my answer. I'm afraid it got into a bit of a rant ;)" CreationDate="2011-02-01T12:59:46.927" UserId="288" />
  <row Id="10413" PostId="7938" Text="@Joe so are there any constraints that we can be certain about for creating this puzzle? The question still was: what datastructure to use. So I still think that the `Rule` class is a good idea. Modelling these constraints is still done by predicate logic I think." CreationDate="2011-02-01T13:04:01.940" UserId="4598" />
  <row Id="10414" PostId="7961" Score="2" Text="Yes, although it looks like Box2Dweb is being actively developed (last checkin 1/23/11) whereas the github one is less so (last checkin 10/29/10). Also, Box2Dweb has an active roadmap for where it's going next: http://code.google.com/p/box2dweb/wiki/Roadmap" CreationDate="2011-02-01T13:14:16.200" UserId="378" />
  <row Id="10415" PostId="7956" Score="18" Text="Minecraft is not really an MMO." CreationDate="2011-02-01T13:15:45.450" UserId="4662" />
  <row Id="10416" PostId="7954" Text="oh, COMPUTER is a static variable defined at the top of the class." CreationDate="2011-02-01T13:39:21.947" UserId="5072" />
  <row Id="10417" PostId="7958" Score="2" Text="It's not slow at all. It's rarely worse than about 70% of C++ speed, and can even be faster sometimes!" CreationDate="2011-02-01T14:35:09.700" UserId="1049" />
  <row Id="10420" PostId="7958" Score="3" Text="CPU bound operations in C# are quite fast, it does some extra checking which vastly improves the safety of code at the cost of some minor performance hits but where it's much worse than C++ is in memory consumption and management. It's a heck of a lot easier and less leak prone in C# but the performance hits of the GC can be an absolute dog." CreationDate="2011-02-01T15:18:21.387" UserId="5089" />
  <row Id="10421" PostId="7969" Text="Related: http://gamedev.stackexchange.com/questions/6281/marketing-angry-birds-how-its-done and possibly http://gamedev.stackexchange.com/questions/489/effective-marketing-strategies-for-independent-game-projects" CreationDate="2011-02-01T15:25:39.427" UserId="51" />
  <row Id="10422" PostId="7969" Text="How long has your game been released? Could we see a link to it?" CreationDate="2011-02-01T15:28:02.310" UserId="1386" />
  <row Id="10423" PostId="7956" Score="3" Text="@Guillaume86: Jittered code can currently outperform native code, and Jits are getting better all the time. Also, managed languages produce far more robust programs. So in the end C++ loses it's performance advantage, and is significantly harder to write robust programs in (which means longer development times and more costs)" CreationDate="2011-02-01T15:34:29.067" UserId="1687" />
  <row Id="10424" PostId="7969" Text="About a week and a half.&#xA;&#xA;Anw, Im making it free right now, there is no point in trying to make a profit of it since the most active time I got 6 sells (release day)&#xA;&#xA;Here is the game: http://itunes.apple.com/us/app/x-maths-tree/id414225981?mt=8&amp;ls=1" CreationDate="2011-02-01T15:41:34.313" UserId="5091" />
  <row Id="10425" PostId="7969" Text="Unfortunately, this is the reality of the App Store - very few apps experience even a fraction of the success that games like Angry Birds and Doodle Jump have seen." CreationDate="2011-02-01T15:48:50.323" UserId="884" />
  <row Id="10426" PostId="7970" Text="Thx for your tips, Ill consider those options in my new game." CreationDate="2011-02-01T15:50:06.733" UserId="5091" />
  <row Id="10427" PostId="7968" Score="4" Text="As I mentioned in my initial post, I already implemented an A* algorithm and have matching data structures in place as well. Also, just reducing the velocity of either of the agents does sound a bit too &quot;easy&quot; to me." CreationDate="2011-02-01T15:57:34.963" UserId="5086" />
  <row Id="10428" PostId="7765" Text="I don't know if your comment was before or after the edit, but I think it's pretty clear that the OP is asking for major issues that could be serious problems (e.g. using more than X joints will crash the program) not any known issue" CreationDate="2011-02-01T16:29:13.970" UserId="1156" />
  <row Id="10429" PostId="7974" Score="1" Text="Without heuristic it should (usually) take longer as you go through more nodes till you find the end. Also, try using a sorted list which remains sorted (preferably a sorted set, that way you dont have to check whether an item exists in the list you can just add it)" CreationDate="2011-02-01T16:50:59.877" UserId="337" />
  <row Id="10430" PostId="7956" Score="3" Text="A JIT can beat poorly written native code, not tightly optimized and tuned inner loops. Granted even with C# you have the option of writing those sensitive segments in C/C++ if you really want." CreationDate="2011-02-01T17:50:52.927" UserId="395" />
  <row Id="10431" PostId="7982" Text="Dont know what promo codes are or how they work, but Ill figure it out, thx.&#xA;&#xA;And, yes, Im working on a website :P" CreationDate="2011-02-01T18:04:57.690" UserId="5091" />
  <row Id="10432" PostId="7983" Text="I changed your tag from 'xna-4.0' to 'xna' because I don't think anything in your question is XNA 4 specific, except for the fact that the sample you link to happens to have been updated to compile with XNA 4." CreationDate="2011-02-01T18:16:29.180" UserId="1430" />
  <row Id="10433" PostId="7986" Text="I had a look at your website before posting this question to see how you did it, noticed you are still using the marching cubes mesh.  Unfortunately, I've had several problems with that approach (marching cubes passed to Bullet), mostly due to tunneling through the mesh unless I have ridiculously small timesteps.  Still, your engine is something I really do admire, keep meaning to check out the code." CreationDate="2011-02-01T18:38:34.787" UserId="3872" />
  <row Id="10434" PostId="7985" Text="My intutition is that you are on to something, but the problem I can't resolve in my head is that the surface can be arbitrary.  E.g. you have a 'spike' protruding from the surface that is extremely thin, I can't think how to detect that without iterating over every point on the shape." CreationDate="2011-02-01T18:42:03.517" UserId="3872" />
  <row Id="10435" PostId="7861" Text="@kylotan, yes you get points from completing tasks and the number of points is stored in UserTasks. A task is NOT unique to a category. When a task gets added to UserTasks, the category is assigned." CreationDate="2011-02-01T18:50:29.667" UserId="5023" />
  <row Id="10436" PostId="7956" Text="Notch (The author of minecraft) also played a large part in Wyrm Online, which was written in C++ - he's not a &quot;Java coder&quot; so much as &quot;a coder who knows java&quot;." CreationDate="2011-02-01T19:14:15.307" UserId="4840" />
  <row Id="10437" PostId="7985" Text="An irregular shape (i.e. one with a protrusion) is definitely suited to a hierarchical BB structure (think something like a specialized octree).  In the case of a simple cube with a spike, I would enclose the whole object in one large bounding box.  Within that box, I would have two smaller BB's - one enclosing the cube and one enclosing the spike.  At worst, you have three high-level hit tests before knowing that an intersection occurred with the spike.  Of course, this strategy assumes you can decompose your complex objects into a number of smaller ones.  (I think that's reasonable.)" CreationDate="2011-02-01T19:23:34.137" UserId="4665" />
  <row Id="10438" PostId="7971" Text="100% read, thx." CreationDate="2011-02-01T19:37:34.767" UserId="5091" />
  <row Id="10439" PostId="7954" Text="@CiscolPPhone, I just updated my question, the code has changed." CreationDate="2011-02-01T19:44:49.410" UserId="5072" />
  <row Id="10440" PostId="7988" Score="1" Text="There are a lot of questions about &quot;how do I get started&quot;.  Like this one: http://gamedev.stackexchange.com/questions/4592/as3-flash-game-dev-looking-for-good-current-step-by-step" CreationDate="2011-02-01T19:49:01.783" UserId="51" />
  <row Id="10441" PostId="7942" Text="If I'm reading correctly, your solution sounds like my #3, which is what I went with. Rather than &quot;redeemed&quot; I added a levelCompleted column to UserTasks so I know which completed tasks count toward the current leveling-up calculation. Thanks, though. I'll give you the check...." CreationDate="2011-02-01T20:01:40.597" UserId="5023" />
  <row Id="10442" PostId="7976" Text="-1, the problem is not the heuristic, but the implementation." CreationDate="2011-02-01T20:04:13.320" UserId="744" />
  <row Id="10443" PostId="7987" Text="This assumes the property is implemented incorrectly, which is possible since its definition is not shown, but there are two more immediate problems with the code." CreationDate="2011-02-01T20:08:42.203" UserId="744" />
  <row Id="10444" PostId="7954" Score="2" Text="@DerNalia We prefer that you ask a new question instead of making massive scope changing edits to your existing one. Better for records, and rep and stuff. :)" CreationDate="2011-02-01T20:15:11.460" UserId="14" />
  <row Id="10445" PostId="7982" Text="Look at the iTunes Connect Developer Guide, page 133, &quot;Requesting Promo Codes.&quot;  You get a certain number per update, and reviewers can enter them into iTunes to get a free copy of your game." CreationDate="2011-02-01T20:23:13.367" UserId="953" />
  <row Id="10446" PostId="7969" Text="I would wait to make it free until you've done more PR, sending it around to review sites and such.  Just releasing a game on the App Store with no publicity means that no one will even see your game unless they happen to search for it." CreationDate="2011-02-01T20:24:39.933" UserId="953" />
  <row Id="10447" PostId="7911" Text="Thanks for that insight Andrew... certainly made me think more about a 3D engine instead of 2D. Decisions decisions!" CreationDate="2011-02-01T21:35:53.933" UserId="5051" />
  <row Id="10448" PostId="7956" Text="C# is faster than C++ by about 3 months." CreationDate="2011-02-01T22:37:50.837" UserId="3547" />
  <row Id="10449" PostId="7977" Text="Unity also has a web player so you could play in the browser. The plugin doesn't have a huge market penetration like flash or java, but it's possible." CreationDate="2011-02-01T22:39:23.067" UserId="3547" />
  <row Id="10450" PostId="7991" Text="+1, I focused on algorithmic complexity and completely missed the wrong use of the heuristic!" CreationDate="2011-02-01T23:14:46.313" UserId="4082" />
  <row Id="10451" PostId="6776" Score="1" Text="Yeah, looks to have the biggest list of mud sources I've seen." CreationDate="2011-02-01T23:26:27.393" UserId="284" />
  <row Id="10452" PostId="7942" Text="Yeah, if a task is not statically related to a category then it makes sense to dynamically do that in usertasks." CreationDate="2011-02-02T02:04:22.513" UserId="1101" />
  <row Id="10453" PostId="7996" Text="What do you mean by normalizing the vector? I looked around for information and found some methods for normalizing, but they only seem to shrink the vector down to 1 unit in the direction it's pointing (i.e. XNA's Vector2.Normalize). Also, what should I do with the perpendicular vector after it is normalized?" CreationDate="2011-02-02T02:37:31.493" UserId="5001" />
  <row Id="10454" PostId="7996" Score="1" Text="Normalizing a vector scales it such that it becomes unit length, as you note. This is a useful property for a lot of reasons, in this case it allows us to ensure that we always offset the sprite by a fixed amount (whatever the scale factor is). If you didn't normalize, the actual offset would be proportional to both the scale factor *and* the length of the direction vector." CreationDate="2011-02-02T02:43:03.267" UserId="1430" />
  <row Id="10455" PostId="7996" Score="1" Text="Once you have the normalized perpendicular, scale it by whatever offset you desire that represents how far to &quot;wobble&quot; the sprite. This will probably be something like 2.0f * Math.Sin(sinePosAng). Then render the sprite at newPosition + scaledPerpendicular." CreationDate="2011-02-02T02:44:34.750" UserId="1430" />
  <row Id="10456" PostId="7996" Text="How would I scale a vector by the offset? Scale it's x/y independently? Also, strangely, when I normalize the perpendicular vector, it makes the sprites sit at 0, 0 with no movement. I've updated the original post with the current code. If I comment out the perpendicular.Normalize(); line, the sprites render at the correct location with oscillation on the X axis." CreationDate="2011-02-02T02:59:58.947" UserId="5001" />
  <row Id="10457" PostId="7996" Score="1" Text="Scaling vector by a scalar (float, in this case) value just means to multiple the scalar value by both the X and Y components. XNA's vector classes have overloads for this, so you can do (float * Vector2) and it will do the proper scaling. I've updated my code in response to your changes; I think part of your problem has to do with initializing newPosition once in the constructor. You also don't want to scale just the X component of the perpendicular." CreationDate="2011-02-02T03:47:49.047" UserId="1430" />
  <row Id="10458" PostId="7996" Text="Ahh, I see. Huh, I never knew you could scale a vector - but I suppose that makes sense given what vectors are. Almost had it last time. :) The implementation works correctly now, thanks so much for your help!" CreationDate="2011-02-02T04:07:46.657" UserId="5001" />
  <row Id="10460" PostId="7956" Text="Uh.. are you basically asking if unity has a future? =)" CreationDate="2011-02-02T06:34:43.703" UserId="4264" />
  <row Id="10461" PostId="7932" Text="But the animation data is stored as matrices, so they'll be moving in wrong directions. So, the objects point at correct directions, but animations won't." CreationDate="2011-02-02T06:39:51.213" UserId="4264" />
  <row Id="10462" PostId="2098" Text="to beat my own drum.. CFL: http://iki.fi/sol/cfl/" CreationDate="2011-02-02T06:41:15.830" UserId="4264" />
  <row Id="10463" PostId="7902" Text="RTS Games using EA's SAGE engine (C&amp;C 3 and later, BFME series) use skeletal animation, but there vertices are bound to only one bone (at least in BFME)" CreationDate="2011-02-02T09:46:04.893" UserId="769" />
  <row Id="10464" PostId="7908" Text="@Tetrad: Maybe this kind of question isn't interesting to you, but that doesn't make it an invalid question. -1 is for questions that are simply bad, not those you find boring. I do agree that a game must be developed alongside the engine development, but nothing in this question 100% says that's not what the asker is intending to do." CreationDate="2011-02-02T09:53:47.610" UserId="769" />
  <row Id="10465" PostId="8001" Text="Neat. I hate fixed pipeline. So i really admire everyone who can do this things without shaders. +1 for sure." CreationDate="2011-02-02T09:58:32.043" UserId="3794" />
  <row Id="10466" PostId="7928" Text="This might work - apply a 90' rotation matrix to everything at export time." CreationDate="2011-02-02T10:56:42.393" UserId="4264" />
  <row Id="10467" PostId="7973" Text="Yes, two lanes should be used (because there simply are two lanes) but that doesn't solve any problems that deal with giving way (which most of the problems the asker described are)" CreationDate="2011-02-02T12:07:10.153" UserId="769" />
  <row Id="10468" PostId="5694" Text="@Joe: well, no. If a law says something is illegal, it **IS** illegal. That's the definition. Then, if offices and judges ignore the law, well, you may say that it is *de facto* legal, but it still *de jure* illegal. (IANAL)" CreationDate="2011-02-02T14:57:20.870" UserId="2188" />
  <row Id="10469" PostId="8010" Score="1" Text="There are a lot of getting started questions.  That's one with specific examples and where to focus your attention.  There are also more generic questions for specific platforms that should be easy to find with a search." CreationDate="2011-02-02T15:03:00.157" UserId="51" />
  <row Id="10470" PostId="8010" Text="but this question is specific to know what will be the basic steps for a Game play programmer :(.I din't find any useful links for this kind of question.Every post will just talk about the platform to use but not the requirements for a game play programmer." CreationDate="2011-02-02T15:05:37.003" UserId="5119" />
  <row Id="10471" PostId="7908" Text="@Bart it's not just the question, but the kind of answers result.  There are literally only 4 real &quot;answers&quot;: use C#, use Java, use neither, or &quot;it doesn't matter&quot;.  A lot of the answers are (rightfully so) asking for more details, since as-is it really isn't much more than &quot;what's your favorite language/framework between these two&quot;." CreationDate="2011-02-02T15:08:40.147" UserId="51" />
  <row Id="10472" PostId="7956" Text="@coderanger Of course super optimised native code can beat jittered code. But doing those kind of optimisations is time consuming and costly. Where writing all your managed code is almost as fast, and a helluva lot easier/faster to develop. And if one of the companies out there started releasing games twice as fast as they currently do, with less bugs, I think gamers would be pretty happy about that - even if it took 5% more CPU load ;)" CreationDate="2011-02-02T16:22:55.403" UserId="1687" />
  <row Id="10473" PostId="4703" Text="http://stackoverflow.com/questions/477212/where-is-the-documentation-for-adobe-xfl-flash-interchange-format" CreationDate="2011-02-02T16:33:11.320" UserId="51" />
  <row Id="10474" PostId="8010" Text="&quot;game play code&quot; is an amorphous topic that is heavily dependent on what kind of game you're making.  That topic has a list of some of the early games and the requirements for making those games, which basically answers your question." CreationDate="2011-02-02T16:41:51.867" UserId="51" />
  <row Id="10475" PostId="8013" Text="Is `scale` negative? Do you do anything special in the vertex/pixel shader for the effect you're using (specifically how do you manipulate/use texture coordinates?) Also if you're using XNA4 don't you want to be passing the effect in to the Begin() call of the batch, rather than trying to invoke it manually?" CreationDate="2011-02-02T17:39:55.597" UserId="1430" />
  <row Id="10476" PostId="8013" Text="scale is usually anywhere from 50 to 150. Its never negative. I'm not doing anything extra than what I specified here. I create the effect only to use the projection matrix. I am using XNA4, and I do pass the effect as a parameter to Spritebatch.Begin(see last parameter); but when I did that..no texture showed up. I had to manually invoke to make the textures start appearing on the screen." CreationDate="2011-02-02T17:57:35.503" UserId="4638" />
  <row Id="10477" PostId="7956" Text="@Martin See my answer [here](http://gamedev.stackexchange.com/questions/1667/famous-games-written-in-net-and-xna/1670#1670) to see why that doesn't really happen that often. I can also say from personal experience that a 5% decrease in RAM usage can save thousands (multiple concurrent server processes, less RAM means less hardware means less $$$). As a big Python supporter I would love to the CLR become a more viable option for AAA game development, but it sure as hell isn't there yet." CreationDate="2011-02-02T17:58:15.763" UserId="395" />
  <row Id="10478" PostId="8013" Text="Oh, I missed the Begin call. In XNA, texcoords of (0,0) are the top-left corner of the image. But it doesn't sound like you have sufficient control of the texcoords here to have messed that up." CreationDate="2011-02-02T18:00:44.703" UserId="1430" />
  <row Id="10479" PostId="8013" Text="Yup. I don't understand how spritebatch handles the projection matrices in effect and I think that is where lies the answer to my problem." CreationDate="2011-02-02T18:04:02.297" UserId="4638" />
  <row Id="10480" PostId="8008" Text="Thanks this looks like it's close to the answer as I can hope for." CreationDate="2011-02-02T18:47:58.277" UserId="539" />
  <row Id="10481" PostId="8015" Text="How would I create a binary file to hold that byte data (I'm running Linux/Windows)? Would I have each byte represent a specific kind of tile such as a wall, sprite? Could you please give me an example of what that 2D array would look like? (Sorry, I'm new to game development)" CreationDate="2011-02-02T19:21:31.280" UserId="5121" />
  <row Id="10482" PostId="8015" Text="See TheCommunistDuck's reply. It should give you an idea of what the 2D array would look like. The idea is..imagine your world to be segmented into tiles (each of dimension 32 x 32pixels). This would look like a grid (or 2D array). Now, you can assign int ids to each cell and the array would look like his reply. So, now your game knows wheres land and wheres water. Now, once you author this 2d array, you can serialize it and store in binary format. When your game loads this file, it would deserialize it and reconstruct that 2D array, which your game can now interpret based on the ids stored" CreationDate="2011-02-02T19:41:29.290" UserId="4638" />
  <row Id="10483" PostId="8015" Text="Look at serialization/deserialization for storing your data in a binary file." CreationDate="2011-02-02T19:42:49.053" UserId="4638" />
  <row Id="10484" PostId="8019" Text="Related: http://gamedev.stackexchange.com/questions/581/which-3d-engine-for-ipad-development" CreationDate="2011-02-02T19:59:32.977" UserId="14" />
  <row Id="10485" PostId="7765" Text="It was before the edit, but I still think it's a bad question. For example, using more than 10,000,000 joints will crash the program for sure. Without _specific_ concerns, this question is effectively &quot;Please review &lt;software&gt;&quot; - that's not a very good question. The SE format is good for focused questions; Google is better for general overviews. (You'll notice that neither answer gives actual issues with Box2D JS, just a point towards an alternative, which might as well re-ask the question.)" CreationDate="2011-02-02T20:06:10.333" UserId="744" />
  <row Id="10486" PostId="8017" Text="Are you trying to load this assembly at runtime?  XNA's content pipeline is designed to run at build time and is only available on windows - not XBox.  New content pipeline projects should reference this correctly with XNA installed." CreationDate="2011-02-02T20:11:27.350" UserId="4296" />
  <row Id="10487" PostId="8017" Text="@Leniency: I'm developing for windows. And no, I'm trying to load at build time." CreationDate="2011-02-02T20:13:03.723" UserId="4997" />
  <row Id="10488" PostId="7968" Text="This isn't a path finding problem, it's an agent simulation problem. Path finding is only the very lowest level of intelligence the actors need to apply." CreationDate="2011-02-02T20:23:15.450" UserId="741" />
  <row Id="10489" PostId="7998" Text="Good answer - I like the notion of broadcasting 'stuck' messages out so that anyone who can get out does." CreationDate="2011-02-02T20:23:54.207" UserId="741" />
  <row Id="10490" PostId="8022" Text="it works. Thank so much! :)" CreationDate="2011-02-02T20:31:35.597" UserId="4997" />
  <row Id="10491" PostId="7968" Text="Too easy? haha. Well that's what I do when I'm driving! If I can predict a collision with my current path I change my velocity." CreationDate="2011-02-02T20:40:06.940" UserId="5089" />
  <row Id="10492" PostId="7990" Score="1" Text="2) Yeah, Contains() will be quite slow.  Rather than store all your nodes in lists, use a Dictionary&lt;int, PGNode&gt;.  Then you get O(1) lookup time and can still iterate list a list.  If nodes have an id field, use that for the key, otherwise PGNode.GetHashCode() will work." CreationDate="2011-02-02T20:45:45.480" UserId="4296" />
  <row Id="10493" PostId="8024" Text="You need to post something much more specific (and game-related), this question is *far* too general." CreationDate="2011-02-02T20:53:35.970" UserId="4662" />
  <row Id="10494" PostId="7968" Text="And traffic lights? And what to do when your path is blocked by another vehicle? What to do when your path says go forward, but your velocity is zero to avoid a collision. A collision with another car, whose path says go forward (through you), and their velocity is zero as well?" CreationDate="2011-02-02T20:54:30.590" UserId="741" />
  <row Id="10495" PostId="8024" Text="You're right, but I haven't seen this being discussed in other fields besides game programming." CreationDate="2011-02-02T21:02:28.157" UserId="5126" />
  <row Id="10496" PostId="7968" Text="In a single-lane scenario, if you use the other cars velocity to calculate their future destinations when the first car detects the collision and stops the other car will not also need to stop since the first cars velocity is now 0. This assumes that you'll be able to look far enough ahead in time to see collisions with cars down long single-lane roads. A friend of mine suggests that you add a STOP node into your A* algorithm also. With that from the perspective of any single car you'd just consider other cars an obstacle. Stopping may unblock your path if done long enough." CreationDate="2011-02-02T21:04:11.207" UserId="5089" />
  <row Id="10497" PostId="8026" Text="A dictionary is a bad structure for this (although if the language doesn't provide a set type, it can be OK for the closed set). You need one priority queue, sorted by cost. You don't need three dictionaries, which won't have good speed characteristics anyway." CreationDate="2011-02-02T21:27:09.110" UserId="744" />
  <row Id="10498" PostId="7990" Score="1" Text="@Leniency: Wouldn't Dictionary&lt;PGNode, PGNode&gt; be better? Two objects may have the same hash code but not be equal. &quot;Consequently, the default implementation of this method must not be used as a unique object identifier for hashing purposes.&quot; http://msdn.microsoft.com/en-us/library/system.object.gethashcode.aspx - .NET 3.5 provides HashSet, which is better - http://msdn.microsoft.com/en-us/library/bb359438.aspx." CreationDate="2011-02-02T21:28:37.030" UserId="744" />
  <row Id="10499" PostId="7765" Text="Now the question has been edited beyond recognition - and when asked this way becomes trivially Googleable - and since it's asking for a list of things, it's probably best as CW." CreationDate="2011-02-02T21:35:26.380" UserId="744" />
  <row Id="10500" PostId="7956" Text="@coderanger: I know that currently not many large studios use managed languages, and I'm sure that's going to continue for a very long time. However more and more small scale companies are using managed languages, and I can't imagine that going away anytime soon either." CreationDate="2011-02-02T21:43:02.973" UserId="1687" />
  <row Id="10501" PostId="8024" Score="2" Text="@DeadMG: I've _never_ seen the term data-oriented design used outside game development, except when referring to practices originating in game development. If you are thinking of data-driven design, that is not the same thing." CreationDate="2011-02-02T21:53:28.387" UserId="744" />
  <row Id="10502" PostId="8027" Text="Thank you for the answer but what you're saying is what I should do to use DOD, not how I could use OO with it. I've read Noel's blog, Mike Acton's rants ( :D ), DICE's publications among others and I understand how to use DOD, just not with OO mixed in." CreationDate="2011-02-02T22:32:15.177" UserId="5126" />
  <row Id="10503" PostId="8026" Text="Right in wikipedia it has the code &quot;g_score[start] := 0&quot; that is a map, it is equivalent to a dictionary in C#. Why wouldn't a dictionary have a good performance characteristic? It seeks by hashcode which is incredibly fast." CreationDate="2011-02-02T22:40:00.340" UserId="5089" />
  <row Id="10504" PostId="8027" Text="What do you think OO is? I would call most of Noel's code OO, for example - there are still classes and instances, there is still type-based dispatch, there may still be inheritance (C++0x's definition of POD was changed to allow this). One still models problems starting with data, rather than operations." CreationDate="2011-02-02T23:18:38.063" UserId="744" />
  <row Id="10505" PostId="8026" Score="1" Text="Wikipedia's algorithm is using &quot;a map&quot; because it does not have objects with F, G, and H attributes - it is pseudocode in a non-attributed language. The reason it gives bad performance is that you want the element with the minimum _key value_, which has no fixed relation to _key hash value_, so requires a linear search over all keys." CreationDate="2011-02-03T00:03:22.763" UserId="744" />
  <row Id="10506" PostId="8020" Score="1" Text="+1. Unity seems to be the answer to most &quot;Which game engine?&quot; questions" CreationDate="2011-02-03T00:06:33.217" UserId="2332" />
  <row Id="10507" PostId="8030" Text="+1 for keying me on to the error lookup tool." CreationDate="2011-02-03T00:18:30.210" UserId="3056" />
  <row Id="10508" PostId="8026" Text="You're right, I said &quot;instead of a list&quot; but in my implementation I used a list and a dictionary. I used the list to keep track of the shortest path and the dictionaries to keep track of the paths. You wouldn't want to use the dictionary to store the open nodes." CreationDate="2011-02-03T01:17:03.173" UserId="5089" />
  <row Id="10509" PostId="8030" Score="1" Text="You may also find it useful to enable the Debug runtimes (via the DirectX control panel, which is accessible under the DX SDK's Start Menu entry). This will print some additional useful diagnostic information to the output window at runtime which can sometimes help clarify DX's otherwise-very-general error messages." CreationDate="2011-02-03T01:24:58.483" UserId="1430" />
  <row Id="10510" PostId="8034" Score="2" Text="Why is this tagged &quot;web?&quot; Are you specifically looking for answers regarding games in the web domain?" CreationDate="2011-02-03T05:52:00.750" UserId="1430" />
  <row Id="10511" PostId="8036" Text="Erin Catto's (of box2d fame) GDC slides may be relevant: http://code.google.com/p/box2d/downloads/list" CreationDate="2011-02-03T07:21:10.273" UserId="4264" />
  <row Id="10512" PostId="8036" Text="@Jari, I'd suggest putting that info in the linked dupe parent question." CreationDate="2011-02-03T07:27:17.850" UserId="51" />
  <row Id="10513" PostId="8039" Score="1" Text="Ah, I see. I rendered my map with perspective so it looked somehow weird. Such a simple thing makes such a difference. Thanks." CreationDate="2011-02-03T08:31:15.840" UserId="5135" />
  <row Id="10514" PostId="8023" Text="Thank you for your elaborate answer. Your advice should be really helpful when I get to regular road traffic. But I probably missed to note two important aspects in my initial post: 1. The player does not participate in traffic himself. It's more like a business sim and he builds the network. 2. The unidirectional paths occur especially on airports, but on airports agents are not &quot;on themselves&quot; but have a tower telling them where to go. The tower has to identify the tricky situations, but also has total knowledge So I suppose that's one layer above the situations/behavior you described." CreationDate="2011-02-03T09:20:12.800" UserId="5086" />
  <row Id="10515" PostId="7635" Text="@notabene good point, it makes games more fun(I'm paranoic and I save the game all the time(just in case) and Its more enjoyable in games that I can't do that)." CreationDate="2011-02-03T09:30:00.017" UserId="2387" />
  <row Id="10516" PostId="7637" Text="in witcher my savegames took I think 4GB, because I have saved all the time(its just how I am) and I have run out of free space because of that(since witcher doesn't override savegames)." CreationDate="2011-02-03T09:34:12.587" UserId="2387" />
  <row Id="10517" PostId="6351" Text="Erin Catto's (of box2d fame) GDC slides may be relevant: code.google.com/p/box2d/downloads/list " CreationDate="2011-02-03T09:59:13.657" UserId="4264" />
  <row Id="10518" PostId="7630" Text="+1 Awesome blog, my daily read." CreationDate="2011-02-03T11:19:55.290" UserId="178" />
  <row Id="10519" PostId="8034" Text="Why downvote ?..........." CreationDate="2011-02-03T11:45:15.397" UserId="4436" />
  <row Id="10520" PostId="8034" Text="Yes. I am looking at Web/Social Games. " CreationDate="2011-02-03T11:45:58.750" UserId="4436" />
  <row Id="10521" PostId="933" Text="An explaination with graph, nodes, edges, would be more clear than just about tiles. It don't help understand that whatever the space structure of your game, you can apply the same algorithm as far as you have interlinked positions informations in this space." CreationDate="2011-02-03T11:59:12.367" UserId="364" />
  <row Id="10522" PostId="8033" Text="+1 That's it! Thanks! =)" CreationDate="2011-02-03T13:28:26.653" UserId="2778" />
  <row Id="10523" PostId="8041" Text="+1 I like this idea, and I seem to have some difficulties to implement it. For instance, I don't yet get how to set a maximum speed so that the spacecraft cannot fly faster, etc." CreationDate="2011-02-03T13:51:18.580" UserId="2778" />
  <row Id="10524" PostId="8041" Text="The air resistence will create a maximum speed for you, if always applied against the direction of travel. As it's proportional to the square of your speed, it becomes a large force as your speed increases and cancels out the movement force. " CreationDate="2011-02-03T14:44:54.873" UserId="259" />
  <row Id="10525" PostId="8041" Text="...the air resistence will also slow down your ship once you remove your finger, but you may want to introduce a braking force to do this quicker." CreationDate="2011-02-03T14:45:29.787" UserId="259" />
  <row Id="10526" PostId="8034" Text="@Rachel: if you do, you'd better specify that in the actual question, not in the tags..." CreationDate="2011-02-03T14:55:30.880" UserId="2188" />
  <row Id="10527" PostId="8049" Text="+1. For a 2D space game I would recommend using steering behaviours as your framework, and using one of my answers as a component within that framework. " CreationDate="2011-02-03T15:11:19.357" UserId="259" />
  <row Id="10528" PostId="8009" Text="Mentalray.dll or something simular to that isn't in the folder at the plugin manager?" CreationDate="2011-02-03T15:18:50.473" UserId="5118" />
  <row Id="10529" PostId="7766" Text="'Microsoft is using it for at least on of their IE9 test drive demos.' is that really something to be proud of?" CreationDate="2011-02-03T15:24:52.213" UserId="2566" />
  <row Id="10530" PostId="8034" Text="@Lo'oris or even better: in the actual question **and** in the tags. :)" CreationDate="2011-02-03T15:25:39.653" UserId="2566" />
  <row Id="10531" PostId="8045" Text="I expect to be encountering a similar issue to this soon; I look forward to seeing answers to this." CreationDate="2011-02-03T15:59:15.890" UserId="4690" />
  <row Id="10532" PostId="8051" Text="@notebene. Almost there. I want to rescale the range of values in the depthbuffer be be exactly 0 -&gt; 1. So if the rendered min/max depthvalues are .25/.75 I want (depthvalue - .25)/(.75 - .25). So, is there a way to discover the min/max of the depthbuffer following pass 1 and use that to rescale during pass 2." CreationDate="2011-02-03T16:10:43.110" UserId="3563" />
  <row Id="10533" PostId="7733" Text="FYI, Noel Llopis uses TDD for his indie games, and his old company High Moon Studios used it extensively. Haven't got a citation, sorry." CreationDate="2011-02-03T16:15:59.890" UserId="259" />
  <row Id="10534" PostId="8009" Text="Sorry, is that a question?" CreationDate="2011-02-03T16:33:25.230" UserId="1581" />
  <row Id="10535" PostId="8051" Score="1" Text="@dugla: since you are rendering triangles, which are planar, then perforce the minimum and maximum depth values will be associated with the minimum and maximum vertices in the scene. If you know these two, you can manually transform them all the way through the pipeline and you'll know the minimum and maximum values you'd be writing to the depth buffer. This is possibly easier than rendering, then reading back the whole depth buffer and iterating it." CreationDate="2011-02-03T16:38:51.427" UserId="1430" />
  <row Id="10536" PostId="8055" Text="Appologies for the bad quote of my code :/" CreationDate="2011-02-03T16:45:55.107" UserId="5141" />
  <row Id="10537" PostId="8055" Text="This seems like a workable approach, but I don't see an actual question here. Are you asking how to make use of the result of your &quot;direction&quot; function to actually move an object?" CreationDate="2011-02-03T16:54:17.720" UserId="1430" />
  <row Id="10538" PostId="8032" Text="Please, at least leave a comment when downvoting! I don't get the fact that this question deserves a downvote, so please explain!" CreationDate="2011-02-03T17:07:48.760" UserId="2778" />
  <row Id="10539" PostId="8034" Score="1" Text="This question is really general.  Computers are used to make games, as are various programming languages and hardware technologies.  Are you looking for APIs? Languages? Graphics techniques?" CreationDate="2011-02-03T17:20:05.433" UserId="953" />
  <row Id="10540" PostId="8056" Text="Well let me make everything clear. Im making a small basic game for an assignment. The game is similar to the old snake game on the old Nokia phones.&#xA;&#xA;I've created a snake class (even though I'm not sure whether this is needed because im only going to be having one moving sprite within the game).&#xA;&#xA;After I written the code above (in the snake class), the game ran with no errors but I couldn't actually move the image :(" CreationDate="2011-02-03T17:26:29.567" UserId="5141" />
  <row Id="10543" PostId="8059" Text="I just realized what I left out of that original question - this approach works when the NPC has *only one quest,* but not when multiple quests are available. When multiple quests are available, the IsQuestCompletable function does not return anything because no quest detail is shown upon the first click." CreationDate="2011-02-03T15:44:10.293" />
  <row Id="10544" PostId="8059" Text="This solution should still work even with your edited case. In fact, it fits your criteria perfectly: GetGossipAvailableQuests triggers after GOSSIP_SHOW, which means the quest detail does not have to be the first thing that shows up. Furthermore, it returns details about more than one quest. GetNumGossipAvailableQuests will tell you how many to expect, and also is available after GOSSIP_SHOW." CreationDate="2011-02-03T16:10:59.117" />
  <row Id="10545" PostId="8059" Text="So you're saying that I should be able to call IsQuestCompletable while I loop through the list of quests?" CreationDate="2011-02-03T17:23:29.617" />
  <row Id="10546" PostId="8057" Text="This seems a long winded way to use a few buttons.. but what do I know lol. &#xA;&#xA;I actually have no idea what I'm doing in terms of classes :(. &#xA;&#xA;" CreationDate="2011-02-03T17:41:42.143" UserId="5141" />
  <row Id="10547" PostId="8059" Text="Ah, I missed that part of your edit. IsQuestCompletable only works against the quest being showed in the quest window. GetGossipActiveQuests shows you whether a quest is complete. Updated my answer." CreationDate="2011-02-03T17:42:28.093" UserId="5143" />
  <row Id="10548" PostId="8056" Score="1" Text="@Tom, you should put the clarification in the question itself." CreationDate="2011-02-03T17:44:45.243" UserId="51" />
  <row Id="10549" PostId="8057" Score="1" Text="In fact, this is your `Snake` class that should be aware of its speed and direction. Aside, this is the game that is getting the user inputs. So, in my understanding, you have to make the snake know what direction it shall head next, that is, I believe that you should have, within your `Snake` class, four methods: `MoveDown()`, `MoveLeft()`, `MoveRight()` and `MoveUp()`. It is the snake that knows what to do to move one way or another, and since it also knows its speed, it shall move accordingly. Then, in your `Game` class, instantiate your snake, and input the directions through its methods!" CreationDate="2011-02-03T17:47:21.720" UserId="2778" />
  <row Id="10550" PostId="8057" Score="1" Text="Please, see my edited answer as I have included a possible `Snake` class exposing four `Move` methods. The snake doesn't have to know what key has been pressed, rather your game shall get the keys. Then, it is your game that tells your snake where to go depending on the keys that have been pressed by the player. Then, your game tells your `_snake` instance to `MoveLeft`, `MoveDown` etc. depending on the keys that you pressed. Let me know if this helps! And feel free to comment about stuff you don't get working or so, I'll be glad to help the most I can." CreationDate="2011-02-03T18:01:27.003" UserId="2778" />
  <row Id="10551" PostId="8055" Text="+1 For using classes." CreationDate="2011-02-03T18:06:50.643" UserId="2778" />
  <row Id="10552" PostId="8062" Score="1" Text="The techniques in question don't really change depending on whether or not you're writing for the iPhone or not. I don't think the iPhone bit in the title or the tag is relevant to this (very  general) question." CreationDate="2011-02-03T18:22:21.650" UserId="1430" />
  <row Id="10553" PostId="8044" Text="It is, thank you very much!" CreationDate="2011-02-03T18:27:33.197" UserId="5140" />
  <row Id="10554" PostId="8062" Text="Removed the iPhone reference." CreationDate="2011-02-03T19:03:24.677" UserId="51" />
  <row Id="10555" PostId="8062" Score="1" Text="Basically this boils down to 'how can I implement an AI for a board game'. There is no AI in snakes and ladders. There is no ai in sudoko either." CreationDate="2011-02-03T19:07:21.137" UserId="1156" />
  <row Id="10556" PostId="8057" Text="Thank you so much, this is exactly what I was looking for in terms of an answer. You called yourself a newbie but showed otherwise :). &#xA;&#xA;I'm literally awful at this coding jazz. My confusion is when using classes for everything (which is probably key)." CreationDate="2011-02-03T19:14:30.830" UserId="5141" />
  <row Id="10557" PostId="8054" Text="I'll give this one to Josh for all the studly additional reference material and tip about triangle planar-ness. I am inclined to do a hack where are position near/far clip planes to exactly match the z-extent of the geometry I am rendering so that the depthmap has nice values. What am I up to? I want to create interesting location specific blur effects during pass #2 based on what ever is in pass #1 depth map." CreationDate="2011-02-03T19:52:17.070" UserId="3563" />
  <row Id="10558" PostId="8057" Text="I'm glad I could help! I'm a beginner in game development, but not in object-oriented programming or programming itself! You might as well upvote and accept my answer if this is the one that helped you solve your problem. =) Thanks!" CreationDate="2011-02-03T19:54:14.120" UserId="2778" />
  <row Id="10559" PostId="8009" Text="@egarcia yes it is. Joris says that Mentalray.dll is not in the folder." CreationDate="2011-02-03T19:57:24.850" UserId="2566" />
  <row Id="10560" PostId="8069" Text="That Chris Taylor example is great." CreationDate="2011-02-03T20:37:31.943" UserId="1156" />
  <row Id="10561" PostId="8062" Score="1" Text="There is AI in sudoku. It's a boring uninformed search with constraints, but that's still a traditional AI domain. (Somewhat famously, http://norvig.com/sudoku.html.) Otherwise I agree, this is far too general." CreationDate="2011-02-03T20:59:29.053" UserId="744" />
  <row Id="10562" PostId="8057" Score="1" Text="Imo, Head First C# is a neat book for getting a good object-oriented primer while actually producing visible results all the way through." CreationDate="2011-02-03T21:07:55.530" UserId="2239" />
  <row Id="10563" PostId="8055" Text="I think if you post the code that actually uses the output from this direction method, we might be able to help. I think the error is in how you are updating the position of the sprite." CreationDate="2011-02-03T21:27:41.720" UserId="3547" />
  <row Id="10564" PostId="8069" Text="It is, there is also the design doc to Total Annihilation floating around somewhere I think. In fact this sample design doc might be based on that." CreationDate="2011-02-03T21:58:40.017" UserId="189" />
  <row Id="10565" PostId="8057" Text="+1 Will for separating controls from the object logic" CreationDate="2011-02-03T22:03:27.563" UserId="4690" />
  <row Id="10566" PostId="8060" Score="3" Text="There should be giant red stickers all over every XNA tutorial to inform people of the use of GameTime to modify all frame-by-frame events that you want to be updated at a constant real-time rate to provide a consistent player experience regardless of hardware." CreationDate="2011-02-03T22:05:39.107" UserId="4690" />
  <row Id="10567" PostId="8069" Text="The poster is pretty clear about asking for visualization apps rather than a simple doc. Chris Taylor's has been floating around forever and it's a solid example of the basics of documenting your game design, but I don't think it properly addresses the question here." CreationDate="2011-02-03T22:20:38.330" UserId="4690" />
  <row Id="10569" PostId="4447" Text="+1 Using this exact combination now." CreationDate="2011-02-03T22:34:33.823" UserId="3656" />
  <row Id="10570" PostId="7990" Text="Good point, forgot about HashSet." CreationDate="2011-02-03T22:34:53.887" UserId="4296" />
  <row Id="10571" PostId="8066" Text="Thx for your tips, they are really helpful.&#xA;&#xA;I cant quote you here cuz I dont have enough characters, and I shouldnt make an answer to myself :p, so, I agree with almost everything you said, but this game was more like a test than a real game, the test was successful, now Im making a real game :)&#xA;&#xA;Anyway, very useful advices." CreationDate="2011-02-03T23:11:42.903" UserId="5091" />
  <row Id="10572" PostId="8069" Text="Schematic diagram is to database design, as design doc is to game design. Nowhere in the question was it mentioned that sqa was looking for something *more* than a design doc; rather I got the impression that sqa was not aware of the concept of a design doc and was trying to find the equivalent of a database diagram for game design. If this question is not useful then he/she can accept a different one or even downvote it if I did something wrong." CreationDate="2011-02-03T23:15:13.590" UserId="189" />
  <row Id="10573" PostId="8075" Text="That's only an issue if you actually want to target those platforms which the asker does not specify.  Unity does support Wii.  It also supports PS3 and 360, which arguably are significantly more important than HP WebOS and Airplay-supported platforms.  I'm not going to touch whether or not supporting Linux is important." CreationDate="2011-02-03T23:44:23.360" UserId="51" />
  <row Id="10574" PostId="7559" Text="What was the problem with starting a Game Center account? Do you mean for the player? For the developer, I only remember it taking a few seconds (seriously, I think you just press the button in iTunes Connect)." CreationDate="2011-02-04T00:40:27.887" UserId="4294" />
  <row Id="10575" PostId="8062" Score="1" Text="@Joe: I think Duck meant to say there here isn't a competing AI in 2 of the 3 games mentioned.  Suduko is single player, snakes and ladders doesn't allow the player to make decisions.  Furthermore, Tic-Tac-Toe is so trivial as to not need AI, 20-40 LOC to play perfectly." CreationDate="2011-02-04T00:44:58.220" UserId="370" />
  <row Id="10576" PostId="8060" Text="@Bill: My sentiments exactly." CreationDate="2011-02-04T01:11:42.143" UserId="3547" />
  <row Id="10577" PostId="8079" Text="Why did they remove the effect framework ? It was a very useful class IMO." CreationDate="2011-02-04T01:39:15.983" UserId="2469" />
  <row Id="10578" PostId="8079" Text="@__dominic: It's not removed, but you have to compile it yourself." CreationDate="2011-02-04T01:53:38.917" UserId="4662" />
  <row Id="10579" PostId="8079" Score="1" Text="@__dominic: As DeadMG pointed out, the effect framework was not removed, it was factored out into a standalone set of code files you can compile yourself -- this was allegedly done to allow it to be versioned more fluidly than the D3D core, and ease deployment issues (particularly around D3DX)." CreationDate="2011-02-04T01:55:20.953" UserId="1430" />
  <row Id="10581" PostId="8071" Score="2" Text="An additional wiki benefit is that they can also be easily cross-linked to future projects as well; this encourages creating reusable systems and content!" CreationDate="2011-02-04T02:28:47.460" UserId="4690" />
  <row Id="10582" PostId="8075" Text="I was under the impression that Unity also supported X360, Wii and PS3." CreationDate="2011-02-04T02:41:59.347" UserId="14" />
  <row Id="10583" PostId="8020" Text="@Ray Unity is our Jquery." CreationDate="2011-02-04T02:42:29.707" UserId="14" />
  <row Id="10584" PostId="2921" Score="1" Text="Games are the easiest software to get users to *play*, but playing != *testing*. Getting good bug reports is quite hard. Beyond that, tracking down where in the code a bug occurs, and verifying that new changes don't break existing code both benefit dramatically from automated tests." CreationDate="2011-02-04T02:51:52.230" UserId="160" />
  <row Id="10585" PostId="8009" Text="@Joris: I've edited my answer to include the name of the Mental Ray dll. I hope this solves your issue." CreationDate="2011-02-04T08:36:23.413" UserId="1581" />
  <row Id="10586" PostId="8095" Text="Hmm, I could be wrong, but I am interpreting that as the stopping condition rather than the condition for adding to the open list. The following sounds like the condition for adding to the open list: &quot;As a side note, a child of a search state will not be generated for a particular adjacent triangle if a state corresponding to that triangle is already an ancestor of that state. This exclusion can be done because it will never eliminate an optimal path, only one that could become shorter by removing part of it, as stated in Theorem 4.3.4.&quot;" CreationDate="2011-02-04T10:47:19.027" UserId="4262" />
  <row Id="10587" PostId="8097" Text="I agree. This is propably problem with anything else." CreationDate="2011-02-04T10:59:17.693" UserId="3794" />
  <row Id="10588" PostId="8091" Score="1" Text="This. Just commission something in the same style. It's more entertaining if done well since it's a new piece but people recognize the allusion." CreationDate="2011-02-04T11:20:01.763" UserId="3656" />
  <row Id="10589" PostId="8100" Text="This is helpful answer? Eh maybe i'm just jealous because your answer has more points than mine answer:]. But he asked where to start, already knows what to do (create a game). " CreationDate="2011-02-04T11:24:09.000" UserId="3794" />
  <row Id="10590" PostId="8100" Text="@notabene Exactly! :))" CreationDate="2011-02-04T11:31:08.433" UserId="5164" />
  <row Id="10591" PostId="8105" Text="I have the passion and I want to start developing something. Question was how to start develop something meaning which sdk or languages are best and is there a tutorial or a website and stuff. I guess I didn't asked the question clearly, sorry about that" CreationDate="2011-02-04T11:32:41.537" UserId="5164" />
  <row Id="10592" PostId="8101" Text="Thanks so much! The thing is there is nothing parallel what I learn in schoold and what game developing requires :) So it is kinda hard for me to start developing something right now because of school projects, homeworks, assignments, summer interns etc. But I am really eager about this and your answer is really helpful to understand where to start. Thanks again" CreationDate="2011-02-04T11:35:56.710" UserId="5164" />
  <row Id="10593" PostId="8055" Text="Upvoting and accepting answers is another way, GD's way to thank your fellow developers who helped you achieve your goal. =)" CreationDate="2011-02-04T11:46:49.273" UserId="2778" />
  <row Id="10594" PostId="8101" Text="No problem. I'm glad you like it. Just some more suggestions. Dont use engine if you want to become pro. For learning i recommend xna (it is helpful because it can has classes for the scary 3D math ... good for beginner to not to freak out:)) and after you will be fine with it. Go deeper and learn DX, or opengl. In my opinion there is not big difference between them. They do same thing with different instructions. So once you undestand how graphis works, you can switch APIs with no problems. " CreationDate="2011-02-04T11:48:44.157" UserId="3794" />
  <row Id="10595" PostId="8100" Text="I honestly think I answered the question asked, and it seems at least two people think the same :P. If the header been &quot;how should I start developing a simple game?&quot; I would have answered differently. But notabene's answer already answers that." CreationDate="2011-02-04T12:14:51.867" UserId="1581" />
  <row Id="10596" PostId="8101" Text="Actually, I am a very good programmer as far as algorithms and hard math methods are concerned. But I haven't tried any graphic interface or opengl and so on. I checked other threads and XNA seems to be a good start :)" CreationDate="2011-02-04T12:48:45.777" UserId="5164" />
  <row Id="10597" PostId="8105" Score="2" Text="I understand that. What &quot;worries&quot; me is that you're doing it as an &quot;assignment&quot;, my question is why you haven't done it *yet*, long before someone *asked* you to do it. In any case, if you know deep inside you really want to do games, go ahead and best of luck :)" CreationDate="2011-02-04T13:10:27.957" UserId="4082" />
  <row Id="10598" PostId="8111" Text="Why do your options not include Unity? It's the popular engine nowadays and former UDK users typically find it to be a breath of fresh air, so from them I get the impression that it's easier to use." CreationDate="2011-02-04T13:38:30.480" UserId="189" />
  <row Id="10599" PostId="8105" Text="Well, the education in my university is very hard and does not leave much time to engage in my interests. And my childhood basically spent playing video games and admiring them :) I wanted to start doing some serious job when I got in a job in this industry but they want people who ALREADY did this kinda stuff. So I need to start right now :)" CreationDate="2011-02-04T13:39:57.573" UserId="5164" />
  <row Id="10600" PostId="8111" Text="Unity might be somewhat free, it is not C++ in its free version. By the quoted libs, I guess the OP wants C++ libs, and I agree with him: it gives leverage and experience for companies to use C++ and not those scripting languages." CreationDate="2011-02-04T13:42:46.717" UserId="1829" />
  <row Id="10601" PostId="8072" Text="VUE was exactly the thing I was looking for, thanks a bunch! I tried freemind but did not like how it arranges nodes, VUE is awesome!" CreationDate="2011-02-04T14:31:14.990" UserId="5150" />
  <row Id="10602" PostId="8091" Score="1" Text="I'd like to add, I disagree that he wouldn't have to worry about. A few years ago Nintendo stormed ROM sites making them close down, even if the games they distributed were so old to be commercially worthless." CreationDate="2011-02-04T14:35:54.577" UserId="2188" />
  <row Id="10603" PostId="8108" Score="2" Text="possible duplicate of [Checklist for finished game? ](http://gamedev.stackexchange.com/questions/1892/checklist-for-finished-game)" CreationDate="2011-02-04T14:36:06.633" UserId="744" />
  <row Id="10604" PostId="7733" Text="@Kylotan: You got some good points interesting to read! Thanks for your contribution. Nonetheless, I would like to add that TDD is yet another approach just like XP (extreme programming). And yes, Scrum does not provide any particular method specific to bugs, and rather invest on self-organization of the Team (of developers). Scrum doesn't tell you how to do things, it only says what should be done. It is the Team's commitment to walk through what has to be done. Scrum only bets on self-organized cross-functional Teams. It is the Team that decide how features should be developed and tested,etc" CreationDate="2011-02-04T14:38:03.723" UserId="2778" />
  <row Id="10605" PostId="8091" Text="Nintendo has an interest in selling old Nintendo games via Virtual Console, so they've got a reason to shut down ROMs.  There are many mario fan games that have been around for years, including before that incident, and I don't recall any being cease-and-desisted." CreationDate="2011-02-04T14:40:34.640" UserId="953" />
  <row Id="10606" PostId="7733" Text="@Kylotan: (continue...) I have answered my first question this week about classes here on GD. The OP wanted to get to know how to make his sprite move upon directional keypresses. Being comfortable with OOP concepts, I figured out that I should perhaps use classes to develop my first game using XNA. That said, my `Spacecraft` class becomes a fully testable class with methods and properties. This is the kind of stuff that absolutely can, IMHO, be fully tested using TDD. Let's say you need a spacecraft, then you write the tests for what you need it to accomplish one test at a time." CreationDate="2011-02-04T14:44:33.710" UserId="2778" />
  <row Id="10607" PostId="7730" Text="I'm back after some coding to say that I have answered a question this week (my first on GD! =)) that required knowledge of OOP concepts. The OP wanted to move a snake upon `Keys.Down`, `Keys.Left`, etc. That to say that the game knows where the user wants the snake to go, and the snake has to go where the game tells it to, though that is only the snake that knows how to move in the different directions, hence also of its position in the game. Having told this, IMHO, makes the `Snake` class a testable one! (To be continued...)" CreationDate="2011-02-04T15:01:21.220" UserId="2778" />
  <row Id="10608" PostId="7730" Text="Not only is it testable, but it now is a good candidate for TDD. Lets say the snake is initialized at position `Vector2.Zero`, with a speed of `10.0f` on both X and Y axis in this 2D game. First question is: Is it positioned at its supposed initial position and how to test it? Then, you think that the `Position` property shall be publicly exposed. Second: how to make it move? Movement methods should be good, so you write a test for each direction method `MoveDown`, `MoveLeft` and so on. Now, go and write your method declaration and see if the test complains. Then, reverify the snake's position" CreationDate="2011-02-04T15:07:37.120" UserId="2778" />
  <row Id="10609" PostId="7730" Text="after a `MoveDown` method call! Since you know that the `Position` property is thoroughly tested, that is a member on which you can count! You may guess the continuation here! ;-) That is to say that visual components can definitely not be tested, but the snake should look like a snake, all depending of what kind of snake you want in the game. The artist drawing the snake should prove enough satisfaction with her/his drawing of the snake, that is not to be tested through TDD, of course! But its position relative to other objects can, and the class that represents this snake too. In fact, TDD" CreationDate="2011-02-04T15:12:21.140" UserId="2778" />
  <row Id="10610" PostId="7730" Text="is suited for OOP designed games. If we go through the `MyFirstGame` tutorial with XNA, I couldn't agree more than this is hard to test, since you can't unit-test it, but you have to perform integration and functional testing, which is not necessarily covered in TDD which is bending mostly (99.999%) on unit-testing." CreationDate="2011-02-04T15:15:02.680" UserId="2778" />
  <row Id="10611" PostId="8083" Text="Hey, thanks for your answer!, I was wondering if you could explain your gluLookAt example arguments a bit ? Why the 1 in the eyeZ parameter ( third arg ) , and why the 1 in the upY ?" CreationDate="2011-02-04T15:24:37.343" UserId="2708" />
  <row Id="10612" PostId="8104" Text="I should have been more clear. I intend to load all components every time I need the item. The attribute modifiers aren't active parts like having the item return a list of targets when given some data but instead just apply some numbers when the item is equipped. Of course I might be thinking of that all wrong as well." CreationDate="2011-02-04T16:00:31.357" UserId="1186" />
  <row Id="10613" PostId="8078" Score="3" Text="DX9 isn't outdated. There are still a ton of potential users on XP. It may not be in development any more, and is going to become outdated in the next few years, but for **now** it isn't." CreationDate="2011-02-04T16:04:42.177" UserId="1156" />
  <row Id="10614" PostId="8108" Text="Are you asking about bug/task tracking software?  Like http://www.fogcreek.com/fogbugz/?" CreationDate="2011-02-04T16:08:32.793" UserId="51" />
  <row Id="10615" PostId="8049" Text="Was going to suggest the same think when I read the question. I've used steering behavior alot, it's easy and allows for some pretty nice AI/motion." CreationDate="2011-02-04T16:08:58.363" UserId="2469" />
  <row Id="10616" PostId="8111" Text="What would you use SFML for if you're making a 3d game (assumption based off mentioning Source and Horde3D) and you're already looking at CEGUI?" CreationDate="2011-02-04T16:23:39.863" UserId="3656" />
  <row Id="10617" PostId="8115" Text="In fact my initial problem is more like &quot;animated texture&quot; than render to texture. I feel dubious about the term, but I don't think I want something that resembles a surveillance camera." CreationDate="2011-02-04T16:28:35.543" UserId="1829" />
  <row Id="10618" PostId="8103" Text="I almost stopped reading when you suggest a blob and thought your answer was going to suggest MongoDB or some other NoSQL solution. Instead it offers a different direction than components. Sure, this approach might work better in in NoSQL but there is a lot more here than just a 'use NoSQL' answer." CreationDate="2011-02-04T16:36:41.143" UserId="1186" />
  <row Id="10619" PostId="8047" Text="-1 It sounds like Petteri Hietavirta knows how use use a basic physics system. So your answer to this question is that stopping on a target is too difficult?" CreationDate="2011-02-04T16:47:42.730" UserId="962" />
  <row Id="10620" PostId="8108" Text="Are you asking how to develop your requirements (that is, how to decide what goes *on* the to-do list? Or are you asking for software to manage the to-do list?" CreationDate="2011-02-04T16:49:29.217" UserId="1430" />
  <row Id="10621" PostId="6583" Text="@Samaursa, Using vectors it would be too slow. That is why flash has the BitmapData Class." CreationDate="2011-02-04T16:49:56.970" UserId="962" />
  <row Id="10622" PostId="8118" Text="Another Con would be you need to be familiar with 3D modeling/design, but another look at the site and this does not seem the case.. as 2D games are possible" CreationDate="2011-02-04T16:51:52.053" UserId="4204" />
  <row Id="10623" PostId="8078" Text="@thecommunistduck I agree,but DX9 is totally outdated for learning it. Because once beginer who start learning it now,will know it well...it will be outdated. And sure i told it bad in my answer." CreationDate="2011-02-04T16:57:59.930" UserId="3794" />
  <row Id="10624" PostId="8115" Score="1" Text="Well in that case you just want a script that updates the texture over time.  `void Update() { if( Time.time &gt; timeToNextTexture ) { renderer.material.mainTexture = nextTexture; } }`" CreationDate="2011-02-04T17:25:56.053" UserId="51" />
  <row Id="10625" PostId="8108" Text="I do not need tracking software or to-do list app. It's not big, just a WP7 XNA game. I want to make my TO-DO list for game like: background for the main sreen, background for another screen, hit sound for X. I dont want to forgot about important stuff. Just wondering if there is a blog where a guy post his TODO list for a game or something similar." CreationDate="2011-02-04T17:30:15.767" UserId="3311" />
  <row Id="10626" PostId="8118" Score="1" Text="@Johnny Quest Just not really what it was meant for might make it awkward to use." CreationDate="2011-02-04T17:48:51.700" UserId="2301" />
  <row Id="10627" PostId="8118" Text="'C++ would have been a cool thing' - seriously, what? Writing in C++ is 'cool' now? Personally I hate the language (all the typing, Python all the way :p), but it certainly is a great language feature and library wise." CreationDate="2011-02-04T18:35:57.127" UserId="1156" />
  <row Id="10628" PostId="8127" Text="Maybe this link will help? http://www.droidnova.com/create-a-scrollable-map-with-cells-part-iii,737.html#more-737" CreationDate="2011-02-04T19:45:49.347" UserId="2778" />
  <row Id="10629" PostId="8130" Text="When websockets (http://en.wikipedia.org/wiki/WebSockets) is finalized (and implemented etc) that would probably be a good way, until then I think AJAX (without the X, no XML required for this) would probably be the best way (still not a very good way I suppose)." CreationDate="2011-02-04T20:32:39.310" UserId="337" />
  <row Id="10630" PostId="8124" Text="I was going to comment on how ridiculous some of the things you listed as positives about C# over C++ are, but I exceeded my character limit easily. Do you even know C++?" CreationDate="2011-02-04T20:35:40.963" UserId="4662" />
  <row Id="10631" PostId="8083" Text="I updated my answer. Does that help?" CreationDate="2011-02-04T20:37:42.897" UserId="18" />
  <row Id="10632" PostId="8124" Score="1" Text="@DeadMG, yes, very well actually.  Yes I know about boost, template metaprogramming, etc.  But I find C# to be a more modern language." CreationDate="2011-02-04T20:41:59.630" UserId="51" />
  <row Id="10633" PostId="8124" Score="1" Text="@DeadMG I think the point is that C# is extremely smooth for many use-cases that C++ leaves a lot to be desired. Not that C++ can't do those things." CreationDate="2011-02-04T20:42:00.257" UserId="1198" />
  <row Id="10634" PostId="8090" Text="Whether it would come under their copyright or not depends an awful lot on what exactly you mean by &quot;playing the same tune in a different way&quot;." CreationDate="2011-02-04T20:45:14.103" UserId="1101" />
  <row Id="10635" PostId="8130" Text="Seems that support for web sockets is dropping fast..." CreationDate="2011-02-04T21:19:53.887" UserId="1743" />
  <row Id="10636" PostId="8132" Text="wow, if XNATouch works on the MonoDroid as you say it does, that would be the best thing ever! I could just port my games to MonoDroid with almost no changing of anything!" CreationDate="2011-02-04T21:27:54.753" UserId="2301" />
  <row Id="10637" PostId="8132" Text="I know they're working on a port, and are always looking for extra developers to contribute. As I said, neither is fully baked at this point, but they look very promising." CreationDate="2011-02-04T21:56:25.127" UserId="1198" />
  <row Id="10638" PostId="6182" Text="doesn't answer the hard part, but a partial answer is better than none.. thanks :)" CreationDate="2011-02-04T22:10:18.320" UserId="3767" />
  <row Id="10639" PostId="8134" Score="2" Text="Actually a sleep call is good in every game loop, but as you pointed out it should be a variable time based on how long the rest of the loop took. But especially in a mobile device, a tight CPU loop will only drain the battery that much faster. No need to run at 200 FPS when the screen can only really update at 60 (or 30, or whatever rate it updates) - you'll just get complaints about draining battery life." CreationDate="2011-02-04T22:14:39.660" UserId="189" />
  <row Id="10640" PostId="8124" Score="2" Text="The only thing on his list I might disagree with was 'better generic support than C++'." CreationDate="2011-02-04T22:19:17.193" UserId="1101" />
  <row Id="10641" PostId="8009" Text="Thanks it helped!" CreationDate="2011-02-04T23:14:07.050" UserId="5118" />
  <row Id="10642" PostId="8120" Score="2" Text="As another former Source mod developer, I completely agree with this. When he says Valve hasn't done a good job of maintaining it, he's putting it extremely lightly. The tools are freaking awful, and the SDK is consistently broken, inconsistent, and largely undocumented. The engine architecture will leave you banging your head against a wall a lot, and honestly I can't believe anyone puts up with its awfulness. (Keep in my I say this as someone who LOVES Valve's games and Steam.) Do not waste your time with the Source engine, unless you are being paid a hell of a lot of money." CreationDate="2011-02-04T23:36:12.513" UserId="263" />
  <row Id="10643" PostId="8134" Text="I agree with you. I've read (specifically about .NET's implementation, I thought it applied more generally as well) that `sleep();` calls only promise to sleep for at least the specified time, maybe longer. Since we're talking about milliseconds in a game loop depending on how much longer it sleeps it could be an issue." CreationDate="2011-02-04T23:37:49.140" UserId="1198" />
  <row Id="10644" PostId="8137" Score="1" Text="I already have a cross-hair in place hiding the mouse." CreationDate="2011-02-04T23:50:04.210" UserId="4638" />
  <row Id="10646" PostId="8134" Text="Usually sleeping to 1ms (or less) before you need to wake up and then busy-looping for a short period is safe enough. If sleep doesn't wake you up to within millisecond precision, the system is overloaded and you will be starved for resources anyway." CreationDate="2011-02-05T00:17:08.400" UserId="744" />
  <row Id="10647" PostId="8120" Text="@Bob I was looking for just that kind of confirmation. It doesn't seem right a company like Valve would not put love in something that they use for themselves, what a shame... perhaps they have been working on something else and haven't shared it?." CreationDate="2011-02-05T00:48:46.357" UserId="4284" />
  <row Id="10648" PostId="8122" Score="4" Text="i'll quote &quot;Making a game&quot; is what earns respect, not &quot;making a game without using any useful tools.&quot;" CreationDate="2011-02-05T00:55:39.940" UserId="4508" />
  <row Id="10649" PostId="8133" Score="1" Text="i'll quote &quot;Unified asset pipeline. No need to spend time on resource subsystem at all, no buggy import routines to write and fix: just drop a file into folder, and it works.&quot;" CreationDate="2011-02-05T01:00:42.463" UserId="4508" />
  <row Id="10650" PostId="8079" Score="1" Text="I think worse than cutting out 25% of XP users is that only 17% have DX11 GPU's (as of now). " CreationDate="2011-02-05T01:03:01.387" UserId="2946" />
  <row Id="10651" PostId="8133" Score="1" Text="and &quot;The biggest &quot;con&quot; of Unity3D, though, is source control.&quot;" CreationDate="2011-02-05T01:03:05.703" UserId="4508" />
  <row Id="10652" PostId="8133" Text="and &quot;That said, if we're talking about an educational project, I' recommend against it.&quot;" CreationDate="2011-02-05T01:04:04.410" UserId="4508" />
  <row Id="10653" PostId="8128" Text="Can you expand on why it's &quot;annoying&quot;? That's a pretty standard solution." CreationDate="2011-02-05T01:28:44.093" UserId="154" />
  <row Id="10654" PostId="8128" Text="For one: I've always been doing first-person view like this. I wanted to learn if there is a better way out there. Also, When I alt-tab out of the game, it still tries to center the mouse. I'll somehow need to flag it when the game goes out of scope." CreationDate="2011-02-05T02:50:36.927" UserId="4638" />
  <row Id="10655" PostId="8130" Text="Do you want to make a stand or a game? If you want to make game; dont bother go for html5." CreationDate="2011-02-05T04:35:02.470" />
  <row Id="10659" PostId="8120" Text="It is a shame. I can only hope that the internal code is better kept than the SDK code. To be quite honest, Valve was at the top of my list for companies I'd like to work for someday, but after working with the SDK code base I've crossed them off my list because if I had to wade through that mess everyday I'd want to eat a bullet by the end of my first week." CreationDate="2011-02-05T05:48:03.263" UserId="263" />
  <row Id="10660" PostId="8152" Text="THIS is the solution. Thanks a bunch!" CreationDate="2011-02-05T06:07:29.113" UserId="3656" />
  <row Id="10661" PostId="8126" Text="it says someone answered, but i can't see the answer. I've tried three different browsers, but it shows up on none ?" CreationDate="2011-02-05T06:31:46.650" UserId="4638" />
  <row Id="10662" PostId="7928" Text="Well, I asked for the _simplest_ way.." CreationDate="2011-02-05T06:42:16.547" UserId="4264" />
  <row Id="10663" PostId="8010" Text="Why is this closed as an &quot;exact duplicate&quot; with no links to duplicate questions?" CreationDate="2011-02-05T08:53:08.440" UserId="2560" />
  <row Id="10664" PostId="8157" Text="Good ideas. I hadn't even considered the idea of virtual pets. And somehow I missed pong too.. Maybe something like breakout would be good." CreationDate="2011-02-05T09:16:41.180" UserId="2560" />
  <row Id="10665" PostId="8155" Score="2" Text="You can &quot;increase&quot; the color count in a way: make pixels blink, if device allows that, that way very fast blinking pixel will be different from static in looks and color (TFT displays do that to emulate 24bit color). That will add a certain variability." CreationDate="2011-02-05T09:17:12.100" UserId="3644" />
  <row Id="10666" PostId="8155" Score="1" Text="Calling Tetris lame instantly disqualifies you for... well, I'd say for everything - but retro gaming in particular." CreationDate="2011-02-05T10:09:19.190" UserId="3972" />
  <row Id="10667" PostId="8160" Score="7" Text="It would help if you explained briefly what gave you the idea, since it’s a very odd idea to say the least." CreationDate="2011-02-05T12:24:27.893" UserId="4661" />
  <row Id="10668" PostId="8079" Score="2" Text="@DMan: D3D11 can run on downlevel hardware, including D3D9 hardware." CreationDate="2011-02-05T12:30:13.567" UserId="4662" />
  <row Id="10669" PostId="8119" Text="If I may make a plug: I am currently seeking crowd-funding to finish and open-source my XNA implementation for Android (via MonoDroid) *and*  on the web with Silverlight (*and* on iOS via MonoTouch). http://rockethub.com/projects/752-exen-xna-for-iphone-android-and-silverlight" CreationDate="2011-02-05T13:13:50.733" UserId="288" />
  <row Id="10672" PostId="8126" Text="I have this issue as well" CreationDate="2011-02-05T14:09:33.847" UserId="2332" />
  <row Id="10675" PostId="8168" Text="+1 for mentioning performance" CreationDate="2011-02-05T15:54:45.930" UserId="2603" />
  <row Id="10676" PostId="8168" Score="8" Text="+1 Visual Studio is a very good IDE. Even if it is the dark side..." CreationDate="2011-02-05T16:52:02.743" UserId="3547" />
  <row Id="10677" PostId="8079" Text="@DeadMG- I was not aware of this. Does it automatically strip away any D3D11 code that it cannot run? Or does the developer have to fiddle around with it?" CreationDate="2011-02-05T17:22:36.020" UserId="2946" />
  <row Id="10678" PostId="8163" Text="While inertia exists, the C++ codebases are not themselves that old - perhaps 10 years at most. Almost all code in them has undergone replacement during that period - for 3D accelerators, programmable pipelines, data-driven architectures, and scripting support. If a AAA developer wanted to do a full migration to C#, they could probably accomplish it for minimal cost within the space of three games - first use it as a tool and scripting host, second move the game logic layers to it, and third port the renderer to use a managed DX/GL wrapper." CreationDate="2011-02-05T17:38:39.550" UserId="744" />
  <row Id="10679" PostId="8034" Text="I am looking for Languages, which languages are popular for Game Development. " CreationDate="2011-02-05T17:58:10.143" UserId="4436" />
  <row Id="10680" PostId="8083" Text="Thank you very much for the answer!" CreationDate="2011-02-05T18:10:42.090" UserId="2708" />
  <row Id="10681" PostId="1538" Text="It's a great presentation." CreationDate="2011-02-05T18:22:20.573" UserId="1021" />
  <row Id="10682" PostId="8170" Score="2" Text="So the Enabled and Visible properties control whether or not the Update() and Draw() methods, respectively, will be called? If Visible is false, will ANY code in the Draw() method execute or is it simply not called? Do they affect anything else?" CreationDate="2011-02-05T18:24:17.673" UserId="4690" />
  <row Id="10683" PostId="8160" Score="2" Text="Considering Quake is done in C.. ;-)" CreationDate="2011-02-05T18:35:13.657" UserId="1156" />
  <row Id="10684" PostId="8106" Text="Have a look at http://gamedev.stackexchange.com/questions/2911/2d-game-dev-and-java-other-possibilities-than-opengl too." CreationDate="2011-02-05T18:43:40.053" UserId="1156" />
  <row Id="10685" PostId="8079" Text="The developer needs to do some work to set up down-level support, such asking for it and making sure not to call 11-only features (like compute shaders) when operating down-level. But it's still much easier than having to maintain distinct code-paths for the 9 API and the 11 API." CreationDate="2011-02-05T19:03:12.007" UserId="1430" />
  <row Id="10686" PostId="8126" Text="For posterity, here's a link to the relevant meta discussion: http://meta.gamedev.stackexchange.com/questions/380/no-answer-exists-but-the-site-says-1-answer-is-there" CreationDate="2011-02-05T19:05:47.527" UserId="1430" />
  <row Id="10687" PostId="8174" Text="Have you tried drawing the skybox before drawing the game objects?  Also a screenshot would help." CreationDate="2011-02-05T19:18:55.423" UserId="51" />
  <row Id="10688" PostId="8167" Text="+1 for &quot;right tool for the job&quot;" CreationDate="2011-02-05T20:16:45.390" UserId="2077" />
  <row Id="10689" PostId="8160" Text="I was just wondering this question myself!" CreationDate="2011-02-05T20:42:28.503" UserId="982" />
  <row Id="10690" PostId="8178" Score="3" Text="Hire an artist. What else should i say :]" CreationDate="2011-02-05T21:46:33.220" UserId="3794" />
  <row Id="10691" PostId="8178" Text="It's just that, I would like to check my other options beforehand. &#xA;I actually don't require that high-quality portraits... just that they don't immediately make the player alt+f4 the game. ^^" CreationDate="2011-02-05T21:59:39.823" UserId="1221" />
  <row Id="10692" PostId="3284" Text="Thank you very much. So many inspiration..." CreationDate="2011-02-06T00:53:46.663" UserId="3794" />
  <row Id="10693" PostId="8170" Score="2" Text="They won't be called, and they only affect Update (Enabled) and Draw (Visible)." CreationDate="2011-02-06T01:20:27.357" UserId="2798" />
  <row Id="10694" PostId="8177" Score="1" Text="You can still add a little translation (your world translation * 0.001f, or some other appropiate scale) to simulate that you are travelling along the world. This works best if you are adding a 3d skybox." CreationDate="2011-02-06T01:21:39.740" UserId="2798" />
  <row Id="10695" PostId="8160" Score="1" Text="It sounds like by &quot;industry games&quot; you mean what is usually called &quot;AAA titles&quot;." CreationDate="2011-02-06T03:18:29.377" UserId="4191" />
  <row Id="10696" PostId="8177" Text="@r2d2rigo: It is a 3D skybox (cube). when I try to add translation to the skybox, I soon run out of the cube." CreationDate="2011-02-06T03:42:06.067" UserId="4638" />
  <row Id="10697" PostId="8170" Text="Then this is exactly the functionality I was hoping for. Thanks." CreationDate="2011-02-06T05:49:56.283" UserId="4690" />
  <row Id="10698" PostId="8191" Text="Out of curiosity, what is the language of the code snippet?" CreationDate="2011-02-06T06:25:18.963" UserId="189" />
  <row Id="10700" PostId="8191" Text="@Ricket - ActionScript 3, similar to JavaScript. Why? does it look neat and elegent? :)" CreationDate="2011-02-06T07:25:39.440" UserId="2862" />
  <row Id="10701" PostId="8189" Score="2" Text="Good lord, this is a great answer." CreationDate="2011-02-06T07:46:43.767" UserId="2437" />
  <row Id="10702" PostId="8163" Text="Mono does have a commercial .NET solution for PS3." CreationDate="2011-02-06T08:02:46.020" UserId="1443" />
  <row Id="10703" PostId="8190" Text="Wow, that's just great" CreationDate="2011-02-06T08:59:34.767" UserId="3794" />
  <row Id="10704" PostId="7207" Text="What is your default PHP encoding displayed by phpinfo(); ?" CreationDate="2011-02-06T09:26:17.630" UserId="5197" />
  <row Id="10705" PostId="8186" Text="http://gamedev.stackexchange.com/questions/651/tips-for-writing-the-main-game-loop" CreationDate="2011-02-06T09:28:42.587" UserId="1156" />
  <row Id="10706" PostId="8188" Text="hi, my game will a little like a puzzle. There will be a ball, and another sprite/object. This object can be moved with a touch, and once placed i a suitable location that object should be permanent there. When i launch the ball, this ball will start to deflecting from this object to the next destination/location. Is there another method i can used for the sprite/object to be able to bounce/deflect the ball. Sorry im still new to game programming." CreationDate="2011-02-06T10:13:37.197" UserId="5198" />
  <row Id="10707" PostId="8190" Text="nice idea; though I don't think it will work as in the example given. Only hope would be to use color and shading." CreationDate="2011-02-06T11:20:27.453" UserId="3972" />
  <row Id="10708" PostId="8192" Text="Unfortunately the small Go board is 9x9. You could try with 7x7, though. " CreationDate="2011-02-06T11:21:15.923" UserId="3972" />
  <row Id="10709" PostId="8123" Text="Thank you so much for your helpful answer. It is very inspiring and encouraging. And it answered most of my questions very well." CreationDate="2011-02-06T11:50:04.507" UserId="5164" />
  <row Id="10710" PostId="8116" Text="The red3d.com link doesn't provide sources *directly*, but there's a link right on that page to OpenSteer (http://opensteer.sourceforge.net/) which is an open source implementation of steering behaviours." CreationDate="2011-02-06T12:40:15.713" UserId="20" />
  <row Id="10711" PostId="8196" Text="A scene graph is a great tool for hierarchal organisation, but not for culling or 'is this in the frustrum'. Try an octree or similar." CreationDate="2011-02-06T13:33:14.560" UserId="1156" />
  <row Id="10712" PostId="8196" Text="Hi Duck, so what is the approach then. Scene Graph is the main structure to store game objects, right? Should I have another container to store the same objects just for the purpose of fast 'in frustum' processing?" CreationDate="2011-02-06T13:58:12.350" UserId="2229" />
  <row Id="10713" PostId="8197" Text="If you are interested, i can write more detailed anwer. " CreationDate="2011-02-06T14:06:42.737" UserId="3794" />
  <row Id="10714" PostId="8197" Text="+1 for clever answer. Hi Notabene, thanks for your response. According to what you say, it is perfectly OK, if I traverse the whole scene graph during every frame, even if it has 1000 or more scene objects? Should not I try to focus somehow only on the nearest objects? I use OpenGL so, yes, I will be switching shaders. Because I am now in the middle of scene graph plannig, so if you wish to give me more information, I would be happy. Thank you." CreationDate="2011-02-06T14:13:54.570" UserId="2229" />
  <row Id="10715" PostId="8197" Text="Ok. The more complex answer would take a little time. I'll discuss it tomorow with our scene graph expert for getting more practical informations. But, yeah as far as i know: 1000 scene objects sorted by shader used and frustum tested (every object) would be fast, even much faster than just BVH/octree etc. If you want to be hardcore, you can do the frustum test using SSE - its not hard, really" CreationDate="2011-02-06T14:27:14.153" UserId="3794" />
  <row Id="10716" PostId="8197" Text="Thank you again, Notabene. You mentioned couple of teqniques, I will have to study now. However, if you don't forget to talk to your scenegraph expert tomorrow, that would be really nice. Thanks." CreationDate="2011-02-06T14:33:00.797" UserId="2229" />
  <row Id="10717" PostId="8195" Text="+1 For separating the game into layers." CreationDate="2011-02-06T15:43:14.800" UserId="2778" />
  <row Id="10718" PostId="8116" Text="Ahh didn't know that, thanks. Although, I looked at the source for OpenSteer and found it easier to look at the more obvious in your face code found in Buckland's book. Especially when starting out." CreationDate="2011-02-06T16:23:50.637" UserId="2332" />
  <row Id="10720" PostId="8199" Text="What would be your first choice in terms of a modeling tool?" CreationDate="2011-02-06T17:46:14.680" UserId="1430" />
  <row Id="10721" PostId="8188" Text="If you're using box2d, your ball should be a dynamic object. I'd recommend making a simple (static) box. ApplyLinearImpulse(..) to the ball in the direction where the box is placed and box2d should handle the ball to bounce/deflect of the box. Also, don't forget to set the 'restitution' for the ball and box." CreationDate="2011-02-06T18:45:25.583" UserId="4638" />
  <row Id="10722" PostId="8199" Score="1" Text="Collada DAE is an exchange format that most tools can output to. Its up-straight, good ole XML. " CreationDate="2011-02-06T18:48:22.073" UserId="4638" />
  <row Id="10723" PostId="8206" Text="Hi Josh, thanks for corrections." CreationDate="2011-02-06T19:54:41.680" UserId="2229" />
  <row Id="10724" PostId="8207" Text="Agreed. Code in a way that allows you to change things later. If in doubt, benchmark or profile." CreationDate="2011-02-06T19:59:31.047" UserId="4834" />
  <row Id="10725" PostId="8207" Text="@ Josh: +1 for excellent answer. What I would probably need to have is a combination of dynamic allocation, static allocation, and memory pools. However, the performance of the game will guide me in the proper mix of those three. This is clear candidate for the *Accepted Answer* for my question. However, I would like to keep the question open for a while, to see what others will contribute." CreationDate="2011-02-06T20:03:29.933" UserId="2229" />
  <row Id="10726" PostId="8192" Text="Ah!  I misread; I though 64x64 seemed a little large for what I remembered of the Meggy Jr.  Editing to fix and clarify my answer." CreationDate="2011-02-06T20:03:47.983" UserId="953" />
  <row Id="10727" PostId="8208" Score="1" Text="Step One is to accept answers.. your percentage is pretty low... it doesn't encourage others to answer your questions." CreationDate="2011-02-06T20:46:19.893" UserId="1198" />
  <row Id="10728" PostId="8190" Text="Awesomeness has been redefined" CreationDate="2011-02-06T21:16:41.937" UserId="3446" />
  <row Id="10729" PostId="8210" Text="@Duck: thanks for editing." CreationDate="2011-02-06T21:56:32.790" UserId="2229" />
  <row Id="10730" PostId="8197" Text="@Notabene, and anybody else: could you please advise, if Scene Graph itself can be a main container of gameworld objects, or if i should keep another container, say Std::Vector&lt;&gt; to keep list of dynamically allocated scene objects?" CreationDate="2011-02-06T22:00:05.407" UserId="2229" />
  <row Id="10733" PostId="8206" Text="Which language?" CreationDate="2011-02-06T22:07:27.513" UserId="1101" />
  <row Id="10734" PostId="8203" Text="-1, doesn't help answer the question." CreationDate="2011-02-06T22:09:04.440" UserId="51" />
  <row Id="10735" PostId="8213" Text="@Kylotan: +1 for nice addition. Yes, you are correct, that is a good way on managing simpler game elements such as: bullets, particles, effects. Especially for those, there would be no need to allocate memory dynamically." CreationDate="2011-02-06T22:28:22.910" UserId="2229" />
  <row Id="10736" PostId="8206" Text="@Kylotan: the language used: C++ currently developed under Windows but planned to be ported later." CreationDate="2011-02-06T23:00:19.893" UserId="2229" />
  <row Id="10737" PostId="8207" Text="+1. Excellent elaboration. The answer to almost every performance question is always &quot;profile and see&quot;. Hardware is too complex these days to reason about performance from first principles. You need data." CreationDate="2011-02-06T23:05:17.650" UserId="160" />
  <row Id="10738" PostId="8207" Text="@Munificent: thanks for your comment. So the goal is making up the game working and stalbe. There is no need to worry too much about performance in the middle of the development. It all can and will be fixed after game completion." CreationDate="2011-02-06T23:31:05.693" UserId="2229" />
  <row Id="10739" PostId="8212" Text="How would I control the speed of rotation with that example? Thanks!" CreationDate="2011-02-06T23:40:43.300" UserId="1217" />
  <row Id="10740" PostId="8212" Text="Calculate your target rotation with that. Then you can lerp to it or use something like the rotateto helper function. " CreationDate="2011-02-06T23:56:19.630" UserId="51" />
  <row Id="10741" PostId="8207" Text="I think this is an unfair representation of C#'s allocation time- for example, every C# allocation also includes a sync block, the allocation of Object, etc. In addition, the heap in C++ requires modification only when allocating and freeing, whereas C# requires collections." CreationDate="2011-02-07T00:48:50.507" UserId="4662" />
  <row Id="10742" PostId="8195" Text="Did my answer help, need any further information?" CreationDate="2011-02-07T04:00:17.323" UserId="2778" />
  <row Id="10743" PostId="7436" Text="So you used Unity for Splode? " CreationDate="2011-02-07T04:12:30.983" UserId="1910" />
  <row Id="10744" PostId="7436" Score="2" Text="Yes, we used unity. " CreationDate="2011-02-07T04:19:53.500" UserId="51" />
  <row Id="10745" PostId="8217" Score="3" Text="For cocos2d you should use `-hd` as suffix instead of `@2x`. So use `AvatarIcon-hd.png` rather than `AvatarIcon@2x.png`. Source: http://www.cocos2d-iphone.org/wiki/doku.php/prog_guide:how_to_develop_retinadisplay_games_in_cocos2d" CreationDate="2011-02-07T07:52:32.953" UserId="20" />
  <row Id="10746" PostId="8219" Text="&quot;as soon as a thread needs the result of a task, if the task is completed it can get the result, and if not it can safely remove the task from the queue and go ahead and perform that task itself&quot;. Are you talking about a task spawned by the same thread? If so, then wouldn't it make more sense if that task is executed by the thread which spawned the task itself?" CreationDate="2011-02-07T08:31:31.673" UserId="1495" />
  <row Id="10747" PostId="8216" Text="@DeadMG: +1 for good answer. So to generalize, the correct approach would be: in the beginning of development, to plan, which objects can be allocated statically. During development, to allocate dynamically only those objects that absolutely have to be allocated dynamically. At the end, to profile, and adjust possible memory allocation performance issues." CreationDate="2011-02-07T08:34:26.940" UserId="2229" />
  <row Id="10748" PostId="8063" Text="+1 Great answer, and I already learn a lot from it. That's why I hate to do that, but there is a few point which were not properly addressed. and that is most probably because I couldn't express them adequately enough. 1)Minor point, but when I was talking about platform, I was in fact talking about development platform. But you addressed this point anyway. 2) By portability, I meant re-usability, but your point on portability was in fact a point I hadn't considered, but it revealed itself quite relevant. (-&gt; continued)" CreationDate="2011-02-07T08:43:23.040" UserId="5076" />
  <row Id="10749" PostId="8063" Text="3) When addressing the multiple type of data for the same application, you didn't talk about using a combination of data storage, each having its task. But I take it I'll have to consider the role of each kind of data seperatly. 4) I heard there is other type of data storage aside from flat file, and relational database, I would like to know about them too, as pointed in the OP. Now, I will edit the OP accordingly, to reflect what I said in those comments." CreationDate="2011-02-07T08:47:14.600" UserId="5076" />
  <row Id="10750" PostId="8215" Score="1" Text="Whoa - DPaint - what a great app that was!" CreationDate="2011-02-07T09:46:45.550" UserId="1143" />
  <row Id="10751" PostId="8219" Text="i.e. the thread could, without scheduling the task, execute that task right away." CreationDate="2011-02-07T09:52:19.740" UserId="1495" />
  <row Id="10752" PostId="8198" Text="Which sounds very similar to Model View Controller." CreationDate="2011-02-07T10:32:46.523" UserId="259" />
  <row Id="10753" PostId="8009" Text="@Joris: if my answer solved your question, please mark it as valid by clicking on the &quot;flag&quot; on the left. " CreationDate="2011-02-07T10:48:41.437" UserId="1581" />
  <row Id="10754" PostId="3892" Text="@Hobo: that is *not* p2p, that **is** client/server, no matter how you call it." CreationDate="2011-02-07T12:59:15.397" UserId="2188" />
  <row Id="10755" PostId="8155" Text="@ziggystar: I disagree. While tetris is a great game, it has been ported so much &quot;everywhere&quot; that it would be kind of lame porting it somewhere else. Moreover, since he has only 8x8 pixels available, I can't imagine any sane and fun way to play Tetris under those constraints." CreationDate="2011-02-07T13:04:37.077" UserId="2188" />
  <row Id="10756" PostId="8158" Text="In 8x8? Tetris? Pacman? Even Asteroids could not fit there. I assume you thought he was talking about 64x64 instead." CreationDate="2011-02-07T13:08:56.653" UserId="2188" />
  <row Id="10757" PostId="8198" Text="To be honest, any description of abstracting interface from underlying implementation is going to sound like Model View Controller. But that's because the terminology and techniques used are the same (abstracting away from implementation details, and separating user interface from implementation). But it assumes a very simple environment. There are multiple layers here, and there are controllers in each layer. Separating the view from the model isn't enough here, you need to also separate the user interaction control from the game control." CreationDate="2011-02-07T13:30:40.567" UserId="741" />
  <row Id="10758" PostId="8191" Score="1" Text="Be specific. How does it fail? Just for triangles, just for quads, or for both? Can you give some specific test cases?" CreationDate="2011-02-07T13:31:04.647" UserId="5020" />
  <row Id="10759" PostId="766" Score="1" Text="Remove the &quot;tools&quot;.&#xA;Investing time in tools is actually storing time for later.&#xA;It brings you no &quot;gain&quot; today, but will save your ass soon." CreationDate="2011-02-07T13:43:03.800" UserId="335" />
  <row Id="10760" PostId="8130" Text="@stefan: why not both?  just because it isn't finalized yet doesn't mean that i can't work with it!" CreationDate="2011-02-07T13:49:58.133" UserId="1743" />
  <row Id="10761" PostId="8198" Text="I wonder what's so complex here, since we're moving pieces of a puzzle onto a delimited game board. The controls are gotten from the GUI, which is fact is a good way, and pass out to an abstraction layer, that is, the game controller. The game controller checks for collisions upon movement, then tells the piece to move if there no collision detected. The piece of puzzle then moves properly toward the requested direction and reveals its new position through its `Position` property getter function, so that the game controller now require the GUI to display this moved piece to that new position." CreationDate="2011-02-07T14:23:51.003" UserId="2778" />
  <row Id="10762" PostId="8222" Text="Hey Will, I really like this answer, especially because it's totally different of what I've thought of so far. Your method seems very sane, especially when also thinking of semi-transparent objects (which I've mostly just avoided so far). Building a (linked) list from your scene graph for objects to visit seems like a very good idea. And yes in XNA we have to do all of this low level stuff too :)." CreationDate="2011-02-07T15:02:10.860" UserId="5224" />
  <row Id="10763" PostId="8229" Text="Ha, my very first post and I failed.  Josh already pointed out that it might be possible to move the &quot;wind&quot; update to the shader." CreationDate="2011-02-07T16:14:10.353" UserId="5231" />
  <row Id="10765" PostId="8127" Text="See the SurfaceView class (used in JetBoy and LunarLander examples) http://developer.android.com/reference/android/view/SurfaceView.html" CreationDate="2011-02-07T16:56:45.737" UserId="3659" />
  <row Id="10766" PostId="566" Text="They might not cause memory leaks with a script, but a bad programmer can still write buggy, unmaintainable and slow code. Bad programmers shouldn't be allowed near your game. Hire designers with proven scripting experience and you'll be ok." CreationDate="2011-02-07T17:15:07.463" UserId="259" />
  <row Id="10768" PostId="8219" Score="1" Text="The point is that the thread doesn't necessarily know up front whether it would be better to run the task in parallel or not. The idea is to speculatively spark work that you will eventually need done, and if another thread finds itself idling then it can go ahead and do this work for you. If this ends up not happening by the time you need the result, you can just pull the task from the queue yourself. This scheme is for *dynamically* balancing a workload across multiple cores rather than statically." CreationDate="2011-02-07T18:09:28.327" UserId="182" />
  <row Id="10769" PostId="8215" Text="I can remember using DPaint, and I was born late 1994. Wow I feel old." CreationDate="2011-02-07T18:45:23.850" UserId="1156" />
  <row Id="10770" PostId="8159" Text="Shucks, thanks! If OP has any questions they can leave a comment on my blog too." CreationDate="2011-02-07T19:12:06.100" UserId="378" />
  <row Id="10771" PostId="8210" Text="Does anybody have an idea? I plan to use both Scene Graph to organize Game Actors/Nodes, and then Vector to perform various sortings that should be faster than sorting a multiway SceneGraph tree." CreationDate="2011-02-07T20:16:15.963" UserId="2229" />
  <row Id="10772" PostId="8235" Text="+1 @Josh: Thanks for your good tip. I am currently considering GLM (http://glm.g-truc.net/) GL Math library. I will wait to see what libraries people arlready have tried and have been proven as good." CreationDate="2011-02-07T20:28:22.263" UserId="2229" />
  <row Id="10773" PostId="8234" Text="@Josh: thanks for editing" CreationDate="2011-02-07T20:29:37.393" UserId="2229" />
  <row Id="10774" PostId="8191" Text="@Peter - It fails for quads especially when faces are exactly upright and the x/y/z values are the same. So I ended up rotating faces a little bit for the normal to be calculated exactly. I think it has something to do with the multiplies in the Newell section, they depend on either having some value. What if x/y/z is 0? you see? the entire multiply would fail and return a value of 0." CreationDate="2011-02-07T21:43:48.830" UserId="2862" />
  <row Id="10775" PostId="7337" Text="Voted up, because I find it useful." CreationDate="2011-02-07T22:33:49.097" UserId="1677" />
  <row Id="10776" PostId="8191" Text="@Jenko, those multiplies are on the RHS of a +=, so it isn't necessarily a problem if some of them are zero." CreationDate="2011-02-07T23:23:09.903" UserId="5020" />
  <row Id="10777" PostId="8237" Text="You had a good answer, which I upvoted, but accepted the other answer because it pointed out other resources to check out. Thanks for your help." CreationDate="2011-02-07T23:44:56.847" UserId="5050" />
  <row Id="10778" PostId="8240" Text="A fairly old school project of mine that was a 3month development attempt at Final Fantasy Tactics :) Uses a state machine (a few of em actually) as described above. http://sourceforge.net/projects/bpfat/" CreationDate="2011-02-08T01:46:53.943" UserId="4443" />
  <row Id="10779" PostId="8247" Score="2" Text="This probably should be on gaming.SE instead of here." CreationDate="2011-02-08T02:06:24.980" UserId="51" />
  <row Id="10780" PostId="8247" Score="1" Text="Gaming.SE's FAQ says such questions are considered off-topic there. Since I'm asking from a design/development perspective, it seems appropriate here. And, the last time I asked a similar question here, I got a lot of helpful feedback: http://gamedev.stackexchange.com/questions/5210/are-there-many-games-involving-the-manipulation-of-water" CreationDate="2011-02-08T03:21:12.200" UserId="3051" />
  <row Id="10781" PostId="8247" Text="I guess this would count as a &quot;game recommendation&quot; topic, and therefore off topic for gaming.se, you're right." CreationDate="2011-02-08T04:47:25.223" UserId="51" />
  <row Id="10782" PostId="8247" Text="I've seen one on Nick.com ... I think. Or maybe Nick Arcade?" CreationDate="2011-02-08T04:56:06.187" UserId="3637" />
  <row Id="10783" PostId="8235" Text="Id strongly recommend GLM. I use it and its &quot;awesome&quot;" CreationDate="2011-02-08T06:45:01.787" UserId="4638" />
  <row Id="10784" PostId="8250" Score="3" Text="I am afraid this question (multiple questions) is too broad and have to be spitted in multiple questions." CreationDate="2011-02-08T07:35:36.680" UserId="2721" />
  <row Id="10785" PostId="8254" Text="Could you add some information about how your assets are currently represented and handled?" CreationDate="2011-02-08T07:39:12.910" UserId="1430" />
  <row Id="10786" PostId="8245" Text="Hearing you, so I added a defence of using quadtrees for fast-moving objects to my answer :)" CreationDate="2011-02-08T07:50:56.297" UserId="4129" />
  <row Id="10787" PostId="8250" Text="I agree with Ross. You should probably edit or split this question. Also the animation part is already covered here: http://gamedev.stackexchange.com/questions/7792/how-to-learn-2d-animation" CreationDate="2011-02-08T08:23:05.473" UserId="20" />
  <row Id="10789" PostId="8185" Text="&quot;moving&quot; and &quot;static&quot; are kinda mutually exclusive, so what you need is some other kind of object if you want to move it." CreationDate="2011-02-08T08:24:50.057" UserId="4264" />
  <row Id="10790" PostId="8219" Text="ok, thanks for explaining!" CreationDate="2011-02-08T08:25:58.063" UserId="1495" />
  <row Id="10791" PostId="8235" Text="+1, I like CML a lot and would have posted that as an answer =). It does, however, depend a lot on the optimizations of the compiler, as it's generic and template based. If you're targeting a mobile device (likely as you quoted ES), some other math library may be better optimized for the target." CreationDate="2011-02-08T08:26:45.080" UserId="4264" />
  <row Id="10792" PostId="8254" Text="@josh The assets are very simple, user controls contain star-shape(s) with some animations –using storyboards- and I use canvas to contain these assets, during the game-play the assets move inside the canvas and do some actions/animations. Also, and as usual, I have other canvas for game option and game score and so on..." CreationDate="2011-02-08T09:07:10.837" UserId="5246" />
  <row Id="10793" PostId="8231" Text="did you try on http://superuser.com/ ? It would definitely be IT there." CreationDate="2011-02-08T10:24:40.833" UserId="2188" />
  <row Id="10794" PostId="8258" Score="1" Text="&quot;optimization can be evil&quot; is by far the most uselessly mutated version of his statement I've read." CreationDate="2011-02-08T11:16:00.207" UserId="744" />
  <row Id="10795" PostId="8258" Text="well I'm explaining it, that's why I found useless to quote his entire statement, which is a quite long sentence and isn't really explained... On top of that, we are talking about games, which isn't the same broader software Knuth wanted to speak about." CreationDate="2011-02-08T11:20:28.627" UserId="1829" />
  <row Id="10796" PostId="8245" Text="I'd also go with binning. Very easy to implement and efficient if done right. Here is an interesting paper with a technique using a 2D grid to hash table projection: http://www.eecs.ucf.edu/~jmesit/publications/scsc%202005.pdf" CreationDate="2011-02-08T11:26:42.433" UserId="685" />
  <row Id="10797" PostId="8251" Text="Odama's not old. :(" CreationDate="2011-02-08T11:55:40.907" UserId="744" />
  <row Id="10798" PostId="2681" Text="I actually took my answer and turned it into an article for opensource.com:&#xA;http://opensource.com/life/11/2/open-source-games-it%E2%80%99s-team-effort" CreationDate="2011-02-08T12:16:42.807" UserId="488" />
  <row Id="10799" PostId="8235" Text="Hi Brainy, Jari, thanks for your comments. I would still like to see, if there are more options with user feedback available, therefore, I wish to keep this question open for a while." CreationDate="2011-02-08T12:19:17.997" UserId="2229" />
  <row Id="10800" PostId="8235" Text="@Jari - when discussing Math Library Optimization for OpenGL ES platform, what is included? I mean, if formula and data types are properly designed what else can be done to optimize the library for ES platform? (It might be elementary question, but I do not have answer for that.)" CreationDate="2011-02-08T12:20:49.897" UserId="2229" />
  <row Id="10801" PostId="8215" Text="3d studio and 3d studio max are completely separate programs. But that's nitpicking.." CreationDate="2011-02-08T12:21:49.587" UserId="4264" />
  <row Id="10802" PostId="8215" Text="@Jari - According to it's Wikipedia entry it was a rewrite and re-name, that's not completely separated - http://en.wikipedia.org/wiki/3ds_Max#Early_history_and_releases" CreationDate="2011-02-08T12:37:00.137" UserId="4410" />
  <row Id="10803" PostId="8010" Text="can you please add some more links to this?some thing like a link which says...tetris will give info abt Arrays and some basic data structures...some thing like tht,,," CreationDate="2011-02-08T12:46:40.743" UserId="5119" />
  <row Id="10804" PostId="8215" Text="Well, if I remember correctly, max was actually built by a separate company which they acquired, but I may remember wrong. Regardless, when you &quot;rewrite and rename&quot; something, there's not much left, except marketing. And yes, I did say this is all just nitpicking." CreationDate="2011-02-08T12:46:46.227" UserId="4264" />
  <row Id="10805" PostId="8262" Text="@Jari: +1 for good answer. As I understand it, the general approach, is having a separate container of renderable meshes. Scene graph normally refers to the renderable meshes container, to take object shape information. Besides that, every scene graph node contains transformation information. Jari, having such design, I would like to know, if it is still recommended to have separate std::vector&lt;&gt; container for game nodes, say for the purpose of faster sorting, or another reasons.." CreationDate="2011-02-08T12:48:11.850" UserId="2229" />
  <row Id="10806" PostId="8235" Text="Anything can always be optimized better for the specific target platform, through the use of said platform's strengths. For instance, on modern x86, you might use SSE# instruction set instead of &quot;straight&quot; FPU." CreationDate="2011-02-08T12:48:49.643" UserId="4264" />
  <row Id="10807" PostId="8262" Score="2" Text="Depends - it may be useful to actually have several linear lists of nodes for faster processing of AI, physics, whatever. But I'd go there after I see if there's a problem otherwise." CreationDate="2011-02-08T12:53:22.773" UserId="4264" />
  <row Id="10808" PostId="8262" Text="So, to conclude, it should be acceptable for the beginning to have only one SceneGraph, that would contain all the objects in the scene. Can you advise please, if cameras, lights, triggers should be in the scene graph as well?" CreationDate="2011-02-08T13:21:56.850" UserId="2229" />
  <row Id="10809" PostId="8235" Text="Ah, now I see. Optimization requires understanding hardware advantages and strenghts of particular platform, and using them to provide faster results. Thanks." CreationDate="2011-02-08T13:27:25.373" UserId="2229" />
  <row Id="10810" PostId="8264" Text="@Nailer: +1 for good contribution. I went through the article. It discusses programming patterns, and if I understood correctly, Object Model would keep the list of objects in the scene organized in a kind of std:vector&lt;&gt; container, while ViewModel would contain the same objects organized into the Scene Graph? However, only the objects being currenty displayed would be contained in the Scene Graph?" CreationDate="2011-02-08T13:41:02.340" UserId="2229" />
  <row Id="10811" PostId="8264" Text="And what about cameras, triggers, lighs? would they be part of the scene graph as well?" CreationDate="2011-02-08T13:41:38.360" UserId="2229" />
  <row Id="10813" PostId="8252" Text="Hi, can i confirm again, the b2_kinematicBody i can used it in ccTouchesMoved right? Do i need to use any mouse node like in example tutorial http://www.raywenderlich.com/475/how-to-create-a-simple-breakout-game-with-box2d-and-cocos2d-tutorial-part-12.       Sorry im really new in Iphone SDK programming" CreationDate="2011-02-08T13:54:34.407" UserId="5198" />
  <row Id="10814" PostId="8262" Text="Everything that is affected by transformation hierarchy has to be in the scene graph, but I still would not give the scene graph the ownership, but store them elsewhere for easier (animation, physics, etc) processing. " CreationDate="2011-02-08T13:56:38.820" UserId="4264" />
  <row Id="10816" PostId="8262" Text="Understood Jari. Thanks. I will start with smaller version, and add another containers for easier processing later as needed." CreationDate="2011-02-08T14:02:29.593" UserId="2229" />
  <row Id="10818" PostId="8264" Text="@Bunkai.Satori Well, you could potensially have things in the scenegraph that aren't displayed on screen. You build up your scenegraph, then you could run a culling algorithm on the scenegraph before rendering the visible nodes. Cameras lights and triggers could exist both in the model and the viewmodel. " CreationDate="2011-02-08T14:27:56.623" UserId="1352" />
  <row Id="10819" PostId="8264" Text="@Nailer, thanks for your response. As you mentioned **culling**, how is it done in practice? is the whole scene included in the Scene Graph, or is there only the visible part? If the whole scene is in the Scene Graph, is the whole scene graph traversed per frame to send only the visible area into OpenGL/DirectX API? I doubt that the **whole** scene is send to the API on per frame basis, as the visible part is usually less than 5% from the complete scene. Alternatively, is scene graph organized somehow, to quickly retrieve the closest areas without full travelrsal on per-frame basis?" CreationDate="2011-02-08T14:35:24.447" UserId="2229" />
  <row Id="10820" PostId="8151" Score="2" Text="Sounds like you've hit the problems common in Painter's Algorithm. The &quot;common&quot; solution is to use z-buffer =). Some workarounds include using object center as sort key instead of some corner." CreationDate="2011-02-08T14:42:32.743" UserId="4264" />
  <row Id="10821" PostId="8262" Text="@Jari: as we discuss, more questions come to my mind. Should SceneGraph contain the complete GameMap organized into a scene, or should Scene Graph contain only the visible portion of the map?" CreationDate="2011-02-08T14:58:11.790" UserId="2229" />
  <row Id="10822" PostId="1013" Text="+1. I came to the same conclusion when I was developing my own DTD clone.  I tried updating the paths incrementally but the algorithm became too complex.  After spending a day on it, I switched to a full recalc on each change.  That worked, and with a few tweaks I was able to make it fast enough." CreationDate="2011-02-08T14:59:52.550" UserId="1358" />
  <row Id="10824" PostId="8210" Text="**@ All: I have one more quesion:** does SceneGraph contain the whole map, or should it contain only a map portion, say its visible area? Obvioulsly, the Scene Graph would then be continuosly updated, as the player moves over the map." CreationDate="2011-02-08T15:12:46.803" UserId="2229" />
  <row Id="10825" PostId="8246" Text="@Peter - OpenGL's version was even worse and it failed for more cases, I haven't visualised the normals by drawing arrows, but it did give me many more silly errors." CreationDate="2011-02-08T15:34:01.357" UserId="2862" />
  <row Id="10826" PostId="8195" Text="Please, either upvote and accept the answer if this has helped or tell about your problems implementing such an architecture or something, but keep us informed of your situation so that we may be of better assistance. =)" CreationDate="2011-02-08T15:56:59.337" UserId="2778" />
  <row Id="10827" PostId="8262" Text="I think you should post a new question about that." CreationDate="2011-02-08T16:05:17.133" UserId="4264" />
  <row Id="10828" PostId="8059" Text="@MattDiTrolio: Did this work for you?" CreationDate="2011-02-08T16:27:13.453" UserId="5143" />
  <row Id="10829" PostId="8128" Text="Also see http://gamedev.stackexchange.com/questions/7812/avoid-mouse-movements-in-fps-style-game" CreationDate="2011-02-08T16:32:49.200" UserId="189" />
  <row Id="10830" PostId="8262" Text="Thank's I'll do that." CreationDate="2011-02-08T16:42:16.050" UserId="2229" />
  <row Id="10831" PostId="8250" Text="-1, agreed: it would be better for everybody if you were to split this into multiple distinct questions -- you'll get more directed, detailed answers that way." CreationDate="2011-02-08T16:43:01.773" UserId="1430" />
  <row Id="10832" PostId="8182" Text="It's not perfect but you couldn't you just modify ray length based on the texture coords of the position you hit?" CreationDate="2011-02-08T18:40:24.203" UserId="3995" />
  <row Id="10833" PostId="8075" Text="`Android environments` IMO counts as a linux based Platform. I don't see why i have to get -2 count though" CreationDate="2011-02-08T18:43:59.477" UserId="3677" />
  <row Id="10834" PostId="8286" Text="@Josh Petrie - Really a great answer!" CreationDate="2011-02-08T18:54:55.590" UserId="5119" />
  <row Id="10835" PostId="8271" Text="@Matt could you please provide source code just to check out? Would be great help. Just for educational purposes." CreationDate="2011-02-08T18:59:19.027" UserId="5014" />
  <row Id="10836" PostId="8286" Text="@Josh Petrie - Really Good answer with useful links!(sry don't know how to place this comment next to your post :P)" CreationDate="2011-02-08T19:00:35.087" UserId="5119" />
  <row Id="10837" PostId="8281" Text="@Josh: +1 for excellent answer. I have read the recommended article. Basically, I wisth to use Scene Graph to update positions of linked objects (example: a set of soldiers are on a ship. As ship moves, the soldiers move with it, and guns in their hands move too). Therefore, I plan to have interface class: CGameObject, and all the objects to be put into the Scene Graph are supposed to be its part. Thank you very much for your advices." CreationDate="2011-02-08T19:04:44.133" UserId="2229" />
  <row Id="10838" PostId="8278" Text="@Josh: thanks for editing and correcting my Question." CreationDate="2011-02-08T19:05:26.520" UserId="2229" />
  <row Id="10839" PostId="8231" Text="SU's not really in scope for 3D design, sadly. Figured I'd try here, until we can eventually get http://area51.stackexchange.com/proposals/5022/3d-graphics-techniques-and-software off the ground. I noticed a few 3D questions got some traction here and thought I'd give it a go. ;)" CreationDate="2011-02-08T19:08:46.577" UserId="2536" />
  <row Id="10840" PostId="8251" Text="Agreed.  Gamecube isn't old enough for its games to be &quot;old&quot;. :)  I forgot about Odama.  That'll be a good one to reference.  Thanks for the suggestions, we'll check them out." CreationDate="2011-02-08T19:09:21.863" UserId="3051" />
  <row Id="10841" PostId="8259" Text="Oh yeah...  That game was a blast.  Thanks!" CreationDate="2011-02-08T19:09:58.087" UserId="3051" />
  <row Id="10842" PostId="8282" Text="I think CS:S has remakes of some of those maps.  I'll make sure my team and I have a series of deathmatches... for Science." CreationDate="2011-02-08T19:10:50.847" UserId="3051" />
  <row Id="10843" PostId="8280" Text="@Ray: +1 - Thank you for detailed and valuable answer. My knowledge about SceneGraphs comes from a book Game Coding Complete (http://www.amazon.com/Game-Coding-Complete-Third-McShaffry/dp/1584506806/ref=sr_1_1?ie=UTF8&amp;qid=1297192225&amp;sr=8-1). Your links are helpful, especially the Ogre's SceneNode class. Refering to your **Conclusion**, do you see a Scene Graph as a great way to update Transformations of in-game linked objects? Both, your's and Josh's answers are excellent. I think, this one has more information in it, so I am marking this one the *Accepted Answer*." CreationDate="2011-02-08T19:17:39.790" UserId="2229" />
  <row Id="10844" PostId="8182" Text="@tm1rbrt I don't hit anything, volumetric raycasting samples through volume (like 3D array) and gathering data. And i have texcoords and they are the values which i want to hash. But great idea for regular raycasting. " CreationDate="2011-02-08T19:23:24.300" UserId="3794" />
  <row Id="10845" PostId="8280" Text="@Bunkai If you think of your game objects having an Update() method where they update their vectors for their position, orientation, etc then all your scene node would have to do is render a mesh and transform it using a GetPosition() and GetOrientation() and render it to the screen. This really separates your actors logic from their rendering code which what you should really strive for." CreationDate="2011-02-08T19:30:47.423" UserId="2332" />
  <row Id="10846" PostId="8182" Score="1" Text="I solved this very easily at the end. I just shift the ray origin in a ray direction by a noise texture (if i need just one sample, i can use output texture coords for sampling noise). It is easy and working. But the question is still very interesting, though." CreationDate="2011-02-08T19:31:24.467" UserId="3794" />
  <row Id="10847" PostId="8283" Score="4" Text="I believe this artifact is called &quot;ghosting&quot; but I'm not experienced in iOS development so I don't think I could help you. Is there a difference in refresh rate on the iPad?" CreationDate="2011-02-08T19:40:08.400" UserId="2332" />
  <row Id="10848" PostId="8282" Text="I know they are in CS:S, I just don't know how easy they are to find these days. I haven't tried in a while to land one of them." CreationDate="2011-02-08T20:00:13.123" UserId="1198" />
  <row Id="10849" PostId="8286" Text="You can click the &quot;add comment&quot; link under my answer, normally, but that requires more reputation than you current have (see http://gamedev.stackexchange.com/privileges/comment). And thanks!" CreationDate="2011-02-08T20:15:14.367" UserId="1430" />
  <row Id="10850" PostId="8282" Text="Also there were several made for the Unreal Tournament series (at least, I've played 2004 but some maps said they were remakes of older versions)." CreationDate="2011-02-08T20:19:46.383" UserId="337" />
  <row Id="10851" PostId="8275" Text="I just have been doing things like this for a long time and always wondered if there's a different/better way to deal with this. I gather from all the answers/comments, what I'm doing is good. Thanks for the reply. " CreationDate="2011-02-08T20:24:18.230" UserId="4638" />
  <row Id="10852" PostId="8290" Score="3" Text="Define 'best'. Do you mean easy to use, well documented, fastest, tidiest API? Or all of them? And your title says 3D, yet you then say 2D/3D. Which?" CreationDate="2011-02-08T20:24:49.913" UserId="1156" />
  <row Id="10853" PostId="7943" Text="@mummey You might want to select best answer for people motivation answering your questions." CreationDate="2011-02-08T20:32:08.307" UserId="5014" />
  <row Id="10854" PostId="7832" Text="@Omega You might want to accept some answer to encourage people answering your questions. It is near voting buttons near answers." CreationDate="2011-02-08T20:36:30.783" UserId="5014" />
  <row Id="10855" PostId="8247" Text="There is a reddit for game recommendations. It *may* be r/gamerecommendations." CreationDate="2011-02-08T21:20:48.483" UserId="1156" />
  <row Id="10856" PostId="8295" Text="Something a little more useful might be to make a pair of value-noise 3D texture (i.e., a pure random value at each texel--instead of, say, Perlin noise), and sample them both using your 3D position. Using different scalings on the texture coordinates you can change the period of sampling one each, and that could be useful. (rereading your last comment it seems like you may have already done something like this)" CreationDate="2011-02-08T21:29:05.520" UserId="5259" />
  <row Id="10857" PostId="8296" Score="1" Text="What do you mean your main loop waits for the players input? Shouldn't the main loop be running and react to player input?" CreationDate="2011-02-08T21:41:53.517" UserId="962" />
  <row Id="10858" PostId="8271" Text="@Dvole I'm currently working on converting the code from Silverlight/C# to JavaScript using the HTML5 canvas tag.  Once I finish I plan on open sourcing the code and at that time you are more than welcome to see exactly how I've implemented this function.  If it helps to get context you can play my Space Strategy game here: [Astriarch - Ruler of the Stars](http://www.astriarch.com/)" CreationDate="2011-02-08T21:45:15.743" UserId="5251" />
  <row Id="10859" PostId="8296" Text="What kind of game are we talking about?" CreationDate="2011-02-08T21:53:19.927" UserId="1156" />
  <row Id="10860" PostId="8296" Text="The game is a simple text-based console game. The main loop is always running but when it's waiting for the user to input something into the console (Console.ReadLine()), the loop comes to a pause (no code after this line is executed until the user enters something into the console window)." CreationDate="2011-02-08T22:14:34.703" UserId="4679" />
  <row Id="10861" PostId="8294" Text="Is your triangle a surface? In which case, you may have a line of intersection between two planes." CreationDate="2011-02-08T22:25:29.343" UserId="3659" />
  <row Id="10862" PostId="8292" Text="@ChrisE: +1 for excellent question. In my opinion, this is the best answer here, let me therefore mark this one as the *Accepted Answer*. If I understood correctly, you proved that Scene Graph is not always the ultimate solution. Especially in Game Logic, do you see a Scene Graph as the correct way of updating transformation(scale, translation) of related objects? Example, a chair is on the boat, so the coordinates of the chair get updated as the boat moves? Alternatively, do you see any better solution to relative coordinates update?" CreationDate="2011-02-08T23:01:29.163" UserId="2229" />
  <row Id="10863" PostId="8300" Text="This might be a stupid question, but when you say they can easily be hacked, are you simply saving as a readable text file? Or as a proper binary file?" CreationDate="2011-02-08T23:02:32.010" UserId="2332" />
  <row Id="10864" PostId="8292" Text="@ChrisE: In addition to the above mentioned, in the case Scene Graph is used, can it itself be used as the only objects holder for the scene, or would you recommend having another container (say std::vector&lt;&gt;) besides Scene Graph?" CreationDate="2011-02-08T23:03:42.863" UserId="2229" />
  <row Id="10865" PostId="8292" Score="1" Text="I was actually in the process of suggesting just that. I would try keeping a transformation hierarchy (here, an n-ary tree where nodes have one parent and multiple children, and no children are shared between nodes) with each node containing a reference to game object. Game objects are kept in a separate, flat array (say, std::vector)." CreationDate="2011-02-08T23:05:11.740" UserId="5259" />
  <row Id="10866" PostId="8292" Text=" During the update, you can foreach over the flat list and perform game logic, and whenever relative movement occurs (say, the chair is pushed forward on the boat) you use the transform hierarchy to find the final local-to-world transform by walking up the parents of your object and concatenating their transforms. This uses the transform hierarchy for what it is best at (simplifying relative movement), and still lets you keep a convenient list of objects around." CreationDate="2011-02-08T23:10:09.240" UserId="5259" />
  <row Id="10867" PostId="8292" Text="A further improvement is to keep in each object a dirty flag and a transformation of everything above it in the transform hierarchy. The cached parent-to-world transform (that transform I just mentioned) means that for any object position updates you only have to do one matrix multiplication (the relative transform to parent with the parent-to-world transform). Every time you update the relative transform, you also update your dirty flag." CreationDate="2011-02-08T23:13:44.837" UserId="5259" />
  <row Id="10868" PostId="8292" Text="When you keep track of the flag, you can then say, prior to combining these two transforms, &quot;hey, my parent's transform is dirty. I should have it updated.&quot; What happens here is that then the parent updates its transform, which means checking its parent's (your grandparent's) transform, which might need updating, and so on and so forth. BUT, the cool thing is that this only means you recalculate your transforms as needed. Once one chair on the boat forces the boat to recalculate its transform, the other chairs can use it--without forcing a recalculation as they are each visited." CreationDate="2011-02-08T23:17:05.223" UserId="5259" />
  <row Id="10869" PostId="8292" Text="Sorry to go on for so long... another error I spotted in this is that you should store a node-to-world transform instead of a parent-to-world. THAT is what your children will look at, and what needs to be recalculated. Sorry for the confusion; you should have for each node a node-to-world and relative-to-parent transform. You could store all three, but that is not needed." CreationDate="2011-02-08T23:19:49.137" UserId="5259" />
  <row Id="10870" PostId="8303" Score="1" Text="In order to read from the Console window and also have the game loop continue running throughout I'm guessing the ReadLine() stuff will need to be done in another thread? As far as I can tell it's not possible to retreive user input without the loop halting until the user enters the text. ?? " CreationDate="2011-02-08T23:47:38.680" UserId="4679" />
  <row Id="10871" PostId="8304" Score="2" Text="Next time you can try to find something here: http://www.realtimerendering.com/intersections.html" CreationDate="2011-02-09T00:06:56.243" UserId="4947" />
  <row Id="10872" PostId="8292" Text="@ChrisE: Than you wery much for your willingness to share this valuable information with me. You are very helpful, and your advices probably put me in the right direction. Thank you, and a lot of fun on this place. I noticed, you are new here :-)" CreationDate="2011-02-09T00:07:19.207" UserId="2229" />
  <row Id="10874" PostId="8302" Score="6" Text="+1 for &quot;the client is in the hands of the enemy&quot;" CreationDate="2011-02-09T00:22:23.333" UserId="4116" />
  <row Id="10875" PostId="8300" Text="Using Flash's standard local shared objects" CreationDate="2011-02-09T02:35:34.113" UserId="5263" />
  <row Id="10876" PostId="8303" Text="If it's a console game you should use ReadLine() stuff. Have the text entered put into a Queue (make this queue thread safe). Then you can implement a normal game loop in a separate thread." CreationDate="2011-02-09T03:34:38.137" UserId="3547" />
  <row Id="10877" PostId="8311" Text="DateTime.Now is very bad performance wise (at least I've heard). I remember reading some where it can take a while to finish, something like 20 milliseconds? Anyway, using a stopwatch is far better performance wise in my opinion. Look at this: http://stackoverflow.com/questions/28637/is-datetime-now-the-best-way-to-measure-a-functions-performance" CreationDate="2011-02-09T03:40:31.610" UserId="3547" />
  <row Id="10878" PostId="8311" Text="I'm not really trying to get the time, more pass the time in such a way that players can age, plants can grow/die/breed and other time based events can occur." CreationDate="2011-02-09T03:41:56.450" UserId="4679" />
  <row Id="10879" PostId="8296" Text="Are you having trouble with how to split up the game logic or keeping track of time and reacting to it? Where are you in terms of progress and what is it exactly that your having trouble with?" CreationDate="2011-02-09T03:49:43.163" UserId="3547" />
  <row Id="10880" PostId="8302" Text="Something I'd like to add, you should try to incorporate something about the user's computer as part of the protection. That way users can't trade save files so easily. (perhaps incorporate the computer's name into the salt or something of this sort)" CreationDate="2011-02-09T03:52:10.463" UserId="3547" />
  <row Id="10881" PostId="8313" Score="3" Text="I just wanted to say you have multiple questions all mixed into one." CreationDate="2011-02-09T04:56:38.220" UserId="2946" />
  <row Id="10882" PostId="7832" Text="Forgot, haha. There, sorry." CreationDate="2011-02-09T05:41:19.400" UserId="4779" />
  <row Id="10883" PostId="8313" Text="Agreed. It's generally better if you split your questions up and ask each question on it's own. You are likely to get better answers that way." CreationDate="2011-02-09T05:51:35.553" UserId="1430" />
  <row Id="10884" PostId="8310" Score="1" Text="Seeing as this is tagged XNA, the [Reach vs HiDef profile comparison](http://blogs.msdn.com/b/shawnhar/archive/2010/03/12/reach-vs-hidef.aspx) is also worth linking." CreationDate="2011-02-09T06:16:27.500" UserId="288" />
  <row Id="10885" PostId="8311" Score="1" Text="Ah. If you're looking to trigger events at intervals, perhaps `System.Timers.Timer` is more what you're after?" CreationDate="2011-02-09T06:22:56.083" UserId="237" />
  <row Id="10887" PostId="8312" Text="in a text based console game, performance of the DateTime class should not make any difference... For other games it might, but I've never had issues with it being too slow. As for it's accuracy, I do not know.." CreationDate="2011-02-09T06:46:08.103" UserId="1198" />
  <row Id="10888" PostId="8302" Score="2" Text="@Omnion: The risk of associating with the computer is that the user may lose all their save files when they get a new machine.  Migrating data to a new computer is painful enough without that.  Probably the ideal thing, if possible, is associating the save file with a server account." CreationDate="2011-02-09T06:58:52.440" UserId="4191" />
  <row Id="10889" PostId="8168" Text="Bah, in my experience C# isn't fast enough for the simulation either, but that doesn't stop people from trying." CreationDate="2011-02-09T06:59:34.417" UserId="2162" />
  <row Id="10890" PostId="8308" Text="The link lead to form for those interested in &quot;getting your game published or distributed&quot;, but thanks anyway, I tried to contact Atari; even when these types of requests never get a reply from my experience." CreationDate="2011-02-09T07:02:06.923" UserId="2613" />
  <row Id="10891" PostId="488" Text="going to throw in http://www.humblebundle.com/ as an example, here are some awesome games that work cross platform, and as seen by the chart, about 1/3 of the people who bought it were Linux, so the whole 1% thing doesn't hold for games..." CreationDate="2011-02-09T08:29:48.360" UserId="4821" />
  <row Id="10892" PostId="8300" Text="I would suggest asking on http://security.stackexchange.com/. Though it's not a typical IT type question, development security is squarely within scope. I'm sure you'll get some good answers, though you may need to phrase the question a bit differently." CreationDate="2011-02-09T08:41:57.467" UserId="5271" />
  <row Id="10893" PostId="8302" Score="1" Text="Salt is not a secret chunk of data, while it is random it does not add authenticity, nor does it prevent tampering. Salt is only intended to &quot;randomize&quot; the hash output, such as to prevent e.g. Rainbow Table attacks." CreationDate="2011-02-09T08:43:48.807" UserId="5271" />
  <row Id="10894" PostId="8302" Text="&quot;You cannot trust the client...&quot; this part is very true." CreationDate="2011-02-09T08:44:33.750" UserId="5271" />
  <row Id="10895" PostId="8308" Text="I don't actually know where that goes, but I doubt it is anyone in our office so I don't think I can nag in person about it :-/" CreationDate="2011-02-09T08:45:13.247" UserId="395" />
  <row Id="10896" PostId="8307" Text="+1 for putting the security effort into context of benefit." CreationDate="2011-02-09T08:45:30.740" UserId="5271" />
  <row Id="10897" PostId="2259" Text="GLEW seems to be updated more frequently though." CreationDate="2011-02-09T12:37:49.893" UserId="1023" />
  <row Id="10898" PostId="8315" Score="3" Text="With GCC you can use -ffloat-store to force the values out of registers and truncate to 32/64 bits of precision, without needing to worry about other libraries messing with your control flags. Obviously, this will negatively impact your speed (but so will any other quantizing)." CreationDate="2011-02-09T12:49:05.330" UserId="744" />
  <row Id="10899" PostId="8324" Text="Thanks Scythe. I will check out Ogre. Im aware of Unity. The book I was after was something that I could read to better my understanding of the concepts in 3d game programming and the used techniques." CreationDate="2011-02-09T12:53:52.267" UserId="5266" />
  <row Id="10900" PostId="8321" Score="2" Text="I think you need to modify the first sentence: &quot;When a player collides with a wall (while they are jumping)...&quot; otherwise the player could wall jump from being stationary on the ground next to a wall, which wouldn't be expected." CreationDate="2011-02-09T13:09:32.383" UserId="1386" />
  <row Id="10901" PostId="8304" Text="Many thanks for the answer, I decided to change my strategy and do some intersection check in 2d rather than 3d, but I'm still clueless about them math?" CreationDate="2011-02-09T13:21:11.713" UserId="5260" />
  <row Id="10902" PostId="8304" Text="My new question is http://gamedev.stackexchange.com/questions/8326/triangle-rectangle-intersection-in-2d" CreationDate="2011-02-09T13:47:13.127" UserId="5260" />
  <row Id="10903" PostId="8327" Text="This question, admittedly, feels a bit subjective.  Is there a site for game designers like [programmers](http://programmers.stackexchange.com) where subjective questions about game design can be asked?" CreationDate="2011-02-09T14:14:37.113" UserId="2316" />
  <row Id="10904" PostId="8327" Text="I would say the problem with this question is that it's overly broad, not that it's subjective. Even separating out the three questions into three questions, I would consider the first too broad to be useful for anything other than water cooler discussion." CreationDate="2011-02-09T14:35:51.790" UserId="744" />
  <row Id="10905" PostId="8327" Text="@Joe, I know.  I just couldn't phrase it differently.  Let me try." CreationDate="2011-02-09T14:38:36.263" UserId="2316" />
  <row Id="10906" PostId="8324" Text="You should check out UDK, they have added iOS support, and it's a very good game engine, with loads of features. Even though the learning curve is a little steep it's well worth checking out." CreationDate="2011-02-09T14:39:16.120" UserId="2469" />
  <row Id="10907" PostId="8327" Text="@Joe (complete tangent) I see you worked on Champions Online - Michael Surbrook (Asian Bestiaries, Ninja HERO) is part of my regular gaming group.  Small world!" CreationDate="2011-02-09T14:43:45.800" UserId="2316" />
  <row Id="10908" PostId="8321" Text="@CiscoIPPhone: Yeah, thanks.  That would produce an odd change of behavior between the 100 ms after collision and later." CreationDate="2011-02-09T15:27:02.493" UserId="4191" />
  <row Id="10909" PostId="8324" Text="My thoughts on UDK is that on the artist side of things, all the tools are excellent. On the programmer's side though... not so much. Also, since you only get script access, you must know subclasses that you inherit from, making it extremely hard for the beginner. Personally, I think Unity is one of the easiest ways to get started in 3D programming." CreationDate="2011-02-09T15:48:01.593" UserId="2946" />
  <row Id="10910" PostId="8335" Text="Judging by the [likes of this question](http://gamedev.stackexchange.com/questions/7602/rts-engine-or-dota-like-game), this seems like a good fit here. I did notice [this existing similar case](http://gamedev.stackexchange.com/questions/6739/game-engine-for-turn-based-wargame), but this one is a bit more general and that one seems to be going nowhere due to the tightness of its scope. Let me know if there's any problem with this migration. ♪" CreationDate="2011-02-09T16:08:01.573" UserId="3588" />
  <row Id="10911" PostId="8331" Text="@Chaos, what do you mean by counter-dramatic?  If I include things like `Limitation: Absent-Minded` or `Animistic Senses`?  I feel like a character should not be a stack of numbers, but more like a list of adjectives and verbs?  There are already games that do the numbers game well - HERO and GURPS come to mind.  I'm looking for more abstraction in numbers, and detail in words." CreationDate="2011-02-09T16:14:16.077" UserId="2316" />
  <row Id="10912" PostId="8330" Text="would I get the coordinates of the new generated polygon from the algorithm? What would be the speed I have to perform clipping on a large number of triangles?" CreationDate="2011-02-09T16:21:05.270" UserId="5260" />
  <row Id="10913" PostId="8328" Text="I'm using a much dumber language(actionscript) and possibly I may not have the liberty of using these geometric algorithms. Possibly I might need to port them." CreationDate="2011-02-09T16:22:31.073" UserId="5260" />
  <row Id="10918" PostId="8336" Score="20" Text="+1 for making me nostalgic" CreationDate="2011-02-09T15:35:21.207" />
  <row Id="10919" PostId="8337" Text="That's not necessarily true. Even most of the games today have imprecise collision detections, but visual tricks cause you to think they are pixel-perfect. Given the amount of RAM in a SNES, I don't think pixel-perfect collision would even be possible." CreationDate="2011-02-09T15:51:39.887" UserId="5283" />
  <row Id="10920" PostId="8338" Text="I see but if you look at the picture above, the bottom right of the hill should exist out of Half-full-2 tiles. but how did they make the fence? it's somewhat diagonally but it's like the tile is split in 4 and 1/4 is free to walk in, the rest is occupied" CreationDate="2011-02-09T15:49:01.810" UserId="5282" />
  <row Id="10921" PostId="8338" Score="1" Text="It's possible they have more types of collision tiles.&#xA;Like &quot;left-half is full&quot;, &quot;top-left, top-right and bottom-left is full&quot;. Or, they have only 4 types of collision tiles but the collision grid has an 8*8 resolution, instead of 16*16" CreationDate="2011-02-09T15:53:40.727" UserId="5283" />
  <row Id="10922" PostId="8338" Text="would it be possible to make diagonally half 16x16 tile collision when using an 8x8 grid? " CreationDate="2011-02-09T15:57:24.227" UserId="5282" />
  <row Id="10923" PostId="8338" Score="1" Text="Yeah, just make an 8*8 Half-full-2 tile at (x,y) and then another Half-full-2 tile at (x+1,y+1). Possibly a Full tile at (x, y+1)" CreationDate="2011-02-09T15:59:38.970" UserId="5283" />
  <row Id="10924" PostId="8338" Text="ah ok sounds reasonable, thanks" CreationDate="2011-02-09T16:02:54.570" UserId="5282" />
  <row Id="10925" PostId="8338" Text="No problem. If you're satisfied with the answer, you should accept it :)" CreationDate="2011-02-09T16:13:25.420" UserId="5283" />
  <row Id="10926" PostId="8332" Text="Seems to be good idea! I wonder how fast is it though, any speed optimizations you can think of? I also found http://sebleedelisle.com/2009/05/super-fast-trianglerectangle-intersection-test/ and http://www.blackpawn.com/texts/pointinpoly/default.html don't know if I could build up something on these lines." CreationDate="2011-02-09T16:37:03.993" UserId="5260" />
  <row Id="10927" PostId="8332" Text="Btw are you some kind of wizard in intersection math, you also answered my 3D question didn't you?" CreationDate="2011-02-09T16:42:19.947" UserId="5260" />
  <row Id="10928" PostId="8330" Text="Not sure what you mean with &quot;coordinates of the new generated polygon&quot;... you'll get the clipped polygons. AFAIK Sutherland Hodgman is a very fast clipping algorithm but has some flaws (especially with concave polygons). But speed is relative." CreationDate="2011-02-09T16:43:59.167" UserId="20" />
  <row Id="10929" PostId="8332" Text="I'm sorry I couldn't understand the edit 2 that you posted. " CreationDate="2011-02-09T16:44:51.803" UserId="5260" />
  <row Id="10930" PostId="8330" Text="I mean I the green areas in the figure above, I needed the coordinates for those. As far as concave polygons are concerned I wonder what they mean would the triangles be considered as concave polygons?" CreationDate="2011-02-09T16:46:44.703" UserId="5260" />
  <row Id="10931" PostId="8331" Text="@Stephen Furlani: By &quot;counter-dramatic&quot; I mean undermining of the core drama of the game, the story of why one is playing it (be it only the struggle to get the most XP and gold).  I totally support the adjectives and verbs (and further submit that for many purposes, it's ideal to be able to get the general idea of a character in two adjectives and a noun).  The difficulty with relying too heavily on a large number of special-case traits, though, is that individual ability tests in your game wind up having to have a big laundry list of things they're checking -- awkward and unmaintainable." CreationDate="2011-02-09T16:52:58.900" UserId="4191" />
  <row Id="10932" PostId="8336" Score="1" Text="See also this possibly-related question: http://gamedev.stackexchange.com/questions/7305/top-down-rpg-movement-w-correction/7307#7307" CreationDate="2011-02-09T16:56:10.203" UserId="1430" />
  <row Id="10933" PostId="8330" Text="Yeah sure. You'll get all the coordinates of the polygons that are inside your rectangle. A triangle is convex, so there's no problem there. This is concave: http://en.wikipedia.org/wiki/Concave" CreationDate="2011-02-09T17:03:16.670" UserId="20" />
  <row Id="10934" PostId="8345" Text="This probably belongs on http://gamedev.stackexchange.com/ :)" CreationDate="2011-02-09T17:25:19.533" UserId="5060" />
  <row Id="10935" PostId="8346" Text="Agreed about the interface, especially if you follow the second rec and pass in the graphics object needed to draw themselves." CreationDate="2011-02-09T17:36:06.583" UserId="5259" />
  <row Id="10936" PostId="8198" Text="heh, I blogged about &quot;MVC&quot; in game development a few months ago. Yes, it's a good gateway concept for those uninitiated with game development: http://codecube.net/2010/08/xna-for-the-everyday-developer/" CreationDate="2011-02-09T17:53:00.500" UserId="163" />
  <row Id="10937" PostId="8198" Text="Thanks for your comment Joel Martinez! I shall take an eye out your article on my spare time so that I may learn more about it. =)" CreationDate="2011-02-09T18:02:35.977" UserId="2778" />
  <row Id="10938" PostId="8330" Text="Found another excellent link to the Sutherland-Hodgman http://www.sunshine2k.de/stuff/Java/SutherlandHodgman/SutherlandHodgman.html . Now I have 2 options, one by zacharmarz and the one that you suggested." CreationDate="2011-02-09T18:03:28.070" UserId="5260" />
  <row Id="10939" PostId="8013" Text="You could always check out the source code for the spritebatch (SpriteEffect) to see if it helps your understanding: http://create.msdn.com/en-US/education/catalog/sample/stock_effects" CreationDate="2011-02-09T18:11:31.560" UserId="163" />
  <row Id="10940" PostId="8330" Text="Good link, and it even comes with source-code. For line vs. rectangle clipping, consider the Cohen-Sutherland algorithm (http://en.wikipedia.org/wiki/Cohen%E2%80%93Sutherland). This is the algorithm that is being used in the source-code (from your link) to find line-rectangle intersections." CreationDate="2011-02-09T18:33:32.193" UserId="20" />
  <row Id="10941" PostId="8307" Text="@AviD Thanks :)" CreationDate="2011-02-09T18:38:19.040" UserId="4443" />
  <row Id="10942" PostId="8337" Score="8" Text="Pixel-perfect collision detection was actually far more common on NES/SNES/etc era hardware because the framebuffer, as it was, was more closely linked to the game logic, and sprites were a hardware primitive rather than one application of quad texturing. The equivalent approach today would be using occlusion queries." CreationDate="2011-02-09T18:45:24.477" UserId="744" />
  <row Id="10944" PostId="8324" Text="Great. I will have a look. Are there good 3d art resources for beginners who want to try out 3d game programming?" CreationDate="2011-02-09T19:06:21.410" UserId="5266" />
  <row Id="10945" PostId="8264" Text="Put your whole scene in the scenegraph. Balance the graph based on certain criterion(eg. you could make an oc-tree out of it). Traverse the tree and determine which nodes are &quot;Visible&quot;, &quot;Partially visible&quot; and &quot;Invisible&quot; based on if the bounding boxes are in your view frustum. You can build a super-lightweight &quot;visibility graph&quot; that basically just consists of references to SG nodes and a flag. After the frustum culling you can traverse the tree again to do occlusion culling. Redo the culling every frame, or every frame where the camera or scene has been marked as &quot;dirty&quot;." CreationDate="2011-02-09T19:19:51.550" UserId="1352" />
  <row Id="10946" PostId="8342" Text="Saw that, not sure if it's engine is in-depth enough to support a true wargame experience vs. a board/card game." CreationDate="2011-02-09T19:28:54.537" UserId="5284" />
  <row Id="10947" PostId="8328" Text="@Kevin, sorry, you didn't specify actionscript in the question." CreationDate="2011-02-09T19:31:22.320" UserId="2316" />
  <row Id="10948" PostId="8324" Score="1" Text="Check out the official Unity tutorials, especially the 3d platofrmer tutorial. It has a full blown game, with art and stuff you can experiment with." CreationDate="2011-02-09T19:32:49.683" UserId="5277" />
  <row Id="10949" PostId="8341" Text="+1 that's an answer and a half! @ChrisE thanks for the thoughts.  Are there any pen &amp; paper One-Tiered systems?  I know *Diablo* and *Dungeon Siege* are one-tiered pc games, but they are little more than hack &amp; slash... " CreationDate="2011-02-09T19:36:22.970" UserId="2316" />
  <row Id="10950" PostId="8342" Text="I swear there is a Warhammer 40,000 (the tabletop sci-fi wargame) game made with that engine. If you want to go much further, I'd probably say the best way is to get a generic RTS engine such as the 'likes of this question' Grace Note posted, and implement everything else yourself." CreationDate="2011-02-09T19:37:34.650" UserId="1156" />
  <row Id="10951" PostId="7236" Text="ccp is just a wrap for CGPointMake" CreationDate="2011-02-09T19:37:36.770" UserId="55" />
  <row Id="10952" PostId="8342" Score="1" Text="I'm downloading it now and will try that Warhammer module. Argh, can't vote you up yet." CreationDate="2011-02-09T19:46:30.420" UserId="5284" />
  <row Id="10953" PostId="8338" Text="I was planning on using Tiled to create a map for a zelda clone game, but now I am going to try and make the clone in 16x16 tiles and the collision grid layer in 8x8 tiles. Tiled doesn't support layers with different tile sizes, anyone maybe happen to know a tile map editor that does? or is my best bet to create one myself?" CreationDate="2011-02-09T20:11:56.450" UserId="5282" />
  <row Id="10954" PostId="8253" Text="I meant exactly what you said - connecting to a socket server from flash, not running Flash AS a socket sever (I never even said that to begin with..)" CreationDate="2011-02-09T20:29:17.080" UserId="3214" />
  <row Id="10955" PostId="8325" Text="Was the audio clip still loading when you first tried playing it?" CreationDate="2011-02-09T20:41:41.563" UserId="1743" />
  <row Id="10956" PostId="8350" Text="so it's a pixel-perfect collision detection with the tiles?" CreationDate="2011-02-09T20:42:51.377" UserId="4264" />
  <row Id="10957" PostId="8349" Text="I swear there has been a similar topic, but I can't find it." CreationDate="2011-02-09T21:02:40.580" UserId="1156" />
  <row Id="10958" PostId="8312" Text="It's still slow. It's just a bad practice in my opinion. But yes, it probably won't be too hurtful for a console based game." CreationDate="2011-02-09T21:33:48.813" UserId="3547" />
  <row Id="10959" PostId="8350" Score="1" Text="ok so that's for sprite collisions right? and then background collisions are presumably checked through an 8x8 collision grid on top of the 16x16 tile grid right?  that would cover about all collisions in the game right?" CreationDate="2011-02-09T22:01:09.990" UserId="5282" />
  <row Id="10960" PostId="8325" Text="I used preload=&quot;auto&quot; and actually it worked better on FF than on Chrome. " CreationDate="2011-02-09T22:12:27.287" UserId="1868" />
  <row Id="10962" PostId="8063" Text="Updated..hope this addresses your questions. :)" CreationDate="2011-02-09T22:27:40.770" UserId="5142" />
  <row Id="10963" PostId="8356" Text="This isn't really game development related, though I see you came here after receiving no response from SO after two days... Have you tried the SFML forums? http://www.sfml-dev.org/forum/" CreationDate="2011-02-09T22:30:01.483" UserId="189" />
  <row Id="10964" PostId="8360" Text="They're simple, but not that simple..." CreationDate="2011-02-09T22:56:05.420" UserId="5318" />
  <row Id="10965" PostId="8357" Text="So not trivial! thank you. And the game is actually a 2d top down (imagine like a shooter like 1942) but where the levels are canyons ...no 3d at all, and not a 3/4 view or anything." CreationDate="2011-02-09T22:59:33.347" UserId="5296" />
  <row Id="10966" PostId="8356" Text="One of the problems in debugging problems like this is that the issue can lie anywhere from passing the wrong -fexec-charset to GCC to your window manager implementing Unicode conversion incorrectly. The best approach is usually to break out a debugger and step through as much as you need to to see what failed." CreationDate="2011-02-09T23:07:24.307" UserId="744" />
  <row Id="10967" PostId="8360" Text="Think something along the lines of a vector lunar lander game." CreationDate="2011-02-09T23:12:20.417" UserId="5318" />
  <row Id="10968" PostId="8346" Score="1" Text="I agree with all the answers but offer caution on the last answer. If the game is itself event driven then this will work. If however, it is not, then the use of some kind of update loop will be needed.. To either render the new position an object has taken while you are watching it, or even to simply redraw a timer on the screen while you are trying to guess the answer to a trivia question. That's all, otherwise spot on answer! :)" CreationDate="2011-02-09T23:20:08.250" UserId="4443" />
  <row Id="10969" PostId="8324" Text="Tthe &quot;only&quot; problem with Unity is the price." CreationDate="2011-02-10T00:20:34.143" UserId="2469" />
  <row Id="10970" PostId="8363" Text="That's very strange. We had a very similar situation to this in our earlier exercises. We would spawn a Fox randomly when it ate a Tux and add it into the list from there." CreationDate="2011-02-10T00:54:14.803" UserId="5326" />
  <row Id="10971" PostId="8363" Text="OOOH. I get it. The other situation we used a for loop to iterate the list and added a new Fox based on what a particular instance of Fox did. I should have read your first paragraph more carefully. THANK YOU." CreationDate="2011-02-10T01:00:49.510" UserId="5326" />
  <row Id="10972" PostId="8363" Text="Questions that heavily involve code like this might be more suitable for SO. Anyway, I'm glad you understand the problem now." CreationDate="2011-02-10T01:07:42.747" UserId="3547" />
  <row Id="10973" PostId="8364" Text="Is the frame variable per instance or is it in the scope of all instances? (I'm not a java guy) I was wondering what he meant by exponential. (fast spawning or multiple spawning simultaneously)" CreationDate="2011-02-10T01:09:08.847" UserId="3547" />
  <row Id="10974" PostId="8364" Text="the frame variable is updated every time ENV3D advances one frame. With the amount of objects I am using in this game it's about 20-40 FPS. &#xA;&#xA;The reason it is growing exponentially is because the move() method is being called every frame for EVERY instance of Fox. The more Foxes in the ArrayList, the more will spawn when it comes time to spawn a Fox.&#xA;&#xA;From a set theory point of view, there are n elements in the list. It will grow by n elements every time it is time to spawn. nxn = n^2. " CreationDate="2011-02-10T01:15:41.623" UserId="5326" />
  <row Id="10975" PostId="8364" Text="Yes, but there is a frame field in the fox class that is updated in the move method. Anyway, I can see that you understand the problem with the code. Problem solved?" CreationDate="2011-02-10T01:38:34.103" UserId="3547" />
  <row Id="10976" PostId="8362" Score="4" Text="I removed the link to pastebin, as they tend to expire and this question would then be more difficult for others who stumble across it with a similar problem to read. Also, if one of the answers below helped you, you should mark it as the answer." CreationDate="2011-02-10T02:11:43.217" UserId="1430" />
  <row Id="10977" PostId="7551" Text="Great answer, I hope more people can add to this question since in the future I'm absolutely sure that there will be more answers. Thank you very much Koarl ( I'm a big Relic Fan btw )" CreationDate="2011-02-10T02:15:35.437" UserId="2708" />
  <row Id="10978" PostId="206" Text="@Klaim hehe nice! @D. Truly excellent answer congratulations! You know it's good when all of the points are applicable to life too." CreationDate="2011-02-10T02:45:51.970" UserId="3227" />
  <row Id="10979" PostId="8346" Text="@aioobe I agree with @James, and I think that most games will require a update/render loop. " CreationDate="2011-02-10T03:33:28.993" UserId="2620" />
  <row Id="10980" PostId="8359" Text="Why can you not create a quad and add a texture to it?" CreationDate="2011-02-10T04:53:15.760" UserId="2946" />
  <row Id="10981" PostId="8253" Text="You mentioned &quot;multi-client server socket tutorials ... handl[ing] multiple socket connections&quot;.  I read that as wanting to run a socket server inside of Flash Player.  Anyway, the article I linked also explains how to connect to a socket server in Flash." CreationDate="2011-02-10T05:08:50.540" UserId="5245" />
  <row Id="10983" PostId="8369" Text="Out of curiosity, why would you want the video to smear across the screen that way?" CreationDate="2011-02-10T07:38:08.960" UserId="1430" />
  <row Id="10984" PostId="8338" Score="1" Text="@Restart OGMO Editor supports tiles with different sizes: http://ogmoeditor.com/. The getting started tutorial explains things rather well: http://ogmoeditor.com/help/getting_started/index.html" CreationDate="2011-02-10T08:18:44.523" UserId="20" />
  <row Id="10986" PostId="8373" Text="This is a GREAT resource. Thank you." CreationDate="2011-02-10T08:43:00.750" UserId="5335" />
  <row Id="10987" PostId="8374" Text="Sorry about my naivety... but what is X48?" CreationDate="2011-02-10T08:47:21.087" UserId="5335" />
  <row Id="10989" PostId="8380" Score="1" Text="This depends a bit on the game type though." CreationDate="2011-02-10T09:32:09.203" UserId="4264" />
  <row Id="10990" PostId="8374" Score="1" Text="Basically Global Games Jam or Ludlum Dare but for students and heavily sponsored by MS. http://www.x48gamecamp.com/ I've mentored at one and would advise going." CreationDate="2011-02-10T11:26:55.723" UserId="259" />
  <row Id="10991" PostId="8322" Text="pyglet's documentation is awful" CreationDate="2011-02-10T11:50:24.030" UserId="2188" />
  <row Id="10992" PostId="8338" Text="thanks, I'll try it out." CreationDate="2011-02-10T12:40:56.117" UserId="5282" />
  <row Id="10993" PostId="8383" Score="1" Text="thanks, pretty interesting article." CreationDate="2011-02-10T12:42:39.690" UserId="5282" />
  <row Id="10994" PostId="8386" Text="Thanks for your answer. I was wondering about is not cause too much overhead if I'll use 2-3 level class hierarchy for all item? Even if it has not so much additional attribute and method (I want to keep simple)." CreationDate="2011-02-10T13:05:38.930" UserId="5293" />
  <row Id="10995" PostId="8336" Score="1" Text="I always wondered how they did the original Zelda's collision. It felt more pixel perfect than LttP's" CreationDate="2011-02-10T13:14:06.917" UserId="982" />
  <row Id="10996" PostId="8377" Text="Good point that I am talking about 2 different kinds of editors. I guess I am more interested in the more complicated editor, where I'm strictly working with meshes, and not textures." CreationDate="2011-02-10T13:23:34.100" UserId="3346" />
  <row Id="10997" PostId="8386" Text="If you want to keep the number of instances low, you could store only an identifier (created somehow from the class name) for each item in the game world, and keep single instances of the classes in some central repository. When you want to work with an item, you'd need to first fetch the instance based on the identifier." CreationDate="2011-02-10T13:52:17.530" UserId="259" />
  <row Id="10998" PostId="8357" Text="Thanks for the update.  I am using tiled map editor from mapeditor.org to build .TMX layers and load them in using andengine for android.  So I am now going to have to investigate if the code as is can handle multiple layers." CreationDate="2011-02-10T15:11:35.320" UserId="5296" />
  <row Id="10999" PostId="8382" Text="Possibly related: http://gamedev.stackexchange.com/questions/8076/learning-direct3d-9-10-or-11" CreationDate="2011-02-10T15:27:56.833" UserId="1430" />
  <row Id="11001" PostId="8382" Text="Possible duplicate of this: http://gamedev.stackexchange.com/questions/8076/learning-direct3d-9-10-or-11" CreationDate="2011-02-10T15:43:18.550" UserId="2469" />
  <row Id="11002" PostId="7410" Text="+1: Best answer here. I would even use more abstract constructs than threadpools (for example job queues and workers) if your framework allows it. It is much easier to think/program in this terms than in pure threads/locks/etc. Plus: Splitting your game in rendering, logic, etc. is nonsense, since the rendering has to wait for the logic to finish. Rather create jobs that can actually be executed in parallel (for example: Compute the AI for one npc for the next frame)." CreationDate="2011-02-10T15:45:41.867" UserId="202" />
  <row Id="11003" PostId="8395" Score="1" Text="+1 for motivated self-learner. " CreationDate="2011-02-10T16:00:20.003" UserId="259" />
  <row Id="11004" PostId="8305" Text="I don't pretend to understand the component system. Part of my confusion is trying to use it in a stateless environment and I am still thinking/building the connection between say the physics, render, and input components often mentioned in articles into parts of a framework or script. " CreationDate="2011-02-10T16:20:00.673" UserId="1186" />
  <row Id="11005" PostId="8322" Text="PyGlet is not an engine; it is an opengl framework." CreationDate="2011-02-10T16:29:38.380" UserId="1156" />
  <row Id="11006" PostId="8341" Text="I actually am not familiar with any one-tier systems for pen/paper. If I come across any, I'll let you know." CreationDate="2011-02-10T16:30:32.393" UserId="5259" />
  <row Id="11007" PostId="8378" Text="Yup, I don't know what I was thinking when I posted my answer that you are referring to -- it was blatantly wrong, so I've deleted it. Thanks for the correction :D" CreationDate="2011-02-10T16:53:18.857" UserId="1430" />
  <row Id="11008" PostId="8290" Text="Well documented would be the ideal 'best' engine for what i am looking for.&#xA;When i say 2d/3d i mean linke in soya3d it uses features from pygame in its syntax. I want a 3d Engine though." CreationDate="2011-02-10T18:12:24.540" UserId="3677" />
  <row Id="11012" PostId="8308" Text="Thanks for trying to help! I guess I'll have to pester the original Gremlin people." CreationDate="2011-02-10T21:52:57.077" UserId="2613" />
  <row Id="11013" PostId="8386" Text="I definitely would *not* enshrine the different item types as a hierarchy of classes. That's pretty heavyweight and tends to be brittle. (Does a magic sword inherit from &quot;magic&quot; or &quot;sword&quot;?)" CreationDate="2011-02-10T22:10:40.433" UserId="160" />
  <row Id="11014" PostId="8374" Score="5" Text="@James: He mentioned creating a portfolio of games and source code. He's arguing that a straight CS degree and programming games/other stuff in your spare time is better than getting only a game specific degree." CreationDate="2011-02-10T22:24:44.577" UserId="3547" />
  <row Id="11015" PostId="8381" Text="Wow that is awesome. I had no idea the game dev community at cal poly. As of right now it is on the top of my list of schools i would like to attend. Do you know anything about the admission process? Any insight to put me ahead of the admission curve." CreationDate="2011-02-10T22:38:13.553" UserId="5335" />
  <row Id="11016" PostId="8408" Text="What language is this? It looks to me like `t` is the result of `computeFaceNormals` (which returns nothing), not a triangle." CreationDate="2011-02-10T23:19:48.120" UserId="1430" />
  <row Id="11017" PostId="8408" Text="it is pseudocode : ) you're right in real code i have also &quot;return this&quot;, sorry i've edited!" CreationDate="2011-02-10T23:42:51.513" UserId="4508" />
  <row Id="11018" PostId="8409" Text="sorry english is not my first lang so mayebe i've explained ina bad way what i want.. i don't have yet vertex normals! i've edited my answer a bit, hope now i more clear" CreationDate="2011-02-10T23:51:59.800" UserId="4508" />
  <row Id="11019" PostId="8409" Text="It's okay, I understood you didn't have vertex normals. The pseudocode I provided will compute them for you by first setting each vertex's normal to (0,0,0) and then summing up the face normals for each face the vertex touches (and re-normalizing, of course)." CreationDate="2011-02-11T00:15:24.067" UserId="1430" />
  <row Id="11020" PostId="8410" Text="Good point regarding the cross product." CreationDate="2011-02-11T00:42:19.110" UserId="1430" />
  <row Id="11021" PostId="8317" Text="Design as in game design, or design as in software architecture?" CreationDate="2011-02-11T01:31:49.120" UserId="1101" />
  <row Id="11022" PostId="8411" Text="That's actually what I tried first. It did work, but the issue I had was this: I have over 2 dozen bitmaps, and I want each tile to use a different one. Otherwise I want them all to react same; same timeline animation, same custom event at the end of each animation etc. Is there a way to where I don't have to add that motion tween and event code to 20 some movie clips if it's all the same except the graphic?" CreationDate="2011-02-11T01:57:08.483" UserId="3234" />
  <row Id="11023" PostId="8381" Score="1" Text="The Cal State process is very different from the UC process (at least it was when I applied several years ago). The UC's are much more subjective, you have to write essays, etc. The Cal States are completely objective. You punch in your info (grades, work experience, etc.) it computes a score, ranks everyone who applies from top to bottom, and cuts off the list at the admission limit." CreationDate="2011-02-11T02:43:19.520" UserId="263" />
  <row Id="11024" PostId="8378" Text="I'd really advice against disabling double buffering or messing with anything in your device configuration in order to get graphical effects to work. If you want trailing, it should work because its' an integral part of your drawing algorithm, not because it's a side effect of the device configuration." CreationDate="2011-02-11T05:27:44.147" />
  <row Id="11025" PostId="8381" Text="I can't thank you enough. You have been more than helpful man." CreationDate="2011-02-11T05:30:52.900" UserId="5335" />
  <row Id="11026" PostId="8191" Text="Can you give the exact values for the polygon that fails and the results you get that are incorrect?  Does it fail for triangles at all?" CreationDate="2011-02-11T07:56:12.613" UserId="4327" />
  <row Id="11027" PostId="8411" Text="You should create a separate class for your MovieClip and write the behavior there. You can then assign the same class to all of your graphics. So the graphic will change, but all will have the same behavior (since they are the same class)." CreationDate="2011-02-11T08:08:43.107" UserId="20" />
  <row Id="11028" PostId="8378" Text="@Oscar There's nothing at all &quot;evil&quot; about selecting a graphics device setup that makes a core effect work, as long as you are aware of the trade-offs involved (and admittedly there are some fairly serious downsides to the simple, disable-the-double-buffer approach)." CreationDate="2011-02-11T08:11:31.477" UserId="288" />
  <row Id="11029" PostId="8409" Score="1" Text="You shouldn't normalize normals in this way. You should normalize after all summations in another foreach. If there is for example 10 triangles with the same normal, but last is with different (result normal should be almost equal to normal from 10 triangles), then you will have this, when summing the last one: set vertex nromal = normalize((1,0,0)+(0,0,1)) and that is (0.5,0,0.5), which is wrong. I hope that I haven't confused you." CreationDate="2011-02-11T08:22:52.840" UserId="4947" />
  <row Id="11030" PostId="4543" Score="1" Text="+1 on Design for yourself." CreationDate="2011-02-11T08:50:45.513" UserId="5368" />
  <row Id="11031" PostId="8404" Text="You're encoding just the damage an item deals. How do you handle polymorphic logic related to the damage? What if the shortsword only damages orcs or the dagger does random damage?" CreationDate="2011-02-11T08:51:59.233" UserId="259" />
  <row Id="11032" PostId="8367" Text="You really want python-ogre (http://www.python-ogre.org/) instead of the older PyOgre. Other than that, I heartily second the recommendation: python-ogre is flexible, capable and mature. " CreationDate="2011-02-11T09:01:02.043" UserId="678" />
  <row Id="11033" PostId="8322" Text="Oh boy, I was soooo wrong." CreationDate="2011-02-11T09:17:11.963" UserId="1829" />
  <row Id="11034" PostId="8419" Text="Did you compile that as debug or release build?" CreationDate="2011-02-11T13:14:24.600" UserId="20" />
  <row Id="11035" PostId="8419" Text="compile and debug it works but i m using glut.h, and glaux.h if it falls it is because you have to have them" CreationDate="2011-02-11T13:17:28.270" UserId="5374" />
  <row Id="11036" PostId="8423" Text="If you don't know, how to use Vertex buffer object (VBO), you can follow these steps: http://www.songho.ca/opengl/gl_vbo.html" CreationDate="2011-02-11T13:39:10.280" UserId="4947" />
  <row Id="11037" PostId="8423" Text="Ok thanks all of you I will check out the debuger and corect to vertex buffer object" CreationDate="2011-02-11T13:39:51.447" UserId="5374" />
  <row Id="11038" PostId="2200" Text="That link was dead Try this http://archive.gamedev.net/reference/articles/article784.asp" CreationDate="2011-02-11T13:52:29.423" UserId="1964" />
  <row Id="11039" PostId="8421" Text="Are you testing the collision once the player is on that spot and boucing it back if it collides or are you testing if the next move is a collision?" CreationDate="2011-02-11T14:37:16.370" UserId="3753" />
  <row Id="11040" PostId="8379" Score="1" Text="This is an excellent answer.  It's the game equivalent to Chekov's Gun." CreationDate="2011-02-11T14:38:46.373" UserId="2316" />
  <row Id="11041" PostId="2200" Text="Fixed, thanks @Omar." CreationDate="2011-02-11T14:44:46.060" UserId="14" />
  <row Id="11042" PostId="2194" Text="Here's my slides on AI from the course I made: http://sol.gfxile.net/gpc/05ai.pdf" CreationDate="2011-02-11T14:58:27.800" UserId="4264" />
  <row Id="11043" PostId="8427" Text="Possible duplicate: http://gamedev.stackexchange.com/questions/41/what-are-some-good-resources-for-getting-a-beginner-started-in-developing-games" CreationDate="2011-02-11T15:02:21.510" UserId="4264" />
  <row Id="11044" PostId="8386" Score="1" Text="Perhaps something more component based might be beneficial for tricky cases like munificent pointed out. (A magic sword has a sword and a magic component)" CreationDate="2011-02-11T15:38:50.583" UserId="3547" />
  <row Id="11045" PostId="8427" Text="Sorry what has blender to do with game engines? do you want to use its format?" CreationDate="2011-02-11T15:40:20.973" UserId="4210" />
  <row Id="11047" PostId="8427" Text="@Jari Komppa, yeah but i ask for a recommended road map not only resources&#xA;@PhilCK, i means developing in the BGE" CreationDate="2011-02-11T15:42:26.110" UserId="4229" />
  <row Id="11048" PostId="8404" Text="@tenpn: Well, with any other approach, you'd probably have to pass information for the weapon to know what it's attacking. Or you'd have to add some way for outside code to know these special abilities. I don't think this is a &quot;fault&quot; with the design, like munificent said, vemalsar doesn't show how there used." CreationDate="2011-02-11T15:43:46.040" UserId="3547" />
  <row Id="11049" PostId="8404" Text="+1 (in your link) I was thinking the same thing with a property bag. Items have a dictionary of properties and ItemType has another property bag (or simply overrides some of these properties)." CreationDate="2011-02-11T15:45:25.103" UserId="3547" />
  <row Id="11050" PostId="8425" Text="To downvoters: At least leave a comment, this guy is new here, so show him the rules instead of condamning him, and explain why the downvotes!" CreationDate="2011-02-11T15:49:22.040" UserId="2778" />
  <row Id="11051" PostId="8404" Text="@tenpn: Updated answer with a reply." CreationDate="2011-02-11T16:07:49.597" UserId="160" />
  <row Id="11052" PostId="8404" Text="@munificent thanks, good reply. think data-driven damage is a good aim. although doesn't your orc code make the sword damage everything *but* orcs?" CreationDate="2011-02-11T16:14:14.433" UserId="259" />
  <row Id="11053" PostId="8432" Text="+1 cause this answers the topic of the question, math is very very key to graphics programmers above all other areas of game engines." CreationDate="2011-02-11T16:36:05.070" UserId="4443" />
  <row Id="11054" PostId="8381" Text="@Bob - Sorry, one more question. I have heard recently that Cal Poly is the MIT of computer science? Does that appear to be accurate?" CreationDate="2011-02-11T16:40:36.730" UserId="5335" />
  <row Id="11055" PostId="8436" Score="1" Text="(In case you're wondering, I'm a UW grad, but I never took our graphics course.)" CreationDate="2011-02-11T17:14:59.420" UserId="5379" />
  <row Id="11056" PostId="8434" Text="@Fuu Cheers for the edit mate :)" CreationDate="2011-02-11T17:21:36.877" UserId="2332" />
  <row Id="11057" PostId="8439" Text="I'm writing my own system with shaders, not using fixed-function or anything like that." CreationDate="2011-02-11T17:52:37.300" UserId="4662" />
  <row Id="11058" PostId="8199" Text="@Josh Petrie: I don't really have any experience with modelling tools, which is why I was looking for larger support- so that I could experiment and pick a tool *after* building my model system and checking that it works." CreationDate="2011-02-11T18:16:41.163" UserId="4662" />
  <row Id="11059" PostId="8441" Text="Ok I will check it, But I will wait a litlebit for othe opinion" CreationDate="2011-02-11T18:55:50.253" UserId="5374" />
  <row Id="11060" PostId="7707" Text="@jokoon http://en.wikipedia.org/wiki/High-level_programming_language just FYI." CreationDate="2011-02-11T18:59:13.420" UserId="2332" />
  <row Id="11061" PostId="8440" Text="What language are you using? And by the sounds of what you want, Unity3D is by far the best option, however subjective that is." CreationDate="2011-02-11T19:03:09.867" UserId="1156" />
  <row Id="11062" PostId="8440" Text="dont quack red duck, i will wait for some other opinion" CreationDate="2011-02-11T19:08:23.820" UserId="5374" />
  <row Id="11063" PostId="8437" Text="Great tip, thanks!" CreationDate="2011-02-11T19:12:26.607" UserId="1910" />
  <row Id="11064" PostId="8442" Score="1" Text="Microsoft announced Official PC support for the Kinect is forthcoming.. Not an immediate answer but may be something worth waiting for." CreationDate="2011-02-11T19:25:34.323" UserId="4443" />
  <row Id="11065" PostId="7707" Text="Thanks but I know wikipedia. @joe If this were the case, why not just link him to the TIOBE index instead ? Whatever, the languages I'm talking about reflects the use of those languages." CreationDate="2011-02-11T19:42:55.427" UserId="1829" />
  <row Id="11066" PostId="8404" Text="Yeah, sorry I got the example wrong but you get the idea. The big goal here is to design something that can be data-driven because that gives you a huge productivity boost: you can tune and change stuff without having to recompile the game." CreationDate="2011-02-11T19:47:15.303" UserId="160" />
  <row Id="11067" PostId="7707" Text="Because TIOBE is unreliable and even more so when applied to a non-random subset of development." CreationDate="2011-02-11T19:54:26.133" UserId="744" />
  <row Id="11068" PostId="8432" Score="1" Text="The opengl superbible has a great chapter specifically about the maths. It's also a great book if you decide to use opengl." CreationDate="2011-02-11T19:55:03.807" UserId="122" />
  <row Id="11069" PostId="8440" Score="2" Text="No, I am just stating that Unity3D is almost certainly the best option. And you are not going to get any other options unless you have a language choice." CreationDate="2011-02-11T21:03:38.737" UserId="1156" />
  <row Id="11070" PostId="8449" Text="Problem with this is that the shading won't be recognizable when using bright colors (for example yellow)." CreationDate="2011-02-11T23:00:34.880" UserId="20" />
  <row Id="11071" PostId="8449" Text="Not sure what you mean. Black or very dark grey in the greyscale image multiplied by very bright yellow is still black or very dark yellow." CreationDate="2011-02-11T23:02:54.610" UserId="4082" />
  <row Id="11072" PostId="8449" Text="BTW, I'm sorry, I hadn't seen the &quot;probably simpler approach&quot; in your answer." CreationDate="2011-02-11T23:04:28.947" UserId="4082" />
  <row Id="11073" PostId="8450" Score="2" Text="Writer?  So quick to abandon programming. :) http://gamedev.stackexchange.com/questions/5538/what-are-the-typical-day-to-day-tasks-of-an-entry-level-games-programmer" CreationDate="2011-02-11T23:06:38.400" UserId="4604" />
  <row Id="11074" PostId="8381" Text="Heh, I hadn't heard that, but both the Computer Science and Computer Engineering departments are great and the faculty are really amazing people. Poly is a &quot;teaching university&quot; rather than a &quot;research university&quot;, so the faculty's number one priority is student learning, not churning out research papers. (Not to say there isn't research going on here, but it's not the focus.) Class sizes are small (over 30 students is rare), classes are always taught by professors (not grad students), and you can really develop relationships with the faculty, which I really like." CreationDate="2011-02-11T23:06:54.593" UserId="263" />
  <row Id="11075" PostId="8450" Text="Writing plots for video games is like writing a script for a movie (write something awesome and maybe in 3-5 years you can get someone to look at it :))... Good luck!" CreationDate="2011-02-11T23:10:08.060" UserId="4443" />
  <row Id="11076" PostId="8381" Text="In addition, they take the university motto &quot;Learn by Doing&quot; insanely seriously. Like, I thought it was just a nice motto until I got here, but it really drives everything. Theory is taught in lecture, then there's always a lab component where you actually go and build it to get your hands dirty learning not only how it works, but also where theory and practicality diverge (and they frequently do)." CreationDate="2011-02-11T23:12:59.750" UserId="263" />
  <row Id="11077" PostId="8449" Text="You're right about the multiplying. I was mixing things up. Lack of coffee I guess." CreationDate="2011-02-11T23:55:43.897" UserId="20" />
  <row Id="11078" PostId="8427" Text="@PhilCK http://en.wikipedia.org/wiki/Blender_game_engine" CreationDate="2011-02-12T01:23:58.203" UserId="14" />
  <row Id="11080" PostId="8403" Text="@MrCranky: +1 for good additional info. Hi, MrCranky, Thanks. According to what you say, it sould be well worth of considering Event Messaging system even for mobile games. However, planning should not be overlooked, and it should be very well considered where the messaging system will be used." CreationDate="2011-02-12T02:21:08.423" UserId="2229" />
  <row Id="11081" PostId="8374" Score="1" Text="Definitely this answer. I'm at NYU, where people are mostly interested in web and social media stuff, but there also ended up being a great community of people interested in games (despite NYC being a pretty awful location for game studios, we were the largest GGJ site in the country). It's all a matter of learning your fundamentals, and then seeking out like-minded people via IGDA chapter meetings or any region-specific game networking/social events. +9001 for anything like GGJ. You should be working on your own projects in addition to schoolwork anyway, so focus those efforts on games." CreationDate="2011-02-12T03:36:40.803" UserId="3656" />
  <row Id="11082" PostId="8447" Score="1" Text="This is so off-topic but I got to ask - how did you make that second image?" CreationDate="2011-02-12T04:18:26.717" UserId="2946" />
  <row Id="11083" PostId="8454" Text="+1 for stack of states. Every time I see it _not_ implemented, it becomes a pain in the ass." CreationDate="2011-02-12T06:56:10.277" UserId="2710" />
  <row Id="11087" PostId="8416" Text="As to the code you posted, I don't have time right now to go deeper into it, but at least - you only need to care about three points (and two edges). Anything more will just confuse the issue." CreationDate="2011-02-12T08:51:16.043" UserId="4264" />
  <row Id="11089" PostId="8417" Text="@JasonD - Can you see if there's anything wrong with the openGL code I posted? any idea if 3 points would be sufficient for a poly and there may be no need to use the multi-point code above?" CreationDate="2011-02-12T09:51:44.463" UserId="2862" />
  <row Id="11090" PostId="8447" Text="@DMan Photoshop for the different note images and then Illustrator to arrange stuff ;)" CreationDate="2011-02-12T10:10:41.857" UserId="20" />
  <row Id="11091" PostId="8456" Text="+1. This is also what Mat Buckland describes in his A.I book. He calls it &quot;Time sliced path planning&quot; (http://books.google.ch/books?id=gDLpyWtFacYC&amp;lpg=PP1&amp;dq=mat%20buckland&amp;hl=en&amp;pg=PA363#v=onepage&amp;q&amp;f=true). Good stuff." CreationDate="2011-02-12T10:15:28.280" UserId="20" />
  <row Id="11092" PostId="8416" Text="@Jari - thanks for the nice reply, sorry for being harsh. do i really need just 3 points? but i thought more would be helpful if its a convex polygon? sorry for being dumb about things because i'm a developer, not a mathematician, so the more you can talk to me about which piece of code to use the easier it will be for me. thanks." CreationDate="2011-02-12T10:23:11.753" UserId="2862" />
  <row Id="11093" PostId="8417" Score="1" Text="If all points lie in a plane, then 3 points are sufficient unless the three points lie along a straight line." CreationDate="2011-02-12T10:27:31.140" UserId="4327" />
  <row Id="11094" PostId="8404" Text="This was a very good answer to begin with, but the edit made it even better. I wish one could favorite answers :)" CreationDate="2011-02-12T11:05:27.363" UserId="20" />
  <row Id="11095" PostId="8447" Text="Thanks for your explanation. :)&#xA;Is it possible to do the blend into a fragment shader ? Or is it preferable to stay with the opengl blend function and render the 3 images separately ?" CreationDate="2011-02-12T11:31:34.343" UserId="1286" />
  <row Id="11096" PostId="8449" Text="Thanks for your answer, but as I'm learning opengl 3 I'd prefer to use the other method. :)" CreationDate="2011-02-12T11:35:13.230" UserId="1286" />
  <row Id="11097" PostId="8447" Text="I'm not a shader expert, but from my limited knowledge I'd say it shouldn't be a problem. Alternatively you could just pre-calculate the images you need on the CPU?" CreationDate="2011-02-12T12:04:05.810" UserId="20" />
  <row Id="11098" PostId="8416" Score="1" Text="Think of the polygon as something that's laying on an infinite plane. To know where the plane is, you just need three points. More points won't define the plane any better." CreationDate="2011-02-12T12:08:39.740" UserId="4264" />
  <row Id="11099" PostId="8454" Text="+1 for stack of states, it's the core of our framework too. It does cause some trouble when a non-top mode wants to finish (especially when upper modes need to save to a savegame, for example) but it's a very powerful idea in general." CreationDate="2011-02-12T12:26:16.367" UserId="4082" />
  <row Id="11100" PostId="8421" Text="I would recommend adding a key press check in that update function that will break the current process when you press the key. Then hit the key when the player is &quot;flickering&quot; and walk through the debugger. (pay attention to what is happening to the numbers) Try to find out what is happening to the numbers when it flickers." CreationDate="2011-02-12T13:29:33.240" UserId="3547" />
  <row Id="11101" PostId="8461" Text="I'm pretty sure it's just really really realistic." CreationDate="2011-02-12T13:45:27.043" UserId="1156" />
  <row Id="11102" PostId="8453" Score="2" Text="http://gamedev.stackexchange.com/questions/1783/game-state-stack Shameless self-question advertising, but you're likely to find great answers there." CreationDate="2011-02-12T13:49:22.027" UserId="1156" />
  <row Id="11103" PostId="8460" Text="Pygame has nothing for 3D, but it looks like you really just mean BGE, and not Pygame." CreationDate="2011-02-12T13:52:54.957" UserId="744" />
  <row Id="11104" PostId="8458" Score="1" Text="If it's a _small_ static environment." CreationDate="2011-02-12T13:57:56.477" UserId="744" />
  <row Id="11105" PostId="8461" Text="When looking at a rendering and thinking it's a photograph. The last one I've seen was a scene in 3dsmax, render time: 60 hours." CreationDate="2011-02-12T14:20:36.330" UserId="202" />
  <row Id="11106" PostId="8464" Text="What kind of numbers are you thinking about (per shard online at the same time?)" CreationDate="2011-02-12T15:00:55.890" UserId="5224" />
  <row Id="11107" PostId="8465" Text="I use Steering Behaviors (specifically Seek) in cases where there are no obstacles between the agent and its target.  Unfortunately, my environment contains things like twisting corridors, where a smarter solution is necessary." CreationDate="2011-02-12T16:06:29.637" UserId="953" />
  <row Id="11108" PostId="8466" Text="Exactly what I was going to say." CreationDate="2011-02-12T16:24:04.213" UserId="1430" />
  <row Id="11109" PostId="8447" Text="Yes, for the moment I will generate a sprite sheet with all the variations." CreationDate="2011-02-12T16:46:48.680" UserId="1286" />
  <row Id="11110" PostId="8458" Text="Depends on platform and memory available. " CreationDate="2011-02-12T16:53:00.867" UserId="1198" />
  <row Id="11111" PostId="8447" Text="@bummzack - Haha, thanks for telling me :)" CreationDate="2011-02-12T16:55:35.297" UserId="2946" />
  <row Id="11112" PostId="8464" Text="&quot;Thread-per-connection&quot; and &quot;massively multiplayer&quot; don't go together." CreationDate="2011-02-12T17:18:25.087" UserId="1101" />
  <row Id="11113" PostId="8464" Text="so what do you mean its not going to go together ?&#xA;i guess the numbers are as high as can i go with min cpu+ram" CreationDate="2011-02-12T17:33:27.790" UserId="3689" />
  <row Id="11114" PostId="8461" Text="Thanks for the responses everyone, whenever i've seen the term used its usually fit well with subjective use but looking around at various 'photorealistic' examples I just wanted to see if there was anything more to it. Im not really sure how to pick answers for questions like this so I selected Roger Perkins as that was the first in, but up votes all round as all are very helpful :) Thanks" CreationDate="2011-02-12T17:45:07.697" UserId="5399" />
  <row Id="11115" PostId="8461" Text="(My account from SO has not 'migrated' so I may not upvote yet but I will as soon as I get required rep here)" CreationDate="2011-02-12T17:45:53.170" UserId="5399" />
  <row Id="11116" PostId="8461" Text="@Dave, do you know where I can view that render?" CreationDate="2011-02-12T17:47:54.167" UserId="5399" />
  <row Id="11117" PostId="8475" Score="3" Text="Designers: http://gamedev.stackexchange.com/questions/6105/where-to-find-designers-for-independent-projects" CreationDate="2011-02-12T18:27:35.597" UserId="744" />
  <row Id="11118" PostId="8475" Score="3" Text="Artists: http://gamedev.stackexchange.com/questions/775/how-do-i-find-artists-to-work-on-my-game" CreationDate="2011-02-12T18:28:06.797" UserId="744" />
  <row Id="11119" PostId="8475" Score="3" Text="Testers: http://gamedev.stackexchange.com/questions/957/finding-testers" CreationDate="2011-02-12T18:28:35.830" UserId="744" />
  <row Id="11120" PostId="8475" Score="3" Text="Musicians: http://gamedev.stackexchange.com/questions/1045/where-is-quality-paid-game-music" CreationDate="2011-02-12T18:29:22.370" UserId="744" />
  <row Id="11121" PostId="8475" Score="3" Text="Graphic designers: http://gamedev.stackexchange.com/questions/5344/where-to-hire-graphic-designers-for-mobile-games" CreationDate="2011-02-12T18:29:49.530" UserId="744" />
  <row Id="11122" PostId="8475" Score="3" Text="&quot;Team mates&quot;, general advice: http://gamedev.stackexchange.com/questions/3214/where-to-look-for-team-mates" CreationDate="2011-02-12T18:30:11.370" UserId="744" />
  <row Id="11123" PostId="8475" Score="3" Text="And finally, most like your non-title question, programmers: http://gamedev.stackexchange.com/questions/2791/finding-other-programmers-to-help-on-a-project. " CreationDate="2011-02-12T18:30:44.337" UserId="744" />
  <row Id="11124" PostId="8473" Text="Hi and thanks for your response. But I don't understand yet how to send data to my webservice ? how to serialize the user input (here a move in my 8*8 board eg: player 1 from [0,0] to [1,1]) and then how to serialize the game state ?" CreationDate="2011-02-12T18:39:28.213" UserId="4276" />
  <row Id="11125" PostId="8473" Text="Check the two links I added. They should get you started with SOAP web services, which is probably the most simple way to get started." CreationDate="2011-02-12T18:54:32.070" UserId="1198" />
  <row Id="11126" PostId="8458" Text="@Joe, @Nate, true." CreationDate="2011-02-12T19:02:06.067" UserId="5020" />
  <row Id="11127" PostId="8474" Text="That means looping through all of the vertices and computing the distance to the circle for each. (I think) distance squared could be used to get rid of the expensive square roots, but apparently voronoi regions eliminate the need to loop over the vertices altogether. Thank you for the links though, some good reading." CreationDate="2011-02-12T19:04:09.197" UserId="1902" />
  <row Id="11128" PostId="8459" Text="indeed, now works perfect! asked yesterday, turned off the pc and now today the fonts are working" CreationDate="2011-02-12T19:31:52.103" UserId="5223" />
  <row Id="11129" PostId="8457" Text="problem solved, just like zacharmarz said" CreationDate="2011-02-12T19:32:49.140" UserId="5223" />
  <row Id="11130" PostId="8464" Text="Threads don't scale well beyond a few hundred connections. If you want to hit server concurrency &gt;500, you need single-process async networking models more like libevent." CreationDate="2011-02-12T19:33:29.703" UserId="395" />
  <row Id="11131" PostId="8476" Text="@onedayitwillmake - Thanks for the code! I'll try it out and let you know my results.." CreationDate="2011-02-12T21:13:52.347" UserId="2862" />
  <row Id="11132" PostId="2201" Text="+1 For mentioning opensteer. If you want to see some great examples of compounding very simple behaviors together to form something that looks very very complex and intricate. Checkout steering behaviors! Google, &quot;Boids&quot; and look at some cool uses. It's not quiet what you want, but it will show you that out of simplicity comes complexity " CreationDate="2011-02-12T22:09:39.253" UserId="4360" />
  <row Id="11133" PostId="8483" Text="I'd probably calculate 't' by checking that (X2-X1) is non-zero first, if it is you can use that, if it is zero though then switch to using the Y values. That'll ensure you don't run in to trouble on horizontal or vertical lines." CreationDate="2011-02-12T22:36:18.710" UserId="4410" />
  <row Id="11134" PostId="8252" Text="It might not be best to use a mousejoint to move a kinematic body. Check out this thread for a good discussion about this. http://www.cocos2d-iphone.org/forum/topic/7599" CreationDate="2011-02-12T23:02:17.050" UserId="4711" />
  <row Id="11135" PostId="8252" Text="Sorry, to answer the original question in your comment, yes you can move it in ccTouchesMoved." CreationDate="2011-02-12T23:03:48.003" UserId="4711" />
  <row Id="11136" PostId="8483" Text="That's a good point--it's probably the problem of not actually being a line segment in that case, though, as OP's choosing the xy plane for some presumably meaningful reason. But that's just speculation on a vague description." CreationDate="2011-02-12T23:10:51.260" UserId="5412" />
  <row Id="11137" PostId="8481" Score="6" Text="cancel internet, stay away from pc's and do a job which is far away from IT like gardening, waiter etc. for at least 3 month ... it clears your mind and boosts your interest again, at least it did for me" CreationDate="2011-02-13T00:11:44.233" UserId="1583" />
  <row Id="11138" PostId="8459" Text="@Zukki: A good way to thank zacharmarz shall be to upvote his answer, and click the check on the left-hand side of his answer so that you mark it as the accepted answer, that is, the answer that solved your problem. Not only will you help zacharmarz by incrementing his reputation points which is encouraging, but you will also point the evidence that zacharmarz's answer is the very solution for this problem to other GD users who should look for a similar problem as yours. I hope you will enjoy GD! =)" CreationDate="2011-02-13T00:40:46.350" UserId="2778" />
  <row Id="11139" PostId="8491" Text="Nate Bross, thanks but I forgot to update how we will only make this for computers and laptops. &#xA;&#xA;We have no plans for mobile and console development." CreationDate="2011-02-13T01:39:28.680" UserId="5413" />
  <row Id="11140" PostId="8485" Score="1" Text="related: http://gamedev.stackexchange.com/questions/7870/what-should-a-game-engine-do" CreationDate="2011-02-13T01:39:55.837" UserId="51" />
  <row Id="11141" PostId="8491" Text="I personally use XNA even though I only make games for computers and I love the way it works. You should definitely take a look at it even if you're not interested by the XBox/Windows phone support." CreationDate="2011-02-13T01:43:38.133" UserId="2111" />
  <row Id="11142" PostId="8489" Text="In all honesty the screenshot isn't showing a great deal cos of the colour of the white part. A wireframe screenshot would probably do it better justice." CreationDate="2011-02-13T02:07:41.653" UserId="2332" />
  <row Id="11143" PostId="8489" Text="Ok I will change it thank you for pointing it out" CreationDate="2011-02-13T02:08:18.813" UserId="2111" />
  <row Id="11144" PostId="8489" Text="Well when I put the wireframe it just looks like there is no problem... mmm I really don't know how to show it properly..." CreationDate="2011-02-13T02:10:15.193" UserId="2111" />
  <row Id="11145" PostId="8489" Text="What about some basic lighting? That might give it a better sense of depth." CreationDate="2011-02-13T02:17:01.753" UserId="2332" />
  <row Id="11146" PostId="8489" Text="When I enable the default lighting on the effect used when drawing the terrain, the terrain becomes really really dark and I can't hardly see the brightest parts... I guess I need to define the normals of the triangles for the lighting to work properly? I'm really new to 3D sorry..." CreationDate="2011-02-13T02:38:00.077" UserId="2111" />
  <row Id="11147" PostId="8489" Text="No worries dude, we're all here to learn :) Yeah you'll most likely need to set your normals. Have you just tried darkening the colour from white to a grey and see if that shows it slightly better?" CreationDate="2011-02-13T02:41:01.400" UserId="2332" />
  <row Id="11148" PostId="8489" Text="Actually I just called basicEffect.EnableDefaultLighting()... Am I supposed to do something else?" CreationDate="2011-02-13T02:44:01.117" UserId="2111" />
  <row Id="11149" PostId="8489" Text="As I see your code at the minute, you're using the VertexPositionColor format. So sticking in normals would probably cause a lot of work for you, which might not be worth it at the minute (Since you need to make sure all your formats are VertexPositionNormalColor - or something to that effect). A fairly naive approach you could do is take a screenshot like you have done now, take another one in wireframe mode of the same place and blend it with something like photoshop to highlight what you mean. That's all I can really think of at the moment, unless someone else has some other suggestion." CreationDate="2011-02-13T02:58:34.663" UserId="2332" />
  <row Id="11150" PostId="8489" Text="Out of interest are you using a tutorial for creating your heightmap? And if so, which one?" CreationDate="2011-02-13T02:58:59.530" UserId="2332" />
  <row Id="11151" PostId="8489" Text="Well I'm making the class by myself by following a little bit of Riemer's XNA Series 1 tutorial... But I'm not copying it. Maybe that's the problem. Well I guess I'll try to read it once again and really make my class based on his code. As for the wireframe idea I tried it but I doubt it really helps to see my problem... Basically what is wrong is that we can see the part of the hill facing the camera, but we also see the back of the hill overlapping, which makes it look like the hill is transparent." CreationDate="2011-02-13T03:07:40.070" UserId="2111" />
  <row Id="11153" PostId="8491" Text="@Bombcode: XNA can still be used for computers/laptops. Also, XNA is considered pretty easy to learn by a lot of people." CreationDate="2011-02-13T03:24:24.320" UserId="3547" />
  <row Id="11154" PostId="8488" Score="3" Text="+1: Get something concrete before you start thinking about reusable code. Often hacked together code will help you see what could be better (and lead to more reusable code)." CreationDate="2011-02-13T03:27:32.787" UserId="3547" />
  <row Id="11155" PostId="8496" Text="Plus what Steve H says." CreationDate="2011-02-13T03:42:47.653" UserId="202" />
  <row Id="11156" PostId="8497" Text="The spriteBatch thing was a stupid mistake from me. Thanks for pointing it out! :)" CreationDate="2011-02-13T03:43:32.193" UserId="2111" />
  <row Id="11157" PostId="8496" Text="Problem solved! Thank you very much. :) That's the Z-Buffer right? I think I've read about it before but I forgot to use it." CreationDate="2011-02-13T03:46:08.403" UserId="2111" />
  <row Id="11158" PostId="8459" Text="thanks, however i cant vote up yet" CreationDate="2011-02-13T06:08:30.147" UserId="5223" />
  <row Id="11159" PostId="8502" Score="4" Text="What's wrong with going on the impulse, and refactoring from there rather than suffering analysis paralysis?" CreationDate="2011-02-13T09:54:37.060" UserId="1156" />
  <row Id="11160" PostId="8502" Score="2" Text="@TheCommunistDuck Because going on impulse is the approach I've taken in all of my previous projects-- and every single one hits a wall after a few months when I find that any new feature requires monumental effort and complexity to add. Right now I spend more time rewriting my engines than I do writing the game itself, so I'm hoping that by with a little forethough and planning I'll save myself time in the long run." CreationDate="2011-02-13T09:59:49.113" UserId="5106" />
  <row Id="11161" PostId="8502" Score="1" Text="@chuzzum, good point. One thing I would recommend then is to check out the C4 engine's architecture, that is; http://www.terathon.com/c4engine/images/architecture.png It may be a lot higher-level than you need, but might give you some ideas ;-)" CreationDate="2011-02-13T10:01:38.190" UserId="1156" />
  <row Id="11162" PostId="8503" Text="What exactly is going wrong with this? It seems perfectly fine to me." CreationDate="2011-02-13T10:02:21.403" UserId="1156" />
  <row Id="11163" PostId="8502" Text="@TheCommunistDuck I got a 403 Forbidden error on that link..." CreationDate="2011-02-13T10:03:09.407" UserId="5106" />
  <row Id="11164" PostId="8502" Score="1" Text="http://i.imgur.com/81zIY.png" CreationDate="2011-02-13T10:05:48.747" UserId="1156" />
  <row Id="11165" PostId="8503" Text="@TheCommunistDuck It doesn't really come through in the examples I picked, but I do have a lot of problems with this code. The ResourceManager class is one of them, but I have  with trouble with states too-- I end up with a huge proliferation of them, and copy a lot of code. Especially in an RPG, where the player has lots of choices at any one time, you can end up with really complex state graphs. Example: casting a spell. Goes from NormalState -&gt; SelectSpellState -&gt; SelectTargetState -&gt; InvalidTargetState (if it failed) -&gt; DoSpellAnimationState -&gt; NormalState. And that's just one action." CreationDate="2011-02-13T10:13:37.583" UserId="5106" />
  <row Id="11166" PostId="8502" Text="@TheCommunistDuck That image was actually really helpful, thanks!" CreationDate="2011-02-13T10:14:17.940" UserId="5106" />
  <row Id="11167" PostId="8493" Text="XNADevelopment is a great site." CreationDate="2011-02-13T10:16:49.310" UserId="1156" />
  <row Id="11168" PostId="8508" Text="The Enginuity link was broken, and googling the articles seemed to show that they are no longer on the web. (?) The books look like good resources though, and I'm always keeping an eye out for more programming books ;)" CreationDate="2011-02-13T10:19:48.400" UserId="5106" />
  <row Id="11169" PostId="8508" Text="Also, in regards to your first comment, I'm not expecting anyone to come up with a master plan that fits every game. I just noticed, over the course of developing a few games, that common patterns do tend to come up a lot, so I wondered what other people used in their games." CreationDate="2011-02-13T10:20:53.563" UserId="5106" />
  <row Id="11170" PostId="8508" Score="1" Text="Fixed the link. " CreationDate="2011-02-13T10:23:05.527" UserId="1156" />
  <row Id="11171" PostId="8502" Score="1" Text="@chuzzum if you're hitting a brick wall then you should be using that as a learning experience. Refactoring and understanding the patterns that come out of that are the best ways to learn good design. " CreationDate="2011-02-13T10:47:41.423" UserId="51" />
  <row Id="11172" PostId="8502" Text="Also this question is kind of vague. Perhaps take one of your examples and make that a deeper question or two. " CreationDate="2011-02-13T10:48:33.420" UserId="51" />
  <row Id="11173" PostId="8507" Text="Maybe check out http://gamedev.stackexchange.com/questions/3076/keyboard-input-system-handling as well?" CreationDate="2011-02-13T10:58:50.473" UserId="1156" />
  <row Id="11174" PostId="8369" Text="It's not for a game, but rather to produce a type of graphics effect. Imagine a video of someone's head rotating. If you smear this video and clip it so that one half of the video is not drawn, you will plot an image of their head 'unwrapped' so to speak. Then take a screenshot and paste into photoshop to use elsewhere. I guess it might be a way to make a texture map of someone's head, game-wise." CreationDate="2011-02-13T11:20:31.270" UserId="3188" />
  <row Id="11175" PostId="8504" Text="Probably best to separate out your two questions into two different questions." CreationDate="2011-02-13T11:35:47.850" UserId="288" />
  <row Id="11176" PostId="8472" Text="What do you want to compute? Voronoi diagram or circle - convex polygon intersection test? What do you need to compute? Just bool (intersect x not intersect) or something more presice (points of intersection)?" CreationDate="2011-02-13T12:16:51.073" UserId="4947" />
  <row Id="11177" PostId="8481" Score="2" Text="Is this really game-dev related? Maybe try http://programmers.stackexchange.com/ ?" CreationDate="2011-02-13T14:08:42.960" UserId="165" />
  <row Id="11178" PostId="8512" Score="1" Text="Made the question clearer." CreationDate="2011-02-13T14:18:04.227" UserId="1156" />
  <row Id="11179" PostId="8491" Text="I second XNA.  All of the tools can be gotten from Microsoft for free, it targets computers just fine, it supports local multi-player, and it supports networked multi-player." CreationDate="2011-02-13T14:47:10.377" UserId="5415" />
  <row Id="11180" PostId="8508" Text="+1 for enginuity. @chuzzum Just examine a couple of game engines, let them inspire you and derive the optimal architecture for yourself. Plus: It is often better to make your game engine component based than hierarchical, see http://cowboyprogramming.com/2007/01/05/evolve-your-heirachy/" CreationDate="2011-02-13T15:02:00.490" UserId="202" />
  <row Id="11181" PostId="8481" Text="Creativity is not programming specific. Some would argue quite the opposite, in fact. (I am not such a person.)" CreationDate="2011-02-13T15:09:36.317" UserId="1101" />
  <row Id="11182" PostId="8508" Text="I wouldn't say that it's the **engine** that needs to be aggregated, more the entity framework part." CreationDate="2011-02-13T15:12:58.137" UserId="1156" />
  <row Id="11183" PostId="8518" Text="I'm use free :/" CreationDate="2011-02-13T16:31:24.943" UserId="4828" />
  <row Id="11184" PostId="8518" Text="Why can't you just script it?" CreationDate="2011-02-13T16:41:20.283" UserId="1156" />
  <row Id="11185" PostId="8504" Text="Agreed; you should ask the second question separately as it is entirely different rather than a kind of subquestion. See here: http://meta.gamedev.stackexchange.com/questions/385/how-should-multiple-questions-in-one-be-handled" CreationDate="2011-02-13T16:46:19.967" UserId="1430" />
  <row Id="11186" PostId="8518" Text="I want to generate map with prefabs, and add something with mouse in editor:/ Mayby I will thing about script all ;)" CreationDate="2011-02-13T16:52:23.577" UserId="4828" />
  <row Id="11187" PostId="8485" Score="1" Text="This: http://scientificninja.com/blog/write-games-not-engines describes, roughly, my thoughts on how an engine should come into being. As others have implied, it's largely from extracting the reusable components of games as you finish them and move on to the next project." CreationDate="2011-02-13T16:53:13.077" UserId="1430" />
  <row Id="11188" PostId="8478" Text="There's a lot i could do with my cost function - so I'll go work on that. As for caching - there might be more then one ai opponent. In this case I think I'd have to share the calculations between them. I have to think some more on the subject :) Thanks!" CreationDate="2011-02-13T17:38:59.743" UserId="1693" />
  <row Id="11189" PostId="8512" Text="I really don't see why Minecraft has anything to do with it." CreationDate="2011-02-13T18:08:34.593" UserId="1156" />
  <row Id="11190" PostId="8493" Text="Thank you that site actualy was what I was looking for.  Now that I got an understanding and it works the way I want it too I can deal with gravity and what not." CreationDate="2011-02-13T18:42:38.340" UserId="5414" />
  <row Id="11192" PostId="8512" Score="5" Text="Minecraft somewhat &quot;legitimized&quot; Java as a game programming language in some peoples' eyes as it was probably one of the first ones that was highly successful." CreationDate="2011-02-13T19:40:20.713" UserId="51" />
  <row Id="11194" PostId="8471" Text="related: http://gamedev.stackexchange.com/questions/489/effective-marketing-strategies-for-independent-game-projects" CreationDate="2011-02-13T22:08:41.667" UserId="51" />
  <row Id="11195" PostId="8471" Text="also, pretty much identical dupe: http://gamedev.stackexchange.com/questions/7969/what-are-effective-marketing-strategies-for-iphone-games" CreationDate="2011-02-13T22:10:23.630" UserId="51" />
  <row Id="11196" PostId="8527" Text="Yes, but outside of Android, its use and scope is somewhat small, as @ZorbaTHut points out." CreationDate="2011-02-14T00:18:16.713" UserId="1198" />
  <row Id="11197" PostId="8527" Text="Maybe so, but I only wish to inform user3689 that mobile game development with Android is an option to indie developers. " CreationDate="2011-02-14T01:05:12.207" UserId="3659" />
  <row Id="11198" PostId="8510" Score="1" Text="+1 - Thanks for the code! Who downvoted this? you have a problem with code? his snippet is functional .... cross product of the 2 vectors normalised." CreationDate="2011-02-14T01:21:20.977" UserId="2862" />
  <row Id="11199" PostId="8535" Score="3" Text="A screenshot or two might help give suggestions.." CreationDate="2011-02-14T10:30:17.147" UserId="4264" />
  <row Id="11200" PostId="8376" Text="This turned out to be the working answer. You need to get the back buffer data and then draw it back onto the screen before drawing anything else." CreationDate="2011-02-14T10:51:33.710" UserId="3188" />
  <row Id="11201" PostId="8369" Text=".. And see my avatar for the effect :)" CreationDate="2011-02-14T10:51:50.700" UserId="3188" />
  <row Id="11202" PostId="8512" Score="6" Text="@Tetrad, only people who were ignorant of Java usage in the games industry. I don't think Minecraft has yet made even a significant fraction of what RuneScape had already made 10 years ago." CreationDate="2011-02-14T10:51:59.243" UserId="5020" />
  <row Id="11203" PostId="8533" Score="1" Text="Perfect answer. Thanks" CreationDate="2011-02-14T11:23:11.047" UserId="3794" />
  <row Id="11204" PostId="8540" Text="Also, in some cases heavy calculations might exceed the allowed time for one physics time step(eg. collision detection and path planning). In these cases you can jump out of the calculations when the allotted time has been used and continue the calculation next frame." CreationDate="2011-02-14T11:46:03.867" UserId="1352" />
  <row Id="11205" PostId="8535" Score="2" Text="is this 3d or 2d?" CreationDate="2011-02-14T12:56:36.473" UserId="1923" />
  <row Id="11206" PostId="8533" Text="Agreed! Thank you for explaining and the suggestions, what I read makes alot more sense now. Thanks also for the NVidia presentation, im just reading it now and its very helpful." CreationDate="2011-02-14T12:59:51.043" UserId="5399" />
  <row Id="11207" PostId="8538" Text="+1 for speed lines" CreationDate="2011-02-14T13:17:26.097" UserId="5368" />
  <row Id="11208" PostId="8481" Score="1" Text="@Kylotan, and it's clearly not game-development specific either... Based on the generic question, the OP could be an ad-writer burned out after the Superbowl :) . Basically, it's a *[Boat Question](http://meta.stackoverflow.com/questions/14470/what-is-the-boat-programming-meme-about)*." CreationDate="2011-02-14T14:02:01.487" UserId="165" />
  <row Id="11209" PostId="8546" Text="Any of this help? Google returns very little, this is about all I see. http://answers.unity3d.com/questions/1920/unity-communication-with-browser-problem" CreationDate="2011-02-14T14:12:43.250" UserId="189" />
  <row Id="11210" PostId="8546" Text="In fact you may want to try asking this same question over there and see if they can help you. http://answers.unity3d.com/" CreationDate="2011-02-14T14:13:17.103" UserId="189" />
  <row Id="11211" PostId="8481" Text="To be fair, lots of questions could fall into the &quot;not gamedev specific&quot; category. Animation, audio, rendering, networking, pretty much any game development question could equally apply to simulations, or music software, or web apps, or any number of things. This one here is certainly a vague question but it's still very pertinent to most of us - creativity is a far more relevant issue to most game developers than being able to program on a boat is!" CreationDate="2011-02-14T14:24:17.090" UserId="1101" />
  <row Id="11212" PostId="8541" Score="1" Text="easily implemented and very effective" CreationDate="2011-02-14T14:39:22.157" UserId="202" />
  <row Id="11213" PostId="8548" Score="6" Text="The point of C++ and OOP is object re-use.  Unity is a prime example of that, and of cross-platform portability.  They offer all the tools you need to launch a game on XBox or the iPhone or the Wii.  Are you seriously telling me you'd rather re-write all of that in C++ from scratch?" CreationDate="2011-02-14T14:41:15.143" UserId="2316" />
  <row Id="11214" PostId="8548" Text="Absolutely not, that's not what I want to say. I'm just saying I'm not liking the garbage collected languages it is shipped with, and also the fact that you can't change the code since it's proprietary: you can't tweak it as much as you can tweak another existing engine. Your point is valid, but if I follow you, companies can also reuse their previous engine instead of just switching to Unity. With Unity, you stick to something you can't really change, that's always the biggest downer to me when I think of such tools: A proprietary engine doesn't have that problem." CreationDate="2011-02-14T14:59:50.790" UserId="1829" />
  <row Id="11215" PostId="8549" Text="You could also implement something along these lines in other OOP languages. Imagine some sort of an `Action` class and a queue of actions to perform. When an action is complete, remove it from the queue and perform the next action etc. Way more flexible than a state-machine." CreationDate="2011-02-14T15:12:09.660" UserId="20" />
  <row Id="11216" PostId="8549" Score="2" Text="That works, but then you're looking at deriving from Action for every single unique action. It also assumes that your process fits into a queue nicely - if you want branching or loops with undefined end conditions, the queue solution breaks down quickly. It's certainly cleaner than the state machine approach, but I think coroutines still trump it on readability :)" CreationDate="2011-02-14T15:29:21.410" UserId="323" />
  <row Id="11217" PostId="8549" Text="True, but for the Tetris example it should be sufficient :)" CreationDate="2011-02-14T15:40:27.390" UserId="20" />
  <row Id="11218" PostId="8548" Score="2" Text="Well you *can* change Unity assuming you get a source license (which is expensive, like most other professional source licenses).  It also gets updated pretty frequently so it's not really static in terms of feature set." CreationDate="2011-02-14T15:46:05.530" UserId="51" />
  <row Id="11219" PostId="8551" Text="Gameforge and BigPoint are world-leading companies and they use Unity :)" CreationDate="2011-02-14T16:09:45.057" UserId="2063" />
  <row Id="11220" PostId="3790" Text="way better than Minecraft." CreationDate="2011-02-14T16:12:42.667" UserId="2734" />
  <row Id="11221" PostId="8524" Text="Interesting... I'll try this.  The Texture2D class I'm using is the old one from Apple sample code... and the Cocos2D Texture2D is based on this same code." CreationDate="2011-02-14T16:22:16.273" UserId="1021" />
  <row Id="11223" PostId="8557" Text="or work with Ogre3d !" CreationDate="2011-02-14T16:28:49.393" UserId="1829" />
  <row Id="11224" PostId="8515" Score="2" Text="So, instead of parroting common complains about java, please give links that support your position. In my experience, Java's efficiency is more than sufficient (say, using a good toolkit such as Xith3D or Ardor or somesuch) for almost any indie-caliber game. One overview of these myths is [link](http://www.ibm.com/developerworks/java/library/j-jtp09275.html?ca=dgr-jw22JavaUrbanLegends) or even from Stackoverflow [link](http://stackoverflow.com/questions/145110/c-performance-vs-java-c)." CreationDate="2011-02-14T16:36:06.537" UserId="5259" />
  <row Id="11225" PostId="8515" Text="Running Java isn't difficult, and getting Java to bundle as a standalone app is probably as hard as making sure your user has the necessary support environment for any other language (see exej, jexepack, etc.). Why are you judging Java on its past &quot;growing pains&quot;? By that logic, C++ is probably a terrible choice for our industry." CreationDate="2011-02-14T16:38:30.293" UserId="5259" />
  <row Id="11226" PostId="8557" Text="The last time I work with Ogre3D was long ago; I think it requires more work than Unity3D to get a game up, and it is a good middle-ground to get a peek at how the under-the-hood stuff work. " CreationDate="2011-02-14T16:47:09.267" UserId="2132" />
  <row Id="11227" PostId="8499" Score="2" Text="+1 for the very well thought out answer.  I especially like the first part, although you may wish to add 5% suffering and 5% tears... :)" CreationDate="2011-02-14T16:51:55.223" UserId="4604" />
  <row Id="11228" PostId="8549" Text="Co-routines rock- but Lua as a language sucks in so many other ways, I just can't recommend it." CreationDate="2011-02-14T16:55:55.720" UserId="4662" />
  <row Id="11229" PostId="8515" Score="1" Text="'Does everything in a mediocre fashion?'  Because of this statement I don't really believe you have ever written or deployed any Java code, and are probably not in the best position to issue such sweeping conclusions." CreationDate="2011-02-14T16:56:17.557" UserId="4604" />
  <row Id="11230" PostId="8515" Text="Did you actually read my post? Java does almost everything adequately, but it does nothing particularly well. I'm not saying it's a bad language, but people tend to focus on the languages that are very good. Java just doesn't stand out in any fashion. It's not superfast, it's not supereasy, it's not supercompatible, it's not supercontrollable, it doesn't have amazing access to third-party libraries. It's a solid B. Solid B's don't win." CreationDate="2011-02-14T16:57:18.163" UserId="323" />
  <row Id="11231" PostId="8515" Score="1" Text="Java is probably as fast as you need it to be, really easy to code if you've ever tried, and deploys to PC / Linux / Mac with almost no trouble." CreationDate="2011-02-14T17:00:05.010" UserId="4604" />
  <row Id="11232" PostId="8515" Text="As far as not being supercontrollable, that is a decision you make when you spec your game. If it needs it, don't use it. If it doesn't need such fine-grained control, use it. Regarding third party libraries... the Java 6 API is massive and implements a lot you would *need* third party libraries for in another language, especially C++ (which I use all the time). There are several libraries out there to help fill the gap, such as the ones @ChrisE mentioned." CreationDate="2011-02-14T17:02:46.240" UserId="4604" />
  <row Id="11233" PostId="8555" Text="clarification: Do you mean that Unity Pro's license is worth it compared to plain old Unity? Your comment was a little unclear to me." CreationDate="2011-02-14T17:09:19.017" UserId="2787" />
  <row Id="11234" PostId="8555" Score="4" Text="I've not used the free one, just that the $1500/seat license is dirt cheap compared to other commercial engine licenses." CreationDate="2011-02-14T17:11:40.190" UserId="51" />
  <row Id="11235" PostId="8551" Score="1" Text="+1 for being a very good answer. Learning -a- game engine is a very very important thing for schools to do because 99% of the time you will not be making one from scratch. Being able to dive into an existing engine and recognize the parts of it, discern the data flow and such are all very key things. As mentioned above, the language does not matter despite it being C/C++ 99% of the time, but being able to understand the engine, or more generally just someone else's code, is an invaluable skill in any programming field... especially the time critical high stress word that is video games :)" CreationDate="2011-02-14T17:18:44.467" UserId="4443" />
  <row Id="11236" PostId="8556" Text="I think a lot of games that are using cocos2d for iPhone are actually written in Obj-C, since the framework is also written in Objective-C." CreationDate="2011-02-14T17:41:26.180" UserId="20" />
  <row Id="11237" PostId="8481" Text="@Kylotan, I suppose... The other problem I have with the question is that **it has no single correct answer** (although you'll probably get the checkmark :) . I would be less concerned if it were CW, I suspect. In any case, mine is the only downvote, so clearly you're correct. :^ " CreationDate="2011-02-14T19:08:12.023" UserId="165" />
  <row Id="11238" PostId="8535" Text="player perspective would be very helpful" CreationDate="2011-02-14T20:12:20.093" UserId="303" />
  <row Id="11239" PostId="8538" Text="+1 for jitter.  I am seeing the spaceship shake and shudder from the sheer power being created." CreationDate="2011-02-14T20:13:31.077" UserId="3830" />
  <row Id="11240" PostId="8557" Text="+1 on this one.  You can't prefer C/C++ and Unity per se because it's an apples and oranges thing.  What you can prefer though is the idea of working at the lower level of development provided by C/C++, or the higher level development that Unit allows." CreationDate="2011-02-14T20:14:47.033" UserId="3830" />
  <row Id="11241" PostId="8565" Text="Thanks! I've already looked at devmaster.net, I was just wondering if anyone really experienced had any suggestions." CreationDate="2011-02-14T20:21:04.730" UserId="5446" />
  <row Id="11242" PostId="8564" Score="3" Text="It's probably better if you either break this question up or edit it to be a bit more specific." CreationDate="2011-02-14T20:41:26.090" UserId="2787" />
  <row Id="11243" PostId="8561" Text="This is the answer i was waiting for to +1 :]" CreationDate="2011-02-14T21:07:15.297" UserId="3794" />
  <row Id="11244" PostId="3790" Text="Apples and oranges. I enjoy both of them. :)" CreationDate="2011-02-14T21:31:19.227" UserId="189" />
  <row Id="11245" PostId="8564" Text="-1 vague, broad, and seems to be something of 'I need a programmer for my project'." CreationDate="2011-02-14T21:46:06.997" UserId="1156" />
  <row Id="11246" PostId="7969" Text="Even if the OP (what does that mean anyway?) has accepted an answer please keep them coming. I'm hoping for many insights from you." CreationDate="2011-02-14T21:50:21.703" UserId="202" />
  <row Id="11247" PostId="8515" Text="Java has less third-party library support and is slower and less precise than C++, harder to code than Lua or Python, and is more difficult to run on enduser computers than either of those. Once again, I'm not saying it's a bad language at all, and I don't know why you're getting so indignant over this. All I'm saying is that it doesn't stand out in any particular way. It's capable but unexciting, and people tend to not code games in Java mostly because people don't code games in Java. It just doesn't have the network effects that the other languages more popular for games do." CreationDate="2011-02-14T22:14:30.193" UserId="323" />
  <row Id="11248" PostId="8572" Score="1" Text="related: http://gamedev.stackexchange.com/questions/371/is-it-reasonable-to-write-a-game-engine-in-c" CreationDate="2011-02-14T22:37:39.617" UserId="51" />
  <row Id="11249" PostId="8573" Text="Hey, thanks for clearing my doubt. Now, I can go ahead. I will be writing the game in C for now and next sam, when we learn C++, a better one in that." CreationDate="2011-02-14T22:43:23.197" UserId="5450" />
  <row Id="11250" PostId="8574" Text="Thanks for quick answer." CreationDate="2011-02-14T22:50:16.380" UserId="5450" />
  <row Id="11251" PostId="8568" Score="1" Text="What is the format of your FBO? RGBA_8888, RGBA_5551, RGB_888 or RGB_565. If you use RGB_565 or RGB_888, alpha component is always equal to 1.0." CreationDate="2011-02-14T22:59:40.387" UserId="721" />
  <row Id="11252" PostId="8579" Text="See this question: http://gamedev.stackexchange.com/questions/4157/what-are-some-programming-design-patterns-that-are-useful-in-game-development" CreationDate="2011-02-15T01:17:38.627" UserId="2332" />
  <row Id="11253" PostId="8549" Text="As long as you only need to yield at the top level (and not from a nested function call), you can accomplish the same thing in C#, but yes, Lua coroutines rock." CreationDate="2011-02-15T01:29:26.663" UserId="160" />
  <row Id="11255" PostId="8378" Text="@Andrew It depends. Usually the behavior of side effects of certain device configurations are not standard across vendors, devices and even driver versions. So you're risking a great deal in portability. The trade-offs are usually unknown and unpredictable, so unless you're doing a prototype, or you can guarantee a specific hardware model/driver version (such as for console or arcade development), I'd strongly advice against side-effect programming. This site has a nice explanation with an example: http://webster.cs.ucr.edu/AoA/Windows/HTML/IntroductionToProcedures4.html" CreationDate="2011-02-15T02:53:05.380" />
  <row Id="11256" PostId="1786" Text="@RCIX &amp; @Joe - Necro powers ACTIVATE. Anyway, Scheme *is* used as a teaching language. [SICP](http://mitpress.mit.edu/sicp/) is something like half a CS degree in one book and is used by a bunch of schools (including MIT until recently), and [HTDP](http://www.htdp.org/) is a less hardcore introduction." CreationDate="2011-02-15T04:03:24.630" UserId="5130" />
  <row Id="11257" PostId="8476" Text="Did you have any luck?" CreationDate="2011-02-15T05:24:05.627" UserId="4360" />
  <row Id="11258" PostId="8506" Text="+1 for your first suggestion. The &quot;best language&quot; is the one you'll be most productive in, and that answer can be different for everybody." CreationDate="2011-02-15T05:47:34.757" UserId="263" />
  <row Id="11260" PostId="8378" Text="Treating a buffer as a single buffer by configuring it as single buffer is *clearly* not a &quot;side-effect&quot;. Don't be stupid. But this whole thing is moot - because it looks like you can't actually disable double-buffering in XNA anyway." CreationDate="2011-02-15T07:17:53.770" UserId="288" />
  <row Id="11261" PostId="8491" Text="Problem with XNA is that it just runs on Windows. Won't run on OSX or Linux, since Mono.XNA isn't there yet." CreationDate="2011-02-15T07:32:52.953" UserId="20" />
  <row Id="11262" PostId="8545" Score="2" Text="+1 for camera shake. That's really easy to implement and has a huge impact." CreationDate="2011-02-15T07:45:46.637" UserId="160" />
  <row Id="11265" PostId="8549" Text="+1 for &quot;I hate FSMs&quot;. By the way, there are coroutines in C#, they're just called generator blocks (-8" CreationDate="2011-02-15T09:03:50.690" UserId="2710" />
  <row Id="11267" PostId="8541" Score="1" Text="but make it optional, some games really overdo it" CreationDate="2011-02-15T09:23:52.403" UserId="252" />
  <row Id="11268" PostId="8573" Text="@Ishan Sharma: Actually, a lot of game (engine) development is still don in C, or at least very C:ish C++. Nothing says that your C++ game will be better (or even better written) just because it's C++." CreationDate="2011-02-15T09:41:45.123" UserId="2792" />
  <row Id="11269" PostId="8526" Text="Thanks, I seem to have it working now. Half of the problem was a silly mistake on my end but thanks for clearing it up. And that Motion Welder tool looks quite interesting too, I'll make sure I check it out." CreationDate="2011-02-15T10:00:50.373" UserId="5404" />
  <row Id="11270" PostId="6590" Text="I had a similar problem. I never found a solution, the only thing that worked for me was to compile the plugin on the target machine. Since you are using VRPN I guess it could be factible, since you seem to be using special hardware so you won't run this on many machines, right?" CreationDate="2011-02-15T10:15:49.760" UserId="356" />
  <row Id="11271" PostId="8588" Score="1" Text="What do you need them for? Why doesn't a bitmap font work for you? Are you drawing a lot of text? What character set do you need (western, cjk, or some small subset) ?" CreationDate="2011-02-15T10:40:25.347" UserId="4264" />
  <row Id="11272" PostId="8535" Text="i've edited my post , including details and images " CreationDate="2011-02-15T13:08:14.283" UserId="5378" />
  <row Id="11273" PostId="8541" Text="by motion blur you mean making the other objects blurry while my aircraft is not blury ?" CreationDate="2011-02-15T13:10:50.300" UserId="5378" />
  <row Id="11275" PostId="8594" Score="2" Text="It seems to me that indie developers usually know nothing of PR. That's almost what makes them indie; if they had PR maybe they'd be bigger, and the ones that get bigger (World of Goo comes to mind) apparently had good PR." CreationDate="2011-02-15T13:35:14.573" UserId="189" />
  <row Id="11277" PostId="8594" Text="Short of whoring out your game via Facebook/Twitter/forums, I know very little about PR for indie gaming...I'd be interested to see what a more marketing-savvy member could answer here..." CreationDate="2011-02-15T14:14:45.800" UserId="1743" />
  <row Id="11278" PostId="8594" Score="3" Text="I am basing this off nothing at all but I doubt spending money on a dedicated PR person as a startup would be a good idea.&#xA;Perhaps a good starting point would be to look at the way indies such as Tale of Tales, Beyond the Pillars and Frictional Games handle PR and see what you can learn from them." CreationDate="2011-02-15T14:29:20.030" UserId="5399" />
  <row Id="11279" PostId="8538" Text="Could you be more specific on the &quot;particle-effects to the wings&quot; ? I was thinking that on boost there should be a white skeleton-like( only on the borders of the ship) of the aircraft that looks like it and is left behind and appears for only 1-1,5 seconds and then fades .. btw i've edited my post, i added some pics.. it's a rough draft, i know" CreationDate="2011-02-15T14:48:31.153" UserId="5378" />
  <row Id="11280" PostId="8506" Score="2" Text="What if ones best language is VBA, or JavaScript? I wouldn't say those are best for most games. If you're talking about third generation languages, then yes, I'd say that which ever you're most proficient in should be where you look first." CreationDate="2011-02-15T14:54:32.993" UserId="1198" />
  <row Id="11281" PostId="8491" Text="@bummzack Your point is true, but C# is listed in the OPs list of potential candidates." CreationDate="2011-02-15T15:51:17.153" UserId="1198" />
  <row Id="11284" PostId="8596" Score="3" Text="This seems like a rather useless question." CreationDate="2011-02-15T16:37:59.267" UserId="1156" />
  <row Id="11285" PostId="8573" Text="Also, Quake III is written in C and the source code is available.  http://en.wikipedia.org/wiki/Id_Tech_3" CreationDate="2011-02-15T16:49:37.787" UserId="4604" />
  <row Id="11286" PostId="8603" Text="I guess this will become unhandy if you want to re-use the same asset multiple times in a level. E.g. a Tree." CreationDate="2011-02-15T16:51:35.903" UserId="20" />
  <row Id="11287" PostId="8603" Text="Yea, you'd have to copy-paste a lot. Maybe some painting tools have ways of doing reference layers, I'm not sure. It's certainly a think you could implement in a custom editor. On the other hand, it does allow for extreme variation in the &quot;tileset&quot; of the level, which can look pretty awesome if you're willing to put the effort in." CreationDate="2011-02-15T17:01:21.743" UserId="1430" />
  <row Id="11288" PostId="8603" Text="What you are suggesting sounds terribly cumbersome when creating a lot of levels. I am sure there must be lots of editors out there already? Isn't this a very common task when developing a 2d game? I just thought of a more concrete example of what I am looking for: something like the GameMaker level editor, but then with added save functionality" CreationDate="2011-02-15T17:07:37.823" UserId="5468" />
  <row Id="11289" PostId="8603" Text="It will be cumbersome -- you have to decide if it's more cumbersome than writing your own editor or writing an importer for somebody else's file format. There are likely plenty of editors out there that act like what you want, but they're likely tied to the format of a specific game, and/or aren't available to the public. &quot;Game-agnostic&quot; editors are relatively rare." CreationDate="2011-02-15T17:17:07.377" UserId="1430" />
  <row Id="11290" PostId="8605" Score="1" Text="This is all good advice, but it's all really more about advertising and marketing your product. PR is about pushing a consistent image and message of your company/person." CreationDate="2011-02-15T17:24:20.853" UserId="744" />
  <row Id="11291" PostId="8603" Text="I don't care writing an importer for any file format, as long as the editor does what I want. Any concrete examples?" CreationDate="2011-02-15T17:25:03.410" UserId="5468" />
  <row Id="11292" PostId="8600" Text="Why non-tiled? What advantage does this bring?" CreationDate="2011-02-15T17:33:51.390" UserId="1156" />
  <row Id="11293" PostId="8572" Score="2" Text="SDL is written in C. OpenGL is C. What more do you need?" CreationDate="2011-02-15T17:34:37.393" UserId="1156" />
  <row Id="11294" PostId="8600" Text="Technically I guess it doesn't matter as long as the editor can do the things I mentioned. The tile-based editors I tried focus on other functionality than I want, however." CreationDate="2011-02-15T17:37:49.920" UserId="5468" />
  <row Id="11295" PostId="8605" Score="4" Text="Huh, I guess, yea. For an indie operation I've always kind of considered them one and the same... or at the very least, not worth considering and handling separately." CreationDate="2011-02-15T17:43:32.223" UserId="1430" />
  <row Id="11297" PostId="8600" Score="1" Text="http://gamedev.stackexchange.com/questions/1886/tile-based-2d-level-editor and http://gamedev.stackexchange.com/questions/225/tools-for-creating-2d-tile-based-maps might help?" CreationDate="2011-02-15T17:55:41.533" UserId="1156" />
  <row Id="11298" PostId="8573" Text="@void: That's only true if the programmer in question has no idea about how to use C++ effectively. C++ programs written where the writer has a basic grasp of object orientation are far more secure and reliable than equivalent C programs." CreationDate="2011-02-15T17:58:42.567" UserId="4662" />
  <row Id="11299" PostId="8600" Text="I looked at some of those before asking this question, and they did not have the features I need." CreationDate="2011-02-15T18:15:03.037" UserId="5468" />
  <row Id="11300" PostId="8596" Text="Agreed, completely pointless and just seems out of pure boredom." CreationDate="2011-02-15T19:12:01.427" UserId="4956" />
  <row Id="11301" PostId="8608" Text="http://gamedev.stackexchange.com/questions/3541/free-maya-3d-model and http://gamedev.stackexchange.com/questions/2400/open-source-3d-models-easily-usable-in-ogre3d-jmonkeyengine duplicates?" CreationDate="2011-02-15T19:57:11.357" UserId="1156" />
  <row Id="11302" PostId="5220" Text="@wkerslake: Is that Heavy Metal: Map? :)" CreationDate="2011-02-15T20:05:44.833" UserId="4604" />
  <row Id="11303" PostId="8581" Text="I guess that puts you at Cryptic.  Do you use a scripting language of any sort?" CreationDate="2011-02-15T20:18:24.547" UserId="1443" />
  <row Id="11304" PostId="8614" Text="I have tried that before with no results.  Where would I put the rectangle portion and where would I put the if statement." CreationDate="2011-02-15T20:26:16.197" UserId="5476" />
  <row Id="11305" PostId="8572" Score="1" Text="Also, Quake is all done in C." CreationDate="2011-02-15T20:35:37.907" UserId="1156" />
  <row Id="11306" PostId="8617" Score="3" Text="You mean a community site managed by users, or a site managed by the game developer/publisher?" CreationDate="2011-02-15T21:12:02.490" UserId="4604" />
  <row Id="11307" PostId="8617" Score="1" Text="Are you looking for some tool or something for managing your community? Or looking for examples of places that have communities. If it is the latter, you should be looking at http://gaming.stackexchange.com" CreationDate="2011-02-15T21:24:56.077" UserId="14" />
  <row Id="11308" PostId="8617" Text="Sorry the question was ambiguous . I've edited hoping to make it clearer. I mean a site managed by the game developer/publisher." CreationDate="2011-02-15T21:33:36.687" UserId="3853" />
  <row Id="11311" PostId="8617" Text="@axel22, we are a game **development** site, not a game **support** site. :)" CreationDate="2011-02-15T21:44:15.460" UserId="1156" />
  <row Id="11312" PostId="8581" Text="We have an internal expression language that used by designers for basically everything, and we use a mix of Python and Lua for some stuff (offline processing, map-reduce on game DBS for stats), but no Real Scripting Language in the game itself." CreationDate="2011-02-15T21:49:51.960" UserId="395" />
  <row Id="11313" PostId="8614" Text="add the rectangle portion to your fireball class (now you fireball has a rectangle, which will follow the position of your fireball image)&#xA;&#xA;You can add the if statement wherever in the update statement though i do mine towards the end" CreationDate="2011-02-15T23:00:39.073" UserId="2301" />
  <row Id="11314" PostId="8541" Text="I would write exactly the same as bummzack: Radial blur. And i was going to recommend same thing with fov that will be cool ;)." CreationDate="2011-02-15T23:13:48.967" UserId="3794" />
  <row Id="11315" PostId="8614" Text="I mean in which function of the class and do I also add a rectangle for my hero?  Also which function for the update cause i have a hereo, enemy, spirte, and fireball calss along wiht the game1 class." CreationDate="2011-02-15T23:21:41.303" UserId="5476" />
  <row Id="11316" PostId="8604" Text="How does glorp compare to love2d?" CreationDate="2011-02-16T02:42:43.480" UserId="370" />
  <row Id="11317" PostId="8461" Text="@sebf It was a couple of years ago, I believe rendered with 3dsmax6 showing kind of a living room. Try to search the archives at 3dtotal.com (Scene gallery images)." CreationDate="2011-02-16T02:50:38.623" UserId="202" />
  <row Id="11318" PostId="8587" Text="I think relativistic distortion is a bad idea.  The linked page was really fun to read however.  " CreationDate="2011-02-16T03:05:01.377" UserId="370" />
  <row Id="11319" PostId="8631" Text="Ah, ok...that makes sense. I am bit of an amateur cryptographer myself, so considering this the security part should not be too much of a problem so long as I go in with the mindset that any and all attributes that could be altered to favor someone or give them access to money should be encrypted and done server-sided. Do you have any preference on language for this? I was thinking flash...?" CreationDate="2011-02-16T03:05:06.230" UserId="5482" />
  <row Id="11320" PostId="8632" Text="I have some experience with HTML, Javascript, PHP, MySQL and Java. I have not messed too much with CSS, but I believe that is for layout properties? And in regards to money, I agree I am no position to set up such a site. I just wanted to get a gist of what I am getting into and a better view of what I need to work towards. If I can just get a simple game going, then I can slowly improve on it and then when I am feeling ready, then I will develop my commercial version or what not. Thanks for your suggestions, I will definitely check out socket.IO...I definitely want it in true RT as possible." CreationDate="2011-02-16T03:08:36.527" UserId="5482" />
  <row Id="11321" PostId="8631" Score="1" Text="@Mr_CryproPrime It depends on your target audience. If you aim to the general public, I think flash is best. I'd definitely recommend it over java, as the runtime is more widely deployed. DHTML is also okay, but I think flash is more mature as a multimedia platform today. Server-side, anything you want, so what you have the most experience with would be best. You could also try silverlight on the client and c# on the server." CreationDate="2011-02-16T04:15:19.840" />
  <row Id="11322" PostId="8536" Text="There actually is one way I know of to develop for iOS under windows, which is the C++ based [Airplay SDK](http://airplaysdk.com).  It does not use the standard SDK, but it provides ways to interact with everything you'd have access to with the iOS SDK.  That said, you still need a Mac for the final upload to the app store." CreationDate="2011-02-16T04:24:51.637" UserId="2515" />
  <row Id="11323" PostId="8627" Score="4" Text="I don't know if play for cash and trivia questions will work too well for an online game; everyone is going to be using google to cheat." CreationDate="2011-02-16T06:21:42.933" UserId="962" />
  <row Id="11324" PostId="8614" Text="Hey Bradley, I explicitly told you to make a rectangle in both your hero class and fireball class, however you could also add one in your enemey class.  If your hero, enemey and fireball all derive from the same class, then you could add it in that base class instead, make sure that you update the position of the rectangle every frame (you have todo this in the update or draw method of the entity that has the rectangle). Now the collision checking part needs to be done somewhere where you have access to all the items, usually in the game1.Update(..) method." CreationDate="2011-02-16T07:04:04.143" UserId="5224" />
  <row Id="11325" PostId="8573" Score="1" Text="@DeadMG [citation needed]" CreationDate="2011-02-16T07:36:50.493" UserId="263" />
  <row Id="11326" PostId="8634" Text="Related: http://gamedev.stackexchange.com/questions/1653/how-closely-can-a-game-resemble-another-game-without-legal-problems and: http://gamedev.stackexchange.com/questions/712/legal-issues-for-a-fangame-of-a-commercial-franchise" CreationDate="2011-02-16T07:45:46.887" UserId="20" />
  <row Id="11327" PostId="8600" Text="'Why non-tiled?' - to get rid of the grid-based look, allow arbitrary rotation/scaling of objects, and seamless blending of objects into each other using feathered alpha channels. " CreationDate="2011-02-16T07:54:04.607" UserId="659" />
  <row Id="11328" PostId="8638" Text="Thankyou, this is certainly one possible way. I did eventually get it working by using `[[CCDirector sharedDirector]runningScene]` [from here](http://www.cocos2d-iphone.org/forum/topic/13211) and casting that to my GameScene, although your way may be better." CreationDate="2011-02-16T08:46:16.697" UserId="5478" />
  <row Id="11329" PostId="1660" Text="There can be a patent about pretty much everything, since the patent office accepts any patent even if it would be something not patentable. What actually matters is if there has been a trial about that: patent itself means nothing." CreationDate="2011-02-16T09:50:40.177" UserId="2188" />
  <row Id="11330" PostId="8572" Text="Do yourself a favour and use the Allegro libraries ;) http://alleg.sourceforge.net/" CreationDate="2011-02-16T10:01:07.220" UserId="2188" />
  <row Id="11331" PostId="8643" Text="If videogames are not appropriate, I guess you should ask there http://boardgames.stackexchange.com/ instead" CreationDate="2011-02-16T10:57:24.473" UserId="2188" />
  <row Id="11332" PostId="8642" Text="That pretty much matches our experience. A few differences in our case: Code Quality: irrelevant to the publisher as long as the game *works*. IP: see &quot;ideas are dime a dozen&quot;. Source: depends on the agreement, for distribution they usually don't, for co-development they usually do, depends on who owns the IP when the game is done. Flaky publishers: never happened to us in 9 years, but I've heard stories, as everyone else :)" CreationDate="2011-02-16T10:57:53.550" UserId="4082" />
  <row Id="11333" PostId="8645" Text="@Splo, thank you for the answer. I though about Mafia (and I like this game) but it is not good for my purposes because it is hard to formalize the behavior of players. In this game it is important what people say (the meaning is important), the intonation is also important. I want to have a game where actions of players are simple and clear (for example: player gave two chips to another player, player moved from this square to this one and so on)." CreationDate="2011-02-16T11:07:45.987" UserId="5486" />
  <row Id="11335" PostId="8606" Score="1" Text="Wow, why is this at -2? tenpn is not a spammer, as his time on the site and answers obviously show. SMTG is by Cliffski, an indie game maker with 10 years of cred. This might be the only actual indie-PR site on the web!" CreationDate="2011-02-16T11:31:08.767" UserId="744" />
  <row Id="11336" PostId="8587" Text="@deft_code: why not? I mean, up to ~.7c it doesn't look _so_ extreme, and the idea &quot;fly faster to look behind you&quot; sound funny to me..." CreationDate="2011-02-16T11:33:37.750" UserId="252" />
  <row Id="11337" PostId="8461" Text="@Dave, thanks, I find those renders amazing; I also wonder how long a 60 hr render in Max 6 would take to do nowdays in Max 2011?" CreationDate="2011-02-16T11:48:50.063" UserId="5399" />
  <row Id="11338" PostId="8573" Text="@Bob Somers: Easy. Compare `std::string` to `char*`. `std::string` always cleans up it's own memory in any situation, allocates the right amount every time. `char*`, you might forget to free, or double free, or not allocate enough memory. Whoops. Basic logic says that C++ programs *are* better and more secure than C programs." CreationDate="2011-02-16T12:17:41.287" UserId="4662" />
  <row Id="11339" PostId="8647" Text="You need one normal per triangle. Calculating normals is covered here: http://gamedev.stackexchange.com/questions/8191/any-reliable-polygon-normal-calculation-code" CreationDate="2011-02-16T12:18:38.807" UserId="20" />
  <row Id="11340" PostId="8644" Text="Why do you have to rename references to your resources? After answering your question, I had a cursory glance at `XnaZip`; it seems like it should be a drop-in replacement -- aside from the missing `System.IO.Compression` namespace." CreationDate="2011-02-16T12:58:33.347" UserId="211" />
  <row Id="11341" PostId="8604" Text="As I understand it, love2d has a significantly set-in-stone rendering pathway. glorp doesn't - it has OpenGL bindings, and you just render whatever you want (although it does have helper functions for standard stuff.) glorp has a built-in &quot;main menu/pause/return to menu&quot; system, it does remote error reporting on crashes, and it will automatically generate installers for whatever OS you're building it on. glorp isn't really designed as an API, however - it's a framework that is constantly modified for whatever I need. Not as reverse-compatible at all :)" CreationDate="2011-02-16T13:21:26.323" UserId="323" />
  <row Id="11342" PostId="8637" Text="This seems to make sense in theory, but it doesn't work for me.  Naively speaking, the &quot;eye&quot; is always going to be in the middle of screen...  so if its pointed in the direction of the dude's heading (at) then it will appear as though the dude is headed towards the center of the screen in the distance, even though both the dude and the camera are orientated with the same heading...  i could be wrong, but without some sort of twist, which &quot;almost&quot; works, i can't get the over the should view working (that is the perfect name for it btw).  Perhaps i'm wrong about where the eye is positioned?" CreationDate="2011-02-16T13:57:01.110" UserId="5484" />
  <row Id="11343" PostId="8644" Text="In the readme of the XnaZip project it says: 'After that you can load your objects like this:&#xA;Texture2D earth = content.Load&lt;Texture2d&gt;(ResourceId.Earth);' But now that you mention maybe I misinterpreted it and means 'you may' instead of 'you have to'. I will give it a try." CreationDate="2011-02-16T14:06:21.193" UserId="4928" />
  <row Id="11344" PostId="8647" Text="@bummzack Is there a way in OpenGL-ES to only specify one normal per triangle? I thought you could only pass them in as a vertex attribute to your Vertex Shader (and do per vertex lighting). Right?" CreationDate="2011-02-16T15:28:08.703" UserId="5050" />
  <row Id="11346" PostId="8619" Text="The only physics engines I know that support fixed-point math are 2D ones. I get your desire for determinism, because that's nice to have, but is it actually a requirement? And there are many portable physics engines, fixed or floating point doesn't have a whole lot to do with that unless you need them to run in lockstep across platforms or something similar -- do you?" CreationDate="2011-02-16T16:17:12.873" UserId="1430" />
  <row Id="11347" PostId="8619" Text="It's a requirement, since this is planned for a networked turn-based game where each player shared their orders with other players at the end of each turn, and they simulate the result, which has to be the same, exactly, and no authoritative server can be in the middle (p2p game.) &#xA;&#xA;I intend it to be portable, not only between OSes, but machines too, even ones without FPU like NintendoDS. FPU results may even be unconsistent between different compilers in the same OS, so think about different architectures..." CreationDate="2011-02-16T16:19:48.853" UserId="4307" />
  <row Id="11348" PostId="8647" Text="Yeah, you'll have to set the normal per vertex. For a cube, all vertices of one side share the same normal though. Therefore you can calculate the normal once per side and then pass that to all vertices belonging to that side." CreationDate="2011-02-16T16:44:21.843" UserId="20" />
  <row Id="11349" PostId="8654" Text="What kind of demo ? Just a render, or something in real time, or an interactive demo ?" CreationDate="2011-02-16T16:52:11.737" UserId="2469" />
  <row Id="11350" PostId="8654" Text="More the merrier is always better :) I have a lot of code, and programmer art, so the folks are little concerned and wanted just something *shiny*. For simplicity, I think a render/ something in realtime would work." CreationDate="2011-02-16T16:56:06.867" UserId="4638" />
  <row Id="11351" PostId="8643" Text="Roman asked it at boardgames after your suggestion @Lo'oris : http://boardgames.stackexchange.com/questions/2602/is-there-any-simple-game-that-involves-psychological-factors" CreationDate="2011-02-16T17:02:30.247" UserId="189" />
  <row Id="11352" PostId="8656" Text="Nice idea. Looks great in 3D as well: http://vimeo.com/groups/glsl/videos/10271624" CreationDate="2011-02-16T17:11:55.920" UserId="20" />
  <row Id="11353" PostId="8587" Text="@Tobias: because relativity is generally unintuitive.  because a similar effect can be achieved with camera frustum adjustment, and it is a well used technique in both movies and games to denote rapid movement." CreationDate="2011-02-16T17:15:11.410" UserId="370" />
  <row Id="11354" PostId="8600" Text="Have you seen my answer below? It sounds like what you're looking for." CreationDate="2011-02-16T17:22:43.210" UserId="539" />
  <row Id="11355" PostId="8659" Text="@zacharmarz: +1 for this answer. I am studying some materials right now, but your answer pointed me to the right direction. Thanks. " CreationDate="2011-02-16T17:31:59.643" UserId="2229" />
  <row Id="11356" PostId="8655" Text="Just to clear up confusion I had: BGM is background music." CreationDate="2011-02-16T17:34:49.767" UserId="1156" />
  <row Id="11357" PostId="8659" Text="&quot;per vertex animation&quot; doesn't generally mean the animation logic is done in a shader, just that each vertex animates -- which is almost always the case. Were you wanting to make the distinction between vertex-based keyframe animation (where each frame of animation is a complete copy of the mesh, and you blend between them) and skeletal animation (where vertices are weighted to a simple bone hierarchy and animated)? Both can be done on either the CPU or GPU." CreationDate="2011-02-16T17:35:44.413" UserId="1430" />
  <row Id="11358" PostId="8660" Text="@Josh Petrie: +1 for this detailed answer. I see that I will have to pay attention to scene construction and preparation, so I avoid duplicating vertices. Although this answer looks to me as *Accepted Answer* I will wait for a while to see, if I get more useful answers." CreationDate="2011-02-16T17:45:02.457" UserId="2229" />
  <row Id="11359" PostId="8568" Text="Hai, Sorry for not being clear...jst check the below post" CreationDate="2011-02-16T18:36:10.123" UserId="5119" />
  <row Id="11360" PostId="8655" Text="I edited the question to clear it up even more." CreationDate="2011-02-16T18:44:09.457" UserId="962" />
  <row Id="11362" PostId="8571" Text="hope you forgive me as, i edited with bad formatting ;)" CreationDate="2011-02-16T18:53:35.443" UserId="5119" />
  <row Id="11363" PostId="8661" Text="Have you looked into steering behaviors?" CreationDate="2011-02-16T19:01:03.097" UserId="2447" />
  <row Id="11364" PostId="8637" Text="In perspective view, two parallel vectors will appear to be moving towards each other in the distance. Think of the typical example of railroad tracks. The rails are parallel, but they meet at one point in the distance. You can't really help that. I expect that isn't your problem, however, because at distances so close to the camera you should not be able to notice that effect that perspective has. Have you tried making them point in the same direction (as opposed to at the same point), or are these just your thoughts on it?" CreationDate="2011-02-16T19:21:13.283" UserId="5328" />
  <row Id="11365" PostId="8657" Text="what is the old camera shader ?" CreationDate="2011-02-16T19:24:31.810" UserId="4638" />
  <row Id="11366" PostId="8663" Score="1" Text="I have seen a presentation made by the Valve explaining **everything** about the zombies in L4D. I can't find it though." CreationDate="2011-02-16T19:31:54.143" UserId="1156" />
  <row Id="11367" PostId="8663" Score="1" Text="@ The Communist Duck - That would be very useful. Please post if you ever find it. The only thing I can find online are game faqs." CreationDate="2011-02-16T19:35:07.700" UserId="3659" />
  <row Id="11368" PostId="8657" Text="Heh, thats something super simple. Just desaturation, maybe sepia look and some random placed &quot;old camera&quot; textures added thru additive blending (it sucks, but may impress somebody :])" CreationDate="2011-02-16T19:44:03.737" UserId="3794" />
  <row Id="11369" PostId="8661" Score="1" Text="@stonemetal sure. The problem here is that the steering behaviours are usually modelled assuming full control of the position and rotation of the object and some constraints (or at least that's what I found on the web.) The AI here doesn't have full control over the entity, but only over things (propellers) that make the entity move. I have trouble connecting these steering behaviours with the actual locomotion of the spaceship." CreationDate="2011-02-16T19:54:10.103" UserId="4307" />
  <row Id="11370" PostId="8668" Text="Yes, this is exactly what I am looking for thanks!" CreationDate="2011-02-16T20:35:33.670" UserId="3659" />
  <row Id="11371" PostId="8667" Text="From an OO point of view you would've a Game class that defines all the laws of your game (physical laws, AI behavior, possible player actions..). If you want to create an instance (think parallel universe), just create another instance of your Game class and assign all players entering a certain zone to it. Now you have two groups of players co-existing in parallel universes." CreationDate="2011-02-16T20:43:17.217" UserId="202" />
  <row Id="11372" PostId="8572" Text="RollerCoaster Tycoon was done almost in pure assembly, so why not?" CreationDate="2011-02-16T21:16:15.977" UserId="1663" />
  <row Id="11373" PostId="8568" Text="Clearing the framebuffer is an excellent way to improve performance, because the graphics card knows that it can discard or draw from the old memory. Consider double buffering- if you want to save the previous contents of the frame, then you can't draw on to the back buffer and display the front buffer, because the back buffer doesn't have the previous frame's image on it." CreationDate="2011-02-16T21:23:28.277" UserId="4662" />
  <row Id="11374" PostId="8624" Text="So, for the case of moving a piece, I'd update the piece's position _first_ in the model, then notify the graphics component to play the movement animation.  The graphics component could read the new position from the model, but since the piece's original position is also needed does the notification need to send _that_ to the graphics component?  In other words, when the model notifies the graphics component would it be sending information to it that is no longer currently present in the model?" CreationDate="2011-02-16T22:35:56.657" UserId="4802" />
  <row Id="11375" PostId="8571" Text="Where to put the above code?  After each Texture is drawn?  Or perhaps at the top or bottom of the main render loop?" CreationDate="2011-02-16T22:58:56.397" UserId="1021" />
  <row Id="11376" PostId="8624" Text="@AJM correct. Changes to the model happen instantly, while the graphics component &quot;tries to catch up&quot; with animations. Since it's your code you're totally free to implement it in whatever way you want. For **example** one could raise an event &quot;PieceMoved&quot; with two parameters: oldPosition and newPosition." CreationDate="2011-02-16T23:01:46.917" UserId="202" />
  <row Id="11378" PostId="8614" Text="Thank you again for the help.  Finally got it after thinking aobut it yet again.  I had to add a rectangle for the player that was for his fireball and him, then I added a rectangle for the enemy and his fireball.  Of course every update I had if jumping or moving and for the firball being shot.  Then in the game update of game1.cs I just added an if statement to test it and then it would close the game if it ever became true." CreationDate="2011-02-17T00:08:05.063" UserId="5476" />
  <row Id="11379" PostId="8624" Text="Would this apply to more complex actions? Suppose I'm actually working on a strategy wargame, and there is a piece that can fire a missile at a square to cause an explosion that hurts nearby pieces. To the model this could be a single update: find all pieces in range of the target square, apply damage to them, and remove any dead pieces. Animating this (well) would take several steps: the attacking piece fires, the missile files to the target, the missile explodes, and each piece caught in the explosion does either a recoil animation or a death animation. How well would your suggestion scale?" CreationDate="2011-02-17T00:52:57.990" UserId="4802" />
  <row Id="11380" PostId="8476" Text="@onedayitwillmake - Since yours is the only decent looking code, and since Jari has nothing but advice to give I'm going to award you the bounty although I've not had the time to try out your snippet. Thanks for sending code when I asked for code!" CreationDate="2011-02-17T01:14:10.837" UserId="2862" />
  <row Id="11382" PostId="8641" Text="I tried this...  it didn't help.  I'm not sure what the scale is supposed to do.  I definitely do something like the translation now, but the &quot;point in the distance&quot; issue still exists." CreationDate="2011-02-17T01:53:17.467" UserId="5484" />
  <row Id="11383" PostId="8637" Text="Ah ok - this &quot;point in the distance&quot; issue IS my problem!  The point in the distance always seems to be in the center of the device, whereas my dude is at the 3/4 position.  I want the point in the distance to be 3/4 of the view as well, so that objects IN FRONT of the dude, are just &quot;up&quot; from it, as opposed to &quot;up and a bit to the right&quot;.  I'm not sure what you mean by &quot;tried making THEM point in the same direction&quot;...  i think i do that now, and it doesn't help.  Its only when o tilt the camera to point somewhat in the dudes direction that i can get this to almost work, but never looks good." CreationDate="2011-02-17T01:56:04.420" UserId="5484" />
  <row Id="11384" PostId="8637" Text="What i really want to do is the following - lets say my device is 480x320.  If i actually were to fake render 720x320, so that the mid point is at the 360 position, but then only show the first 480 x, THAT would give me what i want!  But i don't know how to do that either ;)" CreationDate="2011-02-17T01:58:14.903" UserId="5484" />
  <row Id="11385" PostId="8235" Text="@Bunkai: What did you like in CML over GLM ?" CreationDate="2011-02-17T02:06:51.150" UserId="4638" />
  <row Id="11386" PostId="8637" Text="Actually that sort of worked - when i change the backingwidth above to 720 it works perfectly!  However, i fear i'm rendering way too much...  any comments on this would be appreciated." CreationDate="2011-02-17T02:20:16.263" UserId="5484" />
  <row Id="11387" PostId="8624" Text="@AJM It somehow seems to bother you that changes to the model are discrete while animations are &quot;continuous&quot; :-). It's perfectly fine though since actions in your game have a fixed outcome that is known beforehand. A counter example would be a realtime strategy game in which the logic and graphics components would be constantly updated independently from each other." CreationDate="2011-02-17T05:07:14.823" UserId="202" />
  <row Id="11389" PostId="7217" Text="I am very interested in playing on this map.  Is this map posted on battle.net?  Can I play with this map and apply your settings to others?  I love this method of play and have been trying to find an optimal version of Team Melee.  I have thought about making one myself but if the work is already done I won't bother :)&#xD;&#xA;&#xD;&#xA;Please let me know if this is available by posting here or shooting me a message at spmurphy at googles e-mail." CreationDate="2011-02-17T06:05:54.240" UserId="5503" />
  <row Id="11390" PostId="8476" Text="@Jenko - so you basically punished me for not writing code ouright to you, instead rewarding some other answer which you didn't even verify it. Thanks." CreationDate="2011-02-17T06:11:56.990" UserId="4264" />
  <row Id="11391" PostId="8571" Text="@MrDatabase- You need to keep that code once you finish drawing to RenderTexture.Check the below Post link." CreationDate="2011-02-17T06:31:58.020" UserId="5119" />
  <row Id="11392" PostId="8657" Text="Another thing you might want to look at is materials. Implement one or several shading models efficiently (car paint, plastic). Learn about BRDF:s while doing so. Skinning is also quite often done in the vertex program so that might be something to look at." CreationDate="2011-02-17T07:18:33.430" UserId="2792" />
  <row Id="11394" PostId="8643" Text="@Ricket: yeah, I noticed — I wonder why people answered *here*...? oh, well." CreationDate="2011-02-17T07:40:46.090" UserId="2188" />
  <row Id="11396" PostId="8643" Score="1" Text="@Lo'oris, sorry for the duplicate. I did not want to post the same question to different sites. But I do not know how/if I can transfer my question to another site. But I check both sites and appreciate all answers." CreationDate="2011-02-17T09:04:13.523" UserId="5486" />
  <row Id="11397" PostId="8661" Text="@kaoD that's the same reason steering behaviours don't work too well on race cars. Steering behaviours are great but they're not the universal solution to everything." CreationDate="2011-02-17T09:20:47.563" UserId="259" />
  <row Id="11399" PostId="8672" Text="This was a thought of mine as well (didn't write it down, so I'm not getting credit for that :D). The problem is that I have a 2D sprite game, and a very limited staff of artists (myself and one other person atm). Creating sprites for the normal map and extra sprites for battle, that are even pseudo-3D would be so much work that I don't think it can be realistically done. If I had the time, and the manpower, this would indeed be one of the more serious choices I'd consider." CreationDate="2011-02-17T10:24:45.163" UserId="89" />
  <row Id="11400" PostId="8640" Text="Thanks for the link! I'll definitely read it." CreationDate="2011-02-17T11:12:02.140" UserId="5468" />
  <row Id="11401" PostId="8620" Text="This looks like exactly the sort of thing I need. The only downside is that it's windows only, and as I need this editor for my iPhone projects I would like something that works under mac osx. I guess I could run it in a virtual machine though, but if someone knows an editor like this for mac it would be perfect." CreationDate="2011-02-17T11:14:13.120" UserId="5468" />
  <row Id="11402" PostId="8695" Text="How much beginner are you? Did you program anything before? Or are you a decent programmer and are &quot;just&quot; a beginner at games?" CreationDate="2011-02-17T12:02:10.383" UserId="5368" />
  <row Id="11403" PostId="8695" Text="@Heiko well I have programmed in Java, and some basic programming in C,C++,VB.NET" CreationDate="2011-02-17T12:20:36.177" UserId="5514" />
  <row Id="11404" PostId="8668" Text="This is awesome. Thanks for linking it." CreationDate="2011-02-17T12:26:04.497" UserId="1581" />
  <row Id="11405" PostId="8693" Text="Thanks, I didn't know this one. It looks like a simplified (and performant) version of boost::log, at least in the original idea." CreationDate="2011-02-17T12:49:44.713" UserId="364" />
  <row Id="11406" PostId="8693" Text="@Klaim: I don't think boost had anything to offer when I last looked into C++ logging libraries, so I don't know about boost::log. " CreationDate="2011-02-17T13:25:21.627" UserId="5512" />
  <row Id="11407" PostId="8699" Text="Are you asking how to create the cut-scenes (what software to use etc.) or how to add/integrate them into the game?" CreationDate="2011-02-17T14:10:44.987" UserId="20" />
  <row Id="11408" PostId="8643" Text="It is perfectly acceptable to post your question on multiple sites, you did the right thing and I hope that you did get some good answers. I was simply pointing it out for reference as to why I didn't move the question (or consider if it was the right thing to do)." CreationDate="2011-02-17T14:17:07.337" UserId="189" />
  <row Id="11409" PostId="8699" Text="I am asking, how can I create cut-scenes, keeping in mind I really have no budget (a development company of 1 hobbyist developer). I am not worried about the integration part." CreationDate="2011-02-17T14:25:54.363" UserId="2925" />
  <row Id="11410" PostId="8693" Text="@sbi: Yeah it's &quot;accepted&quot; as a boost library but not released yet, need some fixes. You can find it there : http://boost-log.sourceforge.net/libs/log/doc/html" CreationDate="2011-02-17T14:36:49.253" UserId="364" />
  <row Id="11411" PostId="8672" Text="@SoulBeaver: Ahh, okay.  Darn those real world resource constraints. :)  Well, then it miiiight be worth trying keeping the side perspective but shifting it upward, and rendering the out-of-immediate-combat people on both sides &quot;in back&quot; (higher up on the Y axis and scaled down).  So you have a main body of combatants rendered at full size and the rest of the force trailing off in the +Y direction." CreationDate="2011-02-17T14:53:25.973" UserId="4191" />
  <row Id="11412" PostId="8668" Text="No problem. Lucky for us that devs are kind enough to put up their publications." CreationDate="2011-02-17T15:32:33.193" UserId="5259" />
  <row Id="11414" PostId="8693" Text="Note that templog, like most iostream-esque bullshit, is not threadsafe." CreationDate="2011-02-17T15:39:05.797" UserId="744" />
  <row Id="11415" PostId="8703" Score="2" Text="Unfortunately that is really how it's done in many games. I wouldn't take that as meaning it's best practice though. Many of the tutorials you're reading could be aimed at beginners, and so they're not going to start explaining model/view/controller or yoke patterns to the reader." CreationDate="2011-02-17T15:42:05.327" UserId="259" />
  <row Id="11416" PostId="8696" Score="1" Text="IMHO an engine isn't the optimal start into game programming because one should get a feeling for how a game is constructed (at least once write one's own game loop, handle input, etc.). Now you needn't jump into XNA to do something like that. There are much simpler alternatives: [BlitzMax](http://blitzmax.com/Products/_index_.php) and [Processing](http://www.processing.org/) for Java." CreationDate="2011-02-17T15:45:08.327" UserId="202" />
  <row Id="11417" PostId="8691" Score="2" Text="One requirement that matters that you didn't mention is what you intend to use the logs for. The requirements for logging, say, debug messages, metrics for designers, character state for customer support, and credit card transactions, are different. In general you trade off performance, ease of use for programmers, ease / speed of offline parsing, and durability depending on the situation." CreationDate="2011-02-17T15:45:42.380" UserId="744" />
  <row Id="11420" PostId="8705" Text="I think you misunderstood my question. I'm saying I DON'T like having classes that do everything themselves. I fell like a Ball should just be a logical representation of a Ball, however it should know nothing about the game loop, input handling etc..." CreationDate="2011-02-17T16:01:09.447" UserId="4911" />
  <row Id="11421" PostId="8677" Score="1" Text="The best answers sometimes are the ones you come up with on your own, preceded by slapping your forehead with your hand :)" CreationDate="2011-02-17T16:06:42.090" UserId="1743" />
  <row Id="11422" PostId="8677" Text="@espais: ha ha. I couldn't agree more." CreationDate="2011-02-17T16:08:51.387" UserId="4638" />
  <row Id="11423" PostId="8705" Text="To be fair, in business programming if you boil it down, there are two trains: business objects that load, persist and perform logic on themselves, and DTO + AppLogic + Repository/Persitance Layer..." CreationDate="2011-02-17T16:19:04.470" UserId="1198" />
  <row Id="11424" PostId="8704" Text="When I asked about building a dpad on a touch screen, I was advised against it: http://gamedev.stackexchange.com/questions/5384/making-or-emulating-a-d-pad-on-a-touch-screen-virtual-d-pad -- there is some wisdom there. Unless your game requires it because its a port from another platform you might want to look at another solution." CreationDate="2011-02-17T16:21:43.220" UserId="1198" />
  <row Id="11425" PostId="8564" Text="-1; agreed. At the very least the DarkBasic question should be distinct." CreationDate="2011-02-17T16:25:12.247" UserId="1430" />
  <row Id="11426" PostId="8693" Text="@Joe: Can you elaborate? AFAICS templog doesn't use IO streams. " CreationDate="2011-02-17T16:28:46.877" UserId="5512" />
  <row Id="11427" PostId="8700" Text="Correct me if I'm wrong, but this only suggests where to direct logging output to, no? A real logging library would also allow filtering at _compile-time_ (which is crucial if performance is an issue), formatting, and provide an easy-to-use syntax for creating log messages. " CreationDate="2011-02-17T16:32:37.217" UserId="5512" />
  <row Id="11428" PostId="8704" Text="The game I want to make requires it, I'll make some controls use the touch screen, but the movement itself (basicay walk left, right and dash/run) requires it because the touch screen will be used to aim/shoot, so you move the char with the dpad and &quot;point and click&quot; to blow things up :)" CreationDate="2011-02-17T16:38:20.097" UserId="5345" />
  <row Id="11429" PostId="8714" Text="Wow, Thanks! This looks really great" CreationDate="2011-02-17T16:38:29.120" UserId="5517" />
  <row Id="11430" PostId="8614" Text="Hey Bradley, no problem. If my answer helped you, then please mark it as the answer to this question (so it wont clutter the un-answered list, and it gives me some points :P)." CreationDate="2011-02-17T16:41:53.667" UserId="5224" />
  <row Id="11431" PostId="8693" Text="@sbl: Since `foo &lt;&lt; a &lt;&lt; b` ends up calling foo.operator&lt;&lt; twice, there's no way to make the API threadsafe without special &quot;unlock&quot; tokens at the end, which no one implements and no one would remember to use if they did. It's a fundamental problem caused by iostreams-like interfaces trying to handle copy _and_ formatting _and_ ioctls with the same interface. C-like interfaces do not have this problem; either you sprintf ahead of time, or you use something like fprintf, which can lock/unlock the stream's mutex for exactly its execution lifetime." CreationDate="2011-02-17T16:48:47.267" UserId="744" />
  <row Id="11432" PostId="8693" Text="@Joe: __I think you are wrong__. Have you even looked at the code? That `operator&lt;&lt;` does not do any output, it only contributes to an expression tree, which is then passed _at once_ through several layers, might be discarded by any of them if compile-time filtering matches, and ends up in code that filters at run-time. If it makes it through filtering, it will be formatted and written by the formatting and write policy you use. Whether this is thread-safe depends on those, and you can provide your own. The lib doesn't impose mutex performance loss on users, but doesn't hinder it either. " CreationDate="2011-02-17T17:01:42.013" UserId="5512" />
  <row Id="11433" PostId="8693" Text="@sbi: I haven't read templog's code. But unless there is some way to tell via C++ magic I can't think of that `b` terminates the expression and `a` does not, it doesn't matter whether it's going to &quot;real&quot; output or not. The problem is not that iostreams is not threadsafe (but it's basically not) - the problem is that anything that _looks like_ iostreams, which includes templog, also can't be threadsafe. It's a fundamental issue with the API design." CreationDate="2011-02-17T17:09:24.800" UserId="744" />
  <row Id="11434" PostId="8693" Score="1" Text="@Joe: Do you understand the term _&quot;expression templates&quot;_??" CreationDate="2011-02-17T17:12:34.140" UserId="5512" />
  <row Id="11435" PostId="8620" Text="I'm sure you could run this under Parallels without a hitch." CreationDate="2011-02-17T17:18:41.847" UserId="539" />
  <row Id="11436" PostId="8681" Text="Do you happen to know what other kind of entities are there? Would the special infected be entities? I am having trouble understanding &quot;entity&quot; vs &quot;finger-puppet&quot; when I can interact with the infected NPC." CreationDate="2011-02-17T17:26:08.920" UserId="3659" />
  <row Id="11437" PostId="8693" Score="1" Text="I thought I did, but now I have downloaded and started reading the templog source code, and it appears C++ has outwitted me again." CreationDate="2011-02-17T17:30:07.560" UserId="744" />
  <row Id="11438" PostId="8693" Text="@Joe: What that `operator&lt;&lt;` does is to create an _expression tree_ with all the operands chained. That tree is passed down all the way to your formatting policy. That policy will then traverse the tree and write its items using the write policy. Now that I again looked closer at this, there's incremental and non-incremental write policies. The former incrementally write as they traverse the expression tree, the latter stream into a string stream first and write the content of that _at once_. Using a non-incremental write policy your threads should be home and dry by default. " CreationDate="2011-02-17T17:37:11.450" UserId="5512" />
  <row Id="11439" PostId="8693" Score="1" Text="@sbi: Part of my confusion was your statement &quot;passed at once through several layers&quot; - In English _at once_ can mean either _immediately_ or _together_, which in this case are opposites. I read it as the first, and you (now obviously to me) meant the second. Thanks for taking the time to explain it." CreationDate="2011-02-17T17:55:54.230" UserId="744" />
  <row Id="11440" PostId="8712" Score="2" Text="Oh, and always remember: YAGNI (You ain't gonna need it) is really important here. You can waste a lot of time trying to come up with the ideal flexible system to handle every possible problem, and then never get anything done. I mean, if you really wanted a good multiplayer backbone for all possible outcomes, you'd use CORBA, right? :)" CreationDate="2011-02-17T18:03:24.770" UserId="5259" />
  <row Id="11441" PostId="8693" Text="@Joe: Sorry for the confusion, I'm a non-native. `:(` Anyway, thank _you_ for this civil argument, a welcome change for the all-too-often bickering I see on the SE sites. " CreationDate="2011-02-17T18:06:26.123" UserId="5512" />
  <row Id="11442" PostId="8697" Text="thanks for the insight on this. I especially liked your examples on the ExitStrategy." CreationDate="2011-02-17T18:14:35.977" UserId="2787" />
  <row Id="11443" PostId="8628" Text="Good article. So to do this in OpenGL, I wouldn't use the glutMainLoop, but instead my own? If I did that, would I be able to use the glutMouseFunc and other functions? I hope that makes sense, I'm still pretty new to all this" CreationDate="2011-02-17T18:26:18.820" UserId="982" />
  <row Id="11444" PostId="8714" Score="1" Text="and you just have one big image for the entire level?" CreationDate="2011-02-17T18:42:45.657" UserId="2301" />
  <row Id="11445" PostId="8718" Score="1" Text="For future reference, you will get better answers if you ask general programming questions like this one at Stack Overflow. http://www.stackoverflow.com/ - depending on community feedback this question might be migrated there anyway." CreationDate="2011-02-17T18:48:29.537" UserId="189" />
  <row Id="11446" PostId="8719" Text="@Ricket,Thanks for the tip " CreationDate="2011-02-17T19:10:20.107" UserId="3563" />
  <row Id="11447" PostId="8614" Text="No problem sorry new to using this site." CreationDate="2011-02-17T19:21:45.777" UserId="5476" />
  <row Id="11448" PostId="8704" Text="Could please you explain what you are trying to accomplish? What is your goal when keeping track of multiple touch points?  Gestures? " CreationDate="2011-02-17T19:51:19.590" UserId="3659" />
  <row Id="11449" PostId="8721" Text="@zaharmarz: hi and +1. That is great advice. I will take closer look at the last parameter of glDrawElements(). I am curious, do you think, there is a way on how to contoll VBO polygons directly from the Vertex Shader?" CreationDate="2011-02-17T20:00:10.220" UserId="2229" />
  <row Id="11451" PostId="8719" Text="Also note that casting a float to an int automatically floors it (at least in any implementation I've ever seen) so your call to floor should be unnecessary." CreationDate="2011-02-17T20:03:41.843" UserId="189" />
  <row Id="11452" PostId="8235" Text="@brainydexter: well, I know CLM and GLM only from reading. I have practical experience with GLM so far, and it looks great. I do not have any need to search anything else for now. GLM is great, beacuse it has been design to use identical naming as in GLSL." CreationDate="2011-02-17T20:04:43.150" UserId="2229" />
  <row Id="11453" PostId="8719" Score="1" Text="@Ricket: In most languages the rounding mode is truncate / round-to-zero, which is equivalent to floor for positive numbers but not negative numbers. I don't remember if this applies to GLSL, but I'd be surprised if it doesn't." CreationDate="2011-02-17T20:19:56.633" UserId="744" />
  <row Id="11454" PostId="8723" Text="Didnt know that, thx." CreationDate="2011-02-17T20:24:30.653" UserId="5091" />
  <row Id="11455" PostId="8661" Text="@haoD I was thinking something along the lines of what ghostonline answered. Let them build what ever, then translate it to constraints for a steering behavior.  Though from your response it sounds like steering behaviors probably aren't flexible enough as is." CreationDate="2011-02-17T21:14:21.843" UserId="2447" />
  <row Id="11456" PostId="8723" Text="Users can also disable Local Shared Objects by setting the storage limit to 0kb. Make sure to check that and don't let you application crash because of it." CreationDate="2011-02-17T21:26:16.343" UserId="20" />
  <row Id="11457" PostId="8235" Text="@Bunkai: I'm in the same camp. I use GLM too. This discussion got me wondering if CLM is better. " CreationDate="2011-02-17T22:15:34.130" UserId="4638" />
  <row Id="11458" PostId="8726" Score="3" Text="You'll find a lot of questions on here about HTML5 games, based on my observations, it seems the general consensus is to avoid it for now, since the compatibility across browsers is low." CreationDate="2011-02-17T22:19:04.593" UserId="1198" />
  <row Id="11459" PostId="8624" Text="I'm just apprehensive about how much of the game model's history I'm going to have to cache, especially for complex moves with conditional outcomes." CreationDate="2011-02-17T22:31:53.583" UserId="4802" />
  <row Id="11460" PostId="8624" Text="On another note, how would I tie this with how I render the game between turns (i.e. waiting for input)? Right now pieces each hold a reference to their current sprite, and sprites can take a piece's world location and get the screen position. I can give sprites animatable offset coordinates to represent motion between tiles, but I'll need a different approach for pieces that got removed but still need to be on the screen (e.g. death animations)." CreationDate="2011-02-17T22:46:43.837" UserId="4802" />
  <row Id="11461" PostId="8725" Text="@Will: +1 for valuable answer. Yeah, that would be a solution as well, if I do nto use one of the values like normal, uv, color...  Meanwhile I already implemented Zacharmarz's solution, and it worked very well. Thank you :-)" CreationDate="2011-02-17T22:59:10.317" UserId="2229" />
  <row Id="11462" PostId="8721" Text="I am marking this one as the *Accepted Answer*. I have tested it, and it works well for me. Thank you." CreationDate="2011-02-17T22:59:52.483" UserId="2229" />
  <row Id="11463" PostId="8721" Text="I haven't try to control polygons directly from vertex shader. But I think it's not possible. Vertex program is executed on one processor, which has it's own registers (I think). It can't access global memory like CUDA." CreationDate="2011-02-17T23:29:15.250" UserId="4947" />
  <row Id="11464" PostId="8694" Text="Thanks a lot! I should have specified that it was a 2D game but that was nice of you to give both answers. Reading up on Viewports now." CreationDate="2011-02-17T23:59:52.963" UserId="5509" />
  <row Id="11465" PostId="8690" Text="Simple and to the point, thanks." CreationDate="2011-02-18T00:06:22.663" UserId="5509" />
  <row Id="11467" PostId="8684" Text="Not exactly what I was looking for, but might do the trick if I really need to. Upvote for the idea :)" CreationDate="2011-02-18T00:37:49.810" UserId="4307" />
  <row Id="11468" PostId="8709" Text="This is whay I was looking for, a mathematical solution... thanks! I hope it gets as easy as it sounds." CreationDate="2011-02-18T00:39:10.137" UserId="4307" />
  <row Id="11470" PostId="8719" Text="@Joe That's an interesting fact that I never thought about, and I just confirmed it with a Java test case." CreationDate="2011-02-18T03:05:45.923" UserId="189" />
  <row Id="11471" PostId="8681" Score="1" Text="Specials are entities. Easiest way to determine whats real and whats faked is to watch the console. You can take damage from other players, from specials by name, but when you take damage from commons the console shows you taking damage from &quot;world&quot; (iirc)." CreationDate="2011-02-18T06:42:30.997" UserId="5390" />
  <row Id="11472" PostId="8688" Text="It's actually not that hard to get something simple up and running in 3D. Here's an example [link](http://forum.codecall.net/java-tutorials/8972-3-dimensional-cube.html). I didn't want to follow this example because I don't like the idea of merely creating a fixed array, of lets say 100 points, to make a rough looking sphere that was the same size as every other 'planet' of mine, so I was just curious as to whether there were other alternatives/ways/techniques." CreationDate="2011-02-18T07:55:37.600" UserId="5131" />
  <row Id="11474" PostId="8475" Score="3" Text="Joe, you should have posted that as an answer =)" CreationDate="2011-02-18T08:22:16.657" UserId="4264" />
  <row Id="11475" PostId="8628" Text="Unfortunately not. All callbacks registered in GLUT are fired off from within glutMainLoop as the event queue is drained and it iterates. I added some links to alternatives in the answer body." CreationDate="2011-02-18T09:07:48.873" UserId="2130" />
  <row Id="11476" PostId="8628" Text="+1 for ditching GLUT for anything else. As far as I know, GLUT was never meant for anything but test applications." CreationDate="2011-02-18T09:19:57.807" UserId="4264" />
  <row Id="11477" PostId="8623" Text="http://gamedev.stackexchange.com/questions/651/tips-for-writing-the-main-game-loop Duplicate?" CreationDate="2011-02-18T09:28:30.977" UserId="1156" />
  <row Id="11478" PostId="8739" Text="Do you want to know how to use chipmunk in general, or just the collision-detection part of chipmunk?" CreationDate="2011-02-18T09:55:52.517" UserId="20" />
  <row Id="11479" PostId="8476" Text="@Jari - Hey! don't take offense. No punishment and no bad feelings. Just that this poor guy took the trouble to get some 'unique' looking code that I could try out and might really help. Your advice, however rare, is something that I'll have to work out myself .. nothing 'cut-paste' about that. I just wanted to award the bounty to someone who might value it more. Besides you have gotten a lot of score on the answer itself! kudos on that and have a nice day :) ... and moreover it would look awful on me to award the bounty to someone who didn't even answer the title of the question, &quot;any code?&quot;" CreationDate="2011-02-18T10:30:44.667" UserId="2862" />
  <row Id="11480" PostId="3617" Text="Added bounty - additional requirement: must have cross-platform file io dialogs." CreationDate="2011-02-18T11:03:55.590" UserId="4264" />
  <row Id="11481" PostId="8739" Text="Yes I want To Know How TO Use The Chipmunk    " CreationDate="2011-02-18T11:33:22.950" UserId="5073" />
  <row Id="11482" PostId="8739" Text="Thank You For Reply" CreationDate="2011-02-18T11:33:53.887" UserId="5073" />
  <row Id="11483" PostId="8739" Text="I Want TO  know That how To Add This Api To My Project And how Can I Define As Per My Requirement" CreationDate="2011-02-18T11:35:45.037" UserId="5073" />
  <row Id="11484" PostId="8740" Text="in the second link i  am adding the all file named the demos still it want need Few More header  to include" CreationDate="2011-02-18T11:52:27.187" UserId="5073" />
  <row Id="11486" PostId="8691" Text="That's right, but I was assuming that a &quot;complete&quot; logging solution would allow the users to setup different kind of logs like you describe. &#xA;If you find this precision important in the question, please be my guest and add it to the question." CreationDate="2011-02-18T12:39:42.683" UserId="364" />
  <row Id="11487" PostId="8742" Text="Although I've been lost in Spanish airports where the 'this way' arrow that hangs over a corridor will point downwards not upwards; you have to see it to realise how unEnglish it is and confusing.  Localise your icons too!" CreationDate="2011-02-18T13:16:22.823" UserId="4129" />
  <row Id="11488" PostId="8742" Text="You'd think with thousands of games created over decades, there wouldn't be some convergent evolution in semiotics. " CreationDate="2011-02-18T13:43:06.733" UserId="892" />
  <row Id="11489" PostId="8628" Text="You still have to handle system events though, no? My understanding was that by using glutIdleFunc, it just handles the (in Windows) GetMessage-TranslateMessage-DispatchMessage loop and calls your function whenever there is no message to be gotten. You'd do that yourself anyway, or else suffer the OS's impatience in flagging your application as unresponsive, right?" CreationDate="2011-02-18T13:54:28.397" UserId="189" />
  <row Id="11490" PostId="8704" Text="No, I want to keep track of which finger is pressing the DPad, the player can press down, and then move the finger to the right, so if I dont't keep track, the event ACTION_DOWN will modify the direction to down, but when the touch point is moved to the left the DPad will not correct the direction to left, so I need to know where the finger is until the ACTION_UP is triggered, that's why I store the ID of the touch Point, but I'm confused about the correct way of doing it in android." CreationDate="2011-02-18T14:41:43.553" UserId="5345" />
  <row Id="11491" PostId="8742" Score="2" Text="@Will it's fun you said that, since I'm spanish :P I think the difference about the icons is because we think about the arrow as a pointer for the &quot;this&quot; word, and you think about the arrow as a pointer for the &quot;way&quot; word (hard to explain.) We are like &quot;hey, THIS way&quot; and you are like &quot;hey, this DIRECTION&quot;." CreationDate="2011-02-18T14:53:19.870" UserId="4307" />
  <row Id="11492" PostId="8745" Text="indeed it does look interesting" CreationDate="2011-02-18T15:08:17.377" UserId="4129" />
  <row Id="11493" PostId="8698" Text="Thanks to the upvoters! =)" CreationDate="2011-02-18T15:21:15.473" UserId="2778" />
  <row Id="11494" PostId="8746" Text="The event is called for every action then? Because I didn't find out how to get the action of each pointer." CreationDate="2011-02-18T15:27:22.640" UserId="5345" />
  <row Id="11495" PostId="8746" Text="Yeah. Each time a new finger hits the touch surface the event will be called. Check the ACTION_POINTER_INDEX_MASK for figuring out which pointer has which state." CreationDate="2011-02-18T15:29:31.633" UserId="1352" />
  <row Id="11496" PostId="8746" Text="Hm. It seems you can use getAction() to get the action and getActionIndex to find out which pointer caused the action." CreationDate="2011-02-18T15:40:34.167" UserId="1352" />
  <row Id="11497" PostId="8744" Score="2" Text="Don't think that is an OpenGL based UI." CreationDate="2011-02-18T15:42:53.510" UserId="4662" />
  <row Id="11498" PostId="8746" Text="Now I'm starting to get it (or not), I found this article: http://www.firstdroid.com/2010/06/10/making-sense-of-multitouch/ and if I understood correctly, the pointer index is really an index, so If I want to keep track of that SPECIFIC pointer I need to use the ACTION_POINTER_INDEX_MASK with ACTION_POINTER_UP to see if the pointer I'm tracking was released, is that it?" CreationDate="2011-02-18T15:45:30.597" UserId="5345" />
  <row Id="11499" PostId="8744" Text="It doesn't say it should be OpenGL based, or am I misunderstanding the question completely? I read it as he wan't something to take over for freeGLUT, which QT is more than capable of." CreationDate="2011-02-18T15:52:55.687" UserId="1356" />
  <row Id="11500" PostId="8746" Text="One question though: Why do you have to store the pointer id? Can't you just loop through all the pointers and determine which buttons have collisions with them every time the touchEvent has fired?" CreationDate="2011-02-18T15:54:16.480" UserId="1352" />
  <row Id="11501" PostId="8748" Text="Names are trademarked. Tetris, and its related terms are trademarks, and that is the usual grounds for their takedowns. " CreationDate="2011-02-18T15:59:11.793" UserId="14" />
  <row Id="11502" PostId="8744" Text="I'd second this! I use qt and it has almost everything one needs when they are starting. Over the years it has become very stable, with a good support. They also have a framework for games called gluon." CreationDate="2011-02-18T16:22:33.950" UserId="4638" />
  <row Id="11503" PostId="8749" Text="Potential duplicate http://gamedev.stackexchange.com/questions/1086/what-c-gui-library-can-you-suggest" CreationDate="2011-02-18T16:23:31.810" UserId="1156" />
  <row Id="11504" PostId="8751" Text="creepy .gif &gt;.&lt;" CreationDate="2011-02-18T17:16:47.193" UserId="5528" />
  <row Id="11505" PostId="8752" Text="@ChrisE, @JasonD, Thank you for your replies, and for that FAQ (i've needed something like that for a while!) I'll update my code to decompose the matrices and interpolate the components." CreationDate="2011-02-18T17:43:42.130" UserId="5399" />
  <row Id="11506" PostId="8748" Score="2" Text="Talk to a lawyer." CreationDate="2011-02-18T17:51:35.193" UserId="744" />
  <row Id="11507" PostId="8657" Text="Cool! Thanks for all the suggestions. I'm working on water-effect right now. I'll keep it open for now, in-case if anyone else wants to add some suggestions. " CreationDate="2011-02-18T18:08:10.987" UserId="4638" />
  <row Id="11508" PostId="8744" Score="4" Text="The problem with QT and frameworks in general is they control the main loop.  That is usually does not lend itself well games." CreationDate="2011-02-18T19:07:09.690" UserId="370" />
  <row Id="11509" PostId="8752" Text="Glad to be helpful!" CreationDate="2011-02-18T19:18:11.190" UserId="5259" />
  <row Id="11510" PostId="8737" Text="I disagree entirely. Lots of people have ideas, very few actually go and execute them all the way through. I am openly looking for someone who could be interested in working with me - not for me -. That doesn't mean that because it's an unpaid job that I'm just expecting 'whoever' to come and act as a slave for me. You don't even know what is being offered. And the only reason I ask this question is because I have met good programmers looking for promising no-pay projects. Unfortunately they had already found good choices before I showed up ;)" CreationDate="2011-02-18T19:34:45.123" UserId="5405" />
  <row Id="11511" PostId="8737" Text="The whole shebang didn't fit above so I'll continue here. By working with me, I refer to doing the programming side of things while I handle design, advertising, management, etc. etc. In my game the design and the programming workload are pretty much 50-50. There's the game's 'external' promotional website, the game interface per se, the countless graphic elements that give colour and shape to the game and last but not least, the whole game idea itself, properly laid down, carefully planned and masterfully executed. Then there's advertising, management, etc." CreationDate="2011-02-18T19:37:12.063" UserId="5405" />
  <row Id="11512" PostId="8737" Text="Oh, I forgot to specify: I'm speaking of a browser game here coded in PHP + MySQL + JQuery (on top of the HTML + CSS skeletons). It is only due to this whole combo of circumstances that I'm here. I wouldn't look for a programmer if I had a very heavy and intensive 3D game that would normally require an entire crew of programmers and not just one. I know very well that my idea can be taken care of by just one designer and one programmer" CreationDate="2011-02-18T19:39:05.057" UserId="5405" />
  <row Id="11513" PostId="8475" Text="Post it as an answer so I can mark it as 'the' answer Joe." CreationDate="2011-02-18T19:45:00.947" UserId="5405" />
  <row Id="11514" PostId="222" Text="For me these can be the most valuable threads. When I want a book or tutorial I always start at SO" CreationDate="2011-02-18T19:53:32.637" UserId="4209" />
  <row Id="11515" PostId="8761" Text="Thanks Ray that's helpful! but can you please list out game mechanics as well..." CreationDate="2011-02-18T20:05:20.307" UserId="5119" />
  <row Id="11516" PostId="8749" Text="I believe WFP uses DirectX to render its content." CreationDate="2011-02-18T20:15:40.080" UserId="1198" />
  <row Id="11517" PostId="8758" Score="2" Text="+1. Just because an API or third party library _can_ abstract away all the implementation details doesn't mean you don't need to know them.&#xA;Using 'off-the-shelf wheels' will help you write finished code faster; but making your own wheel will help you identify which premade ones are the best, and most importantly how to optimize and debug them when the spokes start popping out..." CreationDate="2011-02-18T20:16:43.497" UserId="5399" />
  <row Id="11518" PostId="8761" Text="No problem. I'm not completely certain what you mean in the context of your original question. What in particular are you after?" CreationDate="2011-02-18T20:27:41.927" UserId="2332" />
  <row Id="11519" PostId="8761" Text="It's ok i will make it a separate question.The other question in this post was removed(edited) as it doesn't relate the context a bit." CreationDate="2011-02-18T20:30:43.623" UserId="5119" />
  <row Id="11520" PostId="8749" Text="Not even remotely a duplicate, as I'm rendering with DirectX, not looking for a general-purpose lib." CreationDate="2011-02-18T21:18:12.100" UserId="4662" />
  <row Id="11521" PostId="8749" Text="@Nate Bross: If you have a native interface to it, I'm all ears." CreationDate="2011-02-18T21:39:53.970" UserId="4662" />
  <row Id="11522" PostId="8767" Text="Thanks. The difference between options 2.1 and 3 is that all the main thread does in 2.1 is collect messages sent by other threads, using native thread message-passing. 3 is simpler, but more of a hack since you [ab]use another subsystem to send messages to yourself." CreationDate="2011-02-18T22:09:44.397" UserId="2972" />
  <row Id="11523" PostId="8745" Score="1" Text="I use libRocket and it is absolutely wonderful! Pains of HTML are present in the library too, but with some fooling around with it, you get around anything virtually :D" CreationDate="2011-02-18T22:18:49.240" UserId="5007" />
  <row Id="11524" PostId="8697" Text="I don't understand why you couldn't have a class `PvX`, parent of both `PvE` and `PvP`, of course containing the common code (thus avoiding duplication)." CreationDate="2011-02-18T22:21:18.537" UserId="2188" />
  <row Id="11525" PostId="8698" Score="1" Text="+1. Just wanted to add that one of the best things about XNA is how simple it _appears_ at first to avoid scaring off beginners. But once you are comfortable with the basics and how the API is designed, you don't have to dig very far at all to get into the details, and start interfacing with the GPU directly. It may not be as lower a level as DX (thats the point afterall!) but it is very powerful, esp. when you consider how clean the API is. (I also recommend you do just that as soon as you can, IMO the graphics pipeline is one of the most interesting things to learn about!)" CreationDate="2011-02-18T22:22:33.420" UserId="5399" />
  <row Id="11526" PostId="8703" Text="@tenpn, your comment seems to suggest that you don't think this is good practice, I wondered if you could explain further? I've always thought it was the most suitable arrangement due to those methods containing code that is likely very specific to each type; but I have little experience myself so I would be interested to hear your thoughts." CreationDate="2011-02-18T22:29:33.210" UserId="5399" />
  <row Id="11527" PostId="8623" Text="I feel this question is more specific to OpenGL and whether using GLUT for the loop is advisable" CreationDate="2011-02-18T22:29:59.247" UserId="982" />
  <row Id="11528" PostId="8681" Text="Yes I see your point. They just crowd around me and do a clawing animation. That is very interesting, thank you." CreationDate="2011-02-18T22:32:05.783" UserId="3659" />
  <row Id="11529" PostId="8756" Text="Interesting. I’m a bit contrained in my setup because the morphing that you can see is done by a function that uses vertex shaders to do quick morphing. I can tell this thing to give the a render to FB or display list, but otherwise I’m not sure how I would break it up into two passes." CreationDate="2011-02-18T22:44:44.443" UserId="5539" />
  <row Id="11530" PostId="8772" Score="1" Text="To amend, an event stream for an application shouldn't even be a thread, ideally; it should just be a queue (lockless or protected with mutices) that external threads manipulate. We use a dedicated thread just to open up the option of strange hacks." CreationDate="2011-02-18T22:49:25.443" UserId="5259" />
  <row Id="11531" PostId="8628" Text="@Ricket Technically, glutMainLoopEvent() handles incoming events by calling the registered callbacks. glutMainLoop() is effectively { glutMainLoopEvent(); IdleCallback(); } A key consideration here is that, redrawing is _also_ a callback handled from within the event loop. You _can_ make an event-driven library behave like a time-driven one, but Maslow's Hammer and all that..." CreationDate="2011-02-18T22:51:27.370" UserId="2130" />
  <row Id="11532" PostId="8757" Text="How often do you actually &quot;start a game&quot;? If you are rapidly iterating ideas, do whatever works. If you are making a magnum opus where a misstep is costly or time is limited, why waste time reinventing the wheel? If you are interested in learning how things work, why not write your own tech? What are your goals here?" CreationDate="2011-02-18T22:52:43.473" UserId="5259" />
  <row Id="11533" PostId="8758" Score="3" Text="+1 Don't reinvent the wheel, unless you're learning to make wheels." CreationDate="2011-02-18T23:00:31.377" UserId="4871" />
  <row Id="11534" PostId="8774" Score="1" Text="Just to expand.  When your application is 'vsync'd it means, your graphics card will not update/swap buffers while the current buffer is in the middle of being drawn.  Your application's FPS will be limited to the refresh rate of the monitor because the application will wait until the end of the current frame before it will send the next frame. " CreationDate="2011-02-18T23:48:14.550" UserId="2902" />
  <row Id="11535" PostId="8775" Text="Thanks, yes the directions are arbitrary. I was fearing a quartic as I'm unfamiliar in solving them, but is it just a case of running the constants through some published quartic solution and using the least positive amount?" CreationDate="2011-02-18T23:52:30.407" UserId="5548" />
  <row Id="11536" PostId="8775" Text="@Nick, I think it should be, yes, although there's no guarantee of a numerically stable solution - see http://www-staff.it.uts.edu.au/~don/pubs/solving.html" CreationDate="2011-02-19T00:04:22.317" UserId="5020" />
  <row Id="11537" PostId="8752" Score="1" Text="While interpolating the component vectors &amp; re-ortho-normalizing them will keep the model from shrinking, it can still give odd interpolation results. For instance, when d is at a low value the interpolation will result in less of a change from one frame to the next than it will when d is near it's mid range.           One way to get a smoother animation there is to use quaternions and interpolate them. They do not suffer that problem and there is less work in the re-normalizing stage too." CreationDate="2011-02-19T00:29:25.587" UserId="1923" />
  <row Id="11538" PostId="4381" Text="I just spent an entire evening on it and it really, really needs a CMake file. I like the look and feel, I don't like that it uses Boost." CreationDate="2011-02-19T00:33:51.820" UserId="662" />
  <row Id="11539" PostId="8624" Score="1" Text="@AJM I hope my edit answers some of your questions." CreationDate="2011-02-19T00:56:31.483" UserId="202" />
  <row Id="11540" PostId="8758" Score="4" Text="remember that this will improve your skills in game **engine** design, but not in game design." CreationDate="2011-02-19T01:03:38.013" UserId="202" />
  <row Id="11541" PostId="8772" Text="That sounds like a lot of threads. My plan is to use a single thread which handles all events, and defer slow processing to separate threads (task completion is signalled as another event)." CreationDate="2011-02-19T01:16:18.850" UserId="2972" />
  <row Id="11542" PostId="8698" Text="Thanks for you comment sebf, I really appreciate it. =)" CreationDate="2011-02-19T02:29:24.627" UserId="2778" />
  <row Id="11543" PostId="8774" Text="+1 I thought I knew what `vsync` meant before I read your your explanation about it. Thanks for the great level of details and this visual representation that comes with the explanations. An image is worth a thousand words! =)" CreationDate="2011-02-19T02:32:59.170" UserId="2778" />
  <row Id="11545" PostId="8754" Score="1" Text="just transform your geometry with two matrices and interpolate linearly between the final transformed vertices." CreationDate="2011-02-19T03:23:26.883" UserId="202" />
  <row Id="11546" PostId="8780" Text="I've never seen the word &quot;deplacement&quot; before.  Can you explain what it means to you?  (I assume it's to do with deployment and placement and movement, but wouldn't want to leave out something important.)" CreationDate="2011-02-19T03:27:36.613" UserId="4191" />
  <row Id="11547" PostId="8129" Text="gta4 on xbox 360 is p2p so its possible and there is hardly any lag " CreationDate="2011-02-19T04:07:27.807" UserId="5557" />
  <row Id="11549" PostId="8700" Text="@sbi It's a global on or off thing on the application side. &quot;Browser log client&quot; does the filtering, syntax, but it always get all the log. It's radical, but it's based on the experience that during dev, you should always log everything so that you can catch/reproduce easily any bugs you stumble upon.  If you have to optimize, it's browser side again : Using socket you're not bound to log using string, you can directly log binary data (Id + floats), which is **bold** faster than any other string based log lib...(matching Id to string browser side...)" CreationDate="2011-02-19T06:23:22.843" UserId="2836" />
  <row Id="11550" PostId="8787" Text="So no more books?" CreationDate="2011-02-19T06:26:22.043" UserId="5560" />
  <row Id="11551" PostId="8787" Score="4" Text="I wouldn't say that, but at some point you have to just jump head first in to the code. More reading is always a good idea, there are lots of books recommended on this site, all you need to do is a little searching." CreationDate="2011-02-19T06:32:44.400" UserId="2787" />
  <row Id="11552" PostId="8787" Score="4" Text="@Bob: Books are good for learning. Practice is good for integrating your learnings." CreationDate="2011-02-19T07:17:11.433" UserId="2778" />
  <row Id="11554" PostId="8791" Text="I just updated the last segment of the post with initialization code. Also, I render them in a counter-clockwise order, so it shouldn't be the problem. I'll try to see if that helps though." CreationDate="2011-02-19T09:28:02.773" UserId="4638" />
  <row Id="11555" PostId="8791" Text="That didn't help. Also, as a test, I simply rendered the triangle without FBO and it was rendering correctly." CreationDate="2011-02-19T09:31:12.607" UserId="4638" />
  <row Id="11556" PostId="8784" Text="Let's clarify that: there is not a single encryption that cannot be cracked (or it just hasn't been found yet). The best you can hope for is to either keep the crackers disinterested or to give yourself a few weeks." CreationDate="2011-02-19T09:38:09.093" UserId="662" />
  <row Id="11557" PostId="8791" Text="Then I suspect your depth buffer is not attached properly. I will post my own version of the init." CreationDate="2011-02-19T09:48:25.820" UserId="662" />
  <row Id="11558" PostId="8770" Text="Keep multiple copies of your rendered buffer. For example, blur four of the previous frames to create your current frame. That should create the effect you want." CreationDate="2011-02-19T10:23:48.490" UserId="662" />
  <row Id="11559" PostId="8697" Text="@Lo'oris Because &quot;PvE&quot; and &quot;PvP&quot; are not small and self-contained. &quot;PvpExitSttrategy&quot;, OTOH, is." CreationDate="2011-02-19T10:44:09.413" UserId="2710" />
  <row Id="11560" PostId="8780" Text="Sorry, english isn't my native language. You're right, i mean ennemies' movement : trajectory, how they are moving on the screen, for example right on the player, doing ellipses etc." CreationDate="2011-02-19T11:07:17.920" UserId="5555" />
  <row Id="11561" PostId="8792" Score="2" Text="What do you mean xbox project?" CreationDate="2011-02-19T11:24:04.163" UserId="2696" />
  <row Id="11562" PostId="8784" Score="1" Text="Remember people who are determined to pirate your game will find a way around any DRM and probably find a way to remove it.  DRM will only really affects legitimate users." CreationDate="2011-02-19T11:42:12.520" UserId="2902" />
  <row Id="11563" PostId="8783" Text="For what kind of game?" CreationDate="2011-02-19T11:45:53.560" UserId="2188" />
  <row Id="11564" PostId="8796" Score="6" Text="I wholeheartedly agree, this is **the** answer." CreationDate="2011-02-19T11:46:49.800" UserId="2188" />
  <row Id="11565" PostId="8781" Text="@Steve. Thank you very much for that description, its a very interesting problem/quirk, thats much clearer seen like that. In my application, what I've done is use XNAs methods to decompose the matrix to Scale, Rotation (as a quat.) and Translation components. Each type has its own Lerp method which I use to interpolate between them and reconstruct the transform for the bone. Not the most efficient way but it works well, I also don't need to normalize the matrix as a matrix (I never could get that code to work!)" CreationDate="2011-02-19T13:32:13.160" UserId="5399" />
  <row Id="11566" PostId="8799" Text="Some example code will help." CreationDate="2011-02-19T14:06:53.290" UserId="2332" />
  <row Id="11567" PostId="8799" Text="Theres too much code to copy and paste, would you like me to copy and paste the code spoken of above?" CreationDate="2011-02-19T14:11:49.347" UserId="5141" />
  <row Id="11568" PostId="8799" Text="You don't have to copy and paste everything, just the appropriate code that you're having issues with." CreationDate="2011-02-19T14:20:53.143" UserId="2332" />
  <row Id="11569" PostId="8800" Score="2" Text="+1. meaning you have a variable: TheMathsSnakeGame.Snake. This is an instantiation of some class. Make that class a public class so it's ok to pass any instantiated objects of that class as params to other class' public methods (i.e. .Reposition())" CreationDate="2011-02-19T14:38:36.973" UserId="1923" />
  <row Id="11570" PostId="8800" Text="Thank you Steve, I've just made the Snake class public instead of its default (which is private?) and it has worked :D&#xA;&#xA;Thank you! :)" CreationDate="2011-02-19T14:49:45.553" UserId="5141" />
  <row Id="11571" PostId="8783" Score="13" Text="I can think of two ways of minimizing piracy. Make a bad game, or don't release it at all. Making good enough game that someone bothers to pirate it is an accomplishment in itself." CreationDate="2011-02-19T15:35:31.363" UserId="4264" />
  <row Id="11572" PostId="8770" Text="@knight666 wouldn't it be better (memory certainly, speed I'm not sure) to keep 1 extra buffer (call it A) and than mix a fraction (say 0.75) of that with the output buffer (going to the screen, call it B) and then copy B to A afterwards. This would create a rolling average and increasing motion blur wouldn't cost anything extra." CreationDate="2011-02-19T15:44:13.480" UserId="337" />
  <row Id="11573" PostId="8796" Text="I'm going to state the following hypothesis: Produce a quality game (like AC), set a reasonable price ((costs+profit)/#sells of comparable games), don't implement any copy protection, offer many purchasing mechanisms, provide separate download and payment links (you don't have to pay in order to access the download link) =&gt; The revenue won't cover the costs. Any opinions?" CreationDate="2011-02-19T16:59:56.043" UserId="202" />
  <row Id="11574" PostId="8791" Text="Thanks for posting the code. I'll try and see if depth texture works. Also, what do you think of setting the viewport/projection matrices in the `Render()` initially ? Does that look ok ?" CreationDate="2011-02-19T17:16:09.050" UserId="4638" />
  <row Id="11575" PostId="8800" Text="internal is the default access modifier, when none is specified (http://msdn.microsoft.com/en-us/library/ms173121.aspx)" CreationDate="2011-02-19T17:50:35.773" UserId="2332" />
  <row Id="11576" PostId="8806" Text="Farmville is free online, so no. But if they wanted to, they could download the .swf and change things around. However, the changes would probably only be local. " CreationDate="2011-02-19T17:57:11.437" UserId="2946" />
  <row Id="11577" PostId="8787" Score="1" Text="@Bob- I would definitely start coding. I'm in the same predicament as you, and really, theory only gets you so far. You should start creating a game, and then start looking back and see if you can apply the theory you learned from the book to make the game/game engine broader, more flexible, etc. Besides, theory is boring unless you apply it." CreationDate="2011-02-19T17:59:08.487" UserId="2946" />
  <row Id="11578" PostId="8783" Score="1" Text="It will be pirated anyway, it doesn't matter what you will do to avoid that. Just don't give anything to crack/pay for and leave people having fun with your game. IMO it will be more appreciated and will spread faster" CreationDate="2011-02-19T18:22:05.680" UserId="4997" />
  <row Id="11579" PostId="8806" Text="The point I was trying to make is that if a game is online and requires a login (farmville requires a facebook login, but it's disguised as &quot;installing&quot; the app) then, if you design it well, it's virtually impossible to play &quot;illegally&quot;. Even if you take a simple single player dungeon exploring game and host it as a java applet then you can still prevent non-payers from playing the game. It would also be easier to provide a free version or expansions. " CreationDate="2011-02-19T18:24:44.623" UserId="5540" />
  <row Id="11580" PostId="8796" Text="@Dave: Your hypothesis is flawed, at least partly because quality is completely subjective, and the sales of comparable games are not a strong indicator of a given game's sales at all." CreationDate="2011-02-19T18:27:00.887" UserId="4662" />
  <row Id="11581" PostId="8786" Score="1" Text="That was an extremely interesting article." CreationDate="2011-02-19T18:27:31.403" UserId="4662" />
  <row Id="11582" PostId="8806" Text="Every server-based game simply *can't* be pirated, because you give away the client and people must connect to your server (and pay to do that, hopefully). This is a good advice in general, but is only ok for online games." CreationDate="2011-02-19T18:55:38.393" UserId="2188" />
  <row Id="11583" PostId="8803" Score="1" Text="Great point about the demo." CreationDate="2011-02-19T18:56:56.893" UserId="2188" />
  <row Id="11584" PostId="8779" Text="How are you displaying things in WPF? Are you using a Canvas (or whatever it's called) or are you using some kind of integration with XNA?" CreationDate="2011-02-19T18:58:42.910" UserId="3547" />
  <row Id="11585" PostId="8784" Score="2" Text="This is bullshit. Requiring to be online to play an offline game will greatly hurt legitimate customers, while pirates will be able to play it more comfortably once the hack will be ready (and, yes, even in this case **it will** eventually)" CreationDate="2011-02-19T18:59:16.797" UserId="2188" />
  <row Id="11586" PostId="8779" Text="I'm not using XNA, just WPF. It's custom controls mostly, but that isn't the issue. I just wan't to know if there are any guidelines as to how to manage screens in WPF." CreationDate="2011-02-19T19:35:19.157" UserId="1693" />
  <row Id="11587" PostId="8806" Score="4" Text="**[World of Warcraft Pirate Servers](http://news.softpedia.com/news/Blizzard-Wins-88-Million-Dollars-In-Pirate-Server-Lawsuit-152494.shtml)** . The most impressive part (to me) is that this private server, got over $3M in revenue from players..." CreationDate="2011-02-19T19:47:39.400" UserId="165" />
  <row Id="11588" PostId="8796" Score="3" Text="-1. Can't agree that copy protection is useless. There are a non-zero quantity of people who both buy games and who don't know about torrents or other illegal download sources. Note that the question is talking about minimising piracy, not eliminating it entirely." CreationDate="2011-02-19T19:54:31.917" UserId="1101" />
  <row Id="11589" PostId="8765" Text="How does 2.1 differ from 3? It would appear that 2.1 is the simplest case of 3, merely designating the system on the main thread as the authority." CreationDate="2011-02-19T20:04:14.257" UserId="1101" />
  <row Id="11590" PostId="8812" Text="That's what I meant by &quot;polling&quot;, basically. You can't gracefully wait until an event comes from either event source. It's quite inefficient." CreationDate="2011-02-19T21:07:10.203" UserId="2972" />
  <row Id="11591" PostId="8808" Text="Sorry, I think this is a mis-informed answer. I don't see where any synchronization problems could appear on 2.1, unless your platform's thread messaging is poor/nonexistant and you need to write your own thread-safe event queue (and even then this couldn't have anything to do with PostMessage etc.) &quot;Significant rewriting&quot; is not a problem unless you're Doing It Wrong - remember that you are communicating with code within the same process, so you can easily just send a pointer to a subsystem-agnostic structure with the data." CreationDate="2011-02-19T21:12:49.183" UserId="2972" />
  <row Id="11592" PostId="8808" Text="I also can't make any sense of your explanation of how polling can ever be efficient. You have to sprinkle your event polling at arbitrary point(s) in your program's main loop (for example, after drawing a frame, which is sadly what most games do). This is often &quot;good enough&quot; in practice, but it's by far not the best solution." CreationDate="2011-02-19T21:15:16.323" UserId="2972" />
  <row Id="11593" PostId="8772" Score="1" Text="We're a pretty heavily threaded engine (targeting PCs, so this is acceptable). One thread is used to service normal event loops, one to do rendering (with the way OpenGL handles contexts, this is somewhat necessary), and then one more to handle logic, feeding some number of worker threads, and so forth." CreationDate="2011-02-19T21:16:41.903" UserId="5259" />
  <row Id="11594" PostId="8700" Text="@Tuan: While I can see that this is very practical, it's really just a logger's backend (what templog calls a &quot;log sink&quot;, IIRC). Performance is one of the requirements listed. I have found that I need to add log statements to a piece of code while debugging it, but once it's up and running this piece of code would be too talkative and drown whatever I'm working on then in its noise, and would also cost too much performance. So I want to be able to tone up and down the log level on whole pieces of code with changing a few lines of code. That's what a log lib's middle layer does for you." CreationDate="2011-02-19T21:19:49.577" UserId="5512" />
  <row Id="11595" PostId="8808" Text="Not being able to process input or handle any other kinds of events &quot;between frames&quot; is a real, practical problem that's been pointed out by users of the game I'm maintaining. Even though the game's physics engine runs at 50FPS and it's not graphically heavy, its players have become so skilled that they're hitting the limitations of per-frame input, which are preventing them from expanding their skills further. It's a problem which I intend to get rid of (along with decoupling logic and video frame rate)." CreationDate="2011-02-19T21:23:44.810" UserId="2972" />
  <row Id="11596" PostId="8688" Text="@d33j But this just uses some canvas for drawing lines and that's exactly what i meaned by the &quot;implement 3D library by yourself&quot;. For something more sophisticated than cube with some crazy hacks to 3D algebra (sorry I dont want to be rude, but that is really not nice). You will have to use 3D api or implement real simple 3D library with view/proj/matrices support for triangles and at least texturing and shading (phong will be for planet enough). " CreationDate="2011-02-19T21:32:00.700" UserId="3794" />
  <row Id="11597" PostId="8765" Text="Hi. I explained that in a comment to homebrew's answer." CreationDate="2011-02-19T21:32:02.253" UserId="2972" />
  <row Id="11598" PostId="8688" Text="@d33j But i would like to encourage you. Doesn't matter if you will decide to really implement 3D lib by yourself or use 3D api like Jogl. It will be great fun and great experince ;-]" CreationDate="2011-02-19T21:35:37.590" UserId="3794" />
  <row Id="11599" PostId="8812" Text="@CyberShadow: No game loop blocks until a new message is available, they go render a new frame or do a game logic update." CreationDate="2011-02-19T21:45:52.863" UserId="4662" />
  <row Id="11600" PostId="8812" Text="Oh, I see what you mean now. Please see my comments to Kylotan's answer why I don't consider this a good solution. I'll amend my question to make this clearer." CreationDate="2011-02-19T21:50:26.140" UserId="2972" />
  <row Id="11602" PostId="5390" Text="Aspiring level-designers - be prepared to work with the most awful software ever produced!" CreationDate="2011-02-19T23:40:27.733" UserId="5574" />
  <row Id="11603" PostId="8796" Text="Reasonable pricing is the way forward." CreationDate="2011-02-19T23:46:48.300" UserId="5574" />
  <row Id="11604" PostId="8808" Text="Which &quot;thread messaging&quot; do you have in mind? I've worked with several thread implementations, none of which have a messaging system. And I've used several messaging systems that were designed to run single-threaded." CreationDate="2011-02-20T00:02:31.833" UserId="1101" />
  <row Id="11605" PostId="8808" Text="As for polling at 'arbitrary points', what's the problem? We render at arbitrary points too. We often drain the event queue at arbitrary points. All points are arbitrary unless your process is responding directly to hardware interrupts, which very few user level programs are these days." CreationDate="2011-02-20T00:03:40.707" UserId="1101" />
  <row Id="11606" PostId="8808" Text="As for not being able to process things between frames, handling the input in another thread isn't going to help because the player's latency will still be limited by their frame rate, as they have no other feedback to show them the results of their actions. And even if your players are so fast that the 20ms latency per frame at 50fps is significant then again being threaded and event driven won't help because your input thread is unlikely to be scheduled at a much higher granularity than that. The best you can hope for is timestamped events - which can be polled for as usual." CreationDate="2011-02-20T00:08:17.470" UserId="1101" />
  <row Id="11608" PostId="8819" Score="1" Text="This approach is very easy to implement but very hard to fine tune (it can look like objects leaving traces instead of being blurred). Another also simple approach is to &quot;smear&quot; pixels in the inverted camera movement direction in a post processing pixel shader." CreationDate="2011-02-20T02:31:45.100" UserId="202" />
  <row Id="11609" PostId="8808" Text="&quot;Which &quot;thread messaging&quot; do you have in mind?&quot; - I linked to one example in the question. I'm sure there's something similar for C++ as well." CreationDate="2011-02-20T03:11:57.667" UserId="2972" />
  <row Id="11610" PostId="8808" Text="The main problem with polling at arbitrary points is that slow rendering or logic update should not affect responsiveness of input. I don't understand what you mean by &quot;We render at arbitrary points too&quot;. The proper way I see to do rendering is to draw as often as possible, taking into account the exact current time and tweening the objects according to that. This will ensure the smoothest visuals with any frame rates." CreationDate="2011-02-20T03:17:46.830" UserId="2972" />
  <row Id="11611" PostId="8808" Text="&quot;the player's latency will still be limited by their frame rate&quot; - sorry, that's not true. We are not talking about reaction time. Players can time button presses with errors much smaller than 20ms." CreationDate="2011-02-20T03:19:02.367" UserId="2972" />
  <row Id="11613" PostId="8573" Text="@DeadMG A good programmer can write good, secure code in any language. Conversely, a bad programmer can write awful, insecure code in any language. A poor carpenter blames his tools." CreationDate="2011-02-20T03:57:30.813" UserId="263" />
  <row Id="11614" PostId="8783" Score="1" Text="I don't mean to come across as stuck-up, but before you worry about people pirating your game, perhaps you should focus on building a game work pirating. :)" CreationDate="2011-02-20T04:11:56.550" UserId="263" />
  <row Id="11615" PostId="8732" Text="The thought of re-inventing the (admittedly specialized) wheel for the 10,000th time just makes my palms itch." CreationDate="2011-02-20T04:23:16.590" UserId="892" />
  <row Id="11616" PostId="8808" Text="&quot;being threaded and event driven won't help because your input thread is unlikely to be scheduled at a much higher granularity than that&quot; - how so? According to a quick experiment, a busy thread gets thousands of context switches per second on my machine. A thread that's woken up by an incoming event should not even have any scheduling problems." CreationDate="2011-02-20T06:13:00.797" UserId="2972" />
  <row Id="11617" PostId="8700" Text="@sbi: may require benchmarks, but there's chance that the best logging library, even at the lowest logging level, still costs you more than a binary logger that logs everything. There is not even a single &quot;binary to char&quot; CPU Cycle wasted... So it's really more feature AND more performance." CreationDate="2011-02-20T06:18:36.000" UserId="2836" />
  <row Id="11618" PostId="8700" Text="@Tuan: Before we decided to actually use templog, we made some tests. If logging is turned off for the severity, origin, or whatnot of a specific log message, and if the compiler is able to find out that there are no side effects in evaluating the parameters, then VC is indeed able to optimize a full-blown log statement into nothingness. And when it comes to speed, you won't beat code that isn't there to be executed in the first place. " CreationDate="2011-02-20T09:55:51.843" UserId="5512" />
  <row Id="11619" PostId="8573" Text="@Bob Somers: That's entirely true. However, that doesn't mean that some languages are substantially better than others at it." CreationDate="2011-02-20T10:41:24.497" UserId="4662" />
  <row Id="11620" PostId="8808" Score="1" Text="@CyberShadow: They can, but they won't get any *feedback* on it. Even if they push the button perfectly, you can't render the frame or do the physics to actually update that action in time." CreationDate="2011-02-20T11:07:05.640" UserId="4662" />
  <row Id="11621" PostId="8820" Score="2" Text="If players joining and leaving is a frequent event, it would likely be better to chose as the central host not based on ping, but based on &quot;likeliness to not disconnect&quot;. (how to determine that value, is up to you)" CreationDate="2011-02-20T11:19:34.803" UserId="2188" />
  <row Id="11622" PostId="8804" Text="Thanks for your answer, i will take it into account, but i was more asking for a technical point of vue than game-design-ish one. Once i'll have implemented a way to make even simple patterns, i'll be able to test different movements etc." CreationDate="2011-02-20T12:12:31.083" UserId="5555" />
  <row Id="11623" PostId="8808" Score="1" Text="@CyberShadow: By default Windows won't switch between threads more rapidly than every 15/16ms or so, unless you change it with timeBeginPeriod. Other operating systems are similar. Context switches are expensive so most OSes try to minimise them. As for the D thread messaging, that may be fine but there is nothing like that as part of C++. There is also nothing like that in SDL. To compare pros and cons further will require a concrete example." CreationDate="2011-02-20T14:03:06.207" UserId="1101" />
  <row Id="11624" PostId="8831" Text="Is this business critical code?, do your users win real money?" CreationDate="2011-02-20T14:16:14.407" UserId="202" />
  <row Id="11625" PostId="8830" Text="+1 The 3ds max's approach in which you can set gizmos to align with certain coordinate systems is really cool." CreationDate="2011-02-20T14:23:00.463" UserId="202" />
  <row Id="11626" PostId="8198" Text="Sorry for the late accept, I was unfortunately distracted from the project for a while. I really like the controller approach, I'll adopt it!" CreationDate="2011-02-20T15:23:42.203" UserId="5207" />
  <row Id="11627" PostId="8808" Text="DeadMG: why do you say that? I *can* do a logic update while the graphics thread is still drawing. Feedback mustn't be instant. Even if the logic thread is busy, recording the message's time is necessary for input systems which don't provide timestamped messages." CreationDate="2011-02-20T17:08:14.637" UserId="2972" />
  <row Id="11629" PostId="8808" Text="By the way, the argument of whether we need the input accuracy is moot, because I've already confirmed it by experiment with our best players. Can we assume that I really *do* need this and move on?" CreationDate="2011-02-20T17:11:34.803" UserId="2972" />
  <row Id="11630" PostId="8808" Text="Kylotan: that's interesting, I didn't know that. I see no problem with using timeBeginPeriod in a video game. This problem should manifest even less on multicore systems. Anyway, it wouldn't be hard to use a threadless model on single-core CPUs if it'll impact performance that much - I see no problems with abstracting this away." CreationDate="2011-02-20T17:34:50.413" UserId="2972" />
  <row Id="11631" PostId="8789" Text="AntTweakBar is awesome, but rather limited. It's great for what it's designed for - tweaking values and extremely simple integration - but not useful as a generic UI toolkit." CreationDate="2011-02-20T18:13:47.213" UserId="4264" />
  <row Id="11632" PostId="8761" Text="+1 for the *finish it* line - actually *completing* a project is good experience." CreationDate="2011-02-20T18:33:19.597" UserId="165" />
  <row Id="11633" PostId="8832" Text="That being said, no slot machine made within the past few decades spins reels like that. If three bells pays out jackpots, they're going to come up disproportionately less, no matter how many are on the physical reel." CreationDate="2011-02-20T18:51:39.903" UserId="744" />
  <row Id="11634" PostId="8830" Text="I really like Max system aswell, it feels very 'robust'. In my app I go for something similar; as the bone rotation is based on the complete gizmo rotation the user can rotate around any arbitrary axis they like, and change this by rotating the gizmo independantly of the bone. The problem with this is that the gizmo moving as one has undesired effects when trying to constrain on one axis (euler angle). The next feature is adding the ability to work with an axis independantly." CreationDate="2011-02-20T19:02:26.927" UserId="5399" />
  <row Id="11635" PostId="8836" Text="Hello Mark, welcome to gamedev. You will find your answer here: http://gamedev.stackexchange.com/questions/7540/enemy-movement-in-straight-line-to-player-in-chase-game/ ." CreationDate="2011-02-20T19:12:27.577" UserId="3794" />
  <row Id="11636" PostId="8833" Text="I've been examining Max this evening trying to pick up what all the little behaviours are I like about it. The local rotation matches quite closely what I've got so i'm going to have another go with my code and see if I can emulate it." CreationDate="2011-02-20T19:13:02.663" UserId="5399" />
  <row Id="11637" PostId="8833" Text="@sebf good luck and much success." CreationDate="2011-02-20T19:18:28.230" UserId="202" />
  <row Id="11638" PostId="8833" Text="@Dave, Thank you. I've removed some of the code that tried to guess the orientation, and instead take the magnitude based on the mouse deltas like Max does and its more stable now. When I figure out how to clamp the gizmo so it aligns perfectly with the bone constraints axis' that will be the key..." CreationDate="2011-02-20T19:41:08.347" UserId="5399" />
  <row Id="11639" PostId="8350" Text="This was very true for the C64, which had sprite collision interrupts. The NES had a Sprite0 Hit Flag, but I'm under the impression it was very limited, and the SNES and GBA had no hardware collision detection. Blargg on nesdev brings up that this is likely because tile layers can overlap sprites." CreationDate="2011-02-20T20:59:28.457" UserId="4062" />
  <row Id="11640" PostId="8350" Text="Nesdev collision detection discussion - http://nesdev.parodius.com/bbs/viewtopic.php?p=30065&amp;sid=1076d73f5cac2908a7586a795d46ad5b NES hardware specification (search &quot;collision&quot; to find relevant parts) - http://nocash.emubase.de/everynes.htm C64 collision detection - http://www.c64-wiki.com/index.php/Sprite#Interrupt_on_collision" CreationDate="2011-02-20T21:02:37.953" UserId="4062" />
  <row Id="11641" PostId="8832" Text="I just handle the math - making it fun is somebody else's job :)" CreationDate="2011-02-20T21:11:09.967" UserId="634" />
  <row Id="11642" PostId="8837" Text="Thank you Ray for your explanation, i've tried to make a method with your input and it works but I'm not sure on how to do the loop. Please see my edited function in my question. Thanks!!" CreationDate="2011-02-20T22:28:49.517" UserId="5583" />
  <row Id="11643" PostId="332" Text="I appreciate your point that it's important to understand well the problem you're solving.  But with respect, I still think I disagree with your conclusion.  Every problem has usage patterns that cannot be expressed to custom STL allocators, but can be easily leveraged in a custom container, such as a fixed-block allocator implemented with a flat array.  And applying a fixed transformation over an array of homogeneous types will very likely result in much better cache coherency than iterating over a vector of polymorphic types and invoking virtual methods." CreationDate="2011-02-20T22:30:40.383" UserId="217" />
  <row Id="11644" PostId="8837" Text="@Mark edited for your updated question :)" CreationDate="2011-02-20T22:49:48.227" UserId="2332" />
  <row Id="11645" PostId="8832" Text="@joe - I agree, the bells will be on the reel a ton less that the rest of the symbols.    @celion I don't understand fully yet.  Let's say I have the reels (I have 5), and the user pushes the button to play the game.  I grab the next 5 random numbers, make the calcs to find the stops and make the symbols show.  How does the payout rate effect the random numbers and the stops?  Do I set the payout by the symbols that are on the reel, and the amount high-&gt;low paying symbols contained on the reel?" CreationDate="2011-02-20T23:00:48.383" UserId="5578" />
  <row Id="11646" PostId="8837" Text="Thank you so much Ray this is what I was looking for! I will probably have to buy a gamedesign math book to fully understand everything and come up with own implementations. The player moves to the excact location now but it still doesn't travel in a straight line to the target. Let's say the player is in bottom-left corner and target is top right, then it will travel from left to right first and just before the target x it will travel a diagonal line to the top screen. But maybe its good for me to figure something out myself too instead of spoonfeeding me haha, sometimes it DOES travel straig" CreationDate="2011-02-20T23:10:51.320" UserId="5583" />
  <row Id="11647" PostId="8837" Text="Good idea of the game update method method cause I saw my FPS dropped to 20 with the way I did it before. So much to learn for me but I really like it!!" CreationDate="2011-02-20T23:15:05.607" UserId="5583" />
  <row Id="11648" PostId="8837" Text="No problem :) it might be because you have a grid based world, but I'll leave that to you. I would recommend getting Game Coding Complete by Mike McShaffry, it contains a lot of help regarding the game loop and even basic vector maths operations :)" CreationDate="2011-02-20T23:30:15.040" UserId="2332" />
  <row Id="11649" PostId="8845" Text="Still does not work. I can move the camera pos, but the rotation does not work correctly.(it looks like the world object rotates around of the orig instead of the camera." CreationDate="2011-02-20T23:52:49.797" UserId="5584" />
  <row Id="11650" PostId="8845" Text="@user5584 Interesting. And with the same inputs gluLookAt works? And if you say rotate you mean rotate camera target or multiply view matrix with rotation matrix? Does your rotation work for gluLookAt?" CreationDate="2011-02-20T23:58:56.173" UserId="3794" />
  <row Id="11651" PostId="8338" Text="This was the technique used for Chrono Trigger, as can be seen from this screenshot of Temporal Flux - http://geigercount.net/crypt/tf00.png" CreationDate="2011-02-21T00:15:19.993" UserId="4062" />
  <row Id="11652" PostId="8832" Text="@Kris-Mitchell - Maybe I'm misunderstanding how slot machines work. I assumed that for each possible outcome, the payout is fixed. If the symbols on the reel change each round, the math gets a bit harder, but you should still be able to work out (offline, with a pencil and paper) the probability of a given state. This just gives you a way to make sure that a set of payouts will give the desired (average) return rate; there are an infinite number of ways to assign the payouts given that constraint, so it's up to you to pick a &quot;fun&quot; one." CreationDate="2011-02-21T00:20:58.613" UserId="634" />
  <row Id="11654" PostId="8832" Text="@celion - I did not mean to miss-lead you, and if anyone else is reading this correct me if I am wrong, but the payout is fixed.  I don't believe that the reels change each round.  I think that the reels for video slots are just way larger than a true mechanical slot machine.  By the way, I believe I would enjoy option 2 or 3 the most.  Two is risky enough to be a challenge, where you can make money, while still knowing you will loose.  Three on the other hand seems to be better because it feels like you have more of a chance to win." CreationDate="2011-02-21T00:44:30.440" UserId="5578" />
  <row Id="11655" PostId="8832" Text="@celion - it seems I can set the pay rate by ensuring the reels are set up properly to give the payout.  " CreationDate="2011-02-21T00:45:07.833" UserId="5578" />
  <row Id="11656" PostId="8848" Text="looks like particle simulation system" CreationDate="2011-02-21T01:02:56.990" UserId="202" />
  <row Id="11657" PostId="8820" Score="2" Text="Lots of P2P networks use the metric that the longer a peer has been around, the less likely they are to leave. This probably doesn't hold for games, but it would be a good starting point." CreationDate="2011-02-21T01:32:25.413" UserId="1687" />
  <row Id="11658" PostId="8784" Text="To re-iterate, *I agree.* The method I listed has the most chance of forestalling piracy but there's no way to prevent it altogether, and attempts to do so will just annoy legit customers. Which is why I ended by suggesting the honor system. " CreationDate="2011-02-21T02:52:27.590" UserId="3146" />
  <row Id="11659" PostId="8784" Score="1" Text="Requiring an internet connection won't hurt customers if there is a real online component to the game (ex. MMOs). If you just randomly throw in a &quot;download map data from server&quot; step, then yes that will not usually go over well. Make it a value-add and you are in business." CreationDate="2011-02-21T04:42:50.283" UserId="395" />
  <row Id="11660" PostId="8736" Text="Thanks for the explanation. I was new to FBOs and such, so finally I reached step 3 where I can mirror a texture using FBOs. Now, all I need is a way to add 'wavy water' effect to it. I would like to use some shader technique to do it. Would you happen to have any suggestions for that ?" CreationDate="2011-02-21T04:51:24.410" UserId="4638" />
  <row Id="11661" PostId="8759" Text="+1 : written their own JVM's WOAH !!" CreationDate="2011-02-21T04:56:14.307" UserId="1251" />
  <row Id="11662" PostId="8743" Text="+1 For starting with the guidelines for your OS. That will at least get you on the right start for general stuff like save/load/quit. Then look at the games in the genre for genre specific stuff. Unfortunately there really isn't a generally accepted guideline out there for how stuff is supposed to look.  " CreationDate="2011-02-21T06:03:28.493" UserId="154" />
  <row Id="11663" PostId="8758" Text="This is also a worthy answer...thanks...but it's bad that i can't mark two answers :(" CreationDate="2011-02-21T07:23:58.037" UserId="5119" />
  <row Id="11664" PostId="8855" Score="2" Text="Any reason why you don't just split the object into several? If some primitives need data from two buffers, just duplicate those (relatively rare) bits of data.." CreationDate="2011-02-21T07:42:41.920" UserId="4264" />
  <row Id="11665" PostId="3250" Text="+1 Exactly seems like what i'm running for!" CreationDate="2011-02-21T07:53:35.647" UserId="5119" />
  <row Id="11666" PostId="8845" Text="Try to set cameraPosition.x, cameraPosition.y and cameraPosition.z instead of those tree 0 (right column. Or -cameraPosition. But it's only suggestion, it might not work." CreationDate="2011-02-21T08:27:08.713" UserId="4947" />
  <row Id="11667" PostId="8845" Text="Tried, but does not seem to work." CreationDate="2011-02-21T08:51:03.417" UserId="5584" />
  <row Id="11668" PostId="8845" Text="@user5584 please specify what do you mean by rotation." CreationDate="2011-02-21T09:04:38.247" UserId="3794" />
  <row Id="11669" PostId="8845" Text="Yeah, just to be sure, at multipliing in a new matrix, from which side multiply with it? So curr = new*curr or curr = curr*new?" CreationDate="2011-02-21T09:05:23.847" UserId="5584" />
  <row Id="11670" PostId="8845" Text="curr = curr * new normaly. But if matrices are transposed than it is curr = new * curr. But if you use opengl multiply it will solve it correctly so you will use curr = curr * new. If writing your own multiply use curr = new * curr" CreationDate="2011-02-21T09:09:04.640" UserId="3794" />
  <row Id="11671" PostId="8855" Text="This may be the answer I have to go for, but a slightly different version; which involves splitting the model itself into separate meshes. No chance of shared indices across the meshes.&#xA;Yet allowing for that special case also." CreationDate="2011-02-21T09:17:14.183" UserId="4513" />
  <row Id="11672" PostId="8845" Text="Ok, it seems to work, but I don't understand why I have to use it in this way. So the matrix is like You guys told me: the transponse of the one You wrote here. But! I have to add eye to look, so look+=eye, it seems the problem is caused by another part of my code :(" CreationDate="2011-02-21T09:28:49.190" UserId="5584" />
  <row Id="11673" PostId="8845" Text="Yes you have to do it, if you want something like &quot;fly camera&quot;. Look at point is point in world space where the camera is lookin at. Not in camera space, or camera direction. Wasn't that your mistake?" CreationDate="2011-02-21T09:48:29.943" UserId="3794" />
  <row Id="11674" PostId="8848" Text="Please add a screenshot :)" CreationDate="2011-02-21T10:18:23.257" UserId="3644" />
  <row Id="11675" PostId="8845" Text="Yeah, the problem was the look vector was not the focus center, but focus direction. :D Sorry for troubling You guys with my clumsy myself." CreationDate="2011-02-21T10:26:23.510" UserId="5584" />
  <row Id="11676" PostId="8861" Text="I have already started with the game I wanted to write. It really is a very simple thing, which is why I thought that it would be a good way to learn Lua+Love. So far actually everything is really going fine, I am having no problems getting it to work the way I want. It is just that I always feel that there should be a better way of doing what I am. Let me get back to you in a bit about the team offer." CreationDate="2011-02-21T10:52:35.840" UserId="957" />
  <row Id="11677" PostId="8845" Text="No problem, this is fun. That's why we do it :]. Also please accept the answer, if you are satisfied and it solves your problem ;]" CreationDate="2011-02-21T10:55:12.437" UserId="3794" />
  <row Id="11678" PostId="8862" Text="What does &quot;resource&quot; mean in this case?" CreationDate="2011-02-21T10:55:28.710" UserId="744" />
  <row Id="11679" PostId="8862" Text="Oh, wrong tag sorry :( &#xA;I mean resources like textures, meshes, etc." CreationDate="2011-02-21T10:59:49.853" UserId="5584" />
  <row Id="11680" PostId="8848" Score="1" Text="Like Dave O said, some kind of particle system, to get the lighting effect I think there is some kind of HDR filter with blur over it." CreationDate="2011-02-21T11:26:18.617" UserId="337" />
  <row Id="11681" PostId="8783" Score="1" Text="Spend the time on making a better game, to reward the paying customers instead ^^" CreationDate="2011-02-21T11:49:04.463" UserId="2239" />
  <row Id="11682" PostId="8806" Score="1" Text="@Cyclops: playing WoW in a pirate server is like not playing it at all. The amount of people playing in pirate servers is negligible compared to the people playing legit." CreationDate="2011-02-21T12:43:00.750" UserId="2188" />
  <row Id="11683" PostId="8703" Score="1" Text="@sebf it doesn't work if you're into data-orientated design, and it doesn't work if you like object-orientated design. See Uncle Bob's SOLID princples: http://butunclebob.com/ArticleS.UncleBob.PrinciplesOfOod " CreationDate="2011-02-21T14:02:39.757" UserId="259" />
  <row Id="11684" PostId="8862" Text="This is still a little vague. I'm imagining you're talking about storing resources by name or index so you can load or get references to them via a name or ID given to a resource manager (like XNA's Content.Load&lt;&gt;). Is this close?" CreationDate="2011-02-21T14:16:52.953" UserId="3656" />
  <row Id="11685" PostId="8806" Text="@Lo'oris, people liked playing it enough to buy $3M of stuff... And my point anyway, was to disagree with your claim that &quot;server-based games simply *can't* be pirated... people must connect to your server&quot;. The existence of WoW pirate servers shows this isn't really true. :)" CreationDate="2011-02-21T14:19:07.197" UserId="165" />
  <row Id="11686" PostId="8840" Text="I'll bet the developer would answer you directly if you emailed him: http://radiangames.com/?page_id=2&#xD;&#xA;" CreationDate="2011-02-21T14:37:49.180" UserId="1923" />
  <row Id="11687" PostId="8866" Text="Funny though, Whenever someone mentions copy protection the first thing I think of is that wheel :p" CreationDate="2011-02-21T14:40:06.370" UserId="14" />
  <row Id="11688" PostId="8806" Text="No: since WoW has a HUGE player base, the (relatively) small numbers accrued by the so-called &quot;pirate servers&quot; are negligible." CreationDate="2011-02-21T14:40:48.730" UserId="2188" />
  <row Id="11689" PostId="8806" Text="We probably want to take a step back and define piracy really quickly, as it seems we're dealing with two slightly different definitions here. My point was more that if you have a highly social game, like an MMORPG or farmville, then people play for both the game and the community. Sure people can &quot;pirate&quot; the game and set up their own servers, but it's little more than a very advanced clone. What you can't do, or if you prefer to be pedantic, what 99%+ of people lack the technical skills to do, is connect to an official WoW server without a trial or having paid for the privilege to do so." CreationDate="2011-02-21T14:44:42.760" UserId="5540" />
  <row Id="11690" PostId="8869" Text="how exactly does one &quot;add&quot; the images together? alpha-blending?" CreationDate="2011-02-21T15:00:32.807" UserId="202" />
  <row Id="11691" PostId="8869" Score="1" Text="Here's a relevant comic strip re: bloom. http://media.giantbomb.com/uploads/0/7554/1510356-bloom.jpg" CreationDate="2011-02-21T15:03:07.627" UserId="4264" />
  <row Id="11692" PostId="8870" Text="That's correct! I'll try to start with the Bullet engine. I hope that my experience help me to find the right setup :)" CreationDate="2011-02-21T15:25:57.797" UserId="5596" />
  <row Id="11693" PostId="8703" Text="@tenpn. That article and document linked within are very interesting, thank you!" CreationDate="2011-02-21T15:28:42.543" UserId="5399" />
  <row Id="11695" PostId="8824" Text="Why the downvote?" CreationDate="2011-02-21T15:33:30.873" UserId="2332" />
  <row Id="11696" PostId="8862" Text="http://gamedev.stackexchange.com/questions/2185/resource-managers-are-they-any-good This might help." CreationDate="2011-02-21T15:39:49.870" UserId="1156" />
  <row Id="11697" PostId="8873" Text="-1, because this question is way too broad. Please be more specific. What kind of images? Currently the answer to your question is probably: *Any tool that can save to a PNG*" CreationDate="2011-02-21T15:48:32.113" UserId="20" />
  <row Id="11698" PostId="8839" Text="Maybe you can find something here: http://www.programmersheaven.com/2/world-view in section Creating the view matrix" CreationDate="2011-02-21T16:00:00.430" UserId="4947" />
  <row Id="11699" PostId="8873" Text="well I am just naive in graphics for games , so I need a tool where I can create images of any file format, I am sure there will be tools to create images from one file format to PNG. " CreationDate="2011-02-21T16:00:06.223" UserId="4905" />
  <row Id="11700" PostId="8871" Text="is the ellipse math about the motion of satellites about the planets ?" CreationDate="2011-02-21T16:12:20.427" UserId="4638" />
  <row Id="11701" PostId="8736" Text="Thanks for the explanation. I actually ended up using a variant of the above. But, I'll give these flavors a try and see how they turn out to be." CreationDate="2011-02-21T16:30:16.670" UserId="4638" />
  <row Id="11702" PostId="8870" Text="@Marc if this answer helped, don't forget to mark it as Accepted :D" CreationDate="2011-02-21T16:50:41.013" UserId="14" />
  <row Id="11703" PostId="3795" Text="Unrelated to the question but, I like Puzzle Pirates because the PvP part is rather hardcore with high stakes - and effective crews require a lot of cooperation, not to mention that an effective ship needs multiple players unlike many recent pirate MMOs ^^" CreationDate="2011-02-21T17:18:05.847" UserId="2239" />
  <row Id="11704" PostId="8869" Text="You can do any blending that looks good. Regular add is common, another quite common is screen, which does not saturate as much. d = s1 + s2 - s1*s2 (assuming color is in the range [0, 1])" CreationDate="2011-02-21T17:27:23.143" UserId="2792" />
  <row Id="11705" PostId="8874" Text="What even is an &quot;uber-shader&quot;?" CreationDate="2011-02-21T17:52:48.093" UserId="4662" />
  <row Id="11706" PostId="8874" Text="@DeadMG: it's typically a single shader with lots of `#ifdef`s in it that is compiled in all its permutations. The engine then selects the right shader object for a given material." CreationDate="2011-02-21T17:56:24.203" UserId="3884" />
  <row Id="11707" PostId="8847" Text="Thank you for the insight, however that doesn't seem to fix my problem. I understand that normals should only be rotated and not translated. However, how can I prevent them from being rotated by the Camera? For example, if I want to rotate the object do I need to call rotate on my model-view matrix and AGAIN for my normal matrix? Ideally I could derive my normal matrix *from* the model-view matrix... except that the Camera's gluLookAt is rotating the normals in undesired ways. Does that make sense?" CreationDate="2011-02-21T17:59:48.133" UserId="5050" />
  <row Id="11708" PostId="8865" Text="Thanks for your response. I'm still a bit stuck on: &quot;object-coordinates to texture-coordinates matrix&quot;, but that is because the object space to texture space is still a black hole to me, and I don't expect you to solve that one for me :).  &#xA;&#xA;If my plane normal is [0, 0, 1] (z-axis), wouldn't my orthogonal rows make the matrix look something like this: &#xA;&#xA;[1, 0, 0,0&#xA; 0, 1, 0,0&#xA; 0, 0, 0, 0&#xA; 0, 0, 0, 0]&#xA;&#xA;So, agian, assuming the object's plane normal is [0, 0, 1] what would GL_S, GL_T be? And if I'm just using standard textures, do I need anything for GL_R &amp; GL_Q?&#xA;&#xA;Thanks again!&#xA;&#xA;" CreationDate="2011-02-21T18:29:50.703" UserId="5590" />
  <row Id="11709" PostId="8875" Text="I believe the question is asking how to calculate the route between point A and B when point B is moving while you are moving towards it (ie: how to 'lead' the target planet so when you arrive its not on the Other side of the central star)" CreationDate="2011-02-21T18:45:16.840" UserId="4443" />
  <row Id="11710" PostId="8847" Text="You need to separate your model-&gt;world and world-&gt;view matrices. If you want to do your lighting calculations in world space, transform the normals by the model-&gt;world matrix only (alternatively, transform the light direction into view space, and do your calculations there).  Looks like your normal matrix should be mvMatrix but without the camera applied (and with the translation removed/ignored)" CreationDate="2011-02-21T18:46:02.587" UserId="659" />
  <row Id="11711" PostId="8875" Text="@James: &quot;(respective positions will change over time)&quot; :-&gt; It isn't exactly clear if the points are constantly in motion or if A and B are fixed and then they will change later on. If points are fixed, IMO linear interpolation is the way to go." CreationDate="2011-02-21T18:55:41.830" UserId="4638" />
  <row Id="11712" PostId="8865" Text="GL_S and GL_T could, for example, be 1,0,0,0 and 0,1,0,0. U don't need anything for R and Q for 2D textures. " CreationDate="2011-02-21T19:09:47.423" UserId="3884" />
  <row Id="11713" PostId="8865" Text="Thanks Itjax. Here is my real problem (as I understand it)&#xA;GL_S = [1,0,0,0], VPos = [50, 0, 0, 0]&#xA;coord = dot(VPOS, GL_S) makes coord = 50.  How the heck to I turn that 50 into texture space [0-1]?  In glsl on Opengl 3, I'd could take that 50 and apply the gl_Texture matrix to it, but in OpenGL ES 2.0 there is no such gl_Texture. Any thoughts? " CreationDate="2011-02-21T19:20:55.770" UserId="5590" />
  <row Id="11714" PostId="8875" Text="@brainydexter Sorry man, I can not find a way to read that line where its not stating that points A and B will change over time..." CreationDate="2011-02-21T19:24:34.340" UserId="4443" />
  <row Id="11715" PostId="8881" Text="Have you tried XNA for 3D programming ? They have a lot of tutorials to get started!" CreationDate="2011-02-21T19:49:32.130" UserId="4638" />
  <row Id="11716" PostId="8882" Text="alright, but what about `context.VertexShader.Set()`? How do I use a shader on a particular object if it's a part of the context? Also, I notice in `context.Draw()` you have to specify which vertices to draw. Do I create an object, set the context shader, draw the vertices from that first object, and then repeat for each object I want to draw?" CreationDate="2011-02-21T19:52:30.313" UserId="3031" />
  <row Id="11717" PostId="8881" Text="Let him be. SlimDx is for real man :]." CreationDate="2011-02-21T19:53:59.753" UserId="3794" />
  <row Id="11718" PostId="8881" Text="Yes, but I would like to get to know the subject on this level." CreationDate="2011-02-21T19:54:30.797" UserId="3031" />
  <row Id="11719" PostId="8865" Text="Nah, the texture matrix just allows more transformations. It's pretty useless with texture coordinate generation, since you can already incorporate it in the object to texture coordinate matrix. What happens to the 50 depends on the GL_TEXTURE_WRAP_S parameter. If it's GL_REPEAT, you get a 0 (since fmod(50, 1)=0) or you get a 1 with GL_CLAMP. Either way, you wouldn't normally do that in the shader." CreationDate="2011-02-21T20:08:33.300" UserId="3884" />
  <row Id="11720" PostId="8882" Text="You are setting the gpu. So you set one shader program. Actually you are setting technique which contains at least vertex shader and pixel shader. And you are setting one vertex data. Typicaly you are setting matrices, textures and another data too. Once you render it with context.draw, you are done with one render pass. Typicaly you are doing more render passes for one frame. One render pass for every material/effect means another data and another shader or same data and another shader." CreationDate="2011-02-21T20:09:21.390" UserId="3794" />
  <row Id="11721" PostId="8884" Text="Well, I wouldn't use the triangle to build larger objects -- I'd also have a Cube class, etc -- it has a single vertex buffer and a Draw() method which takes the device context. It sets the layout, topology and shaders on the context and then draws all the vertices in the buffer. This isn't good?" CreationDate="2011-02-21T20:14:04.843" UserId="3031" />
  <row Id="11722" PostId="8883" Text="I have glPushMatrix and Pop matrix. I didn't know they were deprecated! Also, this is a pretty old link, but it was recommended not to use glGetFloatV to retrieve value and set them later on. http://www.opengl.org/resources/features/KilgardTechniques/oglpitfall/" CreationDate="2011-02-21T20:18:43.783" UserId="4638" />
  <row Id="11723" PostId="8865" Text="I still am not sure of &quot;object to texture coordinate matrix&quot;; where is this formulated?" CreationDate="2011-02-21T20:19:33.920" UserId="5590" />
  <row Id="11724" PostId="8883" Text="It is interesting, but i do not see any glGetFloatV in this article. Can you please specify it? And if you can use glPushMatrix and glPopMatrix is problem solved?" CreationDate="2011-02-21T20:26:59.183" UserId="3794" />
  <row Id="11725" PostId="8883" Text="I think that even glPushMatrix and glPopMatrix are depricated, they can be easily used. I don't have any idea how to use it with non-depricated functions." CreationDate="2011-02-21T20:27:33.333" UserId="4947" />
  <row Id="11726" PostId="8871" Text="the ellipse math is because I thought planets are following an ellipse in their course around stars. Is it wrong ? The ultimate goal is about representing quite properly the planets' courses in a system." CreationDate="2011-02-21T21:09:57.560" UserId="5044" />
  <row Id="11727" PostId="8869" Text="This is not done with bloom. Notice how the particles actually occlude each other. For example if you surround the light source particles with black particles, the light does not spread." CreationDate="2011-02-21T21:12:17.263" UserId="2345" />
  <row Id="11728" PostId="8886" Score="1" Text="Could you provide links or references?" CreationDate="2011-02-21T21:14:29.947" UserId="2345" />
  <row Id="11729" PostId="8875" Text="indeed it was between 2 planets, so between moving points, hence linear interpolation is out I guess. Yet thank for the link :)" CreationDate="2011-02-21T21:38:51.307" UserId="5044" />
  <row Id="11730" PostId="8878" Text="thanks a lot Jason: I had searched for similar content with no success. Still, it's only about space physics, not how to apply them in a game kind of way (how to map them down in a strategic 2D kind of display).  &#xA;&#xA;Still, it's the closest I've seen, thanks a lot :)" CreationDate="2011-02-21T21:44:52.473" UserId="5044" />
  <row Id="11731" PostId="523" Text="I have started the process...we will see how it goes. Wish me luck! http://cdhrdr.com/ShoopFB" CreationDate="2011-02-21T22:23:52.380" UserId="159" />
  <row Id="11732" PostId="4768" Text="Yeah - I've heard about a number of engines and games that use it as their scripting language." CreationDate="2011-02-21T22:27:58.077" UserId="4296" />
  <row Id="11733" PostId="8886" Text="@Arriu hope you will be satisfied with edit :]" CreationDate="2011-02-21T22:39:23.493" UserId="3794" />
  <row Id="11734" PostId="8888" Score="1" Text="It would depend on the accuracy of the physics simulation. If there is no physics, I'd go full speed all the time... otherwise, I'd start slowing down before each turn and speed up 2/3rd through the turn." CreationDate="2011-02-21T22:45:03.007" UserId="1198" />
  <row Id="11735" PostId="8847" Text="I've updated the question to include the correct code. As it turns out there were a few things I was doing wrong wrt rotation." CreationDate="2011-02-21T22:47:27.390" UserId="5050" />
  <row Id="11736" PostId="8825" Text="If you solve your own problem, please post it as answer and accept it. It is regular solution on stackexchange.com" CreationDate="2011-02-21T23:12:33.780" UserId="3794" />
  <row Id="11737" PostId="8796" Score="1" Text="&quot;pirates are usually the people that buy the most&quot; - This comment makes no sense. By definition, a pirate doesn't pay for games. A non-pirate pays for games. Therefore it's impossible for a pirate to be considered someone who buys the most (ie, buys more games than a non-pirate)." CreationDate="2011-02-21T23:29:27.687" UserId="5603" />
  <row Id="11738" PostId="8879" Text="That would surely throw the cache around? Isn't the intention to interleave your data as much as possible? In any case, at this time I am simply loading vertices, the texture data etc in this case would bloat the model to beyond 8MB. Which is why I want to find a solution now." CreationDate="2011-02-21T23:42:29.780" UserId="4513" />
  <row Id="11740" PostId="8796" Score="1" Text="@Jakobud: http://bit.ly/174tk2 This can extend to video games as well. Furthermore I made that statement based on my personal experience and the experience of my friends. Even if you are a pirate, you can also be the person who buys the most games." CreationDate="2011-02-22T00:40:03.640" UserId="2696" />
  <row Id="11741" PostId="8848" Text="That looks half ugly, half beautiful, and 42% like a lot of gradients were used." CreationDate="2011-02-22T00:46:33.287" UserId="3637" />
  <row Id="11742" PostId="8878" Text="To map them to 2D just remove the Z dimension, all of the math should still work just as before. As far as applying them to a game goes, they are just formulas.. I would assume with a known start point, the formula for motion and a offset time value you could always calculate where each celestial body would be." CreationDate="2011-02-22T01:17:06.683" UserId="4443" />
  <row Id="11743" PostId="8884" Text="general rule of thumb is you want to minimize the Draw() calls regardless of the underlying API. For example if you wanted particle effects and such to just use 2 triangles, you would still want to try and put say 300 flame particles into a single buffer instead of 300 separate buffers. " CreationDate="2011-02-22T01:35:31.020" UserId="4443" />
  <row Id="11744" PostId="7941" Text="Perfect. Thank you." CreationDate="2011-02-22T02:58:23.490" UserId="2679" />
  <row Id="11745" PostId="8862" Text="@bearcpd: not close, but right :)" CreationDate="2011-02-22T04:27:34.873" UserId="5584" />
  <row Id="11746" PostId="8846" Text="`First, never release your game.`-- Please provide practical answers. `Second, make a game that is so bad that nobody has any interest in playing it.` -- Why would I even bother to release when I know nobody is gonna play it. I want people to enjoy as long as they are willing to pay for the effort I  took." CreationDate="2011-02-22T05:34:33.643" UserId="5559" />
  <row Id="11747" PostId="8846" Text="Moreover, your answer matches Jari Komppa' comment !! (just pointing out :P)" CreationDate="2011-02-22T05:47:48.347" UserId="5559" />
  <row Id="11748" PostId="8869" Text="There are a lot of ways you can blend stuff together after blurring. The blend mode might scale against the background color/alpha." CreationDate="2011-02-22T07:17:06.387" UserId="2792" />
  <row Id="11749" PostId="8865" Text="As I said, that matrix is just another way to think of the vectors you supply as GL_S and GL_T. Think of those as rows and you get that matrix." CreationDate="2011-02-22T08:24:54.387" UserId="3884" />
  <row Id="11750" PostId="8892" Text="AFAIK cocos2d simply sets the GL states appropriately before calling `DrawDebugData` and restores them afterwards." CreationDate="2011-02-22T09:10:47.860" UserId="20" />
  <row Id="11751" PostId="8897" Score="3" Text="Could you elaborate on what sort of animation you are talking about and how it's affected?" CreationDate="2011-02-22T10:20:32.263" UserId="1386" />
  <row Id="11752" PostId="8894" Score="2" Text="+1 for the Quaternion hint. Here's some background info to Ogre3D and Quaternions: http://www.ogre3d.org/tikiwiki/tiki-index.php?page=Quaternion+and+Rotation+Primer. This post might help too: http://www.ogre3d.org/forums/viewtopic.php?p=86862#p86862" CreationDate="2011-02-22T10:52:24.927" UserId="20" />
  <row Id="11753" PostId="8889" Score="1" Text="Seems overkill to me." CreationDate="2011-02-22T11:01:33.587" UserId="2188" />
  <row Id="11754" PostId="8899" Text="Aside from the spelling in the question title, it isn't actually phrased in the form of a question. I think rephrasing it might help solidify what you're asking here, since I don't think you can get a useful answer to this question in its current form. And it's also not a game-design question, it's a question on the programming structure (not sure if that means the design tag is or isn't appropriate, can't remember where we came down on 'software design' and tags)" CreationDate="2011-02-22T11:56:55.860" UserId="741" />
  <row Id="11755" PostId="8883" Score="6" Text="It's also not recommended to use any Get command. The best you can do is probably to keep and set your matrices by your self. so restore is just another set. The matrix stack in general is also deprecated, the future proof way of setting them is using constants to your vertex program." CreationDate="2011-02-22T12:45:55.673" UserId="2792" />
  <row Id="11756" PostId="5830" Text="Also in most cases I've seen, the official website has more up-to-date documentation than the random old blog posts you might find around the internet, and usually more complete too." CreationDate="2011-02-22T14:13:22.820" UserId="189" />
  <row Id="11757" PostId="8897" Score="1" Text="I believe when a shot is fired the crosshair expands and returns to normal after set amount of time. I don't remember the crosshair being animated in any other sort of way." CreationDate="2011-02-22T14:21:40.677" UserId="2332" />
  <row Id="11758" PostId="8889" Score="2" Text="@Lo'oris Definitely, especially since this is probably a fairly simple school project with a limited amount of time to create a solution for, I don't think supervised learning is the way to go with this, just for practicality's sake." CreationDate="2011-02-22T14:24:56.230" UserId="2332" />
  <row Id="11759" PostId="8889" Text="Its not that hard to set up, and depending on the level of the subject the OP is doing, this approach may not necessarily be overkill. It is what I would (and have done), its fun, and can be quite simple to achieve effective results. The hardest part is determining what should be done in the pre-processing..." CreationDate="2011-02-22T14:28:48.247" UserId="4513" />
  <row Id="11761" PostId="8701" Text="Thank you for the advice Nailer." CreationDate="2011-02-22T15:05:02.160" UserId="2925" />
  <row Id="11762" PostId="8702" Text="Thank you Kynth." CreationDate="2011-02-22T15:05:18.040" UserId="2925" />
  <row Id="11763" PostId="8551" Text="I sort of disagree with this answer. For me there are differences between scripters and programmers. Unity's developpers are programmers, Unity's users are scripters. The result is the same, they make games, but in the long run, using Unity can be a problem. The game industry is rich and now allows tools like Unity, but to me it's because computers are faster. so you can throw a lot of code, it works: Unity is clearly made for development speed, something the market likes because of dollars, but I don't think that's a real plus." CreationDate="2011-02-22T15:46:05.817" UserId="1829" />
  <row Id="11764" PostId="5830" Text="By my experience, the more source of information you have, the more you get a chance to find one easy to understand for you..." CreationDate="2011-02-22T16:05:55.887" UserId="3484" />
  <row Id="11765" PostId="8900" Text="Bummzack's recommendation will get you your answers, especially the AS3-only, non-Flex answer." CreationDate="2011-02-22T16:06:21.297" UserId="953" />
  <row Id="11766" PostId="8551" Text="jokoon: What's the difference between scripting and programming?  A power user of Unity writes shaders, manages render order, and writes AI code.  Unity &quot;scripts&quot; are compiled, and it can be extended with honest-to-goddess low-level coding if you want.  And good Unity coding follows the same principles as good non-Unity coding.  There's no magical difference between the two paradigms." CreationDate="2011-02-22T16:09:40.090" UserId="953" />
  <row Id="11767" PostId="8906" Score="7" Text="Mostly, you should consider hiring a lawyer. Also, IANAL. But if you believe your IP is important enough, consider formally filing for Trademarks and Copyrights where appropriate." CreationDate="2011-02-22T16:24:26.647" UserId="14" />
  <row Id="11768" PostId="888" Text="I meant that as a general direction - each programmer should check what technologies he/she used and what resources they depend on. I slightly amended my answer." CreationDate="2011-02-22T16:39:43.123" UserId="318" />
  <row Id="11769" PostId="3618" Score="1" Text="I had my first experience of IMGUI recently, and felt that it was a big backwards step. As you say, it's great for a simple HUD or a static toolbar, but pretty awful for anything dynamic, hostile to having artists or designers create layouts, and coerces you towards munging presentation and logic code together in one place." CreationDate="2011-02-22T16:57:02.587" UserId="1101" />
  <row Id="11770" PostId="7543" Score="1" Text="@Error 454 Not with ESXi, as described in my answer. You can actually control the amount of CPU and memory resources you want the OS to have" CreationDate="2011-02-22T17:06:37.473" UserId="2332" />
  <row Id="11771" PostId="8907" Text="Have you already/ever played Counter Strike on a slow/laggy machine ?" CreationDate="2011-02-22T17:06:57.320" UserId="1829" />
  <row Id="11772" PostId="8907" Text="@jokoon: Why yes, I have. And it doesn't matter how you feel about that experience. It is a fact that the server performs physics, not the client." CreationDate="2011-02-22T17:18:10.043" UserId="4662" />
  <row Id="11773" PostId="8907" Text="Actually @DeadMG, the client handles the recoil, the server processes the collisions afterwards. But yes, recoil is deterministic, and runs the same way no matter the framerate." CreationDate="2011-02-22T18:11:27.427" UserId="962" />
  <row Id="11774" PostId="8900" Text="Hm the comment (recommendation) was automatically removed when the question was closed. It was the link that is now on top of this question." CreationDate="2011-02-22T18:13:23.827" UserId="20" />
  <row Id="11775" PostId="8905" Text="+1 Giving the monster's a limited way to call on the parent is a nice middle way in my opinion." CreationDate="2011-02-22T18:33:57.763" UserId="3547" />
  <row Id="11776" PostId="8906" Score="3" Text="I have to say go with the comment above and get a lawyer.. make your demo include some sort of NDA at the very least if you feel your prototype is of that level. What I would add though is that all the big name publishers that I know (Activision Blizzard, EA, etc) reject game concepts/prototypes from the public out of hand. It might be a bit different in the mobile market but unless you have a contact at the company and there is interest and paper work going back and forth, you may just be wasting your time." CreationDate="2011-02-22T18:43:45.017" UserId="4443" />
  <row Id="11777" PostId="8897" Text="To expand on Ray's point, the 4 lines comprising the cross go outwards to form a bigger crosshair to make it harder to aim. This means literally firing everywhere becomes inefficient to aim well." CreationDate="2011-02-22T19:12:09.003" UserId="1156" />
  <row Id="11778" PostId="8910" Text="I just thought it would have some anti cheat matter..." CreationDate="2011-02-22T19:31:13.087" UserId="1829" />
  <row Id="11779" PostId="8907" Text="attackinghobbo: well I played a lot, and I can tell that having a slower computer makes a player spray much less efficiently. I don't really know if that's a biased feeling for some reason, but even though, it should have been fixed..." CreationDate="2011-02-22T19:33:03.773" UserId="1829" />
  <row Id="11780" PostId="8907" Score="1" Text="@jokoon: It probably does, because spraying effectively relies on moving the crosshair down as the recoil moves the gun up, which is a less effective reaction on a slower computer." CreationDate="2011-02-22T19:53:57.320" UserId="4662" />
  <row Id="11781" PostId="8894" Text="Thanks for the good info.  And @bummzack, thanks for that first link.  I had heard of quaternions before, but they seemed really confusing.  That article cleared things up quite a bit, and it's what lead me to my solution, which I'll post below." CreationDate="2011-02-22T20:08:40.663" UserId="5604" />
  <row Id="11782" PostId="8892" Text="Well, if you just call DrawDebugData, you will get several polygons on the screen (rendered at once) , it's not possible to apply different transformations to those polygons independently AFAIK." CreationDate="2011-02-22T20:10:51.100" UserId="2708" />
  <row Id="11783" PostId="8913" Text="Though I hate the idea of accepting my own answer, I think this is the clearest, most simple solution(unless someone can come up with a better one)." CreationDate="2011-02-22T20:11:22.300" UserId="5604" />
  <row Id="11784" PostId="8897" Text="@The Communist Duck: The purpose of the expanding crosshair is *not* to make it harder to aim, but to represent that the weapon is becoming less accurate. It feeds back to the user, not depends on the user to create an effect." CreationDate="2011-02-22T20:11:24.783" UserId="4662" />
  <row Id="11785" PostId="8897" Text="I stand corrected. :P" CreationDate="2011-02-22T20:15:41.700" UserId="1156" />
  <row Id="11786" PostId="8898" Text="Ok - I was outputting XX.XX digits but it flickers too quick for me to see, and I didn't bother tracking min/max value. If other people see this then I'm happy." CreationDate="2011-02-22T23:05:59.490" UserId="831" />
  <row Id="11787" PostId="8918" Text="Hey Joe, Thanks for the answer, I'm using a Camera system using gluLookAt. If a Game Contains a GUI (which is not affected by the camera), a layer for drawing SFX and a layer for Game Entities that will fight between each other (both affected by the same camera transformations )... you would need to call DrawDebugData once per layer... Why would this be bad design ? ( gluLookAt affects GL_MODELVIEW, not the projection Matrix )" CreationDate="2011-02-23T01:05:52.850" UserId="2708" />
  <row Id="11788" PostId="8919" Text="It looks like GWEN is supports OpenGL as well.  Mention this on http://gamedev.stackexchange.com/questions/3617/good-gui-for-opengl and you may get the bounty." CreationDate="2011-02-23T02:40:37.237" UserId="370" />
  <row Id="11789" PostId="8917" Score="1" Text="+1 Delegates (callbacks) usually become more numerous as time goes on. Giving an interface to the monsters so they can get at stuff is a good way to go in my opinion." CreationDate="2011-02-23T03:13:05.983" UserId="3547" />
  <row Id="11790" PostId="8866" Text="Okay, that sounds like a good plan but I want to be like release it and forget about it forever." CreationDate="2011-02-23T04:44:54.153" UserId="5559" />
  <row Id="11791" PostId="8923" Score="2" Text="I'd probably phrase it a bit more succinctly: &quot;Don't be afraid to refactor&quot;." CreationDate="2011-02-23T06:52:54.453" UserId="51" />
  <row Id="11792" PostId="3620" Score="1" Text="I have tried both, used CEGUI for the longest time but it was absolutely horrendous not to mention extremely slow with lots of text. I switched to MyGUI recently, and it has been working out nicely. Their layout and skin editors are very very neat. I am not sure about the bloat, I think CEGUI is vastly bloated in comparison. Some of the practices in MyGUI are weird (for example, += operator for assigning delegates, and casting is done in a weird fashion as well - the authors are actively developing it and listening to suggestions which is great) but overall I prefer it over CEGUI." CreationDate="2011-02-23T07:11:58.013" UserId="2287" />
  <row Id="11793" PostId="8902" Score="1" Text="+1 @miguelSantirso - as bummzack says, forget keyframes and instead think of stacking DisplayObjects on top of other DisplayObjects, hiding and showing the layers as necessary. Your menu will be on top of your game container etc. You might want to also think about using an engine like the PushButton engine to help organise and structure everything.&#xA;" CreationDate="2011-02-23T07:46:36.407" UserId="560" />
  <row Id="11794" PostId="8893" Text="I am going to try out thanks for your anwer." CreationDate="2011-02-23T09:09:11.813" UserId="5581" />
  <row Id="11795" PostId="8925" Score="3" Text="You'll find a huge difference between kids of 8 and kids of 14+." CreationDate="2011-02-23T09:43:07.663" UserId="1156" />
  <row Id="11796" PostId="8929" Text="Did you use to like violence when you were young ? What about now? what do you like now ?" CreationDate="2011-02-23T10:57:44.490" UserId="5559" />
  <row Id="11797" PostId="8929" Text="What about educational stuff ?" CreationDate="2011-02-23T10:58:05.923" UserId="5559" />
  <row Id="11798" PostId="8929" Score="1" Text="Haha. Throwing the ducks? Thats something that @thecommunistduck will not like :)" CreationDate="2011-02-23T11:11:44.217" UserId="3794" />
  <row Id="11799" PostId="8929" Score="1" Text="I want to know what this throwing duck game is, and I'm going to take it to hell and back. No seriously, what is it? I want to play it. ;)" CreationDate="2011-02-23T11:15:01.660" UserId="1156" />
  <row Id="11800" PostId="8925" Text="More details on the genre of your game would help (platform, strategy, RTS, RPG... ?)." CreationDate="2011-02-23T11:35:45.630" UserId="2437" />
  <row Id="11801" PostId="8931" Score="2" Text="I think I can tl;dr your first two paragraphs: At about age 12, give them Minecraft. ;-)" CreationDate="2011-02-23T11:39:16.060" UserId="1156" />
  <row Id="11802" PostId="8925" Text="@Raveline, Haven't decided yet" CreationDate="2011-02-23T12:53:12.027" UserId="5559" />
  <row Id="11803" PostId="8918" Text="That's only the case if you're interleaving UI drawing and world drawing. If for some reason you absolutely must interleave UI and world drawing, then you can just switch back the world view/projection matrix at the end before DebugDrawing. The point is, as long as there's only one camera (= view/projection matrix), you can draw all your debug data exactly once, with that camera." CreationDate="2011-02-23T13:15:39.007" UserId="744" />
  <row Id="11804" PostId="8926" Text="Overall I agree with you, but one reason to avoid multiple worlds is that it is not possible to move non-trivial objects between worlds. http://gamedev.stackexchange.com/questions/3807/how-can-i-copy-or-back-calculate-definitions-for-an-entire-b2world" CreationDate="2011-02-23T13:23:47.553" UserId="744" />
  <row Id="11805" PostId="8937" Text="Lol, your answer looks like a autobiography :P" CreationDate="2011-02-23T13:39:49.360" UserId="5559" />
  <row Id="11806" PostId="8930" Text="&quot;Children have very little perseverance.&quot; I don't agree with that statement. If I failed at a game when I was a kid I kept on going again and again and again and again. I had a patience that I don't have today. Also, anything that seems hard for a grownup will eventually be super easy for a kid after a very short while." CreationDate="2011-02-23T13:43:37.107" UserId="1352" />
  <row Id="11807" PostId="8930" Score="1" Text="That's odd. When I was a kid, I would give up very easily." CreationDate="2011-02-23T13:45:17.027" UserId="1156" />
  <row Id="11808" PostId="8929" Text="At least ducks can *fly* - unlike **[domestic turkeys](http://en.wikipedia.org/wiki/List_of_WKRP_in_Cincinnati_episodes#.22Turkeys_Away.22_.28Oct.2F30.2F78.29)** !" CreationDate="2011-02-23T13:50:12.870" UserId="165" />
  <row Id="11809" PostId="8938" Text="all good.  Usually I find that &quot;glass characters&quot; come from a resource limited system." CreationDate="2011-02-23T15:53:54.680" UserId="2316" />
  <row Id="11810" PostId="8939" Text="I wouldn't separate the NPC movement and player movement that much.  The movement actions which drive the animations and physics could definitely be shared; it's what selects the actions or transitions that is different (player takes input while AI is...AI).  I agree you'd have a PlayerController, but you'd also have an AIController, both of which could use Movement Components / Swing Components to get the actual animation/physics work done." CreationDate="2011-02-23T16:09:48.460" UserId="5520" />
  <row Id="11811" PostId="8930" Text="I agree that education is not a selling point for children, but only if you slap them over the head with it.  DO go check out the Khan Academy and what they are doing with &quot;gamification&quot; of their content." CreationDate="2011-02-23T16:17:31.963" UserId="3830" />
  <row Id="11812" PostId="8929" Text="#TheCommunistDuck Sorry ^^" CreationDate="2011-02-23T16:20:49.277" UserId="5629" />
  <row Id="11813" PostId="8723" Text="@Artemix, you can interact with JavaScript from flash using `ExternalInterface` and set normal cookies as well. Additionally, you can have flash send XHRs (AJAX) to a server and store data in a database, or session." CreationDate="2011-02-23T16:33:04.493" UserId="4871" />
  <row Id="11814" PostId="8935" Score="1" Text="+1 I know the question is old, but I think the answer should be kept up to date. It's a yes since they're coming out with an SDK in spring." CreationDate="2011-02-23T17:23:26.127" UserId="2332" />
  <row Id="11815" PostId="8932" Text="I think a good answer will depend on where you want to enforce the exclusivity of actions. If you want it to be in the objects themselves the design would be much different as compared to say, enforcing it through the drag and drop interface (This state already has a movement action so it can not have another, this state transition container already contains a time based end state, etc or whatever). " CreationDate="2011-02-23T17:23:27.500" UserId="4443" />
  <row Id="11816" PostId="8943" Text="This A* algorithm article seems to be what I was looking for, but unfortunately what I still don't know is how to divide my &quot;world&quot; into grids :S" CreationDate="2011-02-23T17:38:13.480" UserId="5585" />
  <row Id="11817" PostId="7543" Text="@Ray Dey sorry, not true, ESXi gives you a *virtual* SVGA, there is no direct access to your video card: http://kb.vmware.com/kb/1011942" CreationDate="2011-02-23T17:41:31.770" UserId="4212" />
  <row Id="11818" PostId="7543" Text="@Error 454 I wasn't certain about the video capabilities, so I didn't comment on it. I should have made it clearer. But thanks for clearing that up for me :)" CreationDate="2011-02-23T17:44:10.207" UserId="2332" />
  <row Id="11819" PostId="8943" Text="It really depends. Thought: divide your world into a grid of 32 x 32 which would then represent positions in a 2D array. For example, in your case: red dot is at 120, 120 pixels (or 120/32 x 120/32 : 3.75 x 3.75) 3.75 x 3.75 represents a position on your world-grid (or 2D array). Since arrays are indexed by integers, you only want integer part of it. Thus, the red dot would be at 3 x 3. Hope this helps" CreationDate="2011-02-23T17:50:26.817" UserId="4638" />
  <row Id="11820" PostId="8946" Score="1" Text="+1 for OpenSteer" CreationDate="2011-02-23T18:32:20.693" UserId="891" />
  <row Id="11821" PostId="8744" Text="If the UI isn't OpenGL, then I recommend getting rid of the main loop, using event based UI and events and timers for the game + graphics. Anyway, I've used QT and I do not recommend it." CreationDate="2011-02-23T19:24:29.600" UserId="318" />
  <row Id="11823" PostId="8770" Score="1" Text="I meant to make this a comment, but couldn't find the comment button. Anyways, what Dave O. says is probably you're best bet and what's used in games like Crysis. This works a bit like this.&#xD;&#xA;&#xD;&#xA;During object render, Render object velocities into a separate buffer. MRT will make this a bit quicker, and there are multiple ways to compute the velocities, but you want to end up with an additional buffer that has the velocities for the entire render buffer.&#xD;&#xA;&#xD;&#xA;Then in a post-process shader, based on the velocity at every pixel, you sample into the color buffer in the opposite direction of the veloc" CreationDate="2011-02-23T20:03:19.997" UserId="5641" />
  <row Id="11824" PostId="8949" Text="i know how to update a timer and how to program in php. im making a text based game though, where i want to contact the mysql server when a javascript timer restarts everytime." CreationDate="2011-02-23T20:20:42.830" UserId="5636" />
  <row Id="11825" PostId="8924" Text="Im making a Flash game, but thx anw." CreationDate="2011-02-23T20:49:21.500" UserId="5091" />
  <row Id="11826" PostId="8723" Text="Maybe Im wrong, but I think I cant call any JS function when I have only a swf file to work with, most sites (game portals mostly) work with one swf file only, and thats all." CreationDate="2011-02-23T20:51:30.623" UserId="5091" />
  <row Id="11827" PostId="8946" Text="+1 Steering behaviours FTW" CreationDate="2011-02-23T21:04:48.077" UserId="2332" />
  <row Id="11828" PostId="8794" Text="Mucking around in a console environment is the best way to start programming C++ IMO." CreationDate="2011-02-23T21:40:31.880" UserId="627" />
  <row Id="11829" PostId="8949" Score="1" Text="You don't want to contact the MySQL server directly from a client machine, that would be a BAD idea. You should use AJAX to open a page (e.g. a PHP page) which connects to the database and increments the user's item count." CreationDate="2011-02-23T21:49:10.763" UserId="189" />
  <row Id="11830" PostId="8138" Text="thanks, that helped. but how can I split the touch actions that results in its own draw. Ontop of the current draw. for example. map is scrolling from top to bottom. where u touch moves your character. at the moment everything is drawing in one section." CreationDate="2011-02-23T21:50:15.743" UserId="5171" />
  <row Id="11831" PostId="8944" Score="2" Text="I don't really think this is a gamedev issue as such; more of a stackoverflow one?" CreationDate="2011-02-23T21:52:09.330" UserId="1156" />
  <row Id="11832" PostId="8949" Score="1" Text="@Hijumper: AFAIK that's not even possible using JavaScript. You can't talk to a MySQL Server directly. Also you need some sort of backend validation which would be performed in your PHP script before inserting anything into the DB." CreationDate="2011-02-23T22:38:56.220" UserId="20" />
  <row Id="11833" PostId="8944" Text="Why do you have a timer exactly?" CreationDate="2011-02-23T22:39:06.620" UserId="303" />
  <row Id="11834" PostId="8923" Text="Singletons are evil!  Globals are much better.  All of the singleton virtues you listed are the same for a global.  I use global pointers (actually global functions returning references) to my various subsystem and initialize/destruct them them in my main function.  Globals pointers avoid initialization order issues, dangling singletons during tear down, non-trivial construction of singletons, etc.  I repeat singletons are evil." CreationDate="2011-02-24T00:08:56.353" UserId="370" />
  <row Id="11837" PostId="8138" Text="@Stevanicus I'm not completely sure what you are asking but the basic idea is you want to separate your drawing calls and your update calls.  You should take input and process everything in an update method and after the update method has finished processing everything for the frame, you should draw the frame by calling draw.  In the draw method is when you draw everything in opposite order you want it to show up on the screen. (You want to draw your background first).  &#xA;&#xA;Not sure if this answered your question, if it didn't, can you give me a little more specifics?" CreationDate="2011-02-24T01:56:22.930" UserId="5095" />
  <row Id="11838" PostId="8865" Text="Thanks for the help Itjax. I end up figuring out a matrix that took the vertices of the model in X/Y planes and scaled/translated to [0-1] for textures.  This helped me understand what I needed to do." CreationDate="2011-02-24T03:05:53.300" UserId="5590" />
  <row Id="11839" PostId="8949" Text="i didnt say i wanted it directly, just a way to do it" CreationDate="2011-02-24T04:39:25.690" UserId="5636" />
  <row Id="11840" PostId="8955" Text="Lacks documentation, not portable (yet), opengl back-end unfinished, etc. Couldn't figure from online materials whether it has file io dialogs (or dialogs at all, for that matter)." CreationDate="2011-02-24T05:59:15.467" UserId="4264" />
  <row Id="11841" PostId="8937" Text="Heh, true, although it leaves out the non-educational games. Hopefully it can provide some insight into game content for kids though. :P" CreationDate="2011-02-24T06:38:37.333" UserId="241" />
  <row Id="11842" PostId="8849" Text="+1  btw... can you explain what do you mean by Steam???" CreationDate="2011-02-24T07:24:49.807" UserId="5119" />
  <row Id="11843" PostId="8944" Text="Yeah, this is a basic javascript/xmlHttpRequest question, not a game development question.  Should be moved to SO." CreationDate="2011-02-24T08:13:16.587" UserId="303" />
  <row Id="11844" PostId="8923" Text="@Tetrad, highly agreed. It's one of the best skills you can have." CreationDate="2011-02-24T09:53:26.960" UserId="323" />
  <row Id="11845" PostId="8965" Text="possible duplicate of [How to determine the amount of experience needed for leveling up.](http://gamedev.stackexchange.com/questions/974/how-to-determine-the-amount-of-experience-needed-for-leveling-up)" CreationDate="2011-02-24T11:16:49.263" UserId="744" />
  <row Id="11846" PostId="8849" Text="steam = http://store.steampowered.com/" CreationDate="2011-02-24T12:02:02.630" UserId="4413" />
  <row Id="11848" PostId="8961" Text="-1 dupe of an existing answer.  " CreationDate="2011-02-24T14:16:03.173" UserId="51" />
  <row Id="11854" PostId="8967" Score="1" Text="You might want a sharper curve than the ones here. [RuneScape](http://www.runescape.com), for example, has a very steep curve, almost resembling a logarithmic curve (flipped/rotated of course); [see it here](http://runescape.wikia.com/wiki/Experience#Graph). At least in my personal experience, it seems to work VERY well to give you lots of quick rewards in the beginning, and by the time you get to higher levels you are adjusted to longer playtimes until the last few levels take FOREVER but the player somehow tolerates it. 99s are fairly frequent, despite the STEEP!! curve to get there." CreationDate="2011-02-24T14:58:17.520" UserId="189" />
  <row Id="11855" PostId="8974" Text="Just out of curiosity, is there a reason you aren't using the built-in GL_SELECTION mode? [(info here)](http://www.opengl.org/resources/faq/technical/selection.htm)" CreationDate="2011-02-24T15:03:40.687" UserId="189" />
  <row Id="11856" PostId="8967" Text="I would certainly say the curves here would be shallow." CreationDate="2011-02-24T15:43:27.290" UserId="1156" />
  <row Id="11857" PostId="8808" Text="Bear in mind that timeBeginPeriod typically affects the whole OS." CreationDate="2011-02-24T15:53:15.073" UserId="1101" />
  <row Id="11858" PostId="8877" Text="Just played it the other day.  Way more fun with a few friends than it has any right to be." CreationDate="2011-02-24T16:07:55.140" UserId="4604" />
  <row Id="11859" PostId="8982" Text="True, edited my question to account for this." CreationDate="2011-02-24T16:33:53.453" UserId="4604" />
  <row Id="11860" PostId="8983" Text="+1 for the article. I think this answers the question beautifully." CreationDate="2011-02-24T17:05:37.360" UserId="1581" />
  <row Id="11861" PostId="8980" Score="2" Text="related: http://gamedev.stackexchange.com/questions/268/stl-for-games-yea-or-nay" CreationDate="2011-02-24T17:30:15.287" UserId="51" />
  <row Id="11862" PostId="8980" Text="@Tetrad: Good link." CreationDate="2011-02-24T17:51:27.507" UserId="4604" />
  <row Id="11863" PostId="8974" Text="@Ricket  Isn't it deprecated? Don't know, but quite sure." CreationDate="2011-02-24T18:22:47.690" UserId="3794" />
  <row Id="11864" PostId="8974" Text="Are the x and y in pixels? that would be the problem..." CreationDate="2011-02-24T18:28:34.097" UserId="3794" />
  <row Id="11865" PostId="8985" Text="Duplicate of http://gamedev.stackexchange.com/questions/8785/c-game-programming-what-would-be-the-next-step ?" CreationDate="2011-02-24T18:42:09.910" UserId="2332" />
  <row Id="11866" PostId="8981" Text="And it's been all there... Thanks!" CreationDate="2011-02-24T19:09:35.830" UserId="2051" />
  <row Id="11867" PostId="8974" Text="And you are multiplying vec3 by matrix4. That is not good... what number goes into 4th position when you do vec_t(1st,2nd,3th,4th)?" CreationDate="2011-02-24T19:13:53.843" UserId="3794" />
  <row Id="11868" PostId="8974" Text="@notebene Wow, I guess it is, I had no clue. [This discussion](http://www.opengl.org/discussion_boards/ubbthreads.php?ubb=showflat&amp;Number=236015#Post236015) is good and provides an alternative which I'll have to look into, and now I'm REALLY hoping for a good answer to this question." CreationDate="2011-02-24T19:18:39.957" UserId="189" />
  <row Id="11869" PostId="8985" Text="Also look at http://gamedev.stackexchange.com/questions/854/what-are-good-games-to-earn-your-wings-with" CreationDate="2011-02-24T19:23:48.873" UserId="1156" />
  <row Id="11870" PostId="8979" Text="Sorry, but this is not correct without mentioning word &quot;rastarisation&quot; and interpolations." CreationDate="2011-02-24T20:13:40.740" UserId="3794" />
  <row Id="11871" PostId="8955" Text="I agree the documentation is lacking.  The core library is cross-platform.  However the renderer and input systems are lacking for other platforms.  For me that's not an issue as I built a renderer tailored to me render system." CreationDate="2011-02-24T20:58:22.297" UserId="370" />
  <row Id="11872" PostId="8974" Text="The fourth in the vector is an implicit 1" CreationDate="2011-02-24T21:00:00.873" UserId="4129" />
  <row Id="11873" PostId="8975" Text="I'm not sure your suggestion might work well with Micropather.  &#xA;With Micropather, it's up to you to compute the cost to move from one sector to another one. It's also up to you to say &quot;this sector is connected to this one&quot;. The _Graph_ class is not technically a graph (at least, not in the usual sense of the term!). So it will not take into account the node to add you're speaking about. In fact, if I add a new node, I'll have to compute the cost also with that node!&#xA;" CreationDate="2011-02-24T21:30:18.910" UserId="5516" />
  <row Id="11874" PostId="872" Text="...but sometimes it can actually be quicker to do the calculation even if you're going to throw away the result afterwards, rather than branch." CreationDate="2011-02-24T21:58:19.490" UserId="259" />
  <row Id="11875" PostId="8939" Text="True. I'm assuming that all moving objects have a PhysicsComponent or MovementComponent that handles their motion, and that the PlayerController and AIController would use that to handle the movement. Movement should definitely be a separate component, as there may be things that need to move that don't have AI or have the simplest possible AI (dumb physics objects like crates or junk)." CreationDate="2011-02-24T22:11:30.977" UserId="953" />
  <row Id="11876" PostId="468" Score="1" Text="noticed that the link is broken and can't find a working link. If anyone finds one, please update, thx." CreationDate="2011-02-24T23:31:54.650" UserId="202" />
  <row Id="11877" PostId="8138" Text="@jluzwick Thanks for your comment. How can I separate the drawing from the user input in the surfaceview? And would u say the above thread is best way for handling drawing?" CreationDate="2011-02-24T23:37:42.657" UserId="5171" />
  <row Id="11878" PostId="8985" Text="What horrible C++ book / tutorial is this the table of contents for?" CreationDate="2011-02-24T23:38:26.400" UserId="744" />
  <row Id="11879" PostId="8974" Text="@notabene Wouldn't your answer to http://gamedev.stackexchange.com/questions/6940/3d-ray-casting-picking answer the final question? Assuming Unproject means go from 2D to 3D?" CreationDate="2011-02-24T23:57:53.507" UserId="4443" />
  <row Id="11880" PostId="8967" Text="please no exp. curve =,( - leveling takes soooo long with it and even longer the closer you're to your goal, plssss no =.(" CreationDate="2011-02-25T00:03:30.213" UserId="202" />
  <row Id="11881" PostId="8985" Text="@Joe Wreschnig most C++ books over 5 years old? :(" CreationDate="2011-02-25T00:09:18.217" UserId="2332" />
  <row Id="11882" PostId="8994" Text="This is why Lua sucks." CreationDate="2011-02-25T00:09:52.820" UserId="4662" />
  <row Id="11883" PostId="8980" Score="3" Text="@James if you hover over my comment there's an up arrow on the left that, when you hover over it, says that you think it's a good comment.  It's better to use that." CreationDate="2011-02-25T00:29:07.683" UserId="51" />
  <row Id="11884" PostId="8988" Text="Doh - I just realized I duplicated Jason Pineo's post above in referring to the orbital mechanics page.  I'm removing that part of my answer and just keeping the &quot;simple rule system&quot; part." CreationDate="2011-02-25T00:32:30.220" UserId="3830" />
  <row Id="11886" PostId="8974" Text="My answer doesn't count with glViewport. And this implementation looks like what i have wrote so, unfortunately my answer will not solve anything. Actually, if we solve this i will correct my answer to work corectly with glViewport." CreationDate="2011-02-25T01:16:04.287" UserId="3794" />
  <row Id="11887" PostId="8994" Score="1" Text="i actually like it. could you provide why you dislike it, or any alternatives?" CreationDate="2011-02-25T02:19:23.303" UserId="5675" />
  <row Id="11888" PostId="8138" Text="@Stevanicus I'm editing my answer for additional information that you are requesting, check it out." CreationDate="2011-02-25T02:21:34.643" UserId="5095" />
  <row Id="11889" PostId="8994" Text="I'd also be interested in why you think Lua sucks." CreationDate="2011-02-25T03:56:17.147" UserId="3656" />
  <row Id="11890" PostId="8998" Text="Lol, &quot;video games as very fast limited data-set databases&quot; is probably just adding to the confusion." CreationDate="2011-02-25T04:53:09.227" UserId="3656" />
  <row Id="11891" PostId="8985" Text="I lol'd @ OO before functions an memory allocation" CreationDate="2011-02-25T05:11:41.763" UserId="3656" />
  <row Id="11892" PostId="8962" Text="Thanks very much for this info! I&quot;m a Producer at Blowfish Studios in Sydney Australia. &quot;Qbism HD&quot; was our first game release and we are now working on our next title which will be released for Android and iOs! Thanks again for your help!" CreationDate="2011-02-25T05:25:49.123" UserId="5650" />
  <row Id="11893" PostId="8991" Text="Come to think of it, that's actually how real physics work. " CreationDate="2011-02-25T05:55:41.313" UserId="2710" />
  <row Id="11894" PostId="9002" Score="1" Text="&quot;I obviously can't put anything out while I'm working for the company&quot; -- Is this actually true?  Are you bound by a contract stating this?" CreationDate="2011-02-25T06:13:14.813" UserId="3830" />
  <row Id="11896" PostId="8975" Text="Oh ok, I understand better what you mean. Meanwhile, I looked for an the source of [Lilith 3d](http://www.grinninglizard.com/lilith/) and it uses centroid too to compute distances cost. So I think using centroid to compute costs is not as bad as I thought." CreationDate="2011-02-25T08:26:22.447" UserId="5516" />
  <row Id="11897" PostId="8994" Score="1" Text="The interoperation with C++ is truly terrible- the language was only designed to interop with C and it shows. Then, when you spend your life finally making the damn thing work, the language itself is very poor- hard to debug, limited powers from Lua, etc. For example, how come full userdata can have `__gc` but not tables or light userdata? It's a mystery!" CreationDate="2011-02-25T09:38:01.133" UserId="4662" />
  <row Id="11898" PostId="8967" Text="A linear line wouldn't work. If you need 1000xp more per level, then as you get stronger you'll find it takes less and less time to level." CreationDate="2011-02-25T10:36:33.673" UserId="1156" />
  <row Id="11899" PostId="9008" Score="3" Text="I'm not -1, but diving straight into GL with a basic language understanding will just kill most people." CreationDate="2011-02-25T10:37:32.707" UserId="1156" />
  <row Id="11900" PostId="9009" Text="Have you tried it, to see if it works? The only thing that I could see happening is the DC being affected by the DEVMODE. You also may want to accept some previous answers." CreationDate="2011-02-25T10:52:39.193" UserId="1156" />
  <row Id="11901" PostId="9012" Text="I want quite a bit more than that though." CreationDate="2011-02-25T11:10:55.283" UserId="5694" />
  <row Id="11902" PostId="9012" Score="1" Text="What more do you want? With my suggestion, you can have the position of the sound change every frame. I think I'm missing something." CreationDate="2011-02-25T11:12:17.997" UserId="1156" />
  <row Id="11903" PostId="8946" Text="Steering behaviours are perfect for this." CreationDate="2011-02-25T11:38:25.733" UserId="259" />
  <row Id="11904" PostId="9012" Score="6" Text="I think he means simulating the air waves and other vibrations in order to generate the sounds. And sure that's possible, but no computer (except maybe some super computer clusters) could calculate that for any useful size space in real time, so no, if you mean that then there is no such thing (nor is there any real need, use the physics engine and read collision data to play an appropriate sample is &quot;close enough&quot;)." CreationDate="2011-02-25T11:59:11.003" UserId="337" />
  <row Id="11905" PostId="9012" Score="3" Text="If you want to get that advanced, not only is there a)Like Yourdoom said, no way that a normal computer could do it, and b)nobody would be able to tell the difference." CreationDate="2011-02-25T12:00:15.397" UserId="1156" />
  <row Id="11906" PostId="8941" Text="Doesn't a state pattern imply the first situation? This results in a single AIComponent implementing a state machine containing different state objects. What I meant with the second option was that WalkComponent and SwingComponent are of the same type as, say, RenderComponent and PhysicsComponent." CreationDate="2011-02-25T12:11:43.820" UserId="5508" />
  <row Id="11908" PostId="8138" Text="@jluzwick, thanks... i'm going to update my question" CreationDate="2011-02-25T13:26:28.420" UserId="5171" />
  <row Id="11909" PostId="9015" Text="look for some story about a Pokemon TV show episode in Japan which caused massive cases of epileptic crisis among young people: this is some good (and unfortunate) scientific data to show how some particular pattern caused those crisis." CreationDate="2011-02-25T13:46:24.713" UserId="1829" />
  <row Id="11910" PostId="8941" Text="@ghostonline As far as the idea goes, sort of. In implementation, not really. AIComponent would be separate, as in the second diagram. It wouldn't contain the other components. The more important question for your second situation is, if the designer just chooses components without a programmer, how does the Entity know when to change state? Different states imply different state transitions - someone still needs to specify those." CreationDate="2011-02-25T13:56:48.090" UserId="141" />
  <row Id="11911" PostId="9009" Text="I haven't built it yet I was exploring for advice before committing the time. Also 'working' isn't the result I need, for example it may work now then when I add complexity a serious error may occur due to not initialising the GL window in the appropriate manner." CreationDate="2011-02-25T14:39:39.103" UserId="778" />
  <row Id="11912" PostId="9002" Text="Weird. I didn't have &quot;edit&quot; link for this earlier, but wanted to break it into paragraphs.. now TreeUK has split it into paragraphs *and* I see an edit link. *shrug*." CreationDate="2011-02-25T15:05:31.977" UserId="4264" />
  <row Id="11913" PostId="9019" Text="You said basically everything I wanted to say, but better =)" CreationDate="2011-02-25T15:09:02.287" UserId="4264" />
  <row Id="11914" PostId="8941" Text="@Tesserex Do you mean adding an AIComponent to the entity in diagram 2, which will control the Stand/Walk/Swing-Component? My idea was that the components send block or activation signals upon certain conditions. For example, SwingComponent would emit generic signals, for example &quot;bound_feet&quot; signal on starting and &quot;release_feet&quot; on finishing the swing. WalkComponent would disable and enable itself based on these signals. Because the 'state transitions' are encapsulated in the components themselves, the designer will not need a programmer wiring the components together." CreationDate="2011-02-25T15:09:20.183" UserId="5508" />
  <row Id="11915" PostId="9012" Text="@Yourdoom: that is what I want. And I do not only want the sound of the hit. I want the sound it will make while spinning towards the listener, and away from him. That is indeed very resource intensive." CreationDate="2011-02-25T15:11:31.180" UserId="5694" />
  <row Id="11916" PostId="9012" Text="@Red Duck: b) is not valid. The hit sound, maybe... but the sound it makes while in the air, certainly not." CreationDate="2011-02-25T15:13:23.390" UserId="5694" />
  <row Id="11917" PostId="8941" Text="@ghostonline That works fine for the things that have fixed rules like &quot;can't walk while swinging&quot; but what about transitions between stand and walk? If standing is in control, how will it know to try walking? The standing logic may want to choose either walk or swing, which is affected by the total absence of a walking ability - it should always choose to swing in that case. But I do think you're on the right track." CreationDate="2011-02-25T15:20:50.050" UserId="141" />
  <row Id="11918" PostId="8980" Text="@Tetrad: I know, but that doesn't say who clicked it.  I wanted you to know I appreciate the link, as it was an interesting read." CreationDate="2011-02-25T15:30:48.490" UserId="4604" />
  <row Id="11919" PostId="9021" Score="1" Text="@Kdansky: This is true, and something I didn't think of, but I noticed that a lot of people starting on game development in C++ don't care to use boost / std.  Sometimes I feel it's because learning boost is like learning a whole new language." CreationDate="2011-02-25T16:28:14.670" UserId="4604" />
  <row Id="11920" PostId="9019" Text="Fortunately, 'what do you want to build' is a question with, if anything, far too many answers - I have at least three distinct prototypes and a half-dozen more designs in various stages of roughness waiting for me when I decide to dedicate myself to them full-time.  This is all excellent advice, though - and looking for a smaller shop was one of the things I was considering.  Thank you!" CreationDate="2011-02-25T16:44:27.117" UserId="5687" />
  <row Id="11921" PostId="9018" Text="This all makes excellent sense to me - I'm certainly doing some of the fourth (it's hard _not_ to prod at personal projects now and again), I've thought about angel investment a fair bit, I have a number of contacts particularly for art that I feel comfortable working with - and of course I'm trying to save money, though that one is always something of a trick..." CreationDate="2011-02-25T16:45:52.933" UserId="5687" />
  <row Id="11922" PostId="9025" Text="I can not do that, because I would not know the received keys (glut gives it to you as the functions arguments)" CreationDate="2011-02-25T17:53:07.347" UserId="5584" />
  <row Id="11923" PostId="9023" Text="Certainly the compiler implementation plays a role, but different languages provide different affordances for compiler-driven optimization, and different affordances for programmers to circumvent the usual language rules and talk to the hardware directly. The language and target _per se_ have plenty to do with performance." CreationDate="2011-02-25T18:14:45.917" UserId="744" />
  <row Id="11924" PostId="9025" Text="Of course. How else do you expect it to work? You can certainly query the OS directly to get the keyboard state and send those keys to your function. This will depend on the OS, and supporting multiple OSs will require some effort on your part. But that's the only way you can do it since GLUT doesn't have an on-demand keyboard state reading method, iirc." CreationDate="2011-02-25T18:21:58.653" UserId="1430" />
  <row Id="11925" PostId="9012" Text="For the spinning sound its pretty much Doppler effect with going to/from the player I believe, which is doable with current computers (and I believe OpenAL can do that by default). And maybe add a few samples of spinning towards/from the holes for a flute and choosing the proper one with Dopller effect, but really, if there is any other sound no one is going to notice, tell the difference maybe if they focus on it, but not notice if it's wrong." CreationDate="2011-02-25T18:49:59.407" UserId="337" />
  <row Id="11926" PostId="9024" Text="Have you found any serious flaws in Cocos? If you're a student, you're going to want to save as much as possible." CreationDate="2011-02-25T19:17:05.450" UserId="1156" />
  <row Id="11927" PostId="9015" Text="It was the Porygon Saves The Day one. ;)" CreationDate="2011-02-25T19:19:11.890" UserId="1156" />
  <row Id="11928" PostId="9028" Text="@Ellis: +1 for relevant response. Hi, Ellis, thanks for responding. I load .png texture file into OpenGL. Before loading that file, I opened it in Photoshop, and yes, alpha layer was present. I tried to add your line into fragment shader. The result was that all the objects in the scene were 50% darker, but where they overlapped, they were not transparent at all. What conclusion comes from this experiment?" CreationDate="2011-02-25T19:23:10.313" UserId="2229" />
  <row Id="11929" PostId="9028" Text="@Ellis: hmm, is it possible, that I have issues with blending seetings instead of presence of transparency information in the texture map?" CreationDate="2011-02-25T19:46:26.330" UserId="2229" />
  <row Id="11930" PostId="9031" Text="@Notabene: +1 for trying to thelp. Hi, well, I have multiple layers, and further layers are supposed to move slower (paralax scrolling) so z-buffer is used to solve transparency issues. However, I have more information: **It is the polygons, that are not transparent, not the textures.** I set glClearColor() to red, to see what happens. Actually, the texture itself becomes transparent, as the transparent areas of the texture become red. However, for some reason, the polygon keeps displaying glClearColor, instead of becoming transparent. Any idea why?" CreationDate="2011-02-25T20:04:24.430" UserId="2229" />
  <row Id="11931" PostId="9031" Text="Transparent objects must be rendered after opaque objects... It is not sure that this rule has been followed." CreationDate="2011-02-25T20:04:26.840" UserId="721" />
  <row Id="11932" PostId="9024" Text="Exactly.  I want to save as much as I can. But some have said that Corona speeds up the whole process up to 10x, which, if true, may make it worth it." CreationDate="2011-02-25T20:05:09.087" UserId="5703" />
  <row Id="11933" PostId="9031" Text="if alpha is null, you see the glClearColor. Full transparent is invisible..." CreationDate="2011-02-25T20:06:48.210" UserId="721" />
  <row Id="11934" PostId="9031" Text="@Notabene: to be sure all your questions are answerred, in this phase, I use only one layer, but as the objects are set one next to the other, I noticed that the areas that are supposed to be transparent hide neighbour sprites and overdraw them with black (the color set in `glClearColor()`)" CreationDate="2011-02-25T20:08:55.593" UserId="2229" />
  <row Id="11935" PostId="9031" Text="You draw order is not corred. You draw the transparent surface and after the neighbour sprites. Do you have sorted your transparent surfaces ?" CreationDate="2011-02-25T20:11:32.837" UserId="721" />
  <row Id="11936" PostId="9031" Text="@Ellis: yes, that is my case.. I see glClearColor in areas that are supposed to be transparent. However, I do not see any pattern in wrong organizing. Every object I draw has some areas transparent. Whichever object I draw as the last will obscure the object below, by overwriting areas that should be normally seen." CreationDate="2011-02-25T20:15:32.593" UserId="2229" />
  <row Id="11937" PostId="9024" Text="If Lua is an issue, check out Lua bindings for Cocos2d: https://github.com/snappycode/cocowax" CreationDate="2011-02-25T20:15:41.453" UserId="5661" />
  <row Id="11938" PostId="9031" Text="@Ellis It is sure. Read your alpha blending. Opaque object (alpha = 1) if rendered after, will overwrite transparent object. It is common for game engines. Depth prepass, generate shadow maps, opaque objects, then stuff like mirrors and last transparent objects (they have to be ordered or depth peeling have to be used). " CreationDate="2011-02-25T20:16:36.920" UserId="3794" />
  <row Id="11939" PostId="9031" Text="@Ellis, I have not sorted transparent surfaces, as they all have some areas transparent. There are spheres and different irregular objects, and every object has some portions to be cut out, as they all are placed on rectangular polygons." CreationDate="2011-02-25T20:17:09.907" UserId="2229" />
  <row Id="11940" PostId="9031" Text="@Bunkai.Satori And what exactly do you mean when you say polygon pairs?" CreationDate="2011-02-25T20:18:22.627" UserId="3794" />
  <row Id="11941" PostId="9031" Text="@Notabene: imagine, you have 2D sprites while every sprite has some portions that must be transparent, as no sprite is perfectly rectangular. Does in this case transparency sorting play any important role? How to sort the objects if every of them has some areas transparent?" CreationDate="2011-02-25T20:21:07.813" UserId="2229" />
  <row Id="11942" PostId="9031" Text="@Notabene: In OpenGL ES, there are no quad polygons. Sprites have to be of course rectangular, so in OpenGL ES, to construct a rectangular polyogn, I have to construct it from two triangles. Therefore, one quad polygon sprite == polygon pair consisting of two triangular polygons." CreationDate="2011-02-25T20:23:13.630" UserId="2229" />
  <row Id="11943" PostId="9031" Text="@Bunkai.Satori Yes unfortunately you have to sort them. Imagine it like photoshop layers. If you say that you have layers i suggest do one render pass of every layer. Starting from back to the camera." CreationDate="2011-02-25T20:25:47.173" UserId="3794" />
  <row Id="11944" PostId="9031" Text="@Notabene, @Ellis: Despite I did not believe it, I have placed one object closer to me (in the Z-Buffer) to be rendered later, and suprisingly, it became rendered correctly. Thanks to you guys. Now, i will have to figure out, how to sort objects so, that they get rendered correctly, if they all have some areas transparent." CreationDate="2011-02-25T20:30:23.063" UserId="2229" />
  <row Id="11945" PostId="9031" Text="@Notabene: how would you transparency-sort objects in one layer, if they are posisitioned next to each other, but still some of their parts overlap, and areas that are supposed to be transparent hide neigbour sprites, and overwrite them by glClearColor?" CreationDate="2011-02-25T20:36:36.080" UserId="2229" />
  <row Id="11946" PostId="9031" Text="I have disabled GL_DEPTH_TEST, and all my issues with overwritting disapeared. That is great. now I understand, that all my objects are drawn at the same layer, but maybe now, with correct ordering, I will be able to achieve layered and paralax scrolling effects." CreationDate="2011-02-25T20:44:29.303" UserId="2229" />
  <row Id="11948" PostId="9031" Text="Both, Notabene and Ellis proposed the simmilar solution - to perform transparency sorting. Thank you. However, because this answer clearly identified my problem in it's body, I am marking it as the *Accepted Answer*  " CreationDate="2011-02-25T21:01:55.270" UserId="2229" />
  <row Id="11949" PostId="8983" Score="4" Text="My experience is that the more portable your codebase becomes, the more you end up rewriting &quot;standard&quot; components, like STL." CreationDate="2011-02-25T21:05:22.127" UserId="4264" />
  <row Id="11950" PostId="9031" Text="@Bunkai.Satori You can easily specify order in vbo. It is just order of vertices (or indices). But if you are dooing parallax scrolling, why not to use layers? Even picture on wikipedia says so: http://en.wikipedia.org/wiki/Parallax_scrolling . And one last thing to thing about. You can specify depth of layer (Z) and use perspective projection instead of ortho. Then you only change camera position and scrollng paralax works for free. No need of different offsets for layers..." CreationDate="2011-02-25T21:06:58.917" UserId="3794" />
  <row Id="11951" PostId="8984" Score="1" Text="Any links to SC++L info? Googling that term is a nightmare." CreationDate="2011-02-25T21:08:20.757" UserId="4264" />
  <row Id="11953" PostId="8984" Text="@Jari: __S__ tandard __C++__ __L__ ibrary. The STL is a large part of the standard library.  Traditionally, many people referred to the standard library as the STL.  This is technically incorrect and Mr. Petrie was being pedantic." CreationDate="2011-02-25T21:17:27.357" UserId="370" />
  <row Id="11954" PostId="9031" Text="@Notabene: that is great idea with using perspective projection instead of ortho view. Although I haven't tried it, I have read, that with perspective projection there is loss of tiny details on the objects for objects too far or too close (resulting from resizing objects). Of course, I can not test everything what I read, but it sounds logical. What is your opinion? " CreationDate="2011-02-25T21:45:50.533" UserId="2229" />
  <row Id="11956" PostId="9012" Score="3" Text="There is still plenty that modern games do (and higher-level APIs like FMOD provide) that OpenAL cannot do, or at least does not do out of the box - such as (geometric) volume-based effectors, which can be additionally hooked up to portals to simulate audio passing through multiple rooms. It is not common, but it is done, and you can tell the difference." CreationDate="2011-02-25T22:20:15.673" UserId="744" />
  <row Id="11957" PostId="8984" Score="2" Text="If he's going to be pedantic, he should do it correctly: It's _C++ Standard Library_ (or stdlib), not _Standard C++ Library_." CreationDate="2011-02-25T22:28:13.870" UserId="744" />
  <row Id="11958" PostId="9031" Text="@Bunkai.Satori I'm sure (as a 3D programmer) that it is not truth. Well known problem with perspective projection is the depth buffer precision between the near and far. But you cannot experience any problems with few layer." CreationDate="2011-02-25T22:30:43.647" UserId="3794" />
  <row Id="11959" PostId="8258" Text="You mention that input hardly ever takes up many computer resources. I would like to point out that as the player becomes more physically connected to the game, this becomes less true. For example, the kinect. It's a form of input, but requires lots of computing resources to make use of." CreationDate="2011-02-26T00:13:28.307" UserId="373" />
  <row Id="11960" PostId="9002" Text="@Tim Holt Its a conflict of interest when you develop games for yourself while developing games for a company. I was very lucky to have landed a job where my higher-ups allowed me free reign to do with what I wanted on my spare time as long as it was not in direct conflict with my 'day job' as it were. This included both target market space as well as effort put in to my day job. This is rare though and if you did not get an agreement of this sort up front (before you started) chances are you will not find this is the case." CreationDate="2011-02-26T00:17:08.883" UserId="4443" />
  <row Id="11961" PostId="9002" Text="@James, it's a POTENTIAL conflict of interest.  If his contract explicitly forbids ANY game development, then it's pointless to ask the question.  If it forbids direct competition, then he needs to do something different from what work is." CreationDate="2011-02-26T00:47:05.037" UserId="3830" />
  <row Id="11962" PostId="8728" Score="1" Text="-1  That's a pretty negative take on things.  I hardly would classify HTML5 as a &quot;language and environment[s] that barely work as is.&quot;  " CreationDate="2011-02-26T02:39:45.267" UserId="3830" />
  <row Id="11963" PostId="9022" Text="Thanks for the pointers, the last point is certainly something im considering." CreationDate="2011-02-26T08:45:25.190" UserId="778" />
  <row Id="11964" PostId="9045" Text="Does using cudaChooseDevice requires the &quot;NDA version&quot; of NVIDIA's Driver API? I mean the one from these functions: http://developer.download.nvidia.com/compute/cuda/2_3/toolkit/docs/online/group__CUDART__DEVICE.html" CreationDate="2011-02-26T11:18:58.530" UserId="4947" />
  <row Id="11965" PostId="9045" Text="@zacharmarz Unfortunately, this will not work; when I am using integrated graphics, using cudaGetDeviceCount() will result in a value of one. When I am using discrete graphics, it results in a value of two. It is not possible for me to select a discrete GPU/GPUs for computation when I am in integrated graphics mode, or vice versa." CreationDate="2011-02-26T11:40:10.233" UserId="5717" />
  <row Id="11966" PostId="9048" Text="OpenGL ES 1.x or OpenGL ES 2.x?" CreationDate="2011-02-26T14:50:44.787" UserId="721" />
  <row Id="11967" PostId="9023" Text="A language can have a lot to do with run speed/performance because the syntax and standard libraries will favour different approaches. For example, a language where it is hard to use arrays of contiguous memory due to all their objects being pointers will tend to thrash the cache a lot more than one where you can use arrays or vectors effectively." CreationDate="2011-02-26T14:59:29.197" UserId="1101" />
  <row Id="11968" PostId="9048" Text="OpenGL ES1 1.x - sorry i forgot to mention that" CreationDate="2011-02-26T15:01:50.653" UserId="5718" />
  <row Id="11969" PostId="9049" Text="thanks for your answer, i knew this already - the problem is, that filling the buffer in each cycle needs so much time ;(" CreationDate="2011-02-26T15:02:54.240" UserId="5718" />
  <row Id="11970" PostId="9049" Text="You can use libgdx to resolve this issue." CreationDate="2011-02-26T15:12:17.333" UserId="721" />
  <row Id="11971" PostId="6080" Text="Just a note taken from my answer below. THERE IS NO SUCH THING AS NON-DETERMINISTIC PROGRAMS (at least without quantum computers). Anybody who says that should take Compter Science 101 again. All computer programs have exactly the same behavior when fed the same input. If you make a non-deterministic program in a deterministic computer, you'll revolutionize computer science forever." CreationDate="2011-02-26T16:27:39.457" />
  <row Id="11975" PostId="8969" Text="I can't upvote this answer enough. For example, there is no reason why there needs to be an any actual curve for the different amounts of exp per level because you can scale down the amount of experience an enemy gives you relative to your own level for the same effect but more manageable numbers. There's no real substitute for understanding your own combat system and how you want the game to play, and then fitting the experience system to that." CreationDate="2011-02-26T19:22:33.380" UserId="1101" />
  <row Id="11976" PostId="4451" Text="plus: play your choice in a loop - it shouldn't drive you crazy after listening for 10 minutes to it." CreationDate="2011-02-26T19:52:54.913" UserId="202" />
  <row Id="11977" PostId="9061" Text="Didn't APB do all that kind of stuff?" CreationDate="2011-02-26T20:01:31.543" UserId="395" />
  <row Id="11978" PostId="8993" Text="Thanks for your response. The mob class is just a general class which every interactive object in the game world will extend. I'm using actionscript which doesn't natively support vectors, but I get the idea!&#xA;&#xA;" CreationDate="2011-02-26T20:33:03.800" UserId="5677" />
  <row Id="11979" PostId="9060" Text="Check out EA's Lord of Ultima game, which I believe is heavily HTML5.  www.lordofultima.com" CreationDate="2011-02-26T20:40:02.283" UserId="3830" />
  <row Id="11980" PostId="9066" Text="Yeah, that's my problem - i want to scroll the map and therefore i run into the described problems. I haven't figured out yet, how to efficiently solve the problem." CreationDate="2011-02-26T21:18:59.503" UserId="5718" />
  <row Id="11981" PostId="8993" Score="1" Text="AS2 or AS3? If you're using AS3 check here: http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/Vector.html Adobe recently added this class to Flex 4 in order to make operations on a container of elements of all the same type more efficient. You should definitely use it if you're able." CreationDate="2011-02-26T21:27:11.160" UserId="3656" />
  <row Id="11983" PostId="9066" Text="Divide your map in square sections, and try to fit a [quadtree](http://en.wikipedia.org/wiki/Quadtree) in there." CreationDate="2011-02-26T22:47:47.223" UserId="2798" />
  <row Id="11984" PostId="8993" Text="Oh nice, didn't realise this! thanks :) Another thing I was wondering, how should I call the attack class to execute it? Should the class be static so I could just call it like &quot;sampleattack.execute&quot; or should I make it a regeular class and initialize it as followed: &quot;var attack:sampleattack = new sampleattack()&quot;. Not sure whats appropiate in this case." CreationDate="2011-02-26T22:48:48.227" UserId="5677" />
  <row Id="11985" PostId="9069" Score="1" Text="I think this question won't bring useful answers as is. Try changing it a bit, in particular, ask about methods for handling different clothing and facial morphing that RPG's usually implement in their editors. I would be interested in that answer as well :)" CreationDate="2011-02-26T23:11:22.483" UserId="5007" />
  <row Id="11986" PostId="8993" Text="If you want to maintain state inside of your SampleAttack class for cooldowns or other things on a per mob instance, then that requires a SampleAttack instance for each mob. If you don't need to track state, or if you are tracking with another field in the mob class, when you can use the static method route. But then you have no type safety. You could provide a GetInstance method for each attack and treat them as singletons. It really depends on your game." CreationDate="2011-02-26T23:37:38.520" UserId="3656" />
  <row Id="11987" PostId="9072" Text="Well, I just spent the last 30 minutes researching the R Tree. I do like the idea of it. I also think it could do the job. I also see a significant amount of overhead with it. The idea of &quot;find all T within d of X&quot; is nice. I'm debating if it would have use in the engine. I could see &quot;Player p says &lt;message&gt; - notify other players within d&quot; or &quot;Action a happened - notify other players within d&quot; or &quot;For each monster, find all players within d - if found player and aggressive to player attack&quot;. Thanks for the idea, I'm going to put some thought in it." CreationDate="2011-02-27T01:19:33.497" UserId="5678" />
  <row Id="11988" PostId="9067" Text="Thanks.Why do we need to disable depth writing when drawing transparent object? And we need to disable per draw call of each mesh? Will that take away depth info as I was having that problem with depth earlier (http://stackoverflow.com/questions/5119641/missing-depth-info-after-first-mesh)" CreationDate="2011-02-27T07:06:23.533" UserId="5725" />
  <row Id="11989" PostId="9070" Text="Well, the whole game idea revolves around moving objects making sound. The example given is over-complex on purpose, however the game idea does involve realistically-sounding objects in movement." CreationDate="2011-02-27T08:11:54.267" UserId="5694" />
  <row Id="11990" PostId="9032" Text="Interesting stuff. This is what I mean, and it being not done yet does not hinder me. I do not plan to begin actual (non-conceptual) work on it before 1-2 years." CreationDate="2011-02-27T08:28:20.413" UserId="5694" />
  <row Id="11991" PostId="9044" Text="I can fake a lot. Just... much less than contemporary video games. Which is the point: I'm not creating a video game, but an audio game. Kinda." CreationDate="2011-02-27T08:41:28.173" UserId="5694" />
  <row Id="11992" PostId="9012" Text="Hmm. I'm thinking... could I create a room the shape of a flute, determine (sample) the sound made by each hole (params: speed of air flow, angle) and use such technology to get the sound the flute would make? Then attach this to a source moving towards the player, calculate Doppler... and that's good enough for me." CreationDate="2011-02-27T08:46:20.853" UserId="5694" />
  <row Id="11993" PostId="9070" Text="Most parameters would actually be controlled: consider a closed (sealed), cubic room with walls of a particular material (of which properties I define), air temp, pressure, humidity, etc are all controlled. Ears are human. I don't even need to consider the rest of the body. In fact, instead of black-listing, I can specify exactly which params I use, and define (constant) all the rest. It's my (virtual) world: I define it as I want it to be." CreationDate="2011-02-27T08:56:39.143" UserId="5694" />
  <row Id="11994" PostId="9079" Score="1" Text="+1 for many diciplines" CreationDate="2011-02-27T09:45:11.050" UserId="4264" />
  <row Id="11995" PostId="9045" Score="1" Text="On a laptop, this is probably by design. Having both devices running would gobble battery power like crazy and nullify any savings by switching off the discrete chip and running the integrated chip instead. This is probably physically controlled at the hardware layer rather than just running both and routing the right device to the display." CreationDate="2011-02-27T11:47:39.093" UserId="263" />
  <row Id="11996" PostId="9017" Text="What exactly are you trying to do here? Poll the keyboard during rendering? If so, you definitely do not want to go down that route. Separate your fast-as-it-can-go rendering code from your event-triggered input logic. Event logic updates the game state when something happens (like a key is pressed). Rendering logic just draws the game state to the screen." CreationDate="2011-02-27T12:08:09.763" UserId="263" />
  <row Id="11997" PostId="9081" Score="1" Text="The first question is pretty irrelevant. Why should it matter how the industry does it? They don't do everything the best way." CreationDate="2011-02-27T12:43:59.357" UserId="1156" />
  <row Id="11998" PostId="9067" Text="No, you just disable the depth state once and then draw all the transparent objects after that call. This is done because since you can see through alpha blended polygons, if you output depth information and some object is then drawn farther, it will appear with some parts &quot;cut&quot; by the transparent outline." CreationDate="2011-02-27T13:21:18.987" UserId="2798" />
  <row Id="11999" PostId="9084" Text="I use glfw. There are only deprecated functions for loading images so I don't want to use them." CreationDate="2011-02-27T13:29:12.513" UserId="2905" />
  <row Id="12000" PostId="9031" Text="@Notabene: As you ahve 3D programminge experience, is there really **no texture bluring** caused with rendering the textured polygon with persepective projection vs ortho view?" CreationDate="2011-02-27T13:51:00.080" UserId="2229" />
  <row Id="12001" PostId="9085" Score="2" Text="Is that your entire code? Are you sure you aren't doing any more glPushMatrix that don't have a corresponding glPopMatrix? Are you sure the for isn't affecting only the glPushMatrix instruction?" CreationDate="2011-02-27T14:44:34.580" UserId="2798" />
  <row Id="12002" PostId="9079" Text="+1 for a good answer to the question even though for my particular game I don't have to deal with most of those (turn-based and tile-based so no real collisions, no physics, graphics consist of sprites and throwing more JQuery at it, 2-player so no AI yet, user input is handled in a mostly RESTful manner which also covers the networking aspect)  I'm not quite sure what you mean by File IO though, other than say saving/loading a game what kinds of IO are needed in typical games?" CreationDate="2011-02-27T14:46:04.490" UserId="5006" />
  <row Id="12003" PostId="9088" Text="DevIL is under LGPL. This is little too restrictive for me." CreationDate="2011-02-27T15:07:51.103" UserId="2905" />
  <row Id="12004" PostId="9079" Score="3" Text="I agree with most of this post, and gets a +1 from me, but I would call into question the &quot;bigger and more expensive risk of failure&quot; line. If you work for a bank, or a large manufacturing firm, or a very high traffic website, your failure can be measured in hundreds of thousands per minute of downtime as a result of failure. In an hour, you could lose (in lost sales, lost customers, etc) more than some game-dev shops months worth of full payroll. I'm not saying it can't be big, I'm just saying I'm not convinced it's any bigger than traditional software." CreationDate="2011-02-27T15:11:06.687" UserId="5678" />
  <row Id="12005" PostId="9079" Text="@glowcoder I know what you're saying but I think I also understand the point Sion's trying to make, that with games generally either the whole project is a success or it's a failure, and it's usually a factor of what you mentioned in your answer: is it fun?  You can do hot-fixes for bugs but you can't hot-fix a lack of fun.  " CreationDate="2011-02-27T15:30:03.847" UserId="5006" />
  <row Id="12006" PostId="7474" Text="yes, i reference ContentPipelineExtension project (which contains TilemapContent) in Editor project, and i don't see problem with it.  Problem is that TilemapContent can not be rendered and TilemapData can not be saved. (And i need to do both in editor)" CreationDate="2011-02-27T15:44:55.073" UserId="3624" />
  <row Id="12007" PostId="9087" Text="It looks the licence is not liberal enough." CreationDate="2011-02-27T15:57:36.350" UserId="2905" />
  <row Id="12008" PostId="9088" Score="1" Text="Keep in mind that as long as you don't modify the original source code, you can link to a LGPL library and keep your main code closed/private/used for commercial purposes." CreationDate="2011-02-27T15:58:56.780" UserId="2798" />
  <row Id="12009" PostId="9089" Score="2" Text="If you swap &quot;fun&quot; with &quot;useful&quot; I think you run into the same problem with designing a product (as opposed to writing software for a client).  I suppose there is a difference in degree though.  People are sometimes wrong about what would be useful, they are usually clueless as to what makes something &quot;fun&quot; to them. (+1 though)" CreationDate="2011-02-27T16:05:56.780" UserId="5006" />
  <row Id="12010" PostId="9087" Text="@Michas All it requires you is to acknowledge the use of the library, otherwise you are free to modify the sources and use in commercial projects. Or maybe I did not read the license carefully enough?" CreationDate="2011-02-27T16:14:40.300" UserId="1887" />
  <row Id="12011" PostId="9087" Text="I may be forced to publish some of source code." CreationDate="2011-02-27T16:19:19.983" UserId="2905" />
  <row Id="12012" PostId="9088" Text="I know. However I want to link everything into single file." CreationDate="2011-02-27T16:22:22.650" UserId="2905" />
  <row Id="12013" PostId="9031" Text="@Bunkai.Satori This is long discussion :). No. I'm 99.9% sure that it is not truth. Texture bluring can be caused only if polygons size on the screen is bigger than texture resolution. It can be with glOrtho as well. You should maybe little study more what happens between vertex shader and pixel shader (no offense in this ;-)). Projection matrix plays with vertices on vertex shader. Than rasterisation takes place and it works same for ortho and projection(because it works over transformed vertices). And then there is pixel shader working with textures. So i think it is the same." CreationDate="2011-02-27T16:26:19.167" UserId="3794" />
  <row Id="12014" PostId="9086" Text="+1  It's also public domain. Doesn't get any more liberal than that." CreationDate="2011-02-27T16:32:22.000" UserId="1887" />
  <row Id="12015" PostId="9032" Text="Niiiiice. Thanks for the STK ^_^" CreationDate="2011-02-27T16:32:32.777" UserId="2332" />
  <row Id="12016" PostId="9088" Text="@r2d2rigo: What Michas is referring to is that the LGPL demands _either_ that you release rebuildable code (under whatever other terms you want), _or_ you must link dynamically to the LGPLd code. Most people simply do the latter, but if you want static linking (as is common in games), you must provide the recipient a way to re-link your application with the library - which usually means source code, although you can restrict distribution and other uses thereof." CreationDate="2011-02-27T16:43:11.127" UserId="744" />
  <row Id="12017" PostId="9089" Text="There was an infamous supreme court ruling regarding the adult film industry and what classified &quot;hardcore&quot; in the the '60s. The justice said &quot;I could never succeed in [defining it] but I know it when I see it.&quot; I think the same can be said for fun. I mean, I can jot down things I like about games, but I often find myself playing a game and asking myself &quot;What makes this fun?&quot; (Obviously I want to know so I can recreate it in one of my games!!) People don't know what makes something fun, but they definitely know when they found it!" CreationDate="2011-02-27T16:49:52.990" UserId="5678" />
  <row Id="12019" PostId="9085" Text="Yes, we need to see your other code. Where are you setting up the projection matrix? Are you switched to GL_MODELVIEW mode yet? (The projection matrix stack is incredibly small.)" CreationDate="2011-02-27T16:54:59.657" UserId="5551" />
  <row Id="12023" PostId="9085" Text="Definitely avoid your second code sample. Having a glPopMatrix just floating there without a corresponding glPushMatrix would certainly lead to an underflow. Your first code sample looks OK; there must be an issue in the rest of your code." CreationDate="2011-02-27T17:07:11.583" UserId="5551" />
  <row Id="12024" PostId="9085" Text="I deleted my answer because it contained error. I assumed something which was not true." CreationDate="2011-02-27T17:14:47.750" UserId="3794" />
  <row Id="12026" PostId="9093" Text="It should be running like that. Gotta love Python and its whitespace-based syntax. :P" CreationDate="2011-02-27T17:30:17.360" UserId="5551" />
  <row Id="12027" PostId="9093" Text="This is exactly how it runs. &lt;JustPersonalOpinion-DoNotFlame&gt; Because it is python and python is crazy and you define { and } by tabulator. &lt;/JustPersonalOpinion-DoNotFlame&gt; " CreationDate="2011-02-27T17:32:45.957" UserId="3794" />
  <row Id="12028" PostId="9092" Text="SOIL is a light wrapper around stb_image." CreationDate="2011-02-27T17:52:38.380" UserId="744" />
  <row Id="12029" PostId="9092" Text="Ah, I was not aware of that." CreationDate="2011-02-27T18:12:38.283" UserId="2792" />
  <row Id="12030" PostId="9093" Text="The way the OP indented the loop, yes, that is basically how the loop is running." CreationDate="2011-02-27T18:37:17.563" UserId="406" />
  <row Id="12031" PostId="9079" Score="2" Text="I'm not at all convinced that &quot;bigger teams&quot; is true even as a generalisation. Sure, AAA games have big teams - but so do complexity-equivalent non-game software products. Vast numbers of games are produced by individuals or teams of two or three people." CreationDate="2011-02-27T21:32:08.090" UserId="5020" />
  <row Id="12032" PostId="9002" Text="@Tim Holt: one problem is not necessarily a contract clause directly barring competition, but clauses saying that any intellectual property you create is owned by the company. I don't know whether the legitimacy of this has been tested in court or not." CreationDate="2011-02-27T21:39:40.113" UserId="1101" />
  <row Id="12033" PostId="9079" Text="@Davy8 oh if only the commercial success of a game was proportional to how fun it is. :)" CreationDate="2011-02-27T21:46:21.523" UserId="259" />
  <row Id="12034" PostId="9079" Text="@Davy8 IO in games is used for saves like you suggested, as well as loading pre-defined data such as levels, config files and art. Many games need cross-platform ways of accessing this data, which may be on a disk or cached to a hard drive." CreationDate="2011-02-27T21:48:50.087" UserId="259" />
  <row Id="12035" PostId="9096" Text="wait, do you recommend to learn the low level stuff as a beginner, or to learn OGRE as a beginner?" CreationDate="2011-02-27T22:04:31.833" UserId="5744" />
  <row Id="12036" PostId="9079" Text="Actually I don't feel the last 3 (User input, File IO, and networking) are really specific to game programming.  Most programs need to deal with those in some extent." CreationDate="2011-02-27T22:11:55.693" UserId="5006" />
  <row Id="12037" PostId="9079" Text="@Davy8: Granted, certainly it's dependent on the scale of the project you're working on." CreationDate="2011-02-27T22:34:59.333" UserId="3793" />
  <row Id="12038" PostId="9079" Text="@glowcoder: Indeed, there are plenty of traditional software development projects where the costs and risks associated are immense. Your average run of the mill game development project is generally pass/fail.&#xA;@Peter Taylor: I'll concede that. Just generalizations like I said, from my experience." CreationDate="2011-02-27T22:46:31.213" UserId="3793" />
  <row Id="12039" PostId="9079" Text="@Davy8: User input is different in this case. Controllers, buffered input, processing what a sequence of inputs mean (fighting games). File I/O involves compressed libraries of assets, even procedurally generated. Networking is also very different, data is often delta compressed, lots of messages, multiple hosts.&#xA;&#xA;Really couldn't respond to all of these in one comment, sorry." CreationDate="2011-02-27T22:47:10.040" UserId="3793" />
  <row Id="12040" PostId="9085" Text="I've added a pastebin to my full code. Thanks for the comments so far!" CreationDate="2011-02-27T23:40:29.713" UserId="1624" />
  <row Id="12041" PostId="9093" Text="-1 Ofcourse the OP is sure his loop runs this way. Indentation is a standard feature of python and OP clearly shows this by having the statements indented properly in the code. OP is not the one who is confused on this aspect." CreationDate="2011-02-27T23:47:27.977" UserId="656" />
  <row Id="12042" PostId="9079" Text="@Sion I see, my current game requires none of those things (there's obviously user input but it's not real time, it's hit a button send to the server, client gets updated game state), and I was really thinking more indie games with a single developer that has a day job, so a lot simpler in scale than say a AAA title, or even just one with full time devs.  Again my question didn't specifically say that's what I'm looking for so it's a good answer nonetheless." CreationDate="2011-02-28T00:00:04.370" UserId="5006" />
  <row Id="12043" PostId="9045" Text="@void-pointer I was going to propose the same thing as zacharmarz and as Bob points out it's most probably a hardware boundary. I don't think there's another (conviennent, standard) way to achieve what you want." CreationDate="2011-02-28T01:25:54.340" UserId="202" />
  <row Id="12044" PostId="9085" Score="1" Text="Why don't you ask this on *Stack'Flow*?" CreationDate="2011-02-28T01:28:44.087" UserId="3637" />
  <row Id="12045" PostId="9093" Score="2" Text="@5ound: The OP would clearly rather be writing C/JS/something than Python, and whitespace details are often lost when pasting, I think double-checking indentation is a reasonable question." CreationDate="2011-02-28T01:40:52.243" UserId="744" />
  <row Id="12046" PostId="9093" Text="@Joe Wreschnig Fair enough. I'll take back my vote on the basis that this answer maybe useful for reminding people to double check their block indentation." CreationDate="2011-02-28T03:22:55.267" UserId="656" />
  <row Id="12047" PostId="9080" Text="I think that you are right about this - I searched though the Windows API and could not find any functions that could switch between discrete and integrated GPUs, though it is possible to switch among multiple GPUs which are all &quot;visible&quot; to the driver at the same time using the ChoosePixelFormat() function in the Win32 API. I am pretty sure that this is possible to do using the &quot;NDA version&quot; of the NVAPI, but you would need to register as a developer and wait for your application to be approved." CreationDate="2011-02-28T04:34:45.643" UserId="5717" />
  <row Id="12052" PostId="8272" Text="Thanks, Accepted... " CreationDate="2011-02-28T08:36:01.840" UserId="5246" />
  <row Id="12053" PostId="9103" Score="1" Text="You just did their homework!  Will they learn what went wrong and how to fix it, or will they just copy and paste and move on?" CreationDate="2011-02-28T09:25:45.563" UserId="4129" />
  <row Id="12054" PostId="9045" Text="@Dave O. I agree with you and Bob Somers, but the frustrating thing is that NVIDIA's driver utility can do this without having me to configure my graphics settings through BIOS, so I know that there is a function which it is invoking in order to do this." CreationDate="2011-02-28T09:36:50.757" UserId="5717" />
  <row Id="12055" PostId="9103" Score="1" Text="So being too helpful is a reason to vote down ? And fixing what was basically a single off by one mistake is &quot;doing their homework&quot; ? If you look at the full code the OP put on pastebin, you'll note I just moved code around so I could read it more easily, and changed those two wrong indices..." CreationDate="2011-02-28T09:56:38.890" UserId="4897" />
  <row Id="12056" PostId="9106" Text="This won't fix the issue since as you noted, the problem is iterating out of bounds, as I had outlined in my answer that you voted down. Also, this would not help him see his actual answer; since the exception is uncaught, the script will still terminate. So, -1, if I could vote down, especially for the remakably bad form of trying to bury my earlier answer !" CreationDate="2011-02-28T10:09:21.283" UserId="4897" />
  <row Id="12057" PostId="9106" Text="The exception from the GL stack detecting the unbalanced stack is what is stopping him seeing the root cause exception.  In the same way he sees the report that he has an unbalanced stack in the terminal, he'll now see that he has an out of bounds exception." CreationDate="2011-02-28T10:21:21.227" UserId="4129" />
  <row Id="12058" PostId="9106" Text="Fair enough; I'm still not sure how he's seeing a stack overflow though. The code in his pastebin raises an IndexError at the appropriate place for my install of Python 2.7 and the latest PyOpenGL and runs correctly once this is fixed. On top of that, his code does not push more than it pops, as far as I can tell from reading it." CreationDate="2011-02-28T10:42:13.050" UserId="4897" />
  <row Id="12059" PostId="9106" Score="1" Text="It depends on the OpenGL implementation; it seems obvious that his OpenGL implementation is aggressively counting in its tidy up code that is getting triggered by the exception unwinding." CreationDate="2011-02-28T11:24:46.927" UserId="4129" />
  <row Id="12060" PostId="9106" Text="Good point ! The exception that triggered all though is probably still visible to the OP though, I guess he just saw the last one and didn't search for the root cause." CreationDate="2011-02-28T11:39:18.523" UserId="4897" />
  <row Id="12061" PostId="9110" Text="I don't understand how does this help when I have 200 separate game objects with unique transforms? Using glMultMatrix would apply same transformation to all objects which is not what I want. Also, sending data to GPU is not bottleneck; if I remove CPU-side transformations perfomance is very good." CreationDate="2011-02-28T13:47:26.260" UserId="4241" />
  <row Id="12062" PostId="6450" Text="+1 for actually doing it, that's great." CreationDate="2011-02-28T14:16:55.553" UserId="5006" />
  <row Id="12063" PostId="6080" Score="1" Text="@Oscar while that's technically true if you consider **all** input, there's quite a bit of input that you have no control over, so from a practical standpoint (as opposed to a theoretical one) if the same inputs (that you have control of) don't yield the same output, then it might as well be non-deterministic, even if it's technically not true." CreationDate="2011-02-28T14:29:24.187" UserId="5006" />
  <row Id="12064" PostId="9113" Text="Hi Davy8, thanks for your reply, beside the space, I also concern the query is too much, as a result the user will waiting for a long time (I didn't estimate the host will rent, but I'm trying to minimize the things if possible, and I expect when a lot of user playing at the same time :) ). Actually, I put the attribute of the inventory in the PHP array currently, the database is only store the inventory is exist or not for the user." CreationDate="2011-02-28T14:35:48.017" UserId="5759" />
  <row Id="12065" PostId="9110" Text="Yes, but a VBO could still improve performance if applied correctly. How are you currently rendering your 200 objects? Are you using glBegin/glEnd?" CreationDate="2011-02-28T15:02:15.680" UserId="5551" />
  <row Id="12066" PostId="9113" Text="If the queries are slow, you just likely need better indexes.  However generally speaking unless you're doing complicated queries the database isn't going to be all that slow.  Definitely changing the size of the column isn't going to noticeably affect performance." CreationDate="2011-02-28T15:07:54.573" UserId="5006" />
  <row Id="12067" PostId="9110" Text="I'm using Irrlicht 3D engine with custom scene node so I'm not using OpenGL directly (but I suppose it's using simple glBegin/glEnd in this case). Would VBO really help since I would have to modify the whole buffer every frame? Also, this does not solve the fundamental problem about being CPU-bound because of vertex transform calculations. But thank you for your answers anyway!" CreationDate="2011-02-28T15:47:29.247" UserId="4241" />
  <row Id="12068" PostId="9103" Text="This *is* actually useful - my problem wasnt" CreationDate="2011-02-28T16:11:49.340" UserId="1624" />
  <row Id="12069" PostId="9085" Text="@muntoo - I figured that since this was dealing with OpenGL and the matrix stack implementation specifically, I'd find more specialized knowledge here - where many people use OpenGL" CreationDate="2011-02-28T16:19:38.960" UserId="1624" />
  <row Id="12070" PostId="9117" Text="Do you want to know specifically how portal 2 did it or how you can do it in general?" CreationDate="2011-02-28T16:20:58.317" UserId="1477" />
  <row Id="12071" PostId="9103" Text="This reply *is* actually useful, and also has very little to do with my actual homework. As I initially posted, I'm interested in figuring out how the camera works - which means that I will be fiddling around with this code. Bethor answered my question (it was a one-off error, built into the original code example), and went above and beyond and cleaned up the code. Hence getting accepted. (drat SO for auto-posting my comment and cutting my time off before I could draft a decent comment)" CreationDate="2011-02-28T16:23:29.470" UserId="1624" />
  <row Id="12072" PostId="9106" Text="The last 400 or so. I was using Python 2.6 and whatever OpenGL implementation comes in the Ubuntu 10.10 repo. My guess is that the threading just steamrolled over the initial IndexError. Lesson learned? In case of threading, pipe output to a file and start at the beginning &gt;.&lt;" CreationDate="2011-02-28T16:30:13.567" UserId="1624" />
  <row Id="12073" PostId="9118" Text="Thank you for your answer. Your suggestion about doing rotation calculation in shader is excellet but unfortunately I'm using OpenGL ES 1 which does not support shaders so I am stuck with fixed pipeline. I'll try point sprites but I can't use them in all cases because there is upper limit for their size. I'm still little bit pessimistic about VBO, if I'm recalculating position of each vertex every frame, how does VBO help?" CreationDate="2011-02-28T17:03:16.777" UserId="4241" />
  <row Id="12074" PostId="9118" Text="it allows your vertex data to stay on the gpu, which decreases the amount of data you have to send over to the gpu each frame. you don't need shaders to take advantage of this tho, you shouldn't need to change the vertex data at all, if you have a base position (such as the origin) for each sprite, you can just alter the world matrix by it's transform before calling draw. however, this might be tough when batching. using fixed function, it'd probably be more beneficial to just switch to VBOs and drop the batching for now at least, that will definitely give you a boost." CreationDate="2011-02-28T17:41:03.187" UserId="4749" />
  <row Id="12075" PostId="9087" Text="I'm not sure where you are getting that idea... are you actually going to modify the FreeImage library (hint: probably not; be honest with yourself)?" CreationDate="2011-02-28T17:42:28.090" UserId="5259" />
  <row Id="12076" PostId="9095" Text="As Ricket said, this question is overly broad, and there are a lot of &quot;getting started&quot; questions already.  If you have a more specific question feel free to ask those in the future." CreationDate="2011-02-28T17:44:05.860" UserId="51" />
  <row Id="12077" PostId="9117" Score="1" Text="Heavily related: http://gamedev.stackexchange.com/questions/195/any-tips-for-creating-cross-platform-games (as well as anything with the `cross-platform` tag)" CreationDate="2011-02-28T17:45:06.843" UserId="51" />
  <row Id="12078" PostId="9119" Text="Geometry shader is not new. It was the biggest feature of shader model 4. And now we have shader model 5. Geometry shaders are truly not supported on the XBOX, because it has SM3. But where did sebf specify that he uses xna or xbox? :]" CreationDate="2011-02-28T17:51:45.320" UserId="3794" />
  <row Id="12079" PostId="9118" Text="I see your point. So after all, you're not talking about batching but simply using one draw call to draw one game object. I'll definitely test how VBO without batching affects FPS in my game but still 200 draw calls per frame sounds too big... but I guess I have to live with it then. I will accept your answer if no other answers will show up." CreationDate="2011-02-28T18:08:52.160" UserId="4241" />
  <row Id="12080" PostId="9070" Text="My point was that the amount of effort that such an audio engine would require in the general case are not worth it.  Especially when talented sound engineers can very convincingly fake any effects you need.  Doppler is built in. echo, damping, etc can all be done with filtering." CreationDate="2011-02-28T18:12:18.860" UserId="370" />
  <row Id="12081" PostId="9104" Text="The question &quot;Do you think future MMOs (and games generally) will wrriten with WebGL?&quot; and the answer &quot;Yes. I believe within the next five years, most 3D browser games will be written using WebGL.&quot; are not a precise match for each other..." CreationDate="2011-02-28T18:20:09.970" UserId="1101" />
  <row Id="12082" PostId="9115" Text="Max uses a ray-tracer. You won't need that kind of quality for in-game use." CreationDate="2011-02-28T18:32:05.960" UserId="4662" />
  <row Id="12083" PostId="9119" Text="@notabene: His link is to 360 scenery." CreationDate="2011-02-28T18:33:38.237" UserId="4662" />
  <row Id="12084" PostId="9122" Score="1" Text="As an aside, the actual *compiler* in VC++ is, whilst better than before, not held up to be world beating." CreationDate="2011-02-28T18:41:03.597" UserId="4129" />
  <row Id="12085" PostId="9115" Score="1" Text="@DeadMG that kind of quality is possible in realtime, using grass constructed on geometry shader and shaded with some opacity map technique." CreationDate="2011-02-28T18:54:34.450" UserId="3794" />
  <row Id="12086" PostId="9127" Score="4" Text="This question is too localized. It is specific to the UK, but beyond that, it is specific to you, your abilities, your means, and your personal desires." CreationDate="2011-02-28T19:56:16.447" UserId="744" />
  <row Id="12087" PostId="9103" Text="Lots of lots of code :)" CreationDate="2011-02-28T20:03:41.490" UserId="2063" />
  <row Id="12088" PostId="9133" Score="2" Text="Are you asking how to point the domain to your webhost? Or how to run your game server on a remote machine? " CreationDate="2011-02-28T20:39:41.270" UserId="14" />
  <row Id="12089" PostId="9122" Text="@Will - that depends upon your priorities.  It lags behind on standards compliance, but tends to be smarter than other compilers when it comes to things like templates and references.  Sometimes it will let you get away with things that aren't standards compliant but make more sense." CreationDate="2011-02-28T21:16:40.067" UserId="4604" />
  <row Id="12090" PostId="6080" Score="1" Text="Anyone who thinks that floating point arithmetic is _reliably_ deterministic across operating systems, architectures, or compilers should do some research on the problems that come up in practice: http://gafferongames.com/networking-for-game-programmers/floating-point-determinism/" CreationDate="2011-02-28T21:26:51.103" UserId="92" />
  <row Id="12091" PostId="9048" Text="200ms for 400 sets of floating point coordinates seems like an incredibly long time. What do your data structures look like? What do the inner loops performing the copy look like? Are you using any of the glGet* API calls?" CreationDate="2011-02-28T21:27:05.757" UserId="179" />
  <row Id="12092" PostId="6083" Text="Do you have a source on how braid did its rewinding?" CreationDate="2011-02-28T21:30:18.933" UserId="92" />
  <row Id="12093" PostId="9127" Score="2" Text="Do a CS course. It'll almost certainly be much more beneficial." CreationDate="2011-02-28T21:51:37.277" UserId="1156" />
  <row Id="12094" PostId="6083" Text="@Henk, there's a GDC 2010 talk on it. If you have GDC Vault access you should be able to dig it out pretty easily. Without that, it may not be available." CreationDate="2011-02-28T22:07:57.560" UserId="323" />
  <row Id="12095" PostId="9134" Score="1" Text="i am in the exactly same situation (EE developer with interest in game dev). i started to read following book, i really can recommend it: http://www.amazon.com/dp/B002YNS62A" CreationDate="2011-02-28T23:42:10.450" UserId="1583" />
  <row Id="12096" PostId="9140" Text="i am curious, what benefits do JOGL offer over LWJGL? i thought that LWJGL is a wrapper for native OpenGL libs like JOGL but offers just additional features helpfull for game dev, am i wrong?" CreationDate="2011-02-28T23:48:09.243" UserId="1583" />
  <row Id="12097" PostId="9125" Text="@notabene, Thanks for the link! Though I am familiar with vertex shaders ;) what I meant in the question was to keep discussion to modelling (i.e. design time based) solutions as opposed to a shader based solution which I would have asked about in a seperate question, though it seems from the answers the consensus is very clear :D. Do you have a link to an example of a pure shader solution as it would be interesting to compare it with the instanced geometry solution?" CreationDate="2011-02-28T23:54:53.427" UserId="5399" />
  <row Id="12098" PostId="9119" Text="@David Thank you for the detailed explanation of instanced geometry and the sample; I will look forward to trying this. This looks the best method for 'modelled grasses' as I mean them here. It will be interesting to read up on geometry shaders and how they can be used with this." CreationDate="2011-03-01T00:02:30.753" UserId="5399" />
  <row Id="12099" PostId="9135" Text="@dm.skt Thank you for those demos, the results of both look excellent. I will be rereading the Instance Culling article a couple of times as this seems a very interesting implementation and I am not familiar with this pipeline stage." CreationDate="2011-03-01T00:08:20.093" UserId="5399" />
  <row Id="12100" PostId="9031" Text="@Notabene: thank you for your precious advices. Yes, I read OpenGL Superbible and another resources continuously. Things gradually start making sense, as I learn things all around. But I need to understand more topics, so all fits together as a puzzle." CreationDate="2011-03-01T00:39:15.587" UserId="2229" />
  <row Id="12101" PostId="9136" Score="1" Text="I find that's very much contrary. Every B of CS graduate I know from a traditional school doesn't have a quarter of the practical knowledge and experience I've seen from one of the *rare* worthwhile game development schools." CreationDate="2011-03-01T03:01:01.907" UserId="3793" />
  <row Id="12107" PostId="9133" Score="2" Text="Is this for a specific game? or do you want to know how to develop games with servers which can be deployed on a shared hosting server?" CreationDate="2011-03-01T04:17:41.903" />
  <row Id="12109" PostId="4834" Text="Nope, certainly not. Unity3D has the ability to warp textures into skybox applicable textures, but they do not come out well at all." CreationDate="2011-03-01T04:56:02.480" UserId="2774" />
  <row Id="12110" PostId="9122" Text="Ugh, get back to me when they've actually acknowledged the existence of C99." CreationDate="2011-03-01T05:54:02.570" UserId="263" />
  <row Id="12111" PostId="9138" Text="This sounds good solution for OpenGL ES 2.0. Unfortunately I'm using ES 1 which does not have shaders at all." CreationDate="2011-03-01T06:58:44.883" UserId="4241" />
  <row Id="12112" PostId="9142" Text="Excellent, this is something I was looking for. I was not aware of your Irrlicht port but I have my version on of Irrlicht running on iOS already. You say you're not CPU limited - how many sprites are you drawing? And what are your framerates, say, for 100 sprites on iPhone? If I have 200 objects I end up doing 48000 calculations per second. Your point about fillrate is good." CreationDate="2011-03-01T07:03:57.660" UserId="4241" />
  <row Id="12113" PostId="9151" Text="It's just a set of equations for several unknowns, isn't it? Why don't you write them down and solve them? The solution is not trivial at the verbal level so that it would require no maths. Obviously, your information is overdetermined, so you will have to choose the optimum way to find the 3D coordinates." CreationDate="2011-02-28T19:17:44.953" />
  <row Id="12114" PostId="9151" Score="4" Text="There is no physics in this, it's just geometry. Try math.SE or SO (things like these are often done in computer graphics) instead." CreationDate="2011-02-28T19:29:53.653" />
  <row Id="12115" PostId="9152" Text="You only need two viewpoints under certain constraints." CreationDate="2011-02-28T22:57:23.157" UserId="97" />
  <row Id="12116" PostId="9152" Text="The only constraint is that the two viewpoints are not collinear with the object." CreationDate="2011-03-01T04:09:59.743" UserId="2512" />
  <row Id="12117" PostId="9113" Text="thanks Davy8, because my previous experience is on micro controller, we work with the data at bit level, therefore I always think about the bit mask things~ thanks for your explanation." CreationDate="2011-03-01T07:33:53.670" UserId="5759" />
  <row Id="12118" PostId="9123" Text="Thanks bummazack, I've learn a new things from you, thanks~:)" CreationDate="2011-03-01T07:36:41.747" UserId="5759" />
  <row Id="12119" PostId="7801" Text="I 4get two things: FIRST: Is there any setting required to be made on the Appatch server to handle such things?   SECOND: My Laptop, which I work on, is a 64-bit. Does that change anything in the issue?" CreationDate="2011-03-01T10:26:17.250" UserId="3817" />
  <row Id="12120" PostId="9142" Text="Static sprites (background) are in VBO. I use one VBO per parallax. Otherwise, i have 100 to 200 sprites on Moblox. On all iphones including the 3G, i have more than 30fps (as i remember). But big sprites are very costly (fillrate problem).... " CreationDate="2011-03-01T10:34:24.963" UserId="721" />
  <row Id="12121" PostId="9142" Text="I'm working on a particle engine, which i can use up to 20 000 particules with all positions computing done on CPU and i have 10fps with extreme settings (on 3GS and iPhone4). So 1000 sprites must be possible on 3GS or iPhone4 with good framerate.  " CreationDate="2011-03-01T10:39:07.487" UserId="721" />
  <row Id="12122" PostId="9142" Text="Thank you, very helpful! How are you implementing your particle engine? I suppose you're playing around with shaders?" CreationDate="2011-03-01T10:42:43.700" UserId="4241" />
  <row Id="12123" PostId="9142" Text="I use shaders because i need gl_PointSize to setup each particle size. I don't work anymore with OGLES 1.x because old phones aren't my target. First, all my code was OGLES 1.x, then OGLES 1.x and OGLES 2.x (no performance improvement) and now OGLES 2.x (rendering improvement)." CreationDate="2011-03-01T10:57:13.807" UserId="721" />
  <row Id="12124" PostId="9162" Text="wouldn't a cone be a better primitive than a line?" CreationDate="2011-03-01T11:06:40.217" UserId="4129" />
  <row Id="12125" PostId="9162" Text="i dint understand" CreationDate="2011-03-01T11:11:17.677" UserId="3212" />
  <row Id="12126" PostId="9140" Text="@Chris Oh! I'm sorry. This is my second misstake in a row. You are right. LWJGL seems to be the best way to access ogl in java. Thanks " CreationDate="2011-03-01T11:27:56.813" UserId="3794" />
  <row Id="12127" PostId="9122" Text="@James I was particularly thinking of its performance, as I guessed the answer alluded to VC++ giving good performance, when for windows binaries you'd be better to look at Intel's compiler or even the newer GCC 4.x series - compile with all of them and benchmark the results for your own codebase, obviously!" CreationDate="2011-03-01T12:24:20.447" UserId="4129" />
  <row Id="12130" PostId="9165" Text="+1 depth prepass, thats the answer to question." CreationDate="2011-03-01T13:01:40.557" UserId="3794" />
  <row Id="12131" PostId="6603" Score="1" Text="@wkerslake: Those stats are outrageous. I maintain a site aimed at the average internet consumer with half a million unique visits per day, and less than 1% of them use Internet Explorer 6 (about 1/3 use Internet Explorer 7/8/9). Firefox and Chrome stand for 50% of the traffic, and they're self-updating browsers meaning the majority of people will have WebGL support installed within a few months. Since development of a game can easily take 6 months, I see no reason to discourage people from using WebGL today." CreationDate="2011-03-01T13:32:34.993" UserId="5783" />
  <row Id="12132" PostId="9127" Text="@Joe Wreschnig : Even though you're right, downvoting a newcomer is not very nice." CreationDate="2011-03-01T13:48:16.263" UserId="2437" />
  <row Id="12133" PostId="5351" Text="+1 However I think you neglect to mention one of the main pros (well, pro or con depending on perspective) of No SQL, which is that it's schema-less, which allows for storing of highly dynamic data.  I'm actually going to be using a mix of both for my current project with PostgreSQL for stuff that fits nicely into the relational model, and Mongo for semi-static stuff that doesn't.  (for instance a log that can used to generate a replay, where relationally I'd have to have either a column that's stores a PK from one of many other tables, or a table with generic column names e.g. param1 param2)" CreationDate="2011-03-01T13:53:51.900" UserId="5006" />
  <row Id="12134" PostId="9128" Text="Downvote? JMonkeyEngine isn't as widely used as lwjgl." CreationDate="2011-03-01T14:07:58.690" UserId="5768" />
  <row Id="12135" PostId="9127" Text="@Raveline: Downvoting is not mean. Also, I didn't downvote the question. Thanks for assuming, though." CreationDate="2011-03-01T14:13:51.103" UserId="744" />
  <row Id="12136" PostId="9117" Text="why down voting ?" CreationDate="2011-03-01T14:14:03.253" UserId="5763" />
  <row Id="12137" PostId="9169" Score="1" Text="As interesting as Bartle can be, choosing a university for a single part-time professor is a bad idea." CreationDate="2011-03-01T14:15:04.800" UserId="744" />
  <row Id="12138" PostId="5351" Text="@Davy88: noSQL is not necessarily schema-less, and having a &quot;highly dynamic&quot; database is not really a plus. If all you have is data soup, you can't do indexing, you can't do field-level locking, and even simple queries become fraught with questions about what happens if a key doesn't exist." CreationDate="2011-03-01T14:31:31.547" UserId="744" />
  <row Id="12139" PostId="9128" Score="2" Text="I think it's because it's off-topic..." CreationDate="2011-03-01T14:41:14.850" UserId="3484" />
  <row Id="12140" PostId="9170" Text="Since there is no clear answer and this question will inevitably end up in list form, I converted this to community wiki." CreationDate="2011-03-01T14:45:26.657" UserId="189" />
  <row Id="12141" PostId="9145" Text="Hm, I completely forgot about FreeMind, which does mind mapping nicely **and** produces XML files … that could be an idea. And thank you for mentioning ConversationMaker … I did not know about, checking that out right now. Great suggestions!" CreationDate="2011-03-01T14:51:50.397" UserId="2755" />
  <row Id="12142" PostId="9096" Text="I think you would probably get overwhelmed by the low-level stuff, and OGRE would be a *better* choice, but OGRE is still very complicated as well, and I predict that if you choose either of these options you'll end up frustrated or bored before you get anywhere near a working full game, even a small one. This seems to be the consensus, and also something of my experience." CreationDate="2011-03-01T15:06:30.773" UserId="189" />
  <row Id="12143" PostId="9170" Text="@Ricket thanks, I meant to ask a mod to do that but I got distracted." CreationDate="2011-03-01T15:07:36.127" UserId="5006" />
  <row Id="12144" PostId="9127" Text="Is it good idea to make computer science as undergraduate studies and game-programming as postgraduate one? I'm thankfull for all your replies, as they help me alot." CreationDate="2011-03-01T15:21:36.360" UserId="5767" />
  <row Id="12145" PostId="9122" Text="@Bob Somers: Microsoft hasn't actually even implemented a true C compiler, so the fact that it lacks C99 doesn't really surprise me, as C99 makes C no longer a subset of C++.  As I tend to code exclusively in C++ these days, it hasn't particularly affected me." CreationDate="2011-03-01T15:30:45.983" UserId="4604" />
  <row Id="12146" PostId="9127" Text="It's not a bad idea to consider that route; it might well be the best of both worlds. However you may find that the post-grad doesn't quite steep you in the same depth or feel for the subject as a full under-grad course does. My advice is to go with your gut instinct." CreationDate="2011-03-01T15:55:00.110" UserId="5784" />
  <row Id="12147" PostId="9128" Text="Not exactly, I found very little resources for JME but much more on lwjgl." CreationDate="2011-03-01T15:55:49.050" UserId="5768" />
  <row Id="12148" PostId="9162" Text="line drawing is not the same as line of sight. The question is about a non-existent algorithm. Sounds like the questioner is not using the line drawing algorithm to draw lines, but instead plot &quot;steps&quot; for an AI. For this, there are many better solutions than using a line drawing algorithm." CreationDate="2011-03-01T16:22:00.073" UserId="1742" />
  <row Id="12149" PostId="6080" Score="2" Text="Is it me, or does this question get a bounty every other week?" CreationDate="2011-03-01T17:45:46.163" UserId="1156" />
  <row Id="12150" PostId="9172" Text="This needs a different title but I can't think of one..." CreationDate="2011-03-01T18:58:56.140" UserId="189" />
  <row Id="12151" PostId="9140" Text="Currently I am of the opinion that LWJGL is &quot;better&quot; than JOGL. They do have slightly different styles though. For example JOGL has AWT and Swing elements (GLCanvas and JGLCanvas) which make it really easy to have a little OpenGL window in a Java GUI app (or multiple GL viewports on one Frame, for example). I don't think this is such an easy thing to do in LWJGL. But in this case, as a general OpenGL graphics library, LWJGL is better than JOGL in my opinion, and then yes you get the benefit of audio, input, etc. also being included." CreationDate="2011-03-01T19:02:48.803" UserId="189" />
  <row Id="12152" PostId="9160" Text="I'd read that article, but he seems to act as if there were no relation between the number of batches and the size of batches. If I have 300 objects, I can have between 1 batch of 300 and 300 batches of 1. The fewer batches, the better. Between each batch is a set of state changes. I'll give it a reread while I'm at it, but state changes are still a heavy expense." CreationDate="2011-03-01T19:19:18.853" UserId="3793" />
  <row Id="12153" PostId="9165" Text="So, effectively, draw all fully opaque objects with Z-write and Z-read, but no color-write, then render objects based on batching? I'm amazed that drawing all opaque objects twice, even if only to a single buffer, doesn't undo the benefits of batching state changes." CreationDate="2011-03-01T19:30:31.650" UserId="3793" />
  <row Id="12154" PostId="9172" Text="Associate a *tactile* texture?" CreationDate="2011-03-01T19:46:22.480" UserId="3793" />
  <row Id="12155" PostId="9180" Score="3" Text="How many active instances of the sprite are going to be active at once?" CreationDate="2011-03-01T20:00:26.990" UserId="962" />
  <row Id="12156" PostId="9163" Score="1" Text="Actually, I'd say that Bresenham still has its share of uses, though they're admittedly more sparse.  It's easy to modify the algorithm to iterate over _all_ the 'pixels' covered by a line, and this can actually be immensely useful for things like the original poster's 2d line-of-sight raycasting question, if your object data is organized in a simple spatial grid and you need to know which grid cells to check for possible colliding objects." CreationDate="2011-03-01T20:16:49.260" UserId="5708" />
  <row Id="12157" PostId="9141" Text="Thanks Bummzack: got another mention of Flixel when posed same question on another forum, so methinks I will explore that area." CreationDate="2011-03-01T21:12:07.590" UserId="5232" />
  <row Id="12158" PostId="9184" Text="so If I don't know the android SDK well you'd suggest using it for the current project and potentially Unity for later ones once I've got a grasp of it?" CreationDate="2011-03-01T21:12:08.747" UserId="1477" />
  <row Id="12159" PostId="9167" Text="Cheers abe: lol no, there aint no assets, no nuttin: but hey opportunities are few and far between, so I go for it. We do have an artist though, and they want to follow his style, so hand drawing then converting into Flash-ish it will be! Thanks again!" CreationDate="2011-03-01T21:13:16.653" UserId="5232" />
  <row Id="12160" PostId="9181" Score="1" Text="XNA doesn't have built in support for vector graphics, if that's what you meant: http://forums.create.msdn.com/forums/p/65315/399906.aspx.  So making the image smaller and scaling it up will cause some pixelation... depending on how scaled it is." CreationDate="2011-03-01T21:17:26.143" UserId="2164" />
  <row Id="12162" PostId="9128" Score="2" Text="Yes, but the poster was looking for information regarding JME." CreationDate="2011-03-01T21:25:01.527" UserId="14" />
  <row Id="12163" PostId="9163" Text="Yeah. Also for 3D grid traversal (if edited to 3D) and we can continue. But there is no big (but there is question what is big) performance benefit in comparison to using vector abstraction with float operations." CreationDate="2011-03-01T21:51:24.667" UserId="3794" />
  <row Id="12166" PostId="9191" Score="1" Text="I also recommend XNA! It's great, but given the Java tip I assumed no experience in C#. On the other hand, C# is not hard to learn given prior knowledge of Java, so it would certainly be a good option." CreationDate="2011-03-01T23:19:14.087" UserId="189" />
  <row Id="12168" PostId="7228" Score="1" Text="Justification for vote-to-close as too localized: The author hasn't been here since a week after the question, it's &quot;fix my code&quot; in a very specific case, not enough information is provided, and tools to solve the general problem are widely available and referenced in other answers." CreationDate="2011-03-01T23:35:21.223" UserId="744" />
  <row Id="12170" PostId="9150" Text="If it helps, I have updated the code and added a new algorithm that now checks where the ball was before the collision has occurred. The only remaining problem is that there is a small jittering effect that happens when I am on the ground, where the ball is constantly going up and down as if it is being pulled by gravity and then the ball falls back into the object again." CreationDate="2011-03-02T01:20:51.050" UserId="5774" />
  <row Id="12171" PostId="9197" Text="I'm assuming the second set of coordinates is a set of screen coordinates.  It would be helpful to know the resolution of the images.  But here's what you do: calculate the direction of the vector between each viewpoint and the event point.  You can get cartesian coordinates by just subtracting, and you can compare these direction vectors to the rotation vectors of your viewpoints.  That should give you a start at the very least." CreationDate="2011-03-02T01:50:16.783" UserId="2512" />
  <row Id="12172" PostId="9190" Text="I think this is the best alternative. Only one frame will be drawn, so it's no a huge deal if each frame is in a separate texture. (unless there are multiple instances)" CreationDate="2011-03-02T03:48:01.860" UserId="3547" />
  <row Id="12173" PostId="9199" Text="This works great! Thanks a lot. It looks a little crazy right now because the frame rate is so fast, but I can work on that to make it smooth. " CreationDate="2011-03-02T04:34:19.640" UserId="5509" />
  <row Id="12174" PostId="9201" Text="Something you'd need to worry about is keyboard ghosting. The vast majority of keyboards have a limit on the number of simultaneous keypresses they support, and have problems with multiple nearby keys being pressed at once." CreationDate="2011-03-02T05:19:04.523" UserId="953" />
  <row Id="12175" PostId="9199" Score="1" Text="You should not use msElapsed as the input to the sin function class. Instead, use an angle that you increment and then multiply by msElapsed time =&gt; Math.sin(angle*msElapsed), that way no matter the frame rate the oscillation will be smooth." CreationDate="2011-03-02T05:33:51.333" UserId="2469" />
  <row Id="12176" PostId="9190" Text="Yeah, this seems like the best way, thanks. Sorry I didn't respond to your message before, but I was already in bed by then ^^" CreationDate="2011-03-02T06:22:05.353" UserId="4200" />
  <row Id="12177" PostId="9199" Text="Would I just increment the angle by 1 every time the update function is called? When I try that, it just stays jittery. And is the angle just an integer?" CreationDate="2011-03-02T06:38:33.217" UserId="5509" />
  <row Id="12178" PostId="9201" Text="I have no idea what are you expecting to achive by this blending. Could you show an example, of how the effect would look like, on a manualy 'blended' animation? It could be just stick figures or something, just to show your idea." CreationDate="2011-03-02T07:10:03.467" UserId="3991" />
  <row Id="12179" PostId="9160" Text="Yeah, he does point out that 300 batches of 2 triangles is like 1500x from the potential throughput of some arbitrary card.  The numbers will all of course move upwards and onwards with Moores law, but still." CreationDate="2011-03-02T07:59:06.983" UserId="4129" />
  <row Id="12180" PostId="9201" Text="I will as soon as I get some. I'm still painting and texturing. I'm not a great artist but can manage I'm a lot better at programming. " CreationDate="2011-03-02T08:20:05.267" UserId="5805" />
  <row Id="12181" PostId="9121" Text="Well, after I have tested nvPerfHUD on Vista x64, I am a bit disappointed, as it does not seem to provide any means to detect Early Z efficiency. Performance monitor GPU HW counters does not seem to work at all, and there is no Developer Control panel on Vista x64, which would allow me to enable them. Compared to X360 PIX the Windows tools are still like a poor relative. " CreationDate="2011-03-02T09:08:59.103" UserId="1629" />
  <row Id="12182" PostId="9165" Text="You'd batch for minimal state changes anyway - whether you do early-z or not. Weighing one against the other isn't really meaningful. Early-Z isn't something that always makes sense - it's a tool you can use to give you some extra performance iff you're making extensive use of pixel shaders. You will have to actually profile it and then decide whether to turn it on or off depending on your data." CreationDate="2011-03-02T09:20:04.880" UserId="1502" />
  <row Id="12183" PostId="9160" Text="The number of batches is directly related to the number of state changes though: Once you change state you *have to* start a new batch." CreationDate="2011-03-02T09:26:45.533" UserId="1502" />
  <row Id="12184" PostId="9172" Text="@Ricket : I agree, but I can't find it either :)" CreationDate="2011-03-02T09:40:02.623" UserId="2437" />
  <row Id="12185" PostId="9174" Text="Thanks for a long and well-thought answer. I want to load dynamically the materials (so I can't go with enum), but only at the beginning of the program. After that, they won't change. I'm going to go with a pointer, and a factory. " CreationDate="2011-03-02T09:42:23.980" UserId="2437" />
  <row Id="12186" PostId="9206" Text="Hi Tobias, thanks, you just got my mind, I'm now talking with my friend in these issue on my phone." CreationDate="2011-03-02T09:42:37.933" UserId="5759" />
  <row Id="12187" PostId="9206" Text="What I prepare in my hand is (PHP+MySQL), and I have 2 choice on the webhosting, build a nginx server at my home(for development currently, but not fast enough), and rent a host(hostgator is now in my plan, VPS 0.5ghz, don't know it's enough or not), I also consider cloud, but it's too expensive for me. One of my corcern of host is the location, because my first game is aim for Asia Chinese user, but later on I will translate it to english version, therefore, I still prefer to choose US server." CreationDate="2011-03-02T09:57:21.853" UserId="5759" />
  <row Id="12188" PostId="9188" Text="Wow, thanks for the thorough response! I think Ill start using Unity for now, but later eventually would love to try JMokneyEngine.  Thanks!" CreationDate="2011-03-02T10:04:24.080" UserId="5788" />
  <row Id="12189" PostId="9191" Text="Yeah,  don't really know C#, and have no idea about XNA except thats what they use for XBOX Live games XD I may give it a try eventually :)" CreationDate="2011-03-02T10:05:29.897" UserId="5788" />
  <row Id="12190" PostId="9167" Text="no worries buddy  :) " CreationDate="2011-03-02T10:16:18.893" UserId="5766" />
  <row Id="12191" PostId="9089" Text="I really liked this post. You are so right. I really like game development but I don't really have it in me to see what &quot;fun&quot; is to &quot;ordinary&quot; people. Which has had the effect that I only make games that I and some other loons like me like :)" CreationDate="2011-03-02T10:22:17.017" UserId="1217" />
  <row Id="12192" PostId="9184" Text="Yep, since you want to make a small light-weight game you should use simple tools.&#xA;Sometimes a whole game engine is far too much for a small game, that's what I experienced often, especially when I tried to code 2D games within 3D engines. Sure it is possible, and easy if you have all your assets ready, but it's more think-work to do, because you still need to operate everything in Vector3 space." CreationDate="2011-03-02T11:08:08.640" UserId="2063" />
  <row Id="12193" PostId="9150" Text="@defender-zone you don't want to put the ball back to the previous position. Rather calculate the overlap of the ball and the obstacle when a collision occurs and move the ball away from the obstacle by the calculated amount (overlap)." CreationDate="2011-03-02T11:10:21.220" UserId="20" />
  <row Id="12194" PostId="9207" Text="The FRB SDK Tools are bad (Glue in particular, I'm not using it) but saves you time writing them and the file formats are simple if writing your own tools is a must.  The API ain't that bad and seems suitable for this scope, the biggest problem right now is the lack of an XNA 4.0 port for PC and Xbox. Also, XNA redist and other prereqs can be part of the install - and using clickonce you can have auto-update and deployment ready to go." CreationDate="2011-03-02T11:22:38.347" UserId="2239" />
  <row Id="12195" PostId="9207" Text="Well, my point is that I wouldn't use them, and therefore the tools are useless. They keep crashing on me in addition to their bad UI / general feel. What if it turns out that they miss a certain feature? Even if they were open source, I wouldn't want to go anywhere near those codebases. Seems harsh, but I really just want some relaxed programming, and FRB seems like a fruitcake of frustration. Just imagine: I tried the particle editor and couldn't even find the button to open an image file. Which is arguably the single most important feature everything else builds upon." CreationDate="2011-03-02T11:30:41.700" UserId="5813" />
  <row Id="12196" PostId="9206" Text="Hi Tobias, I just read some document of NoSQL(major MongoDB), for my case, is it suitable for me to put all data into MongoDB, if I don't have data will be modify in same time? Actually, my game allow player win money from other player, it may encounter the record will operate in same time, however, the precisely of money really doesn't matter because they will not notice on the small amount change in a big number(say $10000 in $1 billion)." CreationDate="2011-03-02T11:33:06.717" UserId="5759" />
  <row Id="12197" PostId="9208" Text="What's the performance? what IDE can I use?" CreationDate="2011-03-02T11:55:46.187" UserId="5813" />
  <row Id="12198" PostId="9160" Text="Yes, and their slides ask the audience how you can avoid state changes, and hint to other people's GDC talks, for example collaging textures into a single large texture and so on.  But the unit is the batch, not the state change." CreationDate="2011-03-02T12:46:09.827" UserId="4129" />
  <row Id="12199" PostId="9197" Text="As long as you have used the same OpenID to sign up for both Physics and Game Dev and you associate your accounts you will regain ownership of the question. You can still associate accounts even if you have used different OpenID's - I'm just not sure of the exact process." CreationDate="2011-03-02T12:52:15.323" UserId="382" />
  <row Id="12200" PostId="9210" Score="2" Text="You should really have flagged your question for a moderator to migrate it here rather than reposting." CreationDate="2011-03-02T12:59:08.727" UserId="382" />
  <row Id="12201" PostId="9207" Text="Not a full answer, but Flash scales better than you might otherwise think. If you blit to a bitmapdata canvas instead of using the display stack, and do some other simple optimizations, you can squeeze a whole lot more out it than it seems with a more naive solution." CreationDate="2011-03-02T14:01:24.997" UserId="953" />
  <row Id="12202" PostId="9208" Text="I second this. We used Lua and LOVE for our Global Game Jam game and it worked out fantastically. They've put together a lot of really great open source libraries under one common API, and every release keeps getting better. The performance is great (Lua is blazing fast!), and a lot of advanced OpenGL features like FBOs are exposed, which is rare for a lot of 2D engines. On top of all that goodness, it's cross-platform (Win/Mac/Linux). I'd definitely give it a good look." CreationDate="2011-03-02T14:08:31.463" UserId="263" />
  <row Id="12203" PostId="9199" Text="The angle would be a float and the bigger the incrementation, the faster the movement. For example, this increments an angle I use to rotate a camera arround an object in a 3D world: this-&gt;_phi += .34f * dt; where dt is the same as msElapsed." CreationDate="2011-03-02T14:16:12.803" UserId="2469" />
  <row Id="12204" PostId="9191" Score="1" Text="@Bombillazo It can also be used to make Windows games; no Xbox is necessary. But yes it is the language of the Xbox Live Arcade, and it's VERY easy to deploy to Xbox. The environment is really awesome." CreationDate="2011-03-02T14:44:08.983" UserId="189" />
  <row Id="12205" PostId="9207" Text="The listitem in the Particle Editor is simply called &quot;texture&quot; on the emitter properties panel ^^ There're tutorials on all the tools so non-coding content-creators can help out. But yes, the UIs are really horrible from an interaction design standpoint." CreationDate="2011-03-02T14:47:38.623" UserId="2239" />
  <row Id="12206" PostId="9174" Text="That eliminates some of the runtime problems then, such as making sure the pointers stay valid and such (since you won't delete Materials at runtime). Do make sure and consider, however, what happens when you save an object to disk, and then you improve the game, develop new materials and add them to the list which is loaded on startup. Plan your materials carefully and make sure that when you change the list, don't reorder them or else objects loaded from disk will load with the wrong material (assuming they only store an integer index into the materials array)." CreationDate="2011-03-02T14:49:35.860" UserId="189" />
  <row Id="12207" PostId="9208" Text="@Maxi: With love you just need an editor, and a console where you can write `love .`" CreationDate="2011-03-02T15:04:33.393" UserId="1581" />
  <row Id="12208" PostId="9220" Text="Porting game to another platform takes 0.5 - 2 years (for team). But i'm sure that someone can give you real answer. " CreationDate="2011-03-02T15:15:37.423" UserId="3794" />
  <row Id="12209" PostId="9220" Text="My question is not about porting to another platform. My question is about how to continually leverage past code across multiple platforms the way I leverage it across a single platform. I'll update my question with clarification.&#xA;&#xA;Also, FRB is pretty fast across its three platforms if you want to interchange code. Just so ya know :)" CreationDate="2011-03-02T15:24:41.520" UserId="1929" />
  <row Id="12210" PostId="9220" Score="2" Text="Not sure I understand the question - in my opinion the major learning and re-use points are knowing manageable ways to structure code and assets, architectural decisions and project management - not reusing code snippets. Assets and content generation workflows shouldn't need to change much just by switching platform." CreationDate="2011-03-02T15:25:50.837" UserId="2239" />
  <row Id="12211" PostId="9220" Text="@Oskar I agree with you that all those are major learning points. That's why I didn't ask about those; I'm asking about the actual code I've written in the past." CreationDate="2011-03-02T15:27:17.397" UserId="1929" />
  <row Id="12212" PostId="9105" Text="all but one answer fails to mention: you can't capture the mouse. if the mouse moves out of the browser window, you are out of luck (you can't force move the mouse pointer)" CreationDate="2011-03-02T15:37:27.650" UserId="4413" />
  <row Id="12213" PostId="9222" Text="I did suggest pygame." CreationDate="2011-03-02T15:41:26.793" UserId="1198" />
  <row Id="12214" PostId="9224" Text="+1 for the scripting language. That's an absolutely amazing solution (similar to a VM in that you only implement low-level API with the new platform, and everything &quot;just works&quot;). I think you've hit the mark; make flexible tools and layer it up." CreationDate="2011-03-02T15:46:55.743" UserId="1929" />
  <row Id="12215" PostId="9226" Text="I think you missed the boat entirely. See my comments to @Oskar. Reusability of business processes, project management practices, artwork, sound effects, etc. is all well-known and easy. Reuse of tools is harder; hardest still is how to benefit from &quot;wise&quot;, mature old code that has years of bug-fixes and features and leverage that instead of writing from scratch like a n00b." CreationDate="2011-03-02T15:48:59.657" UserId="1929" />
  <row Id="12216" PostId="9225" Text="You're right about platform-specificity. Leveraging hardware is something we will always want to do, and well." CreationDate="2011-03-02T15:51:40.403" UserId="1929" />
  <row Id="12217" PostId="9226" Text="I don't think he did, unless I'm completely misunderstanding your question . You leverage engine components the same way you leverage any of the other things you mentioned: by re-using them where possible, and adapting them whenever they don't fit. Just because you changed platforms or languages, doesn't mean you have to start from scratch. 99% of what you've written will be re-usable, either as-is just by copying code, or by translating the code/design to a new language, or by fixing up the differences between hardware interfaces." CreationDate="2011-03-02T16:08:52.327" UserId="741" />
  <row Id="12218" PostId="9221" Text="There's no advantage to using a quad-tree for this rather than simply chunking the map at fixed sizes, and lots of gained complexity." CreationDate="2011-03-02T16:12:53.980" UserId="744" />
  <row Id="12219" PostId="9226" Text="I agree with him entirely. That's the crux of this question: that reuse of information is the core asset, not code. So he's essentially restating my question, which is: How can I reuse the *information*?" CreationDate="2011-03-02T16:12:56.733" UserId="1929" />
  <row Id="12220" PostId="9222" Text="I also prefer free software, but claims like &quot;not a lot of hobbyists have the resources to learn [Flash]&quot; are nuts. I bet more Flash games are made per day than Pygames per year." CreationDate="2011-03-02T16:20:27.437" UserId="744" />
  <row Id="12221" PostId="9227" Text="Lots of (Person) Singleton hate in this world. Is, http://sites.google.com/site/steveyegge2/singleton-considered-stupid what you wanted to point him to?" CreationDate="2011-03-02T16:33:10.017" UserId="14" />
  <row Id="12223" PostId="9199" Score="1" Text="I suggest: &#xA;&#xA;sinValue += gameTime.ElapsedGameTime.TotalSeconds * Math.PI * speed;&#xA;offset = (float)Math.Sin(sinValue);&#xA;&#xA;It makes calculating the speed pretty easy, since sin will oscillate every 2*Math.PI" CreationDate="2011-03-02T16:45:27.400" UserId="5802" />
  <row Id="12224" PostId="9228" Text="Are you using shaders? " CreationDate="2011-03-02T17:05:46.097" UserId="3794" />
  <row Id="12225" PostId="9228" Text="You can add second triangle in geometry shader with opposite vertex order (CCW or CW) and with opposite normal vector." CreationDate="2011-03-02T17:18:53.110" UserId="4947" />
  <row Id="12226" PostId="9228" Text="@zacharmarz, I know that I can draw 2 faces, but that is what I want to avoid. If the answer is: no it can't, than it can't." CreationDate="2011-03-02T17:23:56.790" UserId="4598" />
  <row Id="12227" PostId="9228" Text="@notabene: No not yet, but I would like to have answer for both then =)" CreationDate="2011-03-02T17:24:26.523" UserId="4598" />
  <row Id="12232" PostId="9089" Score="1" Text="@Phil and that's fine. If you know what's fun to you, you have to remember there's only a couple hundred character archetypes in this world. Look around your workplace, and match up your co-workers' personalities to those you went to high school or college with. You'll find most of them can be matched up. So if something is fun to you, it's probably going to be fun to more people than you realize. The trick is getting them to know about the game so they can enjoy it!" CreationDate="2011-03-02T17:51:15.253" UserId="5678" />
  <row Id="12233" PostId="9079" Text="@Sion your average software shop is pass or fail as well. Your next project/consulting job/whatever has to succeed, or you're going to go under." CreationDate="2011-03-02T17:53:02.833" UserId="5678" />
  <row Id="12234" PostId="9087" Text="It is not a practical requirement. I know. I just would be happier with more liberal licence." CreationDate="2011-03-02T17:57:46.713" UserId="2905" />
  <row Id="12235" PostId="9234" Text="@void: Sounds nice, I will have a look at it once I arrive at the shader-part of my project. I'm first trying to implement it without and will later care about things like shaders and so." CreationDate="2011-03-02T17:57:51.097" UserId="4598" />
  <row Id="12237" PostId="9233" Text="@notabene: Thanks for the confirmation. What about @void's solution? Does it sound solid to you?" CreationDate="2011-03-02T17:59:14.467" UserId="4598" />
  <row Id="12238" PostId="9216" Text="I had a few comments but I think I'm going to have to do more investigation. Still looking at other ways of looking at the problem (perhaps market psychology? the actors don't have to make great decisions, they can be impulsive and irrational) but this seems a good start, thanks!" CreationDate="2011-03-02T18:01:22.073" UserId="1628" />
  <row Id="12239" PostId="9221" Text="Ah, didn't explain that one well - chunked sections works better." CreationDate="2011-03-02T18:02:19.283" UserId="4296" />
  <row Id="12240" PostId="9233" Text="I think @void's solution is correct." CreationDate="2011-03-02T18:04:20.467" UserId="4947" />
  <row Id="12241" PostId="9224" Score="1" Text="if you're writing your engine in script, then I wish you all the luck in the world." CreationDate="2011-03-02T18:21:34.883" UserId="1742" />
  <row Id="12242" PostId="9226" Text="coding in a scripting language will provide protection from time, but also protection from writing an efficient engine. Using code from ten years ago can trap you in performance bottlenecks that didn't exist ten years ago. Coding with your skills that have grown in ten years with a new language that beats the pants off all the old ones still seems quickest and cheapest route." CreationDate="2011-03-02T18:31:40.337" UserId="1742" />
  <row Id="12243" PostId="9227" Text="I really meant it to be a shorthand link to every anti-singleton essay (there are plenty). It's somewhat ironic how many people are named &quot;Singleton&quot;." CreationDate="2011-03-02T18:47:06.687" UserId="744" />
  <row Id="12244" PostId="9234" Score="2" Text="I digged around a bit. You can use the fixed function pipeline and set glLightModeli(GL_LIGHT_MODEL_TWO_SIDE, 1); GL will then light backfaces with your back material and reversed normals." CreationDate="2011-03-02T19:44:42.777" UserId="2792" />
  <row Id="12245" PostId="9213" Text="Try [Cocos2d-x](http://www.cocos2d-x.org/).  It's what I'm using for [my indie game development.](http://www.strongfortress.com/blog/)" CreationDate="2011-03-02T20:52:04.643" UserId="2316" />
  <row Id="12246" PostId="7760" Text="Thanks, that explains a lot. I guess I'm a bit confused coming from Lightwave where IK, constraints, pivot points and so forth can be defined and applied to regular mesh parenting as well as to bones ^^ In LW having bones not deform meshes at joints required a little extra head-work weighting every mesh or layer vertices 100% towards a single bone compared to basic mechanical mesh chains." CreationDate="2011-03-02T20:54:42.373" UserId="2239" />
  <row Id="12247" PostId="9024" Text="Try [Cocos2d](http://www.cocos2d-x.org/)-[iphone](http://www.cocos2d-iphone.org).  It's what I'm using for [my indie game development.](http://www.strongfortress.com/blog/)" CreationDate="2011-03-02T20:54:45.207" UserId="2316" />
  <row Id="12248" PostId="9243" Score="1" Text="With C++ TR1 one can use std::array for fixed size with &quot;no&quot; performance penalty and get potentially nicer iterator semantics." CreationDate="2011-03-02T22:45:52.770" UserId="744" />
  <row Id="12249" PostId="4161" Text="Great list of examples. Despite chronic abuse of the singleton pattern (global state in disguise), there are legitimate uses: When it represents a _resource_ of which you actually only have (or want) one. This can be something like wrapping hardware (e.g. keyboard/mouse) or wrapping a library that is not reentrant (it happens, and not all languages have magical synchronization keywords)." CreationDate="2011-03-02T23:00:46.113" UserId="2130" />
  <row Id="12250" PostId="9234" Text="@void: + a lot for your comment on glLightModel. This is exactly what I was looking for." CreationDate="2011-03-02T23:26:00.160" UserId="4598" />
  <row Id="12251" PostId="9247" Text="Your middle name isn't `William` is it?" CreationDate="2011-03-03T00:57:54.777" UserId="1198" />
  <row Id="12252" PostId="9247" Score="4" Text="If you're a licensed developer, the tools allow you to take a screen capture. If you want a command line alternative, raise a support issue and someone from SN will be glad to help." CreationDate="2011-03-03T00:59:34.703" UserId="2332" />
  <row Id="12253" PostId="9247" Score="4" Text="Sean, please clarify exactly what you are looking for here. I believe any discussion of Sony Playstation 3 development would be under NDA, so we don't want to encourage anyone to break any such NDAs. If you are asking about homebrew development please be explicit about that and I suppose it would be okay here (I'm not familiar with the PS3 platform). But if you are indeed asking about NDA-covered development, I don't think you will get any answers and I would encourage you to close your question and speak with Sony or other fellow PS3 developers." CreationDate="2011-03-03T03:05:52.957" UserId="189" />
  <row Id="12254" PostId="9199" Text="@dotminic This works! It still looks a little strange occasionally throughout the movement; I think it must be at the end of a period or something in the sin function? I'll keep working on it, but thanks a lot for helping me get the basics down." CreationDate="2011-03-03T05:09:36.813" UserId="5509" />
  <row Id="12255" PostId="206" Text="+1 Prototype early + don't build an engine. A &quot;game jam&quot; approach is good at the beginning: get something _playable_ as soon as possible. Forget what it looks like (the code too, I know, it's hard). If the game play is not immediately interesting or fun for you, drop it, take some notes on why you think it sucks/isn't fun, and move on." CreationDate="2011-03-03T07:36:34.783" UserId="2130" />
  <row Id="12256" PostId="9251" Text="Thanks for that Abe, very interesting. However i am not planning to use Game center in this game but rather add a view with the result for only this particular phone." CreationDate="2011-03-03T08:32:54.373" UserId="4830" />
  <row Id="12257" PostId="9251" Text="i see what you mean then a table view does almost seem like over kill. otherwise laying it out would be a bit of a pain." CreationDate="2011-03-03T09:01:18.657" UserId="5766" />
  <row Id="12258" PostId="9213" Score="1" Text="Flash is probably a good choice, since there are very good (mature) tools and libraries for flash out there. The Molehill API will take a heavy load off the CPU (previously everything was handled by the CPU). You have to think about distribution of your game though. Flash usually means a browser-based game..." CreationDate="2011-03-03T09:36:43.243" UserId="20" />
  <row Id="12259" PostId="18" Text="Can Unity not be used for 2D games? (or is there a better tool if I want to make 2D games for iPhone/Windows?)" CreationDate="2011-03-03T13:48:57.643" UserId="2301" />
  <row Id="12260" PostId="9255" Score="1" Text="Note: You only have to pay the $99 (which is insanely cheap) if you want to test on the xbox or deploy to XBox Live. XNA is totally free for Windows development." CreationDate="2011-03-03T15:08:00.490" UserId="2306" />
  <row Id="12261" PostId="8372" Text="On &quot;ALL COMPUTER PROGRAMS ARE DETERMINISTIC,&quot; you are neglecting to consider programs that rely on threading. While threading is mostly used for loading resources or to separate the render loop, there are exceptions to that, and at that point you may not be able to claim true determinism any more, unless you are properly strict about enforcing determinism. Locking mechanisms alone won't be enough. You wouldn't be able to share ANY mutable data without additional extra work. In many scenarios, a game doesn't need that level of strictness for its own sake, but could for things like replays." CreationDate="2011-03-03T15:43:06.590" UserId="5840" />
  <row Id="12262" PostId="9225" Text="This is the answer that I think is correct. In addition to what is outlined here, you will also need to essentially translate your code if you cross programming languages. Nasty, painful work, but it'll translate all the maturity and bugs across, too." CreationDate="2011-03-03T16:27:53.053" UserId="1929" />
  <row Id="12263" PostId="4161" Score="1" Text="I still wouldn't use singletons for hardware resources - items you think you'll only ever have 1 of tend to multiply later, just like video cards and monitors did as the years went on. Similarly, under some APIs you need to read 2 joysticks to understand 1 gamepad. So I'd say, if you only need one of something, just instantiate a single one, don't enforce arbitrary restrictions that probably aren't necessary." CreationDate="2011-03-03T16:41:02.813" UserId="1101" />
  <row Id="12264" PostId="9257" Text="Hmmm... so you need a specific hardware? I thought I could develop on normal Mac or PC and just compile for platform I want...&#xA;&#xA;Thanks!" CreationDate="2011-03-03T16:51:56.007" UserId="5839" />
  <row Id="12265" PostId="9257" Text="You most definitely need hardware for testing." CreationDate="2011-03-03T16:53:56.443" UserId="962" />
  <row Id="12266" PostId="9256" Text="Would such library be in C++ then?" CreationDate="2011-03-03T16:55:57.977" UserId="1156" />
  <row Id="12267" PostId="9256" Text="I should be C++ compatible, e.g. C, C++, assembly, etc.  Honestly I don't know of any other language that is compatible with desktops, Android, and iPhone." CreationDate="2011-03-03T17:47:00.163" UserId="370" />
  <row Id="12268" PostId="9261" Text="Thanks. Yes, I do mean spin. I thought of simply adding a direction in X, but I'd like to make it a bit more realistic in movement. What topics should I look into in order to gain the relevant information from the ball's initial impulse? (such as the spin, speed and direction)" CreationDate="2011-03-03T17:53:07.490" UserId="4234" />
  <row Id="12269" PostId="9263" Text="Thank you dotminic" CreationDate="2011-03-03T18:09:32.687" UserId="5844" />
  <row Id="12270" PostId="9266" Text="Thanks a lot roe, the Magnus force is what I was looking for. Great explanation!" CreationDate="2011-03-03T18:28:32.843" UserId="4234" />
  <row Id="12272" PostId="9260" Score="1" Text="That's a good point.  I remember reading about path finding in pac-man where they deliberately used an imperfect algorithm, allowing the player to outsmart the ghosts.  Each ghost had a slightly different imperfection giving them more character.  The take away here is that in games, fun &gt; all else." CreationDate="2011-03-03T18:46:57.067" UserId="5545" />
  <row Id="12273" PostId="9247" Text="@Ricket: If the information is obtained through reverse engineering, it can be published, and then it can be used by non-homebrew developers unless Sony somehow managed to forbid it in their developer contract. Reverse engineering for interoperability is usually legal (for example, it has been recognized as legal in the US for the iPhone)." CreationDate="2011-03-03T19:10:18.547" UserId="3965" />
  <row Id="12274" PostId="9263" Text="-1. It sounds like you don't really know what you are talking about. XNA has Reach(dx9) and HD(dx10). You can use up to SM4 if you use HD. Xbox 360 supports SM3.5 . If it compiles on the PC using HD, it wont work on the 360 at all. If it compiles on the PC, lots of things can prevent it from running on the 360, high ram usage, high v-ram usage, high cpu usage, windows specific libraries being used, and too many shaders for the 360 to handle." CreationDate="2011-03-03T20:07:33.840" UserId="962" />
  <row Id="12275" PostId="9255" Score="1" Text="yes but the question specifically asked about console development." CreationDate="2011-03-03T20:12:13.573" UserId="1477" />
  <row Id="12276" PostId="9269" Score="3" Text="And as a bonus if you change the scrolling speed, either globally, or for a section of the level, it will keep later enemies in their correct spawn positions, because if it were time based, enemies would spawn at in correct spots." CreationDate="2011-03-03T20:14:40.997" UserId="962" />
  <row Id="12277" PostId="9253" Text="Just so you know: Unless you're talking homebrew, you can't develop for the Wii, Xbox, or PS3 without a professional dev license. (Well, C#/XNA for the Xbox, but still costs money)" CreationDate="2011-03-03T21:01:55.730" UserId="1156" />
  <row Id="12278" PostId="9263" Score="1" Text="-1. It sounds like you don't really know what you are talking about either. HiDef profile compiles to xbox360, HD does not use dx10, and yes, I didn't mention the libs or ram usage as that was not in the question. This might be worth reading: http://blogs.msdn.com/b/shawnhar/archive/2010/03/12/reach-vs-hidef.aspx . Also, I did mention a few times that I was not 100%s sure." CreationDate="2011-03-03T21:38:54.607" UserId="2469" />
  <row Id="12279" PostId="9197" Text="@Tristan: Sorry about that, the images are 640x360.  And I'll look into that Chris, thanks." CreationDate="2011-03-03T21:52:38.220" UserId="5800" />
  <row Id="12280" PostId="9197" Text="Sorry for the double comment, it won't let me edit.  I didn't sign up at Physics, I posted as an unregistered user with my real name.  I just used my OpenID to sign up there but it didn't associate the accounts, the question stil shows as being asked by the unregistered account (my real name).  Oh well, not a big deal." CreationDate="2011-03-03T22:00:06.563" UserId="5800" />
  <row Id="12281" PostId="9276" Score="3" Text="I wish I was connected to people with the same interests. Nearly everyone I am connnected to on social networks have the main interest of getting as high and drunk as possible. " CreationDate="2011-03-03T22:01:40.263" UserId="1156" />
  <row Id="12282" PostId="9276" Text="Even if that is the case, having a link to your engine/lib/framework on facebook or twitter or whatever, isn't going to hurt IMHO." CreationDate="2011-03-03T22:06:07.637" UserId="5358" />
  <row Id="12283" PostId="9278" Text="I already use bezier curves to store enemy movements (which is also serialized in xml). I'm mainly using XML because both .NET and XNA have built-in support for serialization/deserialization. LUA script sounds good but it will require more work. However, I always planned on using it, so after I finish some basic engine, I'll definitely look into it. Finallt, rhe idea of spawning a wave after a previous one sounds interesting. " CreationDate="2011-03-03T22:31:26.823" UserId="118" />
  <row Id="12284" PostId="9278" Score="2" Text="XML is fine, as long as it's generated by a tool, and not hand-edited.  Whilst scripting languages may be useful for special-cases (e.g. bosses), that's a completely separate problem to defining standard attack patterns, isn't it?" CreationDate="2011-03-03T22:44:59.963" UserId="659" />
  <row Id="12285" PostId="9275" Text="This should probably be community-wiki?" CreationDate="2011-03-03T23:02:51.573" UserId="20" />
  <row Id="12286" PostId="9279" Score="2" Text="Especially if you have a scrolling map (you said it was 2D, so this might be relevant). It's just a waste if you draw large sections that aren't needed. It's not awfully difficult and you might see some kind of improvement." CreationDate="2011-03-03T23:42:52.503" UserId="3547" />
  <row Id="12287" PostId="9247" Score="1" Text="@Giles I don't think that is a legal battle this site wants to become involved in. The SDK is the legal property of Sony and anything inside it is covered by an NDA, making an argument that this would be covered under fair use I leave to people with lawyers and money. " CreationDate="2011-03-04T01:59:32.633" UserId="395" />
  <row Id="12288" PostId="9281" Text="I don't think I've used SourceForge to find projects since about 2002. Freshmeat is occasionally useful, and ditto on http://fossfor.us/ (made by the SF folks) but in general those kinds of software indexes have lost to a mix of Google and GitHub/BitBucket." CreationDate="2011-03-04T02:10:00.753" UserId="395" />
  <row Id="12289" PostId="8372" Text="@krdluzni Threading, parallelism and random numbers from true random sources do not make programs non-deterministic. Thread timings, deadlocks, uninitialized memory and even race conditions are just additional inputs your program takes. Your choice to discard these inputs or not even consider them at all (for whatever reason) will not affect the fact that your program will execute exactly the same given the exact same inputs. &quot;non-deterministic&quot; is a very precise Computer Science term, so please avoid using it if you don't know what it means." CreationDate="2011-03-04T03:04:10.393" />
  <row Id="12294" PostId="9292" Score="1" Text="+1 Good programming background looking for specific needs." CreationDate="2011-03-04T04:03:20.023" UserId="2778" />
  <row Id="12298" PostId="9289" Score="1" Text="+1 For mentionning about not to do culling just for the sake of it, but when it is required for performance matter." CreationDate="2011-03-04T04:22:59.453" UserId="2778" />
  <row Id="12299" PostId="9294" Score="1" Text="@Will Sorry for the delayed response =) I was reading each of the posts you redirected me to (Also, one of the posts linked to an MSDN page on making 3D games with XNA, which interested me since the XNA game engine page originally looked like it was strictly for 2D games). I definitely think this is a good starting point. Thank you. I'm going to download XNA tonight and go to bed, then hopefully tomorrow I can try to make Pong or something." CreationDate="2011-03-04T04:33:43.520" UserId="5855" />
  <row Id="12300" PostId="9294" Text="@Steven: No problem! I posted this answer for the sake of helping an enthusiast developer just like me who asked for guidance! I really hope you'll enjoy doing it! My first and still challenge is to develop a simple Arkanoid-like game where I have to work my way for collision detection while having written my classes one for each the space craft, the energy ball and the brick. Then, my `Game1` class is used as a game controller, which in my opinion is the class that shall control and tell the other classes what to do, etc. I explain a little this aspect the link #4 and #5." CreationDate="2011-03-04T04:44:13.700" UserId="2778" />
  <row Id="12301" PostId="9294" Text="I may be asking another question very soon (tomorrow) x.x Downloaded XNA Game Studio 4.0, installed it.... And there were no obvious instructions for what to do next. The entire official XNA website just says &quot;make games for Windows Phone 7&quot; all over it - nothing about making games for Windows. I'll figure it out in the morning or ask here if I can't. Bed time =)" CreationDate="2011-03-04T04:47:58.233" UserId="5855" />
  <row Id="12302" PostId="9289" Score="1" Text="+1 for finally telling me that sprite sheets do indeed have a reason to exist other than for programmer/designer convenience" CreationDate="2011-03-04T04:53:09.767" UserId="4690" />
  <row Id="12303" PostId="9294" Text="Create a new project using Visual Studio, then, choose XNA somewhere you can choose the project type. Then, start making games for windows! Your XNA game project template (new project) will compile and run on Windows natively. XNA is the Microsoft library for game development, as such, you may develop games for Windows and XBox." CreationDate="2011-03-04T05:06:31.853" UserId="2778" />
  <row Id="12304" PostId="9301" Text="Can you comment as to whether each entity needs to load the texture? (i.e., 5 Bullet = 5 LoadTexture calls) or do I only need to load once, then I can share that for all things that will use that texture?" CreationDate="2011-03-04T06:24:35.587" UserId="4690" />
  <row Id="12305" PostId="9299" Text="What do you mean &quot;always the same&quot;? Each bullet will use the same texture, and this texture does not change. So I only need to load it once and store a reference to it, then I can pass it to each of my Bullet objects?" CreationDate="2011-03-04T06:36:35.403" UserId="4690" />
  <row Id="12306" PostId="9289" Text="+1 for great explanation, I learned a lot from your answer." CreationDate="2011-03-04T07:25:07.113" UserId="2111" />
  <row Id="12307" PostId="9301" Text="If you go through a GetTexture manager, you'll end up with five GetTexture calls and one LoadTexture call. I'm assuming this all works the same as OpenGL, however - I've never used XNA itself - but I'd find it quite unbelievable that you couldn't re-use textures. That's kind of a fundamental of modern graphics :)" CreationDate="2011-03-04T08:54:44.787" UserId="323" />
  <row Id="12308" PostId="9281" Text="You're right. GitHub is probably the new SF" CreationDate="2011-03-04T09:03:33.020" UserId="20" />
  <row Id="12311" PostId="9276" Score="1" Text="Drunk people like programming too. :/" CreationDate="2011-03-04T09:23:50.250" UserId="744" />
  <row Id="12312" PostId="7894" Text="This will, as far as I can see, generate one draw call for each sprite. Is there a way to batch these sprites for a smoother implementation?" CreationDate="2011-03-04T09:39:07.963" UserId="5034" />
  <row Id="12313" PostId="9275" Score="1" Text="I would really like to see answer of someone with succesfull (or famous) project here. How about @JoshPetrie? Did you promote SlimDX somehow? Or @AndrewRussell with ExEn? Is answer just: Make it good, people will come?" CreationDate="2011-03-04T09:40:09.433" UserId="3794" />
  <row Id="12314" PostId="7894" Text="@uggwar Instanced drawing?" CreationDate="2011-03-04T09:43:34.733" UserId="3794" />
  <row Id="12315" PostId="9299" Text="He means what ZorbaTHut is saying in how GetTexture will cache the texture. XNA manages this automatically for you, so just call `Content.Load&lt;Texture&gt;(textureName)` in the LoadContent() method of your DrawableGameComponent, and XNA will handle the rest. If you are concerned about pre-loading the texture, then you should call Content.Load&lt;Texture&gt;(textureName) at the point at which you wish the texture to be loaded. This may be useful if you dynamically instantiate a DrawableGameComponent mid-game which uses a new texture and wish to eliminate the risk of the possibile of garbage collection." CreationDate="2011-03-04T09:56:52.497" UserId="3656" />
  <row Id="12316" PostId="7894" Text="Wow, I have a lot to learn :-) Thanks again!" CreationDate="2011-03-04T10:06:32.650" UserId="5034" />
  <row Id="12317" PostId="9307" Text="Undo/redo happens in applications that are themselves fundamentally deterministic, event-driven, and state-light (e.g. the state of a word processor document is solely the text and selection, not the entire layout, which can be recomputed)." CreationDate="2011-03-04T10:50:47.993" UserId="744" />
  <row Id="12319" PostId="9301" Score="1" Text="XNA's built-in `ContentManager` already reuses loaded content, including textures. Caching, if you like. Don't implement a caching layer over the top! To do fancy stuff like granular caching and unloading between levels, create multiple instances of `ContentManager` or [customise it](http://blogs.msdn.com/b/shawnhar/archive/2007/03/09/contentmanager-readasset.aspx)." CreationDate="2011-03-04T11:47:33.733" UserId="288" />
  <row Id="12320" PostId="9169" Text="@Joe The point being that, as he is passionate about games and game design, and is also iconic in those arenas, it's very likely that he will infuse the university's courses with that passion.  Therefore, it's worth looking at.  Maybe not choosing in the end, but certainly a reason to add it to the watch list." CreationDate="2011-03-04T12:54:40.540" UserId="2361" />
  <row Id="12321" PostId="9309" Text="@DeadMG: + 1 for good answer and spending effort looking into my long question. Hi, DeadMG, I store all objects returned with **BaseObject* create(unsigned int nObjectIDParam) const ** in separate vector elsewhere in my code. I clean those pointers. But I still get information about memory leaks on the mentioned line **return new Object(); **. Do you have an idea, please, if I should perform another cleaning? Can I delete pointers which I casted to different data types?" CreationDate="2011-03-04T13:11:42.933" UserId="2229" />
  <row Id="12322" PostId="9311" Score="1" Text="Whats improper about it?" CreationDate="2011-03-04T13:16:54.810" UserId="1477" />
  <row Id="12324" PostId="9309" Text="@Bunkai Satori: If you delete the pointers returned, then your tool is just wrong, and there's no two ways about it. The only way you could possibly improve it is by returning a smart pointer." CreationDate="2011-03-04T14:10:11.067" UserId="4662" />
  <row Id="12325" PostId="9311" Text="I'm curious as well." CreationDate="2011-03-04T14:33:04.700" UserId="14" />
  <row Id="12327" PostId="9247" Text="If you are using the Unreal engine there is a way to answer this without breaking the Sony NDA. Although, now we are talking about potentially breaking the Unreal NDA...." CreationDate="2011-03-04T14:37:02.560" UserId="14" />
  <row Id="12328" PostId="9271" Text="Thanks everyone for such excellent answers. I really didn't know about these &quot;custom hardwares&quot;. In Brazil we don't develop too much games. I thought it was developed just in normal PC and Macs. &#xA;&#xA;Very interesting. In such a industry bigger than cinema, there are no pattern, or default &quot;Environment&quot; that is implemented following an specification. There are no union in this industry to build a unique platform? Business strategy or lack of mature in this industry?&#xA;&#xA;I know these is not the subject of this discussion, but I'm just asking myself.&#xA;&#xA;Thanks all!" CreationDate="2011-03-04T14:37:15.513" UserId="5839" />
  <row Id="12329" PostId="9309" Text="@DeadMG: so you say, I should not delete the pointers returned by **BaseObject* create(unsigned int nObjectIDParam) const** and instead I should implement smart pointers? I tried std::smart_ptr, but I was having the same memory leak on the line **return new Object();**" CreationDate="2011-03-04T14:38:42.987" UserId="2229" />
  <row Id="12330" PostId="9311" Text="Maybe the fact that (like Flash or Java) it requires a container program to run, so he considers it &quot;improper&quot; in that it can't just be compiled and distributed to massive audience with no hassle? Either way, I'm looking into XNA right now. I may check out Unity3D if XNA proves too difficult." CreationDate="2011-03-04T15:03:11.117" UserId="5855" />
  <row Id="12331" PostId="9311" Text="Well, I heard people saying that for &quot;proper&quot; game design, Unity is not to be taken seriously. As said before – I'm using it myself, and I'm pretty happy with it. In some cases, Unity just makes things suspiciously easy, I guess … ;) I was merely hedging, because I didn't know how people would react here to mentioning Unity. Maybe that caused the downvote?" CreationDate="2011-03-04T15:05:08.397" UserId="2755" />
  <row Id="12333" PostId="9311" Text="@steven_desu: Actually, you only need a container program for the webplayer. Games compiled to run on Windows or Mac are entirely self-contained." CreationDate="2011-03-04T15:08:24.027" UserId="2755" />
  <row Id="12334" PostId="9301" Text="@Andrew Russell Do you have any links to good resources discussing the `ContentManager` and best practices when using it?" CreationDate="2011-03-04T15:29:01.873" UserId="4690" />
  <row Id="12335" PostId="9276" Text="Considering I'm not even talking college-level students here, most of which will be lucky to scrape 5 GCSEs (equivalent of a high-school diploma)" CreationDate="2011-03-04T15:49:25.680" UserId="1156" />
  <row Id="12336" PostId="9281" Text="Google Code and github are vastly preferable to SourceForge, in my experience. I have never willingly visited SF in the last few years." CreationDate="2011-03-04T15:50:08.147" UserId="1430" />
  <row Id="12337" PostId="9307" Text="Then it's obvious you have never used CAD/CAM applications, circuit design software, motion tracking software or any application with undo/redo more sophisticated than a word processor. I'm not saying the code for undo/redo can be copied for replay on a game, just that it's conceptually the same (save states and replay them later). However, the main data structure is not a queue but a stack." CreationDate="2011-03-04T16:02:01.613" />
  <row Id="12338" PostId="9292" Score="2" Text="+1, this is a well thought out and researched question regarding how to start game development.  Also, I feel your pain regarding the Unreal SDK." CreationDate="2011-03-04T16:08:40.510" UserId="4604" />
  <row Id="12339" PostId="9304" Text="Thanks for the writeup! definately consider that" CreationDate="2011-03-04T17:08:35.073" UserId="5859" />
  <row Id="12340" PostId="9320" Text="Yes I was worried about the taking away thing, that's why I thought of the stars and the &quot;player of the day&quot; title, but maybe it isn't enough. All in all I don't want to add so many different scoreboards as this is a really simple game. This might be appropriate for a more complex game. Thanks!" CreationDate="2011-03-04T17:32:03.257" UserId="5865" />
  <row Id="12341" PostId="9317" Text="@Sam Hocevar: Earlier in the past I have had (frustrating)issues trying to get the simple pipeline of compile/build/deploy my opengl game on android emulator. Can you point me to a resource or something which I can use? (I don't know if you have those utility classes open source, but if you do, I'll be interested in seeing them.) Thanks  " CreationDate="2011-03-04T17:37:10.157" UserId="4638" />
  <row Id="12342" PostId="9309" Text="@Bunkai: You don't *have* any memory leak. It's your tool being wrong. You should use smart pointers wherever possible - but there's no memory leak in this segment of code if you delete the pointer returned by `create` correctly." CreationDate="2011-03-04T17:52:24.473" UserId="4662" />
  <row Id="12343" PostId="9227" Text="I removed the Singleton, removed the separate thread for drawing, but I still get the crash. https://github.com/balazsbela/OgreVisualizer/blob/master/src/VisualizerApplication.cpp   I use the semaphore to make sure that the visualize function is not called twice simultaneously, i.e. before it finished for the previous dataset. It should be serialized now, but I still get the crash. Any ideas ? " CreationDate="2011-03-04T18:04:28.853" UserId="5815" />
  <row Id="12344" PostId="9321" Text="I suspected the social component would add a lot of meaning, how creepy is it considered to connect player profiles to facebook?" CreationDate="2011-03-04T18:13:33.233" UserId="5865" />
  <row Id="12345" PostId="9318" Score="1" Text="These slides: http://www.slideshare.net/amyjokim/metagame-design-3383058 seem to offer some general but helpful guidelines" CreationDate="2011-03-04T18:15:56.527" UserId="5865" />
  <row Id="12346" PostId="9318" Text="Make it hourly :P " CreationDate="2011-03-04T18:17:11.753" UserId="982" />
  <row Id="12347" PostId="9318" Text="Things like achievements, high scores, &quot;social&quot; interaction (through online multiplayer) etc are all there to keep your player addicted, not for fun. Making it hourly gives your beginner player an even easier entry into the reward part of the addiction" CreationDate="2011-03-04T18:17:44.670" UserId="982" />
  <row Id="12348" PostId="9318" Text="well it only becomes easier for beginners in the way that they can be lucky and no one better decides to play in that hour, which is random and not skill based." CreationDate="2011-03-04T18:28:57.720" UserId="5865" />
  <row Id="12349" PostId="9318" Text="Yeah exactly. I don't see the high score as having to be skill based. Its purpose is there to keep people playing. Seeing your name on a high score board is a very exciting thing. Why not make that as easy as possible? I suppose you alienate your truly hardcore players, but it is a casual game" CreationDate="2011-03-04T18:34:10.613" UserId="982" />
  <row Id="12350" PostId="9318" Text="I understand your point but I certainly don't want to have randomness-based highscores. Maybe a better solution would be to have not one global highscore but a divided one where you are compared relative to similarly good players." CreationDate="2011-03-04T18:38:07.167" UserId="5865" />
  <row Id="12351" PostId="9318" Text="My solution would be to have an hourly or daily highscore table as the default one they have access to and then an overall table that would be hidden, but accessible if they desire to look. I also like your star idea, I would definitely include a cumulative score next to the stars though, and rank them based on number of stars, cumulative score. If you compare to relative players, would you also include a rank? Seeing that you're the 2 millionth rank is discouraging, but I have seen games implement this. " CreationDate="2011-03-04T18:48:40.250" UserId="982" />
  <row Id="12352" PostId="9318" Text="I like how, in the middle of all those slides, is a picture of a Stack Overflow user page listing. Perhaps that's something else to analyze, how the leagues there are structured in order to give new users a day in the spotlight." CreationDate="2011-03-04T18:57:46.603" UserId="3588" />
  <row Id="12353" PostId="9314" Text="In a massively multiplayer game you might have a couple of thousand players, and it's not unusual for there to be several monsters per player. So 10,000 is not an unusual figure." CreationDate="2011-03-04T19:00:11.150" UserId="1101" />
  <row Id="12354" PostId="9248" Text="Thanks Josh! This is a great resource...and a great starting point if we use Unity." CreationDate="2011-03-04T19:00:54.253" UserId="1812" />
  <row Id="12355" PostId="9309" Text="It's worth bearing in mind that when a tool says a certain line is responsible for a memory leak, it doesn't mean that line is wrong. It means you're doing something wrong with the code that handles whatever is created by that line." CreationDate="2011-03-04T19:05:53.140" UserId="1101" />
  <row Id="12356" PostId="8372" Text="@oscar (May be somewhat terse, busy, might edit later): Although in some strict, theoretical sense you could claim thread timings etc. as inputs, this is not useful in any practical sense, since they can not generally be observed by the program itself or fully controlled by the developer. Further, a program not being deterministic is significantly different it being non-deterministic (in the state machine sense). I do understand the meaning of the term. I wish they'd chosen something else, rather than overloading a pre-existing term." CreationDate="2011-03-04T19:09:09.060" UserId="5840" />
  <row Id="12357" PostId="9318" Text="Yeah I was thinking about the Stackexchange system as well. I think it is very well implemented as it rewards new, regular and pro users equally well. The thing is that a full-blown ranking and achievement system is overkill for simple games like mine, but it is indeed inspiring." CreationDate="2011-03-04T19:18:05.073" UserId="5865" />
  <row Id="12358" PostId="9318" Text="By the way isn't it bad practise to discuss so much in the comments? Maybe we should formulate answers for the things we've came up with. Or is there a better way to handle such an open question?" CreationDate="2011-03-04T19:23:35.333" UserId="5865" />
  <row Id="12359" PostId="9324" Text="I have thought of this but there's a problem: Player A becomes player of the week. Player B plays a day later and is a little less good. One week passes, Player A is not longer player of the week because his score &quot;expired&quot; and Player B becomes player of the week *without direct action or notice*. That's a weird situation." CreationDate="2011-03-04T19:26:42.197" UserId="5865" />
  <row Id="12360" PostId="9309" Text="@Kylotan, @DeadMG: thanks for your navigation. You are perfectly correct, that the pointer memory release is correct. I have HEAP CORRUPTION error DETECTED. It is related to the memory allocated by the line: **return new Object();** in the code above. I decided to solve problem one by one, and for the time being, I was overlooking Debug Error! window, as I did not think it would relate to reported memory leaks." CreationDate="2011-03-04T19:54:58.437" UserId="2229" />
  <row Id="12361" PostId="9292" Text="I recommend checking out [Raven67854's tutorials](http://hellomynameisraven.com) for the UDK. They are listed under videos, people seem to like them." CreationDate="2011-03-04T19:56:00.943" UserId="14" />
  <row Id="12362" PostId="9326" Text="It's not so much the protocol we're looking for, more like the client side convenience of having chat history, configurable slash commands, fantasy language support, command stubs, item hyperlink support, etc.. It might not sound like much but these add up and having this ready would save us considerable time right now." CreationDate="2011-03-04T20:05:17.393" UserId="5868" />
  <row Id="12363" PostId="9324" Text="I think of a week as an actual week, not a shifting time window of 7 days." CreationDate="2011-03-04T20:33:28.380" UserId="4951" />
  <row Id="12364" PostId="9326" Text="@konradk I think you might not find an existing " CreationDate="2011-03-04T20:36:07.407" UserId="5869" />
  <row Id="12365" PostId="9314" Score="1" Text="The types of entities you have depend on the style of game you are creating.  You might be thinking of an entity in terms of a visual model in the game world.  For my application, an entity can be as simple as a statistic (strength, agility).  These entities need to be updated based on equipped items, character buffs/ailments etc.  So if you consider for a single character that you have 10 equipment slots, 10 affect slots (for buffs/spells) and 8 stats, that's 28 entities.  500 players would give you 14,000 entities.  For a real-time game this is unrealistic, for my turn-based game it is not." CreationDate="2011-03-04T21:00:46.907" UserId="4212" />
  <row Id="12366" PostId="9328" Text="This tutorial didn't help me at all. First, it assumed that you already had a texture (they used &quot;ship&quot;) in the Content Pipeline, which as I explained above I was unable to do from any tutorials I found. I did eventually figure out that where every tutorial says there's a folder named &quot;Content&quot;, I had a folder named &quot;WindowsGame1 Content&quot;. When I finally added a .PNG file and tried using the code in your sample to display it on the screen, I got the error `Error loading &quot;Smiley.png&quot;. File not found.`. I tried `Smiley` and `Smiley.png`. It is in my Content folder, and the Asset Name is `Smiley`" CreationDate="2011-03-04T21:16:26.363" UserId="5855" />
  <row Id="12367" PostId="9324" Text="isn't it the same as a reset then?" CreationDate="2011-03-04T21:20:56.867" UserId="5865" />
  <row Id="12368" PostId="9328" Text="You should have a folder in the solutions explorer. You can drag the file from explorer to that folder. Then it should build fine." CreationDate="2011-03-04T21:22:57.073" UserId="962" />
  <row Id="12369" PostId="9327" Text="+1 I had some problems at first too. Keep going, you'll get the jist of it! =)" CreationDate="2011-03-04T21:28:03.727" UserId="2778" />
  <row Id="12370" PostId="9317" Text="@brainydexter: I am a commandline guy who enjoys the autotools, so I'm not sure I'll be very helpful to you, but my pipeline is as follows: ensure `ANDROID_NDK_ROOT` is set, that it is in `$PATH` (together with `[sdk_location]/tools` and `[sdl_location]/platform-tools`); go to the project directory; compile the NDK code using `ndk-build`; compile the Java code and build the package using `ant compile`; upload to the emulator or connected device using `ant install`. As for opensourcing the engine, I have not decided yet, but I am already publishing code on the [blog](http://lol.zoy.org/blog)" CreationDate="2011-03-04T21:36:41.967" UserId="5864" />
  <row Id="12371" PostId="9227" Text="You've missed the problem entirely. You're still updating nodes in a thread while Ogre is trying to do something with them. It doesn't matter how many locks are in your own code - which should be zero - you have to have some sort of synchronization with Ogre." CreationDate="2011-03-04T21:43:28.213" UserId="744" />
  <row Id="12372" PostId="9321" Text="@Anselm if it's opt-in, I would say not very, but if any of it's done without the user's permission then I would say it's fairly creepy." CreationDate="2011-03-04T23:46:24.550" UserId="5006" />
  <row Id="12373" PostId="9326" Text="@Vitor Braga: Thank you, I too believe this to be the case." CreationDate="2011-03-05T02:20:56.057" UserId="5868" />
  <row Id="12374" PostId="9326" Text="@konradk One possible option is trying to refactor an existing IRC client into a client for your game. ircII is BSD licensed and written in C. You can just run any ircd on your server. Maybe writing an in-game front end for ircII is going to be easier than writing an library that satisfy all of your needs." CreationDate="2011-03-05T02:31:33.000" UserId="5869" />
  <row Id="12375" PostId="9341" Text="No, I want depth testing turned on, but writing turned off." CreationDate="2011-03-05T02:35:37.387" UserId="5876" />
  <row Id="12376" PostId="9321" Text="The problem with all time highscores is that when someone finds a bug, cheat, or auto it stays forever unless you manually remove it (which can be painful.)" CreationDate="2011-03-05T04:46:51.363" UserId="5678" />
  <row Id="12377" PostId="9329" Text="I was able to figure it out =) Thank you. I was confused since the folder was named &quot;WindowsGame1 Content&quot; and not &quot;Content&quot; (as all of the tutorials told me). I was able to Add Existing Item and display it on the screen. I've also been programming objects to move on their own =) Next step- reading the keyboard." CreationDate="2011-03-05T05:03:03.413" UserId="5855" />
  <row Id="12378" PostId="8372" Text="@krdluzni My point in designing replay systems with unpredictable elements such as thread timings (if they effect your ability to accurately calculate a replay), is to treat them just like any other input source, just like user input. I don't see anybody complaining a program is &quot;non-deterministic&quot; because it takes completely unpredictable user input. As for the term, it's inaccurate and confusing. I'd rather have them use something like &quot;practically unpredictable&quot; or something like that. And no, it's not impossible, check VMWare's replay debugging." CreationDate="2011-03-05T05:24:02.023" />
  <row Id="12379" PostId="9243" Text="Another reason to use 2d arrays (using C arrays or std::vector or std::array, or the equivalent in other languages) is that they're rather compact. The percentage of space used to store game data (out of the total size of the data structure) is close to 100% with 2d arrays, but often much lower with sparse arrays, linked lists, hash tables, arrays of pointers, or other structures.  This matters less in PC games but many platforms are memory limited, and compact representations help with load times and the cpu cache." CreationDate="2011-03-05T06:07:54.857" UserId="2472" />
  <row Id="12380" PostId="9317" Text="@Sam Hocevar: Thanks for the link! I'll keep an eye out for your blog." CreationDate="2011-03-05T07:23:41.990" UserId="4638" />
  <row Id="12381" PostId="9321" Text="@Davy8 I think it doesn't even work for facebook without the user's permission, but if opt-in is ok it's fine. @glowcoder Yes that would be another advantage of resetting/expiring highscores" CreationDate="2011-03-05T09:38:52.070" UserId="5865" />
  <row Id="12382" PostId="9348" Text="Bit comparison sounds like a good idea, the limitations might not always be a bad thing either, it would be a nice limit to keep the game system form becoming overly complex." CreationDate="2011-03-05T10:06:12.057" UserId="5859" />
  <row Id="12383" PostId="9312" Text="Thanks for the info, I've tried stuffing objects into mysql once on rails, it worked but wasn't the prettiest of sights, having a clean way would come in handy." CreationDate="2011-03-05T10:09:35.767" UserId="5859" />
  <row Id="12384" PostId="9323" Text="May be there some &quot;template&quot; (not as &quot;C++ design patterns) solution of it? There are plenty of MMORPGs." CreationDate="2011-03-05T10:28:36.593" UserId="5860" />
  <row Id="12385" PostId="9348" Text="Perhaps it would be even better if the values would have key pairs that indicate which bit they offer a value for. That way you could filter for condition and status values as well with a single query. Good luck!" CreationDate="2011-03-05T10:43:38.470" UserId="5868" />
  <row Id="12386" PostId="9326" Text="@Vitor Braga: Thank you, this sounds like our best bet." CreationDate="2011-03-05T10:49:11.413" UserId="5868" />
  <row Id="12387" PostId="9323" Score="1" Text="Most MMOs are backed by absolute disasters for databases." CreationDate="2011-03-05T11:39:19.777" UserId="744" />
  <row Id="12388" PostId="9355" Text="I do find that interesting and +1 for the interesting link. However that article mentions nothing about how the mapping of the texture to the circle is done :/" CreationDate="2011-03-05T11:41:33.033" UserId="5021" />
  <row Id="12389" PostId="9329" Text="I'm glad I could help once more. I hope this will help other GD friends as well! =) As for the detailed explanation, I had to make sure I cover the detail you missed, so I gave it all! ;-) As for the keyboard, I, in the Update() method, have stored the keys pressed in a Keys[] array, then I simply perform a switch(Key[0]) {} if the array's not null. I think I provided some examples within the links given herewith." CreationDate="2011-03-05T12:45:32.850" UserId="2778" />
  <row Id="12390" PostId="9358" Text="+1 Crap, Joe's around the corner!!!" CreationDate="2011-03-05T13:26:33.597" UserId="20" />
  <row Id="12391" PostId="9359" Score="5" Text="We had those concerns, but in practice they all turned out to be non-issues. People don't mind using @names, and after the first message, most players will respond by replying or using name links, which can auto-fill correctly. Long names can be solved by forms of auto-completion - which is something that you should be supporting anyway. Basically, the complaints against it all boiled down to &quot;well, then we'd have to follow better UI practices.&quot; So we did that as well." CreationDate="2011-03-05T14:26:48.133" UserId="744" />
  <row Id="12392" PostId="9358" Text="Good idea about the non-unique part being visible.  In my case I'm probably going to be using email addresses as login name so I don't want to be displaying that publicly.  I was thinking maybe some encoded form of the PK in the database so it's guaranteed unique, and encoded so it's not a security concern (probably isn't anyway as long as all input is properly sanitized, etc, etc, but doesn't hurt to be extra careful)" CreationDate="2011-03-05T15:15:19.973" UserId="5006" />
  <row Id="12393" PostId="9358" Text="I was originally concerned with impersonation if the display name was the only part shown if trading is involved, e.g. impersonating someone's friend and asking for gold or something." CreationDate="2011-03-05T15:18:12.077" UserId="5006" />
  <row Id="12394" PostId="9321" Text="@Anselm You probably can't get full profile, but I've seen at least a couple sites that can get your FB profile pic without permission.  I love Pandora but I don't like that they grabbed my FB pic (I'm not quite sure how actually, maybe by email address or some SSO stuff) automatically." CreationDate="2011-03-05T15:23:04.040" UserId="5006" />
  <row Id="12395" PostId="8487" Text="This is not at odds with the best answer. Once you  make game #2, you'll start seeing duplicate code to pull into libraries. I favour third-party libraries wherever possible (saves hours of work)" CreationDate="2011-03-05T15:35:55.133" UserId="1929" />
  <row Id="12396" PostId="9358" Score="1" Text="We used three separate tokens - the display name and account name, but also the login name. The login name is never public (and must be unique), which also gives additional security." CreationDate="2011-03-05T16:04:49.210" UserId="744" />
  <row Id="12397" PostId="9358" Score="4" Text="The trade case is a good example of where good UI practices help. You probably have some kind of button or icon that means &quot;friend&quot;. When you show names in the trade window, you can just show those icons as well. Thus Bob, my friend in my guild, shows up as &quot;Bob [F] [G]&quot;, and Bob the jerk shows up as &quot;Bob&quot; - and both names are clickable links to their character profile. Having those icons is good practice anyway, since it reinforces recognition of the icon elsewhere, and avoids common spoofs like &quot;8ob&quot; which are problematic even with unique display names." CreationDate="2011-03-05T16:08:51.547" UserId="744" />
  <row Id="12399" PostId="9358" Text="@Joe Good point.  You've sold me. Do you accept payments in checkmarks? :p" CreationDate="2011-03-05T16:50:05.793" UserId="5006" />
  <row Id="12400" PostId="9346" Text="This is remarkably similar to http://gamedev.stackexchange.com/questions/6199/3d-illusion-of-a-2d-planet-texture." CreationDate="2011-03-05T17:25:43.990" UserId="744" />
  <row Id="12401" PostId="9364" Text="It may not answer your question entirely, but I would advise looking at sources of DirectX+OpenGL engines like OGRE and Irrlicht to see how they've abstracted it." CreationDate="2011-03-05T17:51:44.937" UserId="1156" />
  <row Id="12402" PostId="9323" Text="In particular, MMOs often have very different approaches to their data persistence, which often work acceptably for their own game design but not for other game designs. Since the game design is the most important part, you can't adequately specify a data persistence and distribution strategy without one. (Which could be construed as: &quot;Ask a more specific question, telling us what sort of data you have, how often it changes, and why you think you want to distribute a single world across multiple servers.&quot;)" CreationDate="2011-03-05T18:22:48.070" UserId="1101" />
  <row Id="12403" PostId="9345" Score="1" Text="This all sounds fine until you consider that he's hoping to have multiple servers accessing one data set - this means that without further coordination, application-side caches will get out of sync leading to game errors at best and data loss at worst. I don't disagree with anything you've said but the original poster will need to also consider the cross-server consistency issue before proceeding." CreationDate="2011-03-05T18:24:36.023" UserId="1101" />
  <row Id="12404" PostId="9366" Text="The trouble with this is that if he later has to go for an abstraction, he then has to re-write all his interface code. And if D3D9 was globally included throughout his project, it's going to be damn hard to refactor all that code." CreationDate="2011-03-05T18:26:36.870" UserId="4662" />
  <row Id="12405" PostId="9309" Text="In case you weren't aware, heap corruption errors aren't memory leaks - they are symptoms of a time when you have written to an incorrect part of memory. You are probably writing past the end of an array or vector." CreationDate="2011-03-05T18:27:38.610" UserId="1101" />
  <row Id="12406" PostId="9366" Score="1" Text="He's going to have to rewrite everything anyway when he has a use case that isn't covered by whatever assumptions he makes now anyway, though. Refactoring should be embraced, especially for a learning project. " CreationDate="2011-03-05T19:30:28.983" UserId="51" />
  <row Id="12410" PostId="9318" Text="possible duplicate of [How to design a leaderboard?](http://gamedev.stackexchange.com/questions/9250/how-to-design-a-leaderboard)" CreationDate="2011-03-05T22:08:59.457" UserId="744" />
  <row Id="12411" PostId="9355" Score="1" Text="They don't go into much detail but it does say: &quot;Texturing is slightly more complicated. We either use a cube map (the simple case), or we have to do a bit of inverse trig in the shader to work out a theta and phi, then map this into UV space.&quot;" CreationDate="2011-03-05T22:12:33.120" UserId="5824" />
  <row Id="12414" PostId="9345" Text="The middleware is a data tunnel that is on one hand responsible for caching data, and also for providing data. However, it only provides data to the server (never to the client) and the server caches all game related master data at startup. So there can be many data sources and many data requesters connected at any time. The MMO I work on uses this scheme rather efficiently." CreationDate="2011-03-05T23:26:14.830" UserId="5868" />
  <row Id="12415" PostId="9359" Text="Kudos then. Glad to see someone not taking the easy way out and biting the bullet for better quality." CreationDate="2011-03-06T01:39:44.457" UserId="3793" />
  <row Id="12416" PostId="9377" Text="Please describe the job that you are wanting to get.  Do you want to be a coder in a big shop, join/start an indie-company?  Math is always good, as is a good grounding in art theory." CreationDate="2011-03-06T04:32:54.343" UserId="290" />
  <row Id="12417" PostId="9377" Text="Well I dont know what are the available jobs in this sector. But I like coding and designing since I've been working as a web developer for most of the time. Suggest me how do I approach for general study (MSc. level) in Game Development and later I can select a specific job." CreationDate="2011-03-06T04:38:24.323" UserId="5889" />
  <row Id="12419" PostId="9368" Text="Many thanks for your detailed answer but pardon me for being exceptionally stupid: how does this help in terms of defining *where* the problem is? If using penter/pexit hooks, how am I going to determine the calling function? Surely the IP is relative to the individual execution and I'm not aware of a method to get the *calling* function name. I thought I could probably write macros that pass `__FUNCTION__` along, but that completely defeats the object of using penter/pexit, as it's high-maintenance and needs to be done for each function.  Please do pardon my lack of experience in this area :)" CreationDate="2011-03-06T08:47:32.267" UserId="2853" />
  <row Id="12420" PostId="9356" Text="I think they are adding support for fluids in next version of Farseer (3.3)" CreationDate="2011-03-06T09:18:33.290" UserId="4638" />
  <row Id="12421" PostId="9377" Text="I use all three of those languages..." CreationDate="2011-03-06T10:07:20.847" UserId="14" />
  <row Id="12422" PostId="9377" Text="You can use XNA/Silverlight if you want to create games with C#" CreationDate="2011-03-06T10:16:23.773" UserId="5896" />
  <row Id="12423" PostId="9380" Text="+1 for Sloperama. That guy's FAQs are great." CreationDate="2011-03-06T10:49:45.903" UserId="1156" />
  <row Id="12424" PostId="9381" Text="If you put a link to the image somewhere, one of us higher-rep'd users will edit it in :)" CreationDate="2011-03-06T11:31:12.927" UserId="1156" />
  <row Id="12425" PostId="9385" Text="Just what I was looking for, thanks Sam." CreationDate="2011-03-06T11:56:48.147" UserId="5021" />
  <row Id="12426" PostId="9385" Text="Thanks, your +1 just allowed me to add comments so that I can warn you that I fixed a few issues in the code :-)" CreationDate="2011-03-06T12:15:05.067" UserId="5864" />
  <row Id="12427" PostId="9376" Text="Thanks, I've never been good at maths unfortunately.." CreationDate="2011-03-06T12:28:09.933" UserId="1217" />
  <row Id="12428" PostId="9386" Text="Thanks for this, I'm still not sure how to implement it in JavaScript but hopefully it will become clearer to me as I read that article over." CreationDate="2011-03-06T12:39:55.273" UserId="2592" />
  <row Id="12429" PostId="9386" Text="There's the C source I just edited in. It shouldn't be too much of an issue to implement :)" CreationDate="2011-03-06T12:43:44.917" UserId="1156" />
  <row Id="12430" PostId="9376" Text="I get the distance to be 1.525879E-07 constantly.. any idea why?" CreationDate="2011-03-06T12:44:45.787" UserId="1217" />
  <row Id="12431" PostId="9386" Text="@The Communist Duck  Thank you, I've dabbled in C before." CreationDate="2011-03-06T12:47:42.960" UserId="2592" />
  <row Id="12432" PostId="9376" Text="In fact it's probably because position.x seems to be -1.525679E-07... I'll try to figure our why." CreationDate="2011-03-06T12:48:05.147" UserId="1217" />
  <row Id="12433" PostId="9386" Text="@The Communist Duck [Hopefully I am on the right track](http://jsfiddle.net/alexdickson/u4s5X/2/) :)" CreationDate="2011-03-06T13:14:31.897" UserId="2592" />
  <row Id="12434" PostId="9386" Text="@alex, you should use some kind of recursion in your implementation. Currently you have simply a line with random y component, where random variation decreases to the right." CreationDate="2011-03-06T13:44:04.043" UserId="5902" />
  <row Id="12435" PostId="9301" Text="@Bill Rather than try and squash the info into a comment, I've added a bit more information to the end of my answer." CreationDate="2011-03-06T13:47:51.503" UserId="288" />
  <row Id="12436" PostId="9386" Text="@Juha Syrjälä Thanks, I realised this too. I think I'll go to bed and try it again another night :)" CreationDate="2011-03-06T13:50:27.683" UserId="2592" />
  <row Id="12437" PostId="9386" Text="@alex Never try to code when tired ;)" CreationDate="2011-03-06T13:50:56.613" UserId="1156" />
  <row Id="12438" PostId="9387" Text="+1 Thanks for your help." CreationDate="2011-03-06T13:51:02.107" UserId="2592" />
  <row Id="12439" PostId="9389" Text="Hi - thanks for the reply. My matrix is in row vector notation and the vectors that I'm multiplying are column vectors. I've multiplied the same matrices and vectors in matlab and get the same answers." CreationDate="2011-03-06T14:15:56.797" UserId="5740" />
  <row Id="12440" PostId="9389" Text="Ahhh I've just tried the tanspose of this matrix in Matlab multiplied with the vector and the w coordinate yields 1, so when I'm constructing my transformation matrices I must be using the wrong matrix notation." CreationDate="2011-03-06T14:21:46.013" UserId="5740" />
  <row Id="12441" PostId="9391" Text="Update-Draw-Repeat ... what simplier should be? :)" CreationDate="2011-03-06T15:33:45.450" UserId="3794" />
  <row Id="12442" PostId="9391" Text="What wouldn't have a game loop? Even something like ZORK has one." CreationDate="2011-03-06T15:44:42.330" UserId="1156" />
  <row Id="12443" PostId="9391" Score="3" Text="The main loop is very common, every Windows application has one: http://en.wikipedia.org/wiki/Event_loop and every webserver." CreationDate="2011-03-06T15:49:36.930" UserId="450" />
  <row Id="12444" PostId="9391" Text="Unless you're meaning games where the game loop is implicit; or at least not written by you?" CreationDate="2011-03-06T16:32:21.063" UserId="1156" />
  <row Id="12445" PostId="9366" Text="I'm exagerating the case a bit.  I too hate unnecesary abstraction. But in this case I can say actually there is a good chance I'll want to do this with a different implementation..." CreationDate="2011-03-06T16:46:56.807" UserId="5771" />
  <row Id="12446" PostId="9373" Text="Oh indeed! But the question is what level do I separate it? At the level of drawing a whole town, or the level of drawing a triangle? Or where in between" CreationDate="2011-03-06T16:48:21.190" UserId="5771" />
  <row Id="12447" PostId="9392" Text="See my edit.  Basically I mean that you don't care about frames, and what I'm thinking of is event-based, but perhaps there are others." CreationDate="2011-03-06T16:52:40.633" UserId="5006" />
  <row Id="12448" PostId="9394" Text="What about a model that blocks until an update is issued, say a blocking queue of commands that sleeps until a command comes in to say &quot;hey, something changed&quot;.  I realize internally this queue would probably be implemented in some sort of loop, but that's an implementation detail." CreationDate="2011-03-06T16:56:39.300" UserId="5006" />
  <row Id="12449" PostId="9391" Text="@Duck that's exactly what I mean.  I edited that into the question.  (Do you get notifications for @Duck?  I'm not sure whether SE's notification system handles that)" CreationDate="2011-03-06T16:57:57.280" UserId="5006" />
  <row Id="12450" PostId="9394" Score="1" Text="Still a loop. Sure, you don't control it, but you're still subject to the architecture of a game loop. Your input will be called. Then your update will be called. Then your draw/render will be called. Ultimately, that architecture is imposed in some manner." CreationDate="2011-03-06T17:01:46.203" UserId="3793" />
  <row Id="12451" PostId="9392" Text="I'm not really having any difficulties, just general curiosity." CreationDate="2011-03-06T17:09:18.467" UserId="5006" />
  <row Id="12452" PostId="9394" Text="@Sion Right, but all programs are eventually compiled into/interpreted as machine language but that doesn't I as a programmer need to deal with it.  Basically what I'm getting at is user code not dealing with the details of frames and just letting some library or engine handle any kind of interpolation and generally just &quot;do the right thing&quot; automatically." CreationDate="2011-03-06T17:13:28.087" UserId="5006" />
  <row Id="12453" PostId="9394" Text="There's a difference. You're talking about assembly/bytecode, which is *lower* than your code and has to do with language, while the game/application loop imposed on you is *higher* and has to do with software architecture. You are working on a higher-level than assembly/bytecode, but you are working within the game loop." CreationDate="2011-03-06T17:20:57.323" UserId="3793" />
  <row Id="12454" PostId="9394" Text="@Sion I think we're not quite understanding one another.  What I'm talking about is for instance in a Java program, you may be working within on various operating systems, but the JVM abstracts away the differences for you so you don't need to know or care what OS you're on (most of the time).  Similarly I'm wondering about game architectures where you don't know or care that there's a gameloop internally.  With JQuery I can say &quot;shift this div 100 pixels to the right over 3 seconds&quot;.  I need zero knowledge that some loop even exists in order to implement that. That's what I'm referring to." CreationDate="2011-03-06T17:30:41.877" UserId="5006" />
  <row Id="12455" PostId="9397" Text="It's just the center point of the sprite that needs to be within the radius, not effectively the sprite itself. Updated my question, sorry for being unclear." CreationDate="2011-03-06T17:41:39.940" UserId="1217" />
  <row Id="12456" PostId="9396" Text="I tried this but in a somewhat different manner, this results in the sprite position to be constrained within a square of the center point. I really want the boundary to be circular.. thx though!" CreationDate="2011-03-06T17:42:58.067" UserId="1217" />
  <row Id="12457" PostId="9396" Text="Oh, and I'll try to use your first suggestion, I was there at one point but didn't figure it out, I'll try it again. Would be extremely thankful if you could show me that part in code." CreationDate="2011-03-06T17:44:13.020" UserId="1217" />
  <row Id="12458" PostId="9396" Text="@Phil - I should have made it clear that while the box check is quicker it is just that a box check." CreationDate="2011-03-06T17:46:32.343" UserId="382" />
  <row Id="12459" PostId="9394" Text="The JVM abstracts the OS away from the application. That is why the application is not concerned with the OS. That's different than being within the game loop and filling in it's behavior. Understanding the order of things within the loop is important. Where should your input/AI code be? Where should your collision detection/collision response/physics/game logic be? Where should your rendering code be? Is the loop running them separately? Do they have the same interval between being triggered? Can they run parallel? Even if you don't control the loop, you need to know how it affects execution." CreationDate="2011-03-06T17:49:28.250" UserId="3793" />
  <row Id="12460" PostId="9396" Text="@ChrisF - You did :) I was too fast in my comment and missed your line just above the code." CreationDate="2011-03-06T17:50:14.943" UserId="1217" />
  <row Id="12461" PostId="9394" Text="@Sion I agree it's not appropriate for all games.  Maybe not even most games.  But there are many games that don't require collision detection or a physics engine.  In a turn-based environment, the UI is purely an asthetic layer on top of the game logic, which could just as easily be implemented as a console app." CreationDate="2011-03-06T17:56:07.913" UserId="5006" />
  <row Id="12462" PostId="9394" Text="Typing @ followed by an incomplete name will not notify someone of your response but the fact that you commented after them will. There's no way for the system to know that `@Sion` happened to be referring to `Sion Sheevok`. Agreed, for a turn based game you can get away with simpler systems, but there are circumstances where you'd want to know if your input, update, or draw is happening first, second or third. Perhaps update gets a timestep but draw doesn't. Perhaps draw doesn't have a set framerate, so animation cursors must be updated in update and not in draw. That kind of thing." CreationDate="2011-03-06T18:02:01.050" UserId="3793" />
  <row Id="12463" PostId="9394" Text="Regarding the notification that's actually incorrect.  It's actually semi-smart: http://meta.stackoverflow.com/questions/43019/how-do-comment-replies-work/43020#43020&#xA;&#xA;To quote an example: &quot;to match Peter Smith you may use @pet, @peter, @peters, or @petersmith.&quot;" CreationDate="2011-03-06T18:11:08.577" UserId="5006" />
  <row Id="12464" PostId="9394" Text="Huh... my mistake. I was under the impression it was a lot less intelligent than that. Thanks for the info!" CreationDate="2011-03-06T18:21:57.647" UserId="3793" />
  <row Id="12465" PostId="9368" Text="There's a StackWalk64 API call you can make to get information about calling functions, et cetera: http://msdn.microsoft.com/en-us/library/ms680650(v=vs.85).aspx" CreationDate="2011-03-06T18:45:04.280" UserId="1430" />
  <row Id="12466" PostId="9403" Text="How would using a 3D array fix your problem with that wall check situation. Wouldn't it still be the same?" CreationDate="2011-03-06T18:45:27.610" UserId="3547" />
  <row Id="12467" PostId="9391" Text="@Davy8 Nope, I just get them for @The Communist Duck. I can't tell if I should submit anything with Pyglet as an answer, since you just call to `pyglet.app.run()` and decorated functions do the rest ;-)" CreationDate="2011-03-06T18:45:31.207" UserId="1156" />
  <row Id="12468" PostId="9403" Text="I'd know that Walls only stay on layer number 1. So I can just do: Tiles[Wall.X - 1, Wall.Y, 1] is Wall?" CreationDate="2011-03-06T19:22:46.690" UserId="5094" />
  <row Id="12469" PostId="9383" Score="3" Text="I'd like to add this link: http://theory.stanford.edu/~amitp/GameProgramming/&#xA;It may be complex to understand sometimes but it really helped me to understand A*. Good luck!" CreationDate="2011-03-06T19:39:00.950" UserId="2111" />
  <row Id="12470" PostId="9405" Text="Thanks for the help." CreationDate="2011-03-06T19:43:01.497" UserId="4234" />
  <row Id="12471" PostId="9403" Text="Than can't you just check the first element in the list? I don't see how a list raises a problem." CreationDate="2011-03-06T20:30:05.023" UserId="3547" />
  <row Id="12472" PostId="9403" Text="The wall may be anywhere in the list with the second approach. I need to loop through every Entity, and check if it is a wall. " CreationDate="2011-03-06T20:34:22.540" UserId="5094" />
  <row Id="12473" PostId="9393" Text="@PatrickB: That is indeed exactly what I want. Why shouldn't I use Quadrics? I thought it was better than doing it by myself with a `glBegin()`. I already have the code for my own ring, which is very easy with a quad strip, but I was just curious if you can change these texture coordinate generations. If it really is a no-go, then I would accept that." CreationDate="2011-03-06T20:55:57.607" UserId="4598" />
  <row Id="12475" PostId="9383" Text="+1 for amit's page. It is honestly an amazing page." CreationDate="2011-03-06T21:55:36.167" UserId="1156" />
  <row Id="12476" PostId="9404" Score="2" Text="Although you have a trigonometric answer below, if you intend to dive deeper into 3d, you might want to consider trading in the trigonometric approach to 3d problem solving in favor of a linear algebra approach... Much less headache and much more versatile in the long run." CreationDate="2011-03-06T22:21:16.960" UserId="1923" />
  <row Id="12477" PostId="9403" Text="Maybe use a 4 dimensional array? Basically the same thing as the 3D array approach except you can stack object that are in the same layer. (or make each layer have it's own list) Seems kind of weird..." CreationDate="2011-03-06T22:50:30.250" UserId="3547" />
  <row Id="12478" PostId="9404" Text="Thanks for the suggestion. I'm using vectors to perform the motions, but since I only need to call this very few times, I figured it would suffice. To clarify, by a linear algebra approach, do you mean using Matrices and Quaternions?" CreationDate="2011-03-06T23:35:22.250" UserId="4234" />
  <row Id="12479" PostId="9310" Text="Thanks for the extra info; accepted." CreationDate="2011-03-07T00:51:50.640" UserId="4690" />
  <row Id="12480" PostId="9406" Score="1" Text="Did you mean &quot;represents the EARTH&quot;?" CreationDate="2011-03-07T00:53:21.013" UserId="4690" />
  <row Id="12481" PostId="852" Text="The problem with letting users choose is that the majority of users are pretty unimaginative. Everybody likes to think that they think outside of the box but most of the time the player will just do the most obvious thing possible first. I think the trick with these games is to just appear like you are giving them choices while not giving them many at all; like Bioshock. Players of Bioshock felt like they were making real world changing choices in the game but ultimately the only thing you could truly change was the game ending." CreationDate="2011-03-07T03:15:29.350" UserId="5916" />
  <row Id="12482" PostId="9377" Text="Silverlight can be used for flash-type or browser games only, right? " CreationDate="2011-03-07T03:47:35.807" UserId="5889" />
  <row Id="12483" PostId="9415" Text="Then Flash is such an example then maybe.  I've never actually worked in Flash.  Of course it's not magic (for some definitions of &quot;magic&quot;) but there must be games where the developer of said game never needs to touch the game loop.  I'm interested in resources about those types of games.  Simple games, not AAA titles, maybe not even A titles (if such a thing exists), but fits the definition of a game, and is played on a computer." CreationDate="2011-03-07T05:11:43.127" UserId="5006" />
  <row Id="12484" PostId="9415" Text="I work in web development and I'm aware of sockets and know how they work, but I've never had to actually write my own socket connections.  I'm looking for similar thing in games.  A game loop could be sufficiently abstracted away such that most games using that abstraction would not have to touch it." CreationDate="2011-03-07T05:14:31.623" UserId="5006" />
  <row Id="12485" PostId="9415" Text="No but it is the same thing as having an update method." CreationDate="2011-03-07T05:29:12.090" UserId="962" />
  <row Id="12486" PostId="9394" Text="Recursion won't always cause a stack overflow. If your language does tail call elimination (like Lua), then you can recurse indefinitely without growing the stack. But either way, I think this isn't really what the original post was getting at." CreationDate="2011-03-07T05:29:40.373" UserId="160" />
  <row Id="12487" PostId="9413" Score="3" Text="I don't see how MVC (which isn't common in games from my experience) would help here. If anything, it would make it worse: you'd end up with some redundancy between the model and view that has to be kept in sync." CreationDate="2011-03-07T05:31:13.727" UserId="160" />
  <row Id="12488" PostId="9403" Score="2" Text="Did you actually have a performance problem, or are you just worried that you would? Have you profiled it?" CreationDate="2011-03-07T05:31:42.480" UserId="160" />
  <row Id="12489" PostId="9418" Score="8" Text="Flash game development is game development." CreationDate="2011-03-07T07:12:54.050" UserId="656" />
  <row Id="12490" PostId="9383" Text="Thanks, this is new subject for me, I’ll study it…Answer accepted." CreationDate="2011-03-07T08:23:14.997" UserId="5246" />
  <row Id="12491" PostId="9383" Text="@Jesse +1 thanks, very good link..." CreationDate="2011-03-07T08:32:30.790" UserId="5246" />
  <row Id="12492" PostId="9421" Text="SO something like this???     Math.atan2(x - joystickCenter, y - joystickCenter) - 90;    " CreationDate="2011-03-07T09:11:14.500" UserId="5919" />
  <row Id="12493" PostId="9421" Text="Almost. Since the result from `Math.atan2` is in radians, you'll have to convert it to degrees first. Something like this: `Math.atan2(y - joystickCenter.y, x - joystickCenter.x) * (180/Math.PI) - 90;`. Also note that `y` is usually the first parameter for the `atan2` function. Maybe check the documentation or code-help." CreationDate="2011-03-07T09:28:14.787" UserId="20" />
  <row Id="12494" PostId="4277" Text="Pretty complete list of html5 game libs https://github.com/bebraw/jswiki/wiki/Game-Engines" CreationDate="2011-03-07T09:30:44.913" UserId="4413" />
  <row Id="12495" PostId="4278" Score="1" Text="This answer is a bit conservative; if he wants to use html5 browsers only then he can go for canvas and use one of the html5 libraries (see my comment on the question). Using DOM &amp; CSS for games seems like a hack (though a workable hack in some cases)." CreationDate="2011-03-07T09:31:48.670" UserId="4413" />
  <row Id="12496" PostId="9421" Text="yea i tried to edit that but was too late. Thanks for your help. I feel like I am understanding this more.  " CreationDate="2011-03-07T09:34:04.567" UserId="5919" />
  <row Id="12497" PostId="9100" Score="1" Text="This book is one of the best books in the literature,especially for practical applications. I have bought the book and started reading it. Thank you Ray" CreationDate="2011-03-07T10:26:01.100" UserId="5726" />
  <row Id="12498" PostId="9419" Score="1" Text="I don't think the link is related. In fact I think trying to make it related just continues the problem of advocates and critics of social games talking past each other. One can think social games and Flash games and small games (which are all also orthogonal choices) are good, but still think the dominant approach to making social games results in non-games, barely-games, or damaging-games." CreationDate="2011-03-07T10:50:15.417" UserId="744" />
  <row Id="12499" PostId="9420" Text="thanks! but with line-sphere intersection give me 2 points, and thet're in world coordinate. how to convert them into texture coordinate?" CreationDate="2011-03-07T11:22:47.613" UserId="4508" />
  <row Id="12500" PostId="9406" Text="ohu, thanks!n edited" CreationDate="2011-03-07T11:23:05.880" UserId="4508" />
  <row Id="12501" PostId="9375" Text="How are you defining &quot;major&quot;? Kingdom of Loathing uses a single shard. Everyone shares the same Farmville shard. Star Trek Online and Champions Online both use a single-shard model, but instanced zones. " CreationDate="2011-03-07T11:25:03.997" UserId="744" />
  <row Id="12502" PostId="9345" Text="@konradk: That doesn't explain how you solved cross-server consistency issues at all. At some point the servers need to synchronize data between each other, or you have race conditions, which manifests as random disconnects, duplicate players, duped items, missing quests, etc." CreationDate="2011-03-07T11:27:28.723" UserId="744" />
  <row Id="12503" PostId="9420" Text="The point nearest the screen is the interesting one" CreationDate="2011-03-07T12:02:21.283" UserId="4129" />
  <row Id="12504" PostId="9413" Score="1" Text="Yeah, when you have a problem, just use &lt;buzzword&gt;. Now you have two problems." CreationDate="2011-03-07T13:48:48.117" UserId="2710" />
  <row Id="12505" PostId="9413" Text="np, I flushed out more details." CreationDate="2011-03-07T14:15:43.203" UserId="1929" />
  <row Id="12506" PostId="9427" Text="Ok, you' ve got a point about the monolithic zip approach, loading all the files at startup is better than loading them at the moment. But what about modding and/or patching?" CreationDate="2011-03-07T14:15:58.927" UserId="5908" />
  <row Id="12507" PostId="9413" Text="OK I took back my downvote. Stil, I don't think MVC is useful here.Most of the time, object differ by logic, not (only) by graphical representation." CreationDate="2011-03-07T14:20:55.593" UserId="2710" />
  <row Id="12508" PostId="9345" Text="Data is never duplicated - at all times there is only one server be in charge of a certain object, and when required, it passes that object over to another server. Objects are client connections that also include the player control object. However, this is done via a master server and is debated between servers. So we're dealing with two kinds of data - database inforation (to which my original post relates) and game objects that are created at runtime and get passed around in a multi-server mmo. Neither of these should ever fall into a race condition or be duplicated on the application level." CreationDate="2011-03-07T14:21:54.160" UserId="5868" />
  <row Id="12509" PostId="9418" Text="+1 And I agree with 5ound's comment." CreationDate="2011-03-07T14:27:47.663" UserId="2778" />
  <row Id="12510" PostId="9427" Text="Related to modding or modify assets on development, it would be a good approach give these tasks to the editor. Because the editor is the responsible of keep the resources management, the assets not necessarily have to be in a zip file when the editor uses them. You add a new resource on the editor and before to launch the game, it can pack the resources in a zip file.&#xA;&#xA;A patch can be a program that unzip the .pak with the assets, do the correct modifications and back to create the zip." CreationDate="2011-03-07T14:33:02.120" UserId="5899" />
  <row Id="12511" PostId="9439" Text="@Axonn Bad site." CreationDate="2011-03-07T15:22:18.303" />
  <row Id="12512" PostId="9413" Text="Can't please everybody, I guess. To me, MVC immediately jumped out as part of the solution to part of the problem. But I agree that I'm not providing a complete solution to all the problems -- that would require an essay!" CreationDate="2011-03-07T15:26:14.817" UserId="1929" />
  <row Id="12513" PostId="9436" Text="Absolutely how essential is it that they be properly sorted? Have you actually seen any (important) artifacts using vanilla blending?" CreationDate="2011-03-07T15:27:07.480" UserId="5259" />
  <row Id="12514" PostId="9439" Text="I think you didn't even read my question. You read &quot;game&quot; and you moved my question. I think this still belongs in the Physics area. Thanks for burying my question. Now I have to rephrase without the word &quot;game&quot; in it???" CreationDate="2011-03-07T15:29:19.123" UserId="3548" />
  <row Id="12515" PostId="9439" Score="1" Text="Your question has been answered on this site. Look here: http://gamedev.stackexchange.com/questions/1885/target-tracking-when-to-accelerate-and-decelerate-a-rotating-turret and here: http://gamedev.stackexchange.com/questions/4995/predicting-enemy-position-in-order-to-have-an-object-lead-its-target" CreationDate="2011-03-07T15:31:24.643" UserId="20" />
  <row Id="12516" PostId="9419" Score="1" Text="I think the fact that you disagree with me ironically kind of proves the point.  More people have played Cityville than Call of Duty.  As the social game market matures, you'll find that the games put out are going to be a lot more compelling.  Somebody's going to solve the fact that social games aren't really social sometime." CreationDate="2011-03-07T15:33:00.843" UserId="51" />
  <row Id="12517" PostId="9100" Text="Agreed, excellent starting point for anyone wanting to get into games AI. No problem :)" CreationDate="2011-03-07T15:36:23.580" UserId="2332" />
  <row Id="12518" PostId="9439" Text="Thank you. I think this covers it ::- )." CreationDate="2011-03-07T15:39:09.427" UserId="3548" />
  <row Id="12519" PostId="9439" Score="1" Text="The second link talks about constant velocities. And the answer that lead to the solution was found on stackoverflow: http://stackoverflow.com/questions/2248876/2d-game-fire-at-a-moving-target-by-predicting-intersection-of-projectile-and-un" CreationDate="2011-03-07T15:44:06.147" UserId="20" />
  <row Id="12520" PostId="9436" Text="A particle can blend with background instead of another particle and then &quot;rectangle&quot; essence of point-sprite is very noticeable. Alpha testing helps here but artifacts are still noticeable when alpha value quiet low but not enough to discard the fragment." CreationDate="2011-03-07T15:48:13.343" UserId="3149" />
  <row Id="12521" PostId="9439" Text="Yes, I edited my comment, sorry for the mistake bummzack! Although I still disagree that this was moved to GameDev, as here, the explanations are pretty much 'how to do it' not 'why to do it'. I was curious about a more....... physical explanation. Oh well........ I suppose the only choice is to simply read a lot of Wiki / physics and find my own explanations ::- D. " CreationDate="2011-03-07T15:50:04.317" UserId="3548" />
  <row Id="12522" PostId="9371" Text="This is a very performant solution.  Looking up to see if a tile walkable is basically O(1)" CreationDate="2011-03-07T16:36:15.013" UserId="5545" />
  <row Id="12523" PostId="9391" Text="I'm just going to vote to close this because I don't really have a clear way of explaining what exact I mean." CreationDate="2011-03-07T16:36:41.003" UserId="5006" />
  <row Id="12524" PostId="9429" Text="Nor does the client use any Python, nor have I ever heard anyone who worked on a BigWorld project talk about how much they liked it." CreationDate="2011-03-07T16:37:52.253" UserId="744" />
  <row Id="12525" PostId="9429" Text="Well, except that quote on their front page from a guy whose game took four years and was then canceled before private beta." CreationDate="2011-03-07T16:39:38.447" UserId="744" />
  <row Id="12526" PostId="9442" Text="Hit testing is not a problem. My question wasn't about that. I want to anticipate the angle with which the weapon must shoot in order for the projectile to hit the enemy. So the fact that the enemy WILL be HIT is a GIVEN. It will be hit, the question is how to shoot so that the weapon hits it." CreationDate="2011-03-07T16:56:17.050" UserId="3548" />
  <row Id="12527" PostId="9444" Score="2" Text="I disagree that the &quot;logic&quot; would necessarily be 3D. For a 2D game, Z is usually just the order in which objects are drawn for visual purposes. This doesn't need to be simulated or tied to the physics at all." CreationDate="2011-03-07T17:26:29.023" UserId="328" />
  <row Id="12528" PostId="9445" Text="I think you should be more precise about how this would be different from spam." CreationDate="2011-03-07T17:29:41.980" UserId="5864" />
  <row Id="12529" PostId="9444" Text="I've said that in &quot;this case&quot; we need a logic three-dimensional.The Z that you said is not a new dimension, it's only a form to describe the relative order in that the sprites must be drawed. ( painter algorithm )" CreationDate="2011-03-07T17:35:48.480" UserId="5899" />
  <row Id="12530" PostId="9446" Text="I like the wind idea. And the invulernability has given me the idea to add health powerups (which is similar). I also forgot that i already made turrets and teleporting already :P *edited original post* thanks." CreationDate="2011-03-07T17:37:51.620" UserId="5925" />
  <row Id="12531" PostId="9444" Text="In Box2D the Y coordinate is the altitude ( and that to which the gravity is applied ). I don't know how to change this if you want a game with top-view. Because if you use gravity, then you loose a dimension and it's needed a third dimension." CreationDate="2011-03-07T17:39:20.300" UserId="5899" />
  <row Id="12532" PostId="9438" Text="Agreed. If you don't play a lot of games, maybe start playing a few successful ones and see how most of them use simple mechanics with clever level design. In my opinion you have enough basic features, and you should start focusing on the environment and enemy behaviour, shooting patterns, etc. and tune it to make the whole thing fun." CreationDate="2011-03-07T17:50:58.717" UserId="5864" />
  <row Id="12533" PostId="9446" Text="And remotely detonated bombs? Maybe with breakable walls. :P" CreationDate="2011-03-07T17:59:16.237" UserId="5899" />
  <row Id="12534" PostId="9445" Score="2" Text="Spam is unsolicited. This question is &quot;How can I make users solicit my emails?&quot;" CreationDate="2011-03-07T18:07:05.010" UserId="744" />
  <row Id="12535" PostId="9450" Score="2" Text="The TotalSeconds is the number of seconds since the last frame update since he's using ElapsedGameTime.TotalSeconds and not TotalGameTime.TotalSeconds" CreationDate="2011-03-07T18:19:36.680" UserId="2332" />
  <row Id="12536" PostId="9455" Text="Is there a reason to get an earlier edition? Generally later editions contain new material and/or updated old material." CreationDate="2011-03-07T18:38:09.370" UserId="1156" />
  <row Id="12537" PostId="9455" Score="1" Text="Most likely cos it's cheaper" CreationDate="2011-03-07T18:41:11.263" UserId="2332" />
  <row Id="12538" PostId="9429" Text="Well, I did hear at least one developer saying he approved of BigWorld after having used it. Besides, it's the only framework I can think of that has &quot;online&quot; and &quot;python&quot; in a same sentence." CreationDate="2011-03-07T19:01:57.753" UserId="2710" />
  <row Id="12539" PostId="9442" Text="My bad! Though you had mentioned it in your question, I thought this was not relevant as long as you could test for a hit over time. I edited my answer with a proper calculations based on what you have provided in your example. This can be not the simplest approach, but it works mathematically speaking. So, I wish you to try with proper coordinates and let me know if I am mistaken. If I am, please let me know so that I can work this solution properly based on your verifications. Thanks for keeping me informed! =)" CreationDate="2011-03-07T19:04:18.110" UserId="2778" />
  <row Id="12540" PostId="9445" Text="Yes, but if you send the user stuff he didn't gave his e-mail for (e.g. he needs to create an online account to play the game, then you send him advertisement for unrelated stuff to that address), then I'd consider that SPAM." CreationDate="2011-03-07T19:08:20.633" UserId="20" />
  <row Id="12542" PostId="9462" Score="1" Text="+1 Definitely games maker, I managed to get my old secondary school to take game development seriously and they've started using Game Maker and some of the stuff the kids have come out with (13-14 year olds) are pretty awesome." CreationDate="2011-03-07T20:12:55.507" UserId="2332" />
  <row Id="12544" PostId="9459" Score="3" Text="Also of note, EC2 micro instances are free for a year to new customers." CreationDate="2011-03-07T20:30:20.110" UserId="395" />
  <row Id="12545" PostId="9452" Text="+1 Just to add you can also factor in the obstacle avoidance steering behaviour and combine the behaviours however you like (weighted sum, prioritized dithering, etc)" CreationDate="2011-03-07T20:39:13.957" UserId="2332" />
  <row Id="12549" PostId="9445" Score="1" Text="Only if you didn't offer a checkbox at registration time, and don't offer a clear way to unsubscribe (e.g. a link at the bottom of the email). Let's be honest, corporate newsletters can be annoying, but they are not anywhere close to a significant amount of spam in today's inboxes, and if the corporation is actually serious about their sales, they're trivial to stop getting." CreationDate="2011-03-07T21:19:16.783" UserId="744" />
  <row Id="12550" PostId="9439" Text="Have you taken an eye out my answer edit? Did it help? =)" CreationDate="2011-03-07T21:32:26.023" UserId="2778" />
  <row Id="12551" PostId="9444" Score="2" Text="Here is a top-down game that uses Box2D: http://www.sevengames.com/nitro-racers. I happen to know this because I helped program it :P The vehicle movements are a bit hacky, with manual setting of the rotation, and friction over grass is also done manually, but the rest (acceleration, bumping &amp; bouncing, collision with the environment) is pure Box2D. " CreationDate="2011-03-07T21:59:39.297" UserId="769" />
  <row Id="12552" PostId="9208" Text="Did Russians make a game with that? It would From Russia with Love :P" CreationDate="2011-03-07T22:06:10.613" UserId="769" />
  <row Id="12553" PostId="9437" Text="I thought about generating a shape, maybe with some bezier cuves or something like that, but failed to find a proper way to implement such a shape. Shape would give the neccesary methods tho." CreationDate="2011-03-07T22:09:41.973" UserId="5907" />
  <row Id="12554" PostId="9373" Text="A reasonable way would be to keep rendering API calls separate. That would probably be about 'drawing a building or a car' in your analogy (considering your buildings and cars are single objects :) ). An example: you want to animate your object (for simplicity let's assume only one can be played at a time). A game object could have a list of available sequences and their length and set the active animation and its speed while the renderer would manage, well, the rendering part. You may also need to obtain data back from the renderer, e.g. object's collision shape may change during animation." CreationDate="2011-03-07T22:27:33.520" UserId="5685" />
  <row Id="12555" PostId="9444" Text="Thanks a lot. I have some questions. The collision with the environment only produces that the car stops. Do you think that the rebound can be acomplished with Box2D? The friction over the grass is manually implemented due to some limitation of Box2D? When I've developed games with top-view sometimes I've used 3d logic with z for altitude, and then associate this value to a scale ( for example, a casing that is launched from a pistol). With Box2D I have not found how to deal with this.  " CreationDate="2011-03-07T22:40:30.283" UserId="5899" />
  <row Id="12556" PostId="9442" Text="Hi Will ::- ). Thank you for the concentrated effort!Sorry for the late reply, I had a longer break. As for your solution: indeed the velocity is constant for both object. But I think there is one problem: you said that X3 and Y3 are yet to be determined, but immediately after you say that the projectile has to travel 550 px to reach Y3. That means you know Y3? You don't.That was my biggest problem:I can't find Y3 without X3 and X3 without Y3.That's because you won't know WHERE the projectile has to go simply because you can't know the angle in the same time.I think I got to go with those linx" CreationDate="2011-03-07T22:40:31.260" UserId="3548" />
  <row Id="12557" PostId="9053" Text="Hey Kylotan,Thanks for the answer. I am working on to refine it. Will post again once I have concrete questions. thanks for taking your time." CreationDate="2011-03-07T22:50:26.307" UserId="5711" />
  <row Id="12559" PostId="9442" Score="1" Text="If we take it as the enemy only travels on the X axis, then we know Y3 for sure, as it should be the same as Y2, that is what allows us to say what Y3 is worth, since the enemy, in your sample, seems to only travel horizontally. From there, the solution I brought forward is correct. Besides, if you say that the enemy might travel in height too, that is, get closer to or further from the projectile, that is another story, and I would then agree with you that we don't know Y3. Otherwise, we do. =)" CreationDate="2011-03-07T23:50:03.543" UserId="2778" />
  <row Id="12560" PostId="9468" Text="Shameless Plug: You're right, RPG Maker's engine really limits you. A few years ago, I got fed up with some of the engine limitations and decided to try and make a better version, one that offers more power while preserving the simple, easy-to-use interface that made RPG Maker popular. I'm a lone developer working on it in my spare time, so it's still not quite finished, but I've got a lot done and a few RPG Maker users with really big, complex projects are interested in converting over once it's stable. You can find the project at http://turbu-rpg.com if you're interested." CreationDate="2011-03-07T23:51:55.147" UserId="818" />
  <row Id="12561" PostId="9474" Text="Did you download the right version for your expected use, that is, Windows/Xbox or Windows Phone? I noticed that there was two separate samples of the tutorials respectively. I just compiled using VS2010 and I had not to remove or modify any of the namespaces." CreationDate="2011-03-08T00:01:46.243" UserId="2778" />
  <row Id="12562" PostId="9474" Text="I did download the &quot;WIN XBOX&quot; version, however if you'll look at `ScreenManager.cs` then you'll notice at the top it has the line `using Microsoft.XNA.Framework.Input.Touch`. Even though it's not intended for use on Windows Phone 7, it still has support for touchscreen gestures (possibly for tablets running Windows 7?)" CreationDate="2011-03-08T00:14:48.240" UserId="5855" />
  <row Id="12563" PostId="9475" Text="Thanks a lot. You're right, I've got the linear momentum change working. Am I right in thinking that I would simply add a negative constant to the final equation in order to ensure that it stops spinning over time?" CreationDate="2011-03-08T00:19:34.140" UserId="4234" />
  <row Id="12564" PostId="9474" Text="+1 Interesting, I imported the ScreenManager classes and the Screens classes to my test game project, and I encounter the same as mentioned in your question. Working on it now! =)" CreationDate="2011-03-08T00:20:58.450" UserId="2778" />
  <row Id="12565" PostId="9459" Text="Magicka developed their online multiplayer game exclusively in a LAN setting.  It didn't end so well.  Make sure you give you WAN configuration some testing love as well." CreationDate="2011-03-08T00:44:25.300" UserId="370" />
  <row Id="12566" PostId="9474" Text="Had you tried to add the reference to within your project? After having added the `Microsoft.Xna.Framework.Input.Touch` reference to my project, it compiled fine." CreationDate="2011-03-08T00:48:42.470" UserId="2778" />
  <row Id="12568" PostId="9474" Text="Add the reference? Do you mean via `#include`ing, or is that a project setting within Visual Studio? Not sure about that term o.o Googling it now (edited - including -&gt; include)" CreationDate="2011-03-08T01:01:29.663" UserId="5855" />
  <row Id="12569" PostId="9376" Text="If that's in the centre, that'd make sense, as that pretty close to zero, roughly 0.0000001525679 (According to Wolfram Alpha)" CreationDate="2011-03-08T01:12:50.383" UserId="312" />
  <row Id="12570" PostId="9471" Text="Hi and thanks for answering ::- D. What I always fail to understand is how to calculate targ.vx and targ.vy. I Think I should split the velocity vector on 2 axis but I am unsure how to do that..." CreationDate="2011-03-08T01:59:32.647" UserId="3548" />
  <row Id="12571" PostId="9442" Text="Ah, yes, you are correct about Y3 ::- D. But there is another problem. You say you know when the projectile reaches Y3. But that's not true. And this is why: you know when the projectile reaches Y3 IN A STRAIGHT LINE or maybe a sloped line, but still, it's not the line with the correct angle. And when you DO FIND the correct angle, the line length changes. And so does the time required for the projectile to reach its target ::- (. That was my problem all along. I think I failed to explain it right *sigh*." CreationDate="2011-03-08T02:02:06.047" UserId="3548" />
  <row Id="12572" PostId="9428" Text="150 KLOC _and_ it worked!?! I don't believe you." CreationDate="2011-03-08T02:05:16.437" UserId="370" />
  <row Id="12574" PostId="9478" Text="Are you suggesting then that I should be able to load textures, buffers, at any point as long it is on OpenGL ES thread? It's more the memory allocating stuff I am having problems with when it comes to rendering." CreationDate="2011-03-08T02:26:55.363" UserId="5253" />
  <row Id="12575" PostId="9428" Text="The key is &quot;semi automated&quot;. The code produced by this tool mostly compiled, but not all the time. I had to manually tweak quite a bit of code. And of course I had to write an AS3 &quot;renderer&quot; to replace the OpenGL/Direct3D ones, rewriting the event handling code, and so on. But it definitely worked! There were very interesting challenges, such as how to handle overloaded methods (which AS3 doesn't support)" CreationDate="2011-03-08T02:30:45.453" UserId="4082" />
  <row Id="12576" PostId="4278" Text="What makes it seem like a hack? Google had no problem using pure DOM &amp; CSS with their [PacMan logo](http://www.google.com/pacman) and I quite like my [pong game](http://www.richardcarter.org/) on my homepage. Actually to be honest, canvas seems like a hack, hacking a square of graphics rendering into a page otherwise dominated by the DOM. But alas with the push towards that and WebGL it's clear the browser will become the heavyweight do-everything app if it isn't already. I digress..." CreationDate="2011-03-08T02:33:49.330" UserId="189" />
  <row Id="12577" PostId="9442" Score="1" Text="I get your idea, and the fact is the Y3 is the same wherever it is on X. Aside, you're right saying that the line length changes, since we finally get 1054.75116px hytpotenuse value. Hence a recalculation is required to measure in how much time the projectile will reach the target, which results to be about 105 seconds for this hypotenuse value. Then, we miss the enemy. I'll consider that in my next update. I'm going to think about it a little more. =) Thanks for informing me! =)" CreationDate="2011-03-08T02:44:46.573" UserId="2778" />
  <row Id="12578" PostId="9478" Text="The points at which you are able to load resources (e.g. glGenTextures()) are well defined, specifically after successfully calling eglMakeCurrent().&#xA;&#xA;Since your render thread must create resources and the other threads define what must be loaded, you have to use some kind of communication. Generally, resource handles are used to reference these, for example:&#xA;`handle = loadTexture(&quot;file.png&quot;); //signal renderer to load a texture.&#xA;&#xA;queueState(SET_TEXTURE, handle);&#xA;queueDraw(model);`" CreationDate="2011-03-08T02:47:32.107" UserId="5904" />
  <row Id="12579" PostId="9474" Score="2" Text="From within Visual Studio, right-click on your project and then **`Add|Reference`**, click the .NET tab if it isn't active, then select the `Microsoft.Xna.Framework.Input.Touch` assembly, it will correct no longer annoy you with the error about &quot;missing reference&quot;." CreationDate="2011-03-08T02:49:47.160" UserId="2778" />
  <row Id="12580" PostId="9478" Text="If your question is &quot;when can I, on the render thread, define new resources&quot;, I'd say check the manpages for the OpenGL ES function.&#xA;&#xA;&#xA;[link](http://www.khronos.org/opengles/sdk/docs/man/)&#xA;Also, use glGetError() to find out what the problem is, don't guess!" CreationDate="2011-03-08T02:58:13.793" UserId="5904" />
  <row Id="12581" PostId="9380" Text="Thank you, that link is definitely rich." CreationDate="2011-03-08T03:44:19.837" UserId="5889" />
  <row Id="12582" PostId="9478" Text="It's more about how then when, and I think you answered that in your first comment - the handlers. I am just making sure that I don't have to stop or interrupt the render thread. And that it is okay to load resources while rendering where it's to be expected,  like after tapping a button." CreationDate="2011-03-08T03:47:33.467" UserId="5253" />
  <row Id="12583" PostId="9459" Score="1" Text="I'm not saying you shouldn't test in a WAN environment, but at east get it working on a LAN first." CreationDate="2011-03-08T05:17:50.080" UserId="1198" />
  <row Id="12584" PostId="9470" Text="No, it does not. Creating post-processing effects requires Pro, but new shaders can be created and used in Indie too." CreationDate="2011-03-08T06:46:17.707" UserId="2710" />
  <row Id="12585" PostId="9470" Text="@Nevermind I didn't know it was post-processing effect shaders only, will fix. To note, the shaders in the OP's example link were mostly post-processing style specifically the example of Okami and Quake NPR." CreationDate="2011-03-08T06:48:09.327" UserId="14" />
  <row Id="12586" PostId="9480" Score="2" Text="Shawn Hargreaves explains it here: http://blogs.msdn.com/b/shawnhar/archive/2010/09/09/touch-input-on-windows-in-xna-game-studio-4-0.aspx" CreationDate="2011-03-08T07:21:40.303" UserId="288" />
  <row Id="12587" PostId="9488" Score="1" Text="The stock Unity character controller exists to let you get into developing quickly. How to get what you want has already been answered several times on the Unity Answers site btw. http://answers.unity3d.com/questions/694" CreationDate="2011-03-08T07:24:30.667" UserId="14" />
  <row Id="12589" PostId="9488" Text="Sorry it's a bit early/late here. *Fixed*" CreationDate="2011-03-08T07:29:35.687" UserId="14" />
  <row Id="12591" PostId="9488" Score="1" Text="In general though, I don't know any engines that support this right out of the box. I don't know of any whitepapers on this from the Mario development team, but I do know that Team Ico had a tough time implementing this for Shadow of the Colossus." CreationDate="2011-03-08T07:33:31.800" UserId="14" />
  <row Id="12592" PostId="9488" Text="PIECE OF CRAP what a shame! with Blender Game Engine(FREE) and bullet physics You press JUST one button to do this." CreationDate="2011-03-08T07:35:19.053" UserId="5946" />
  <row Id="12593" PostId="9368" Text="Seems very useful - thanks for your help :)" CreationDate="2011-03-08T07:37:41.997" UserId="2853" />
  <row Id="12595" PostId="9488" Text="I haven't played with the BGE in awhile, I'll have to check it out. Also, is the &quot;PIECE OF CRAP&quot; every line necessary? It's a little belligerent." CreationDate="2011-03-08T07:39:42.277" UserId="14" />
  <row Id="12597" PostId="9488" Text="@Luiz: Also if you are interested in getting a solution to the moving platform problem in Unity, may I suggest asking here. I'd imagine the average level of experience in programming / game development here is a bit higher than Unity Answers. " CreationDate="2011-03-08T07:52:01.597" UserId="14" />
  <row Id="12598" PostId="8122" Text="&quot;There is absolutely nothing wrong with using higher-level frameworks or tools like Unity. &quot;Making a game from scratch&quot; is a non-achievement -- what exactly do you consider &quot;from scratch?&quot; there is absolutely nothing wrong, but comes to mind that people who create new technologies are going as low level as possible for example Uncharted 2 even used an in house modified graphics API. " CreationDate="2011-03-08T07:52:43.840" UserId="5440" />
  <row Id="12600" PostId="9488" Text="Blender Game Engine &gt; just select ACTOR and DYNAMIC in physics panel and see the successful bullet implementation." CreationDate="2011-03-08T08:04:10.110" UserId="5946" />
  <row Id="12601" PostId="9425" Text="i saw panda3D but i want something for online structure" CreationDate="2011-03-08T08:05:14.253" UserId="5837" />
  <row Id="12603" PostId="9488" Text="the Leadwerks Developer also thinks it is essential and successfully implemented Newton with a character controller that works &gt; &quot;Controllers should be able to interact with other physics bodies.Controllers should be able to push and be pushed by physics bodies&quot; you can read this in leadwerks character controller docs." CreationDate="2011-03-08T08:24:17.493" UserId="5946" />
  <row Id="12604" PostId="9470" Text="Toon-shading (cel-shading) doesn't have to be post-process and will allow results that are already close to what the OP wants." CreationDate="2011-03-08T08:51:46.490" UserId="20" />
  <row Id="12605" PostId="9425" Score="1" Text="http://www.panda3d.org/manual/index.php/DC_File" CreationDate="2011-03-08T09:02:11.363" UserId="744" />
  <row Id="12606" PostId="9485" Text="WWDIY also forces you to tackle managably-sized projects," CreationDate="2011-03-08T09:19:10.413" UserId="744" />
  <row Id="12607" PostId="9488" Text="I'm also wondering why I didn't see anything about a scene graph in unity: why is that ?" CreationDate="2011-03-08T10:05:00.497" UserId="1829" />
  <row Id="12608" PostId="9444" Text="@momboco Its not that kind of a complicated scenario where the projectile will have to be tracked in 3D space. A game like billiards or pool need not have gravity. But the game I have in mind will have surfaces where friction varies. So some parameters have to be changed manually. Of course we can have 'pseudo 3D', as I'd call it, wherein the physics is 2D but the appearance is 3D, lets say a car race game where both box2D and papervision3D are used together - collisions etc are 2D but we can have 3D cars. But it'll be one slow game.&#xA;@Bart van Heukelom nice game btw. Nice art." CreationDate="2011-03-08T10:07:45.713" UserId="5705" />
  <row Id="12609" PostId="9471" Text="in your case there is no vy, just a vx (you mentioned that the enemy motion was parallel to the ground)" CreationDate="2011-03-08T10:10:48.750" UserId="1742" />
  <row Id="12610" PostId="9442" Score="1" Text="I thought there is a simpler solution to my problem and thank you for trying to find it. Your solution is definitely simpler (less calculations) than the other stuff I've seen, but, unfortunately not perfect. It may work in most cases, but it may fail in others. I now understand why the other solutions are a bit harder (involve a few more calculations), that's because the problem is tricky. The advantage with the other solutions (see bummzack's comments to my original post) is that the object may move on whatever axis as well! ::- D." CreationDate="2011-03-08T10:11:43.800" UserId="3548" />
  <row Id="12611" PostId="8133" Text="About your &quot;tree gen&quot; problem. I think esepcially in C#, you can write a C++ tree gen, put it into a .dll and treat it as managed c++. So you can theoratically access your own &quot;engine fixes&quot; into unity." CreationDate="2011-03-08T10:13:29.960" UserId="2063" />
  <row Id="12612" PostId="8133" Text="I admit that the Unity GUI 2.0 system is nothing else, than &quot;render a rect with text&quot;-system, but it is very very easy extendable. Look @AffinityUI or other Unity UI projects that are very light-weight, open-source and make the UI-system worth." CreationDate="2011-03-08T10:14:22.533" UserId="2063" />
  <row Id="12613" PostId="8133" Text="&quot;Writting your own game engine&quot; - very not very precisely, do you mean &quot;write your own 2D tile game engine&quot; or &quot;write your 3D shooter engine, with level tools, and HDR, bloom support&quot; ?&#xA;I think there is a big difference between an &quot;engine&quot;, and an &quot;engine&quot;. You should rather specify that, one should start writing small games from ground up using basic libraries, such as DX, OpenGL or SDL/SFML, then refactor them to form kind of an engine.&#xA;I think the &quot;from a bunch of small games&quot; to a &quot;low-level game engine&quot; approach is more worth than instantly writing an engine." CreationDate="2011-03-08T10:19:59.280" UserId="2063" />
  <row Id="12614" PostId="9471" Text="What if it isn't? ::- D. Maybe in the future I will change this.... Anyway: I found how he calculated them: target.vx = Target.SPEED * Math.cos(theta); where theta is the angle of the target (I think)." CreationDate="2011-03-08T11:13:21.727" UserId="3548" />
  <row Id="12615" PostId="9442" Score="1" Text="Thanks for pointing me out what works. This is a good start for improvement and new learnings as well, now that I may understand what works better in the other solution, I shall take an eye out to it. Thanks for your kind recognition of my efforts. At least, it helped a bit! =)" CreationDate="2011-03-08T11:13:39.027" UserId="2778" />
  <row Id="12616" PostId="9480" Text="@Blecki: +1 for mentionning this. @Andre Russel: Pretty mice article you got there! Thanks for sharing! =)" CreationDate="2011-03-08T11:16:37.713" UserId="2778" />
  <row Id="12617" PostId="9442" Text="Thank you for taking time to explain all that you did! ::- D. Also, I found a nice sample by navigating from Richard Fabian's link: it's a Flash sample with working code from that example. Beware, it may load slow / require a refresh and some patience: http://www.swfcabin.com/open/1271284059 this proves that code works at least ::- D. I was a bit unsure how to break the movement vector in X/Y but I am clear with that as well now (target.vx = Target.SPEED * Math.cos(theta); where theta is the angle in which the enemy is traveling)." CreationDate="2011-03-08T12:11:35.843" UserId="3548" />
  <row Id="12619" PostId="9455" Text="Looks like both books are from the same author (Michael Dawson) so most likely the 'Through' version is just updated and renamed Beginning C++ Game Programming, perhaps to target more C++ programmers who aren't yet game developers, or budding game developers who need to learn C++." CreationDate="2011-03-08T13:30:06.440" UserId="189" />
  <row Id="12620" PostId="9470" Text="@Bumm I could see the NPR example being pulled off without post processing, but I can't see how the Bloom/Watercolor style of Okami could be pulled off with just material shaders. " CreationDate="2011-03-08T14:15:56.967" UserId="14" />
  <row Id="12621" PostId="9464" Text="Kodu is a lot of fun! The best thing about Kodu is that it gives you a limited selection of things to use (a few characters with unique characteristics, apples, missiles,...) so you're not overwhelmed by a blank canvas, but you have to be creative in putting the things together and making something neat. It reminds me of game designer exercises - e.g. given a deck of cards and some dice, make a game. Also, programming the game is very easy and visual, so you can do it with the Xbox 360 controller without a problem and it's very easy but also completely powerful. I recommend the Xbox version." CreationDate="2011-03-08T14:33:14.253" UserId="189" />
  <row Id="12622" PostId="9444" Text="@humbleBee: you're right" CreationDate="2011-03-08T14:59:23.240" UserId="5899" />
  <row Id="12623" PostId="9495" Score="2" Text="Are you talking about memory requirements (RAM) or content size/bandwidth?" CreationDate="2011-03-08T16:05:49.667" UserId="20" />
  <row Id="12624" PostId="9496" Text="I assumed Memory requirements, not content on disk/bandwidth." CreationDate="2011-03-08T16:06:26.233" UserId="1198" />
  <row Id="12625" PostId="9497" Text="I assumed content on disk/bandwidth-overall size of the project" CreationDate="2011-03-08T16:14:22.310" UserId="2301" />
  <row Id="12626" PostId="9495" Text="I suggest you change the title to reflect the actual question, i.e. &quot;How much memory usage is too much?&quot;" CreationDate="2011-03-08T16:26:28.790" UserId="284" />
  <row Id="12627" PostId="9271" Text="You may develop on a PC, often using &quot;industry standard&quot; tools (Visual Studio or gcc, et cetera). But you will need specialized development hardware to run and test your developed code on an &quot;actual console.&quot; This is not terribly unheard of, almost any industry that involves writing code for specialized hardware will have you following a similar pattern. For some smaller, less powerful devices (handhelds, phones, blenders) you may have device emulators available. " CreationDate="2011-03-08T16:39:04.037" UserId="1430" />
  <row Id="12628" PostId="8133" Text="@daemonfire300 I'm not talking about &quot;tree gen&quot;. I'm talking about &quot;tree render&quot;. Extending Unity3D's rendering system is only possible in Pro version, and even then it's not that extensible." CreationDate="2011-03-08T16:39:49.947" UserId="2710" />
  <row Id="12629" PostId="8133" Text="@daemonfire300 Also, GUI. Making any complex GUI with Unity pretty much requires you to use some sane wrapper library or write one yourself. And that doesn't help rendering speed, which is not stellar to begin with." CreationDate="2011-03-08T16:42:14.050" UserId="2710" />
  <row Id="12630" PostId="9495" Text="Sory, my bad. Im talking about RAM memory usage. And, I think I cant change the title of the question." CreationDate="2011-03-08T17:42:31.807" UserId="5091" />
  <row Id="12631" PostId="9496" Text="I see. Anw, looking at &quot;big&quot; games at, for example, Kongregate.com, they all are above ~50 mbs." CreationDate="2011-03-08T17:43:49.670" UserId="5091" />
  <row Id="12632" PostId="9495" Text="I've clarified the title as part of an edit." CreationDate="2011-03-08T17:52:57.313" UserId="953" />
  <row Id="12633" PostId="9497" Text="Sory, I wasn't clear, I was talking about ram memory usage." CreationDate="2011-03-08T18:06:27.050" UserId="5091" />
  <row Id="12634" PostId="3362" Text="You get diamonds instead of squares, but that should be fairly easy to make a transform for to correct it. No poles guaranteed." CreationDate="2011-03-08T18:13:52.033" UserId="5259" />
  <row Id="12635" PostId="9480" Text="Good point to mention, and I assume this means all the functions and classes within Input.Touch are now meaningless after compiling, but that doesn't change the fact that adding a reference did make it compile (my original question). For now accepted, but I'd like to see it mentioned that adding a reference makes it compile." CreationDate="2011-03-08T19:19:53.350" UserId="5855" />
  <row Id="12636" PostId="9496" Text="If you're talking about MB, you shouldn't write *mbs* as it stands for something quite different." CreationDate="2011-03-08T20:14:06.473" UserId="20" />
  <row Id="12637" PostId="9503" Text="actually I'd like my iOS devices to host the games too. and I can go for lidgren, but I was looking for something that was natively supported bo Cocoa/CocoaTouch so that engineering effort is minimized, if I chose lidgren, I'll have to write the client API myself probably, I don't know if mono-touch would compile with objective-c. like I said, for game engine i'm planning to use cocos2d which is objective-c" CreationDate="2011-03-08T20:27:29.420" UserId="5958" />
  <row Id="12638" PostId="9499" Score="2" Text="Please post either here or Stack Overflow, but not both. http://meta.gamedev.stackexchange.com/questions/263/" CreationDate="2011-03-08T20:39:19.133" UserId="744" />
  <row Id="12639" PostId="9503" Text="I have not personally used MonoTouch so I can't speak to its ability to interact with Objective-C, but I've heard very good things about it." CreationDate="2011-03-08T21:12:17.297" UserId="1198" />
  <row Id="12640" PostId="9470" Text="I'm a total beginner in Unity and also in shading. After looking at the shading syntax, I'm not sure I understand how we can get the sketch look and feel. The sketchiness of the lines need to be in the model or texture right?" CreationDate="2011-03-08T22:22:12.540" UserId="1812" />
  <row Id="12641" PostId="9134" Text="Might I suggest checking out [Xith3D](http://xith.org/)? It's a retained-mode scenegraph API, basically meaning that you don't have to get too close to the hardware and can instead focus on object behavior. It's got a friendly community, good documentation, and inside of an afternoon you can be writing a nontrivial application." CreationDate="2011-03-08T22:41:47.923" UserId="5259" />
  <row Id="12643" PostId="9480" Text="@Andrew Russell : Thanks for digging that up. I know I'd seen it somewhere. It makes my own experience seem even more strange, though." CreationDate="2011-03-08T23:17:54.433" UserId="3990" />
  <row Id="12644" PostId="9508" Score="2" Text="+1 Interesting question for one who is just a beginner in game development (me). =)" CreationDate="2011-03-08T23:58:11.420" UserId="2778" />
  <row Id="12645" PostId="9509" Score="3" Text="I think he is likely looking for a recording/playback mechanism to accomplish this. Deterministic game environment, tracking events that change things (Player input for example) and the like are usually the recommended ways to do this." CreationDate="2011-03-09T00:47:45.493" UserId="4443" />
  <row Id="12646" PostId="9509" Text="Thanks for your input James! These are stuff which I don't know about, though my answer is also a easily done approach, humbly. However, I'm interested to learn more on the topic. Oh and, +1 for your comment, this teaches me that there are other doable approach. =) Thanks! =)" CreationDate="2011-03-09T00:56:45.667" UserId="2778" />
  <row Id="12647" PostId="9509" Text="thanks to both for your info, I can't really reply with proper " CreationDate="2011-03-09T01:12:10.310" UserId="5965" />
  <row Id="12648" PostId="9509" Text="thanks to both for your info, I can't really reply with proper" CreationDate="2011-03-09T01:13:41.773" UserId="5965" />
  <row Id="12649" PostId="9509" Text="i'm really sorry for this goof-up i'm still learning the basics thanks to both for your info, I can't really reply with proper knowledge because i don't possess any. what i want to accomplish is each time that i try to beat my personal high score that i see on the screen a ghost(replay) of how i played the game when i set my high score " CreationDate="2011-03-09T01:23:04.040" UserId="5965" />
  <row Id="12650" PostId="9512" Score="1" Text="Awesome! That makes a lot of sense when you think about it. Thanks for the answer!" CreationDate="2011-03-09T01:25:52.943" UserId="5624" />
  <row Id="12651" PostId="9509" Text="@Will you are telling him information on what would could be done for a multiplayer setup, once he has actually figure out the answer to his question about a single player game. His question is how to create the ghost in the first place. " CreationDate="2011-03-09T02:44:06.377" UserId="962" />
  <row Id="12652" PostId="9484" Text="Thanks for the correction. One thing I don't understand is that s = ut + 0.5at^2. Where does the `0.5` aspect go in your code? (Not saying it's wrong, just wondering). (edit: I'll upvote when I have enough points)" CreationDate="2011-03-09T04:02:16.083" UserId="5929" />
  <row Id="12653" PostId="9518" Text="In the example you give, 50 milliseconds is the time for each frame, correct? And that was calculated by 1000/FPS? And so the movement you need to make each frame is pixels per second * 50/1000?" CreationDate="2011-03-09T04:24:28.560" UserId="2029" />
  <row Id="12654" PostId="9518" Text="hm, I realized though that the milliseconds for each time frame would probably be variable, wouldn't it? Something like getTicks()-startTicks would always be different and not constant." CreationDate="2011-03-09T05:20:41.813" UserId="2029" />
  <row Id="12655" PostId="9518" Text="@Omnion: If you specify distance in &quot;pixels per second&quot; you can't use milliseconds... it should be 1.0/60.0 not 1000/60 which would result in something entirely different." CreationDate="2011-03-09T07:36:22.593" UserId="20" />
  <row Id="12656" PostId="9518" Text="@ShrimpCrackers yes, the elapsed time changes. Imagine an older PC that isn't capable of rendering 60 fps. You still want the game to run at the same speed (but not the same fps) on such a machine." CreationDate="2011-03-09T07:48:54.187" UserId="20" />
  <row Id="12657" PostId="9513" Score="3" Text="+1. I think the fact that a triangle is always planar is one of the main reasons. Non-planar polygons make stuff much more complicated." CreationDate="2011-03-09T08:11:11.300" UserId="20" />
  <row Id="12658" PostId="9518" Text="so, then in the lazyfoo tutorial, what does the 1000 mean in deltaticks/1000.f? FPS? 1000 milliseconds? I'm a bit confused right now. It seems that FPS is necessary in determining the time required for each frame, but that it doesn't actually calculate into the movement." CreationDate="2011-03-09T08:15:54.653" UserId="2029" />
  <row Id="12659" PostId="4373" Text="Thanks for this! I'm really enjoying this paper!" CreationDate="2011-03-09T08:21:37.420" UserId="5740" />
  <row Id="12660" PostId="9522" Score="1" Text="In fact 4 random points are more likely to be **not** on a plane so you'll have to triangulate anyway." CreationDate="2011-03-09T08:39:54.330" UserId="382" />
  <row Id="12661" PostId="9510" Text="Hey Thanks. That confirms what I was trying today. I started to offset the rotation by an increment based on what frame the animation is on as well as finding the center for that frame by the frames width and height divided by two.  Still didn't get it quite right though.  I did notice some fuzzy and jagged edges being created when rotating as well. I'll take your advice it is much appreciated and exactly what I was looking for." CreationDate="2011-03-09T09:08:15.447" UserId="5919" />
  <row Id="12663" PostId="1650" Score="1" Text="Well, if you have a O(V+E) algorithm, I'm really interested! &#xD;&#xA;Could you post it here? &#xD;&#xA;" CreationDate="2011-03-09T09:22:33.407" UserId="5974" />
  <row Id="12664" PostId="9518" Text="@ShrimpCrackers in the tutorial he divides `deltaTicks` (the time in milliseconds elapsed since the last update) by `1000.0` which gives him the time elapsed in seconds. He can then use the time elapsed in seconds to calculate the amount of motion for that update..." CreationDate="2011-03-09T09:45:25.883" UserId="20" />
  <row Id="12665" PostId="9521" Text="Be careful: slopes depend too much on the orientation. This will behave inconsistently with similar horizontal and vertical gestures." CreationDate="2011-03-09T10:08:00.497" UserId="5864" />
  <row Id="12666" PostId="9499" Text="the guys at stackoverflow had asked me to post here, hence this post. I had no intentions to post twice." CreationDate="2011-03-09T10:16:25.610" UserId="5958" />
  <row Id="12667" PostId="9529" Text="So to clarify from what has been said by both yourself and Sam, there are not many options left in the low level. I am probably best to begin moving up to another level (ie past the 'rendering' and 'vbo' abstraction, to mesh level optimisations (frustum culling, edge collapses, LODs etc)." CreationDate="2011-03-09T10:21:09.847" UserId="4513" />
  <row Id="12668" PostId="9506" Text="I think that's quite doable from where we are now. " CreationDate="2011-03-09T10:30:21.163" UserId="5959" />
  <row Id="12669" PostId="9529" Text="yes that what I meant" CreationDate="2011-03-09T10:53:30.167" UserId="5440" />
  <row Id="12670" PostId="9529" Text="I'd say there are not many *obvious* options left in the low level. Only profiling will tell. You could be shader instruction bound, texture lookup bound, fill rate bound..." CreationDate="2011-03-09T10:55:14.683" UserId="5864" />
  <row Id="12672" PostId="9529" Text="Granted, I meant obvious. " CreationDate="2011-03-09T11:19:28.293" UserId="4513" />
  <row Id="12673" PostId="9527" Text="Can you edit pixel shader of that effect?" CreationDate="2011-03-09T11:46:27.370" UserId="3794" />
  <row Id="12674" PostId="9518" Text="@Omnion 50 &lt;del&gt;seconds&lt;/del&gt; milliseconds apart from each other" CreationDate="2011-03-09T12:16:56.953" UserId="202" />
  <row Id="12675" PostId="9534" Text="This is true. But you did not answer the question. He is asking for the skinned effect in the xna where is propably problem that you don't have access to pixel shader so you cannot do depth render" CreationDate="2011-03-09T12:58:25.060" UserId="3794" />
  <row Id="12676" PostId="9534" Text="Sorry, I can only comment what on what I know. I have never had any need to do XNA programming I've assumed that you can create HLSL shaders in there. I know Direct3D and I know about shadows." CreationDate="2011-03-09T13:04:17.400" UserId="5957" />
  <row Id="12677" PostId="9534" Text="Yeah. Also welcome to GDSE :). Your answer is nice, but it is better to double check if you are answering correctly. XNA is build over directx (so hlsl is its shading language), but there are also some fixed-pipeline-like objects/shaders and i'm 99% sure that skinned effect is one of them. " CreationDate="2011-03-09T13:08:14.787" UserId="3794" />
  <row Id="12678" PostId="9534" Text="Ah, I assumed right: &lt;http://xnaessentials.com/tutorials/hlsl-basics.aspx&gt;. If you can't change the skinned effect to add shadow map support, I'd write a new one that you can change. " CreationDate="2011-03-09T13:09:19.357" UserId="5957" />
  <row Id="12679" PostId="6909" Text="libgdx and AndEngine are best for 2d, here you can find some more [link](http://privateasteroid.com/2010/07/19/android-open-source-game-engines/)" CreationDate="2011-03-09T13:21:17.427" UserId="3885" />
  <row Id="12680" PostId="9534" Text="i would write one but i followed a tutorial to add my skinned model ( that comes with an animation ) and in this predefined SkinnedEffect ( that was introduced in the tutorial ) i have a function SetBoneTransforms that takes as an argument a matrix [] that represent my skin transforms . if i'd define my custom effect, i wouldn't know what to do with this setBoneTransforms ( I am new to skinned models and am not quite good at it )" CreationDate="2011-03-09T13:27:48.273" UserId="5378" />
  <row Id="12681" PostId="9534" Text="is there suport in XNA for multiple effects ? ( so that i can implement a separate effect that contains my shadow )" CreationDate="2011-03-09T13:29:08.193" UserId="5378" />
  <row Id="12682" PostId="9534" Text="Without knowing how they implements the skinned effect it's difficult to say. Mesh skinning is usually done in the vertex shader whilst shadow mapping can be implemented just in the pixel shader - you may be able to mix and match but this is one of those examples where it's best to either get a complete rendering solution or do it yourself. It's easier to code your own with an already working example to use as a reference for what you want your code to do - it might be educational to code your own skinned mesh shaders." CreationDate="2011-03-09T13:54:54.853" UserId="5957" />
  <row Id="12683" PostId="9534" Text="@notabene: thank you :)" CreationDate="2011-03-09T13:58:13.967" UserId="5957" />
  <row Id="12684" PostId="9509" Text="@AttackingHobo: Thanks for telling me. I actually have figured out from James comment about the recording thing, then having read wkerslake's answer, I now better understand what's being asked by the OP. Aside, you're right when saying that my proposed setup is more likely to be used in a multiplayer setup. Hey, I'm still learning here, and thanks for allowing to grow better! Game Development is still a new trick for me though I am an experienced developer. =) Thanks for your comment AttackingHobo! =)" CreationDate="2011-03-09T14:24:47.093" UserId="2778" />
  <row Id="12685" PostId="9496" Text="Then, what means mbs?" CreationDate="2011-03-09T14:26:35.840" UserId="5091" />
  <row Id="12686" PostId="9504" Text="Wow... ~1GB... just.. wow.&#xA;&#xA;I guess then, ~150 is not that much. And, no, I dont have any leaks, already made my own garbage collector." CreationDate="2011-03-09T14:30:24.450" UserId="5091" />
  <row Id="12687" PostId="9531" Text="Is the value of `M_PI` just `Pi` (but truncated for efficiency)? " CreationDate="2011-03-09T14:36:35.583" UserId="5929" />
  <row Id="12688" PostId="9531" Score="1" Text="Yes, `M_PI` is how `&lt;math.h&gt;` or `&lt;cmath&gt;` define Pi. For some reason on Windows you need to `#define _USE_MATH_DEFINES` in order to make it available. Note that there is also `M_1_PI` that conveniently defines `1/Pi`." CreationDate="2011-03-09T14:44:01.740" UserId="5864" />
  <row Id="12689" PostId="9531" Text="Cool, thanks a lot for your answer!" CreationDate="2011-03-09T14:51:00.907" UserId="5929" />
  <row Id="12690" PostId="9523" Text="looks pretty awesome +1" CreationDate="2011-03-09T15:00:18.357" UserId="4638" />
  <row Id="12691" PostId="9547" Text="This question is fairly broad and there are duplicates for the different types of assets (2D/3D) that you could be looking for. So that I can post the correct one please be more specific about what you are looking for." CreationDate="2011-03-09T15:02:05.517" UserId="14" />
  <row Id="12692" PostId="9548" Text="Welcome to the Game Development Stack exchange. This is a Q&amp;A site, not so much a discussion forum or a voting platform, but you are welcome to discuss this in our chatroom. http://chat.stackexchange.com/rooms/19" CreationDate="2011-03-09T15:04:08.087" UserId="14" />
  <row Id="12693" PostId="9547" Score="1" Text="See also: **[What are good sites that provide free media resources for hobby game development?](http://gamedev.stackexchange.com/questions/7392/what-are-good-sites-that-provide-free-media-resources-for-hobby-game-development)**" CreationDate="2011-03-09T15:08:08.230" UserId="14" />
  <row Id="12694" PostId="9547" Text="thanks I didnt spot that when I searched." CreationDate="2011-03-09T15:15:29.580" UserId="5983" />
  <row Id="12695" PostId="9547" Text="Yep, no problem. Took me a moment to track the right ones down also." CreationDate="2011-03-09T15:22:44.877" UserId="14" />
  <row Id="12696" PostId="9511" Text="Somewhat related, The NVidia NV1 used quadtratic texture mapping (which uses quads), instead of triangles/polygons. It was not big hit, to say the least. See http://en.wikipedia.org/wiki/NV1. " CreationDate="2011-03-09T15:23:42.603" UserId="3289" />
  <row Id="12697" PostId="9496" Score="1" Text="I'm associating *mbs* with *megabit per second*, although you'd probably write it as mb/s or mbps. Usually a capital &quot;B&quot; stands for *Byte*, whereas a &quot;b&quot; stands for *bit*" CreationDate="2011-03-09T15:31:20.613" UserId="20" />
  <row Id="12698" PostId="9530" Text="thanks, that makes sense. I have an another question above." CreationDate="2011-03-09T15:35:53.140" UserId="2029" />
  <row Id="12699" PostId="9515" Text="Your addition is actually another question. You should make it a second question instead of adding it to your existing one. It can be answered easily though: Just calculate the y-movement, eg. `yMovement = (yVel * (SDL_GetTicks() - startTicks)/1000.f);` then do:&#xA;`if(y + yMovement &lt;= 580){ y += yMovement; } else { y = 580; }`" CreationDate="2011-03-09T15:40:12.717" UserId="20" />
  <row Id="12700" PostId="9515" Text="thanks bummzack." CreationDate="2011-03-09T15:56:56.510" UserId="2029" />
  <row Id="12701" PostId="9511" Score="1" Text="@Macke: Quadratic as in &quot;quadratic equation&quot;, not quadratic as in &quot;quadrilateral&quot;. It doesn't use quads but rather a quadratic curve defined by 9 points. http://stason.org/TULARC/pc/3d-graphics-cards-faq/NVIDIA01_Diamond_Edge_3D_Accelerators.html" CreationDate="2011-03-09T16:49:13.040" UserId="744" />
  <row Id="12702" PostId="9510" Text="Glad to help. If you would not mind marking this as the answer I would also appreciate that :)" CreationDate="2011-03-09T16:50:32.357" UserId="4443" />
  <row Id="12703" PostId="9289" Text="+1 for this great explenation" CreationDate="2011-03-09T17:28:28.270" UserId="4788" />
  <row Id="12704" PostId="9540" Text="is this a graphics questions? not sure what you're really looking for." CreationDate="2011-03-09T18:04:55.377" UserId="891" />
  <row Id="12705" PostId="9542" Text="I am not looking for curve types, but a way to draw a path , which can be exported and then used by a cocos2d function to move a sprite along the path. " CreationDate="2011-03-09T18:25:54.637" UserId="5976" />
  <row Id="12706" PostId="7365" Score="1" Text="I can tell English is not your first language, but you need to be much more specific." CreationDate="2011-03-09T18:30:28.143" UserId="1156" />
  <row Id="12707" PostId="9508" Text="If you would tell us what kind of game it is, we could help you more specifically." CreationDate="2011-03-09T19:02:07.480" UserId="962" />
  <row Id="12709" PostId="9557" Text="@Adam, what is your target platform?" CreationDate="2011-03-09T21:09:07.490" UserId="962" />
  <row Id="12711" PostId="9557" Text="@AttackingHobo - It's a PC game. I'm developing it using a Windows computer and it would be ideal to be able to use my Macbook from time to time if possible." CreationDate="2011-03-09T21:14:41.293" UserId="5380" />
  <row Id="12712" PostId="9557" Score="1" Text="I would choose Unity over Torque any day for anything, since the useful 95% of Unity is free." CreationDate="2011-03-09T21:15:30.693" UserId="1156" />
  <row Id="12713" PostId="9557" Text="@AttackingHobo - We're also thinking about eventually having it on iPad/iPhone but that's down the line." CreationDate="2011-03-09T21:15:52.043" UserId="5380" />
  <row Id="12714" PostId="9557" Text="@TheCommunistDuck - Thanks!" CreationDate="2011-03-09T21:16:35.630" UserId="5380" />
  <row Id="12715" PostId="9557" Text="@TheCommunistDuck - Is Unity better than Unreal? I'm assuming Unity is good with straight up 2D then, right?" CreationDate="2011-03-09T21:17:40.793" UserId="5380" />
  <row Id="12716" PostId="9557" Text="Unity vs Unreal..I have no idea, it's a matter of choice. I prefer Unity personally. And to be good with 'straight up 2D', you just set everything to have a Z of 0. Problem solved." CreationDate="2011-03-09T21:20:12.497" UserId="1156" />
  <row Id="12717" PostId="9558" Text="**TL;DR** No; developing 2D stuff is better for 2D than developing 3D stuff.  :P" CreationDate="2011-03-09T21:29:59.930" UserId="3325" />
  <row Id="12718" PostId="9558" Score="1" Text="Thanks! Do you know if it's common for 3D engines to be able to import sprites from Photoshop" CreationDate="2011-03-09T21:30:14.760" UserId="5380" />
  <row Id="12719" PostId="9558" Text="I would say an engine would be poor if it didn't have image loading capabilities." CreationDate="2011-03-09T21:31:35.653" UserId="1156" />
  <row Id="12720" PostId="9540" Text="Dont care about graphics, I'm making a simple Java web based game (using JSP / JSTL etc). I'm looking for a library or something I can use to handle maps, i.e., where players are on a map, where towns are, where people can travel to etc." CreationDate="2011-03-09T21:33:08.460" UserId="2214" />
  <row Id="12721" PostId="9558" Text="Ok cool. I'm new so I wasn't sure if you needed special software for creating the sprites. So Photoshop should work then." CreationDate="2011-03-09T21:33:11.043" UserId="5380" />
  <row Id="12722" PostId="9558" Score="1" Text="@Adam: Unity supports full .psd import, and offers instant use.&#xA;" CreationDate="2011-03-09T21:48:06.577" UserId="2063" />
  <row Id="12723" PostId="9558" Text="@daemonfire300 - Thanks! I think Unity is starting to sound the best. Just saw this regarding psd imports: http://unity3d.com/unity/features/asset-importing GREAT!" CreationDate="2011-03-09T21:51:57.827" UserId="5380" />
  <row Id="12724" PostId="9558" Text="@Adam: But be aware of the fact, that unity is mainly used to create 3D games. You'll have some work to get things &quot;acting 2D&quot; in 3D space." CreationDate="2011-03-09T21:54:33.357" UserId="2063" />
  <row Id="12725" PostId="9561" Text="I have already ensured that my SVG is only using whole numbers. I will look into the offsetting right now." CreationDate="2011-03-09T22:13:30.800" UserId="2971" />
  <row Id="12726" PostId="9558" Text="@Adam, if you want to use Unity, somebody has already written some middleware to do the sprite batching/atlasing for you.  http://www.anbsoft.com/middleware/sm2/" CreationDate="2011-03-09T22:16:53.870" UserId="51" />
  <row Id="12727" PostId="9542" Text="A path is just a series of control points. With the functions provided in the links you can easily draw a path and/or make a sprite move along this path. If don't think there's anything like in flash for cocos2d (where you directly paint a path and your movieclip follows that)." CreationDate="2011-03-09T22:28:14.747" UserId="20" />
  <row Id="12728" PostId="9558" Text="@Tetrad - Sweet! Thanks. Have you used it? Have you heard good/bad things about it?" CreationDate="2011-03-09T22:29:03.530" UserId="5380" />
  <row Id="12729" PostId="9563" Text="Are you talking about 2D or 3D or both?" CreationDate="2011-03-09T23:13:08.667" UserId="1198" />
  <row Id="12730" PostId="9563" Text="I would like to know about 2d implementation" CreationDate="2011-03-09T23:21:46.957" UserId="5266" />
  <row Id="12731" PostId="9556" Text="Yes, i'm using Canvas. Basically you approve my strategy, so my thoughts are in a good direction for what i see. Regarding drawing only the modified part, i think there is no other way but to redraw the entire canvas (which in my interface i'm using several layers). Thanks!" CreationDate="2011-03-10T01:06:17.840" UserId="4419" />
  <row Id="12732" PostId="9484" Text="My code isn't using that formula. The time 't' in s=ut+0.5at^2 is the total time since the projectile launched, not the elapsed time. Similarly the 'u' is the initial velocity, not the current velocity. My code is doing Euler integration, using the elapsed time since the last frame. First it integrates the current velocity with v += a*t, then it integrates the position with p += v*t." CreationDate="2011-03-10T01:49:31.983" UserId="322" />
  <row Id="12733" PostId="9566" Text="Sorry, I couldn't post every URL as link because I don't have enough reputation to post more than 2 direct links. " CreationDate="2011-03-10T01:56:36.723" UserId="5711" />
  <row Id="12734" PostId="9518" Text="Sorry for the misspellings. I feel like my answer is just a long ramble... Maybe it should be revised, but I tried to explain it numerous times (hoping something would stick). I meant to use floats, sorry about that." CreationDate="2011-03-10T02:01:35.567" UserId="3547" />
  <row Id="12735" PostId="9558" Score="3" Text="Hardware accelerated doesn't always mean 2d via ortographic projection of 3d. You can implement it like that if your game is just sprites, but there are lots of things you can only do with native 2d acceleration that you can't with 3d, such as vector graphics, geometry operations (union, intersect, etc), subpixel font rendering, and many others. For a modern API, check Direct2D." CreationDate="2011-03-10T02:08:26.103" />
  <row Id="12736" PostId="8506" Text="Oops I meant we knew Java the best." CreationDate="2011-03-10T03:28:06.627" UserId="5413" />
  <row Id="12737" PostId="8491" Text="We choose C#. After having a ridiculous time with Java Guis." CreationDate="2011-03-10T03:29:02.433" UserId="5413" />
  <row Id="12738" PostId="9568" Score="1" Text="Thanks. I still have an issue understanding how to connect the back image which should appear to scroll, the users position(does it increase as the user moves up the screen) and the data structure. I get that the data structure is checked to find the relevant data for the player object. Im just not sure how to manage the player objects positions in a screen of nothingness. If there is a tilemap, there is something to work against. How are the positions of the player managed for just a screen? " CreationDate="2011-03-10T03:49:32.810" UserId="5266" />
  <row Id="12739" PostId="9564" Text="can you elaborate on the shape of your graph (perhaps a sketch). If the change in Y is steady, you will most likely be fine with simple Euler integration. It is when the change in Y is fluid and you need accuracy that you consider alternatives." CreationDate="2011-03-10T04:04:35.387" UserId="1923" />
  <row Id="12740" PostId="9568" Score="1" Text="@alJaree In my opinion, the easiest way to keep your sanity with this kind of problem is to completely separate your world logic, including collisions, from the display code. So, for your game, your player's position is an x,y pair (in world coordinates), and your space is a binary array the size of your entire world divided by the size of a single tile. Then, for drawing, a simple way is to keep your player in the center, so you simply draw from the player's location minus half the width of the screen for the x coordinate and half the height for the y coordinate." CreationDate="2011-03-10T04:11:46.420" />
  <row Id="12741" PostId="9566" Score="1" Text="I may not have an answer for you, but I'd definitely like to see where this goes. Awesome concept!" CreationDate="2011-03-10T05:15:18.680" UserId="6006" />
  <row Id="12742" PostId="9567" Text="How exactly are vector graphics and solid color, linear, radial brushes nonexistent concepts in 3D?" CreationDate="2011-03-10T07:42:57.217" UserId="5663" />
  <row Id="12743" PostId="9518" Text="@Omnion you were still proposing to multiply the speed per second (100 pixels) by the time elapsed in milliseconds (1000/60) which doesn't work. If you use 1000/60, that is not seconds, but milliseconds. Therefore your speed should be defined in pixels per millisecond, not seconds! I edited your post. Feel free to roll back if you disagree with my edits." CreationDate="2011-03-10T08:02:59.953" UserId="20" />
  <row Id="12744" PostId="9567" Text="@Dyppl OK, vector graphics do have their equivalence in 3D, which is procedural model generation. But as far as I know, it's not as widespread and usable in the design world as vector graphics are. But brushes and general painting are concepts that as far as I know can only apply to flat surfaces. I still haven't seen raster art on the actual voxels of a 3-dimensional space, and I don't really see much use for it." CreationDate="2011-03-10T08:16:55.430" />
  <row Id="12745" PostId="9567" Text="Bump mapping is fairly equivalent to 3D raster art, three dimensional textures can also utilize brush / painting concepts." CreationDate="2011-03-10T09:08:48.287" UserId="5554" />
  <row Id="12746" PostId="9556" Text="@gabriel-a-zorrilla you can do partial updates using getImageData() and then putImageData() later to restore it http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#dom-context-2d-getimagedata" CreationDate="2011-03-10T09:28:43.477" UserId="4129" />
  <row Id="12747" PostId="9567" Text="I can't believe I got carried by the first comment and forgot what my original point was. I'm not trying to say that there are no 3D equivalences for these 2D features, but that a 3D engine is by far not the best tool to do these things in 2D. For example, drawing a 2D spline with a 3D engine would involve the procedural generation of a large list of triangles which when seen from afar look like a pixelwide spline, while a 2D engine readily does it for you. Technically you can do anything by making a mesh with one quad per pixel, or you could just use a 2D engine." CreationDate="2011-03-10T09:53:09.817" />
  <row Id="12748" PostId="9566" Text="Great question, I've been interested in L-Systems for a while but haven't done anything with that interest :)" CreationDate="2011-03-10T11:58:38.447" UserId="5957" />
  <row Id="12749" PostId="9575" Text="There are a number of hacks published, but frankly I have not checked each one and seen the limitations of each one. Wanted to get the clarity on the marketplace regulations before spending time on those. " CreationDate="2011-03-10T12:57:19.163" UserId="6009" />
  <row Id="12750" PostId="9518" Text="Sorry, I didn't see that. Thanks, that's what I meant to write." CreationDate="2011-03-10T14:23:25.470" UserId="3547" />
  <row Id="12751" PostId="9572" Text="I'd by that game just to play with L-Systems in a social/competitive way." CreationDate="2011-03-10T15:44:47.857" UserId="370" />
  <row Id="12752" PostId="9484" Text="Oh I see, thanks!" CreationDate="2011-03-10T16:09:24.810" UserId="5929" />
  <row Id="12753" PostId="8411" Text="The graphic can be changed at runtime using a variable. You do not need to create 20 movie clips. Use only one movie clip. As I wrote earlier you can create multiple animations in the same clip too. The animation you run (i.e. start frame to end frame) and the graphic you display can be set by variables. " CreationDate="2011-03-10T16:40:04.627" UserId="5797" />
  <row Id="12754" PostId="9580" Text="I think that drawing stuff from back to front is easy in a 2D iso game only when you have a fixed Y plane, and the designer is in full control of the world. However, when stuff can exist anywhere in 3D space, and you allow the user to change stuff, it becomes more complicated. I think using the depth buffer will make my life a lot easier." CreationDate="2011-03-10T16:50:46.037" UserId="4104" />
  <row Id="12755" PostId="8506" Text="Have you thought of a point Java might fall down on?" CreationDate="2011-03-10T16:51:31.023" UserId="1156" />
  <row Id="12756" PostId="9581" Text="I don't know too much about licenses..but how is the developer tied to anything? And you don't need to pay, only if you develop the project commercially. " CreationDate="2011-03-10T18:26:16.340" UserId="1156" />
  <row Id="12757" PostId="9570" Text="Yann, thanks for posting this link, it's helpful." CreationDate="2011-03-10T18:26:38.960" UserId="5711" />
  <row Id="12758" PostId="9581" Text="I suspect the OP means the developer &quot;using the engine&quot; not the developer &quot;of the engine.&quot;" CreationDate="2011-03-10T18:30:59.520" UserId="1198" />
  <row Id="12759" PostId="9572" Text="and thanks for embedding urls. :)" CreationDate="2011-03-10T18:34:22.340" UserId="5711" />
  <row Id="12760" PostId="9572" Text="@bummzack Thanks for pointing me to gamedev thread.. Nice ideas, tamagotchi and goo-tower.. mobile application would be really cool. found a 3DS Max plugin video -- which is quite awesome [link](http://www.youtube.com/watch?v=9N0N6hxqOUQ).." CreationDate="2011-03-10T18:42:59.960" UserId="5711" />
  <row Id="12761" PostId="9581" Text="Even so. I don't get it." CreationDate="2011-03-10T18:45:01.317" UserId="1156" />
  <row Id="12762" PostId="9581" Score="3" Text="@TheC I'm assuming here, but I think he wants to make something commercial but he doesn't want to have to pay Epic in the end. Unfortunately, (going out on a limb) there is nothing at the quality of the UDK that is free, open source, and not under the GPL. In general, when people make work that useful, they usually want money, credit, or both. Creating a usable and useful game engine is **not** a trivial task." CreationDate="2011-03-10T19:28:16.113" UserId="14" />
  <row Id="12763" PostId="9590" Score="1" Text="The question &quot;How is load balancing achieved in MMOs?&quot; may be interesting: http://gamedev.stackexchange.com/q/5956/450" CreationDate="2011-03-10T22:09:52.813" UserId="450" />
  <row Id="12764" PostId="5253" Text="Can someone update the list with the XNA version they support? From what I can tell, only SunBurn supports XNA 4 right now." CreationDate="2011-03-10T22:19:57.273" UserId="87" />
  <row Id="12765" PostId="9595" Text="I imagine some of your difficulty may be related to the WOTC patent on the core mechanics of most collectible card games." CreationDate="2011-03-10T22:51:07.763" UserId="14" />
  <row Id="12767" PostId="9104" Text="Finally, the type of answers I was looking for. Thank you!" CreationDate="2011-03-10T23:57:18.390" UserId="2734" />
  <row Id="12768" PostId="6557" Text="I had no intention to advertise SceneJS. In the time of writing this question, SceneJS was the only WebGL framework I had heard of, and I linked it just for the sake of example. " CreationDate="2011-03-11T00:04:33.033" UserId="2734" />
  <row Id="12769" PostId="9578" Score="1" Text="Just a comment to tell you that I have gone exactly the same way as you for my 2D engine: first trying to be clever and Z-sort tiles myself, then realising there was no reason the scene should be flat, thus giving my tiles a Z coordinate and activating alpha test. Not sure whether you’re right, but you’re not alone :-)" CreationDate="2011-03-11T00:51:31.303" UserId="5864" />
  <row Id="12770" PostId="9599" Text="5 years really?" CreationDate="2011-03-11T01:05:00.550" UserId="3794" />
  <row Id="12771" PostId="9598" Text="I should have added that I'm assuming the company is stable.  Turnover in companies causing a job change is another matter :)" CreationDate="2011-03-11T01:16:28.807" UserId="3830" />
  <row Id="12772" PostId="9595" Text="Noctrine: how do you reconcile that with not just the continuing plethora of CCGs to be released in physical form, but the swath of digital CCGs like Alteil?  I don't believe _all_ of them are licensing the WOTC patents..." CreationDate="2011-03-11T02:04:47.867" UserId="5708" />
  <row Id="12773" PostId="9568" Text="+1 for a thoughtful O() analysis" CreationDate="2011-03-11T02:48:16.347" UserId="4690" />
  <row Id="12774" PostId="9595" Text="@Steven, That is why I said most. I am sure most of them aren't licensing WOTC (either because they aren't infringing or they are to small for them to be bothered with) I just know that every time I have seen anything get reasonably popular in that space I hear about litigation from WOTC." CreationDate="2011-03-11T03:32:50.397" UserId="14" />
  <row Id="12775" PostId="9595" Text="@Steven, Ultimately though, it was wild guessing on my part. That's why I posted it as a comment and not an answer. " CreationDate="2011-03-11T03:34:24.127" UserId="14" />
  <row Id="12776" PostId="9607" Score="1" Text="I'm betting you could find the answer to that question anywhere. This may help, for instance http://gamedev.stackexchange.com/questions/7365/move-object-on-circle-in-cocos2d-game/7366#7366" CreationDate="2011-03-11T07:20:06.347" UserId="56" />
  <row Id="12777" PostId="6813" Text="Just before I make a mistake of this kind, just what is so awful about this question that it deserves downvotes?" CreationDate="2011-03-11T07:21:39.247" UserId="56" />
  <row Id="12778" PostId="9607" Text="ya thank you dude.. i got it..  +1 " CreationDate="2011-03-11T07:29:11.353" UserId="4432" />
  <row Id="12779" PostId="9610" Text="thanks dude this is the exact thing i want... +1" CreationDate="2011-03-11T07:37:57.573" UserId="4432" />
  <row Id="12780" PostId="9604" Text="There's a lot of luck involved.  Over 10 years in one job happens, but it's increasingly rare. But for people that started 15 years ago, they are likely to be in management/lead positions, or real specialists in their fields. Those people tend to be less at risk when the redundancies hit." CreationDate="2011-03-11T08:44:57.973" UserId="659" />
  <row Id="12781" PostId="9599" Text="I've heard 5 years quoted as an average games industry *career* length. Seems a bit high for a single job. I'd guesstimate that 2-3 years would be more common if you just looked at the last 5 years or so. Before that, things were a bit more stable, studios were more likely to work on multiple projects, so had a chance of surviving a cancelled project - unlike today's 'all eggs in one basket' situations" CreationDate="2011-03-11T08:47:15.070" UserId="659" />
  <row Id="12782" PostId="9598" Score="1" Text="There is no such thing as a stable games studio (with the only 2 exceptions being Blizzard and Valve, as they have massive non-conventional sources of income - WoW subs and Steam?).  Anyone else can go from a huge success to mass layoffs/studio closure within a year.  If you work for any of the big publishers, or even the first-parties, expect annual redundancies as they approach their year end!" CreationDate="2011-03-11T08:50:20.793" UserId="659" />
  <row Id="12783" PostId="9612" Text="Interesting question. Mods: Should probably be community-wiki?" CreationDate="2011-03-11T09:28:10.253" UserId="20" />
  <row Id="12784" PostId="9592" Text="Most of the time I see such a flag in the gameserver db and inside the loginserver db, so the login server can check against each other and if logindb!=gamerserverdb the user gets logged out." CreationDate="2011-03-11T09:29:10.127" UserId="2063" />
  <row Id="12785" PostId="6813" Text="@Kensai At a quick casual glance, it's both too localized (since he's asking for personalised advice) and too broad (since he's asking such a general question). It's the equivalent of asking &quot;where can i learn english?&quot; on english.SE, or &quot;how do I take a photograph?&quot; on photography.SE. SE sites are for specific questions, or occasionally general questions about a specific topic. Asking such a broad question about the entire scope of this site isn't such a good idea." CreationDate="2011-03-11T10:20:37.953" UserId="4462" />
  <row Id="12786" PostId="9613" Score="1" Text="That's pretty bad bro. Don't let the b@$7*£&quot;s grind you down." CreationDate="2011-03-11T11:21:49.963" UserId="5957" />
  <row Id="12787" PostId="9617" Text="Note that i'm not artist, but i discussed this for you with our lighting artist. " CreationDate="2011-03-11T11:30:42.373" UserId="3794" />
  <row Id="12788" PostId="9598" Text="Like the salary question, I am -1ing any personal anecdotes. This is an objective question with numerical answers; that you don't have the answer is not an excuse to commit statistical crimes." CreationDate="2011-03-11T11:46:58.323" UserId="744" />
  <row Id="12789" PostId="9598" Text="@Tim: If you want to ignore turnover from instability, you might want to ask about career length or total years in the industry, rather than job length." CreationDate="2011-03-11T11:48:10.257" UserId="744" />
  <row Id="12790" PostId="9623" Score="1" Text="The Multiverse servers are written in Java as far as remember, but it sounds like you already have a game. Still, there is a nice high level overview you can look at here:&#xA;http://update.multiverse.net/wiki/index.php/Multiverse_Platform_Architecture" CreationDate="2011-03-11T12:05:26.227" UserId="360" />
  <row Id="12791" PostId="9598" Score="1" Text="@Joe: How very generous of you. Surely that's your opinion which, too, is subjective. I'm +1 industry 'anecdotes' as I think they *are* relevant." CreationDate="2011-03-11T12:23:52.327" UserId="5957" />
  <row Id="12792" PostId="9598" Text="Unless your anecdote is about Tim, or a company Tim is working at, it's probably not relevant to his immediate concerns. Unless your anecdotes cover hundreds or thousands of samples, they are not statistically sound, and so not relevant to the general reader. Why do you think anecdotes are relevant?" CreationDate="2011-03-11T13:23:32.280" UserId="744" />
  <row Id="12793" PostId="9617" Text="Yes, I'm asking about lightning from an artistic viewpoint. The book that you make reference seems interesting. I'm very interested in the opinion of your lighting artist. Thanks." CreationDate="2011-03-11T14:15:19.970" UserId="5899" />
  <row Id="12794" PostId="9625" Text="This is a good book, but covers the technical aspects. I'm searching something to how achieve a certain style. For example, I was impressed with the image of GOW 3, because seems that was a beautiful moving picture. p.e: http://www.laps3.com/juegos/imagen-de-God-of-War-III-3232.jpg" CreationDate="2011-03-11T14:33:19.983" UserId="5899" />
  <row Id="12795" PostId="9598" Text="What are statistics on this type of thing? The sum and average of many people's &quot;anecdotes&quot;..." CreationDate="2011-03-11T15:39:17.883" UserId="1198" />
  <row Id="12796" PostId="9244" Text="Yay, 3000 rep. :)" CreationDate="2011-03-11T15:52:42.520" UserId="1156" />
  <row Id="12797" PostId="8136" Text="I'd agree that there is a lack of agreement which style of implementation is more advantageous than the next, but given the number of highly successful engines using component systems I'd hardly describe it as a &quot;Fad&quot;." CreationDate="2011-03-11T16:18:15.477" UserId="3676" />
  <row Id="12798" PostId="9629" Text="I have used sockets before, have used RMI, EJB and other communication ways, but the problem is not the basics of using it, it is how it SHOULD be used or why this or that way should be used." CreationDate="2011-03-11T16:48:29.570" UserId="4538" />
  <row Id="12799" PostId="9578" Text="Awesome, thanks for letting me know." CreationDate="2011-03-11T16:48:33.007" UserId="4104" />
  <row Id="12800" PostId="9598" Text="@Nate: Most countries and industries collect far more statistics about labor than will ever be useful. Certainly if we can get a couple thousand answers here, maybe we'd have an interesting (if biased) sample. We're not going to get that, and answers of the form &quot;well I know a guy...&quot; are not statistically sound." CreationDate="2011-03-11T17:10:44.200" UserId="744" />
  <row Id="12801" PostId="9629" Text="Oh ok. I misread your question then. Sorry." CreationDate="2011-03-11T17:37:58.583" UserId="20" />
  <row Id="12802" PostId="9623" Text="While your game server architecture will be defined by the game in general. It is very much platform and genre dependent. If you're planning for many users, Java is a good opportunity to make use of Amazon's [Elastic Beanstalk][1]. This is a great way to scale your server on demand.&#xA;&#xA;Perhaps you should tell us more about the game - JNAG could be more than what you need ie. in a max 4 player turn based game.&#xA;&#xA;  [1]: http://aws.amazon.com/elasticbeanstalk/" CreationDate="2011-03-11T17:59:08.773" UserId="5868" />
  <row Id="12803" PostId="9635" Text="If any part is not clear enough or if I should present more information about how I handle a functionality in the game, just leave a comment and I'll edit my question. Also - should this be a community wiki? I personally don't see it as subjective or argumentative but I may be wrong." CreationDate="2011-03-11T19:25:30.080" UserId="2111" />
  <row Id="12804" PostId="9420" Text="great resource bytheway!" CreationDate="2011-03-11T20:12:20.237" UserId="4508" />
  <row Id="12805" PostId="8136" Text="There really aren't that many engines using such systems, certainly not enough to justify the amount of people who are interested in making them. (The only one I can think of right now is Unity.) That's not a criticism of the approach at all, just a reflection on the disproportionate interest in this topic at the moment relative to the amount of working software that actually uses it." CreationDate="2011-03-11T20:40:33.137" UserId="1101" />
  <row Id="12806" PostId="9647" Text="can you give examples of engines with this feature?" CreationDate="2011-03-11T22:13:26.777" UserId="5899" />
  <row Id="12807" PostId="9647" Text="well ya .. Cinema4D permits geometry to have children,, unity3D permits game object which include a geometry to have children, but thats only what happens in the front end, I don't what is the real implementation. OpenSceneGraph doesn't allow geometry to have children (so if you want a geometry to have child you need to make an extra transform node maybe thats what happens in unity3D for example but in the background .. am not sure about this )" CreationDate="2011-03-11T22:18:49.277" UserId="5440" />
  <row Id="12808" PostId="9604" Text="thats lucky for any job you get into. If I took a programming job anywhere, it would be lucky to stay there for more than 5 or so years. Unless its government/union" CreationDate="2011-03-11T22:22:21.843" UserId="2301" />
  <row Id="12809" PostId="9648" Text="Copy them once, Additionally the code that runs to upload them is still getting uploaded, they are just going unused.&#xA;&#xA;I've been debugging with gDebugger, no warnings or errors." CreationDate="2011-03-11T22:33:57.357" UserId="5641" />
  <row Id="12810" PostId="9649" Text="just thinking if you can mix between BSP tree and scene hierarchy for example a typical Node ,can be extended to be a BSP tree node, and have a modified way of tree traversal. to clarify what I mean a Node will traverse the scene in a specific way, a BSP node will traverse its children based on separating plane so its kinda mixing two types of trees , is that good from a scene graph design and performance point of view ? " CreationDate="2011-03-11T23:02:18.940" UserId="5440" />
  <row Id="12811" PostId="9653" Text="Yeah, I'm using GL_Static_Draw, that's the sort of thing I thought it might be however." CreationDate="2011-03-11T23:05:19.420" UserId="5641" />
  <row Id="12812" PostId="9649" Text="I'm not entirely sure that it is - it may work for your game though. The way I go about these things these days is to keep the two seperate. This allows me to have a logical grouping editing and an accelerated visibility structure for rendering quickly. That's what works for me right now although this may change if my requirements change. There is no one-size fits all solution, you have to be pragmatic and go with whatever is optimal (or convenient) for the sort of game you are writing right now." CreationDate="2011-03-11T23:11:50.083" UserId="5957" />
  <row Id="12813" PostId="9653" Text="A buffer holding 100k triangles, resp. 300k vertices should be no challenge to a somewhat modern graphics card, but ... what does glGet say on GL_MAX_ELEMENTS_VERTICES? I assume you're checking glGetError as standard procedure too?" CreationDate="2011-03-11T23:19:08.037" UserId="5704" />
  <row Id="12814" PostId="9653" Text="2048? I am also checking glGetError." CreationDate="2011-03-11T23:29:08.353" UserId="5641" />
  <row Id="12815" PostId="9653" Text="Doesn't that seem awfully small? This is on an i7 MacBook Pro, It's supposed to have nvidia graphics." CreationDate="2011-03-11T23:36:16.227" UserId="5641" />
  <row Id="12816" PostId="9644" Text="Small update, I checked for vertical depth of collision vs horizontal, and only handled one. The collisions still catch, but they automatically release (I'm guessing because of the acceleration due to gravity)" CreationDate="2011-03-12T00:08:14.287" UserId="5932" />
  <row Id="12817" PostId="9639" Text="Update: As a work around, I had to split my texture images into separate files (loaded individually). This adds a bit of loading time, but it's ok with a few images (worried about when I have 100 textures though...). A caveat I didn't foresee is that OpenGL ES (&lt;2.0)  requires that images be power of 2, and point sprites must be square!" CreationDate="2011-03-12T01:48:15.800" UserId="4104" />
  <row Id="12818" PostId="9665" Text="Thanks for the response, I'm sorry if my explanation wasn't clear. The second object is supposed to be static, in this case. This is simply for collision with tiles on my map(I had a system which would check the squares directly around you, didn't work well)&#xA;&#xA;On the several objects issue, I'm considering simply putting a bounding box around the whole stack, which would work really well. And since this is for the static part of my map there's no reason not to. However the problem lies in my dynamic aspect... (i'll probably just add to the large bb dynamically)&#xA;&#xA;Anyways thanks, you sparked ideas" CreationDate="2011-03-12T06:07:02.603" UserId="5932" />
  <row Id="12819" PostId="9668" Text="I'm not sure what you are asking is a thing. Do you mean normal and bump mapping to simulate surface variation on &quot;flat&quot; areas?" CreationDate="2011-03-12T06:42:27.223" UserId="395" />
  <row Id="12820" PostId="9668" Text="I think what he mean is more like GL_TEXTURE_3D, etc." CreationDate="2011-03-12T07:08:34.357" UserId="3991" />
  <row Id="12821" PostId="9650" Text="So it's my, for example, SpriteManager that should implement these two interfaces or would it be my GameplayScreen? I must fail to see how this will simulate the whole component ordeal.  " CreationDate="2011-03-12T08:07:46.200" UserId="1199" />
  <row Id="12822" PostId="9418" Text="'AAA' game development no, not really. Casual, yes. There is no `proper` game development." CreationDate="2011-03-12T09:33:26.787" UserId="1156" />
  <row Id="12824" PostId="9677" Text="Post code, because I doubt people here will have looked through that kit." CreationDate="2011-03-12T11:39:56.647" UserId="1156" />
  <row Id="12825" PostId="9677" Text="I posted the method which deals with collision " CreationDate="2011-03-12T11:46:03.243" UserId="5275" />
  <row Id="12826" PostId="9683" Text="Awsome thanks ill check it out" CreationDate="2011-03-12T14:33:06.283" UserId="6053" />
  <row Id="12827" PostId="9682" Text="Thanks but this was not my question I am aware I can get the different aspect ratio by performing that division. my question is how do I use it to render correctly?" CreationDate="2011-03-12T14:34:39.840" UserId="6053" />
  <row Id="12828" PostId="9614" Text="I guess the login servers are the primary target for brute force attacks on passwords, so they have to be able to handle quite a bit of load. Especially if the game is so popular that attackers start to use botnets (to prevent rate limiting per ip-address) in addition to the normal random guessing of usernames." CreationDate="2011-03-12T14:47:03.293" UserId="450" />
  <row Id="12829" PostId="9614" Text="Failing to login and placing a player into the world can have multiple reasons. It may be the login servers/account database. But it may although be caused by a failure to load the player information from the database. Or by a failure of the system that does the dispatching of players to world servers, chat servers, ... An internal firewall may still be able to handle known connections but might not be able to apply the ruleset to decide about new connections. Playing a player into the world is a lot more complex than interacting once you are inside." CreationDate="2011-03-12T14:50:19.763" UserId="450" />
  <row Id="12830" PostId="9684" Text="For any information about: Boo (for usage with Unity):&#xA;http://boo.codehaus.org/Gotchas+for+Python+Users&#xA;Boo != Python, rather Boo &gt; Python." CreationDate="2011-03-12T14:52:23.600" UserId="2063" />
  <row Id="12831" PostId="9689" Text="Thanks. I dont mind cropping. could you give me any starting point for how to do this? ( in terms of projecting to the screen)" CreationDate="2011-03-12T17:11:18.533" UserId="6053" />
  <row Id="12832" PostId="9653" Text="2048 seems really really really awfully small. I would have expected a value of at least 128k on a somewhat elderly desktop or notebook, or 1-4M on a recent desktop. But, there is your explanation. The implementation is allowed to work &quot;suboptimally&quot; if you exceed this limit. Though, really... 2048. They can't be serious?" CreationDate="2011-03-12T17:18:28.083" UserId="5704" />
  <row Id="12833" PostId="9684" Score="1" Text="Boo is a great language, however it is almost undocumented. I tried more than once to use it with Unity3D, but C# always turned out much easier and almost as powerful." CreationDate="2011-03-12T17:50:46.447" UserId="2710" />
  <row Id="12835" PostId="9653" Text="I haven't tested any PCs yet, but I did a survey of every Mac I could get my hands on, They all return 2048, regardless of video card. I wonder if there is some setting that could be limiting that." CreationDate="2011-03-12T18:47:22.023" UserId="5641" />
  <row Id="12836" PostId="9689" Text="@Jason I'm still fairly new to game dev and the few games I've made haven't had to deal with this so I can't give any useful implementation advice on rendering, however the general idea is that you either have a rendering engine that doesn't care what size the screen is (i.e. something where you're always in a sort of &quot;zoomed in&quot; view where you only see part of some map) or you have a &quot;native&quot; screen size that you're based on, then you shrink or enlarge that so that you don't have any unfilled screen space, maintaining aspect ratio and keeping it centered (make sure no important info gets cut)" CreationDate="2011-03-12T18:51:44.660" UserId="5006" />
  <row Id="12837" PostId="9653" Text="My kind of old gf9800 says 1048576, which is what I would consider a &quot;reasonable&quot; value, too." CreationDate="2011-03-12T19:47:34.613" UserId="5704" />
  <row Id="12838" PostId="9676" Score="1" Text="What all is SpriteManager responsible for?  Does it manager a list of all loaded sprite assets, or does it simply load and draw them?  Having screens try to manage resources below them sounds like it's asking for trouble later on.  What happens when the SpriteManager has loaded things for multiple screens and you need to remove only part of them?  Editing my answer above to try and clear things up (some things they make sense in my head, not so sure when put into words)." CreationDate="2011-03-12T19:47:38.980" UserId="4296" />
  <row Id="12839" PostId="9677" Text="From that code it looks like the Level.GetCollision() function is giving you the impassable/passable flag. Might help if you posted that here." CreationDate="2011-03-12T20:26:56.173" UserId="2332" />
  <row Id="12840" PostId="9650" Score="1" Text="Wall of code, hope it's helpful." CreationDate="2011-03-12T20:29:12.767" UserId="4296" />
  <row Id="12841" PostId="9542" Text="The demo from &quot;Lam&quot; had larange curves which is very close to what i was looking for, as they draw a curve going thru all control points unlike bezier." CreationDate="2011-03-12T21:42:57.787" UserId="5976" />
  <row Id="12843" PostId="9702" Text="The great thing about Scala Actors is that they are message-driven. Every one of them has an own message/event-queue. I am not sure if 'Draw' should be a message or a method for call. I think it will be the latter, so that a Sprite can be drawn any time, no matter the state of their event queue. And they can send each other messages to ensure things get done in a certain order." CreationDate="2011-03-12T22:11:15.800" UserId="6054" />
  <row Id="12844" PostId="9702" Text="Be careful there, I don't think having each sprite have a Draw method or event would be useful, except maybe as a flag to toggle visibility. In the render phase of a game loop, the order in which sprites are rendered to the screen has a big effect on the outcome. If you have one sprite that is located in front of the other (dimension being in toward the monitor), you want that one to be drawn second. I see Scala's Actors being useful for the update/logic portion of the game loop." CreationDate="2011-03-12T22:56:48.457" UserId="3656" />
  <row Id="12845" PostId="9702" Text="@bearcdp: Usually, you only have a draw method there, so by implementing it that way there should not be much of a difference to the normal way of dealing with sprites." CreationDate="2011-03-12T23:11:39.280" UserId="6054" />
  <row Id="12846" PostId="9702" Text="Ah okay, I misunderstood what you were describing. I was somehow imagining sprites rendering themselves whenever and however they please. Let us know how this turns out!" CreationDate="2011-03-12T23:45:09.820" UserId="3656" />
  <row Id="12847" PostId="9678" Text="I'd be very interested in knowing how this turns out.  I've looked at Scala a couple times but never dove into it before.  " CreationDate="2011-03-13T00:30:26.443" UserId="5006" />
  <row Id="12848" PostId="9705" Text="I would assume you'd need to look into methods of vector-based fonts, rather than rasterized fonts, which could be a starting point. I'm no expert on the matter, so I'll let someone who would know answer." CreationDate="2011-03-13T01:23:38.203" UserId="2332" />
  <row Id="12850" PostId="9659" Text="I'm thinking about using Construct, the more I learn about it.  Anyone used it?" CreationDate="2011-03-12T21:38:17.297" UserId="6049" />
  <row Id="12852" PostId="9707" Score="1" Text="In order to make this cross-platform and not worry about the PInvoke stuff, it seems to me that you would be able to write a tool to dump the data that GetGlyphOutline reads (see [this SO question](http://stackoverflow.com/questions/2777248/how-does-getglyphoutline-function-work-winapi) ) to some custom format, and then have some simple file I/O in the game code to just load your custom stored glyph data." CreationDate="2011-03-13T03:54:58.910" UserId="189" />
  <row Id="12853" PostId="9708" Text="IMDB lists video games." CreationDate="2011-03-13T04:09:36.530" UserId="14" />
  <row Id="12854" PostId="5461" Text="Agreed. At first glance the book didn't impress me. A bunch of lists I could compile myself? But the power lies in the fact that they're all ready for you. I can have a germ of an idea, pop the book open to something barely relevant to it and brainstorm a bunch of variations and things without losing my creative flow by stopping to make a list." CreationDate="2011-03-13T06:26:05.703" UserId="5497" />
  <row Id="12855" PostId="9640" Text="I hear that.  When trying to find good resources on it, I found that almost every person use different terminology to describe things.  Made it hard to compare different implementations when you spend half the time translating the basic structures.  Entity System, Component System, Game Object, Template, Assembly, Component Assemblage, etc..." CreationDate="2011-03-13T06:38:51.543" UserId="4296" />
  <row Id="12856" PostId="9428" Text="@ggambett did you use alchemy for running the c++ ?" CreationDate="2011-03-13T08:06:56.417" UserId="962" />
  <row Id="12857" PostId="9666" Text="Yup. I prefer games that the difficulty is hand crafted. As in when everyone plays this level, its the same for each player. If you have a learning AI, at first it will be really easy, and then if the AI is good enough, it can become almost impossible to beat. And as you said the best AI is not the most fun. To make a godlike FPS AI, just have it always aim at the players head, read the random number generator that is used for the bullet spread, and offset the aim the opposite direction so it is fires automatically like a sniper rifle." CreationDate="2011-03-13T08:13:57.093" UserId="962" />
  <row Id="12858" PostId="9708" Score="2" Text="@Noctrine: Usually only if it's part of a non-video-game actor/artists's CV, and almost never ones in development. Example: http://www.imdb.com/title/tt1125798/fullcredits#cast - No artists are listed unless they have a movie credit elsewhere, and only one programmer is listed, who also has has a movie credit. No designers are listed at all." CreationDate="2011-03-13T10:03:08.887" UserId="744" />
  <row Id="12859" PostId="9710" Text="I don't really think art counts as 'esoteric', but this is definitely a great question." CreationDate="2011-03-13T11:11:25.597" UserId="1156" />
  <row Id="12860" PostId="9715" Text="Wow awesome.  Thanks. Any chance you will make your port public? " CreationDate="2011-03-13T11:16:26.097" UserId="6053" />
  <row Id="12861" PostId="9715" Text="No it's not mine but Iopixel. I'm working on OpenGL ES 2.x tutorial and will probably release a mobile 3d engine with it.  " CreationDate="2011-03-13T11:26:57.487" UserId="721" />
  <row Id="12862" PostId="9666" Text="Yep. That's an excellent summary Ian. Thanks. I don't have much experience developing games (did some simple stuff for fun way back when, while my son was growing up). What you've said defines some of the basics and I totally agree." CreationDate="2011-03-13T12:19:50.783" UserId="5959" />
  <row Id="12863" PostId="9666" Text="Having said that, I think adaptive characters can still operate to make games more fun so long as their application doesn't violate the basics. Having an occasional super-bad guy show up, creating fitness functions that keep adaptive characters within their rank, or handy-capping the adaptive character (let it adapt only specific characteristics in particular circumstances) are some ways that come to mind that combine good character design with adaptivity. (cont.)" CreationDate="2011-03-13T12:24:57.800" UserId="5959" />
  <row Id="12864" PostId="9666" Text="I've been running the &quot;High Level Logic&quot; open source development project - a serious part of the focus of that work during our robotics project was the effective combination of design and evolution. You can have adaptivity without totally losing design control." CreationDate="2011-03-13T12:26:02.667" UserId="5959" />
  <row Id="12865" PostId="9506" Text="Interesting, although I have little game playing experience. This is a suggestion that combines design with adaptivity in a way that adapts the game to each players preferences. " CreationDate="2011-03-13T12:27:45.923" UserId="5959" />
  <row Id="12866" PostId="9721" Text="Common sense comes from the software-engineering side...maybe I should've mentioned that that's a given in my case (I did mention source control and scripting languages, after all)" CreationDate="2011-03-13T13:41:54.250" UserId="1929" />
  <row Id="12867" PostId="9715" Text="@Ellis: Sounds awsome would love to know where to find it when its ready" CreationDate="2011-03-13T14:36:29.760" UserId="6053" />
  <row Id="12868" PostId="9722" Score="3" Text="You're probably warping through walls because your speed is so great that in one frame you're above the wall, in the next you're below it, and you never check for collision. You should check collision against the path swept, not against the endpoints." CreationDate="2011-03-13T14:42:17.243" UserId="5020" />
  <row Id="12869" PostId="9726" Text="@luther: If I turn off lighting, I still can use colors on my vertices right?" CreationDate="2011-03-13T16:02:22.527" UserId="6073" />
  <row Id="12870" PostId="9726" Text="You should be able to do that yes, as long as you've enabled glEnableClientState(GL_COLOR_ARRAY) (remember to disable GL_NORMAL_ARRAY)&#xA;		" CreationDate="2011-03-13T16:38:20.307" UserId="5957" />
  <row Id="12871" PostId="9728" Text="+1 for this. It's much better formatted, and is probably faster. :P" CreationDate="2011-03-13T16:59:11.897" UserId="1156" />
  <row Id="12874" PostId="9734" Text="Thanks a bunch bro your a lifesaver, the particle problem is fixed, I'm currently looking at the physics problem. Going to set the max speed to 900 so the maximum travel distance is smaller then 16 if that works :)" CreationDate="2011-03-13T18:58:58.987" UserId="6070" />
  <row Id="12875" PostId="9734" Text="Damm that isn't the problem :(" CreationDate="2011-03-13T19:00:11.480" UserId="6070" />
  <row Id="12876" PostId="9734" Text="@Quincy Glad the particle issue is gone. Have you tried doing some debug prints when collisions occur so that when a bad collision happens you can see what values have been passed in? If you print out enough you should then be able to walk through the logic with known values when the problem occurs to be able to diagnose the problem" CreationDate="2011-03-13T19:05:33.090" UserId="4410" />
  <row Id="12877" PostId="9708" Text="erm... music tag?" CreationDate="2011-03-13T19:52:26.380" UserId="118" />
  <row Id="12878" PostId="9428" Text="@AttackingHobo Yes, that was my first idea. It worked with small tests, but the compiler choked and died with a real project. Besides, I was getting all kinds of weird runtime errors seemingly for no reason at all (see http://forums.adobe.com/thread/590648 for example) so it wasn't a viable option in the end." CreationDate="2011-03-13T19:56:40.213" UserId="4082" />
  <row Id="12879" PostId="9428" Text="@AttackingHobo Now I'll actually answer your question :) Alchemy was my first choice, it didn't work, so I wrote the C++ to AS3 converter." CreationDate="2011-03-13T19:58:37.407" UserId="4082" />
  <row Id="12880" PostId="9677" Text="its not so much the flag thats causing the issue, but when two items intersect with each other which is causing the problem I've only part way fixed it at the moment " CreationDate="2011-03-13T21:20:58.100" UserId="5275" />
  <row Id="12881" PostId="9734" Text="The problem is I do not know how to detect a bad collision and if everything gets checked every 1/60 of a second and then printed I'll never be able to see what the bad collision values where." CreationDate="2011-03-13T21:42:28.813" UserId="6070" />
  <row Id="12882" PostId="9711" Text="How do you suggest learning about mythology and religious iconography?" CreationDate="2011-03-13T22:50:56.000" UserId="1929" />
  <row Id="12883" PostId="9722" Score="1" Text="You should look into object pooling for the particle emmiter, the way you have it set up now, it will hit the garbage collector a lot compared to creating all the instances you will need in the begining, and only drawing and updating the ones that are active." CreationDate="2011-03-13T23:09:11.803" UserId="962" />
  <row Id="12884" PostId="9711" Text="@ashes999 There are numerous books you can get on the subject. Also, holy books of various religions." CreationDate="2011-03-13T23:34:00.790" UserId="14" />
  <row Id="12885" PostId="9734" Text="@Quincy You only need to print something when a collision takes place (i.e. TileCollision reports X or Y is != -1). Print out the relevant values to the calculation. As you set velocities to zero once a collision has been resolved you shouldn't get snowed under with output. One thing I would say is you update some parts of &quot;CollisionRectangle&quot; then run a check for a collision. For example, when you check for Y collision you then process the result if &quot;tileCollision.X&quot; is not equal to -1, despite not having updated the X information since the previous frame I'm guessing (can't see all code)" CreationDate="2011-03-14T00:11:11.023" UserId="4410" />
  <row Id="12886" PostId="9728" Text="I did a quick skim and it looked identical, but didn't do a full diff, although it's from 2003 vs 2001. It's also the &quot;printable&quot; version of the article (instead of scattered around multiple pages)." CreationDate="2011-03-14T00:29:41.907" UserId="634" />
  <row Id="12887" PostId="9661" Text="Got it. Thanks a lot!" CreationDate="2011-03-14T01:50:33.320" UserId="6047" />
  <row Id="12888" PostId="9711" Text="For Greek myth, Ovid's Metamorphoses is good and you can find free copies on any ebook store. Others are a bit harder, but a few nights on Wikipedia are probably a good starting place ([Maya](http://en.wikipedia.org/wiki/Maya_mythology), [Norse](http://en.wikipedia.org/wiki/Norse_mythology), [Christian](http://en.wikipedia.org/wiki/Christian_mythology))." CreationDate="2011-03-14T01:57:49.787" UserId="395" />
  <row Id="12889" PostId="9727" Text="This is almost always not something that can be taught or learned directly. The best (only?) way to do it is to fail many times. Make a lot of games or play a lot of games and see where the pain points are." CreationDate="2011-03-14T02:00:49.207" UserId="395" />
  <row Id="12890" PostId="9711" Score="1" Text="Also my point was less so to push you towards these specific things, but more to make the case that literally anything you expose yourself to can be harnessed to make better games. Join SCA, read random books in the library, have dinner with a homeless person. You don't need to be a world expert in any of these things, but the more you have in your proverbial tool belt, the better!" CreationDate="2011-03-14T02:21:20.713" UserId="395" />
  <row Id="12891" PostId="9742" Text="Another special case might be when the rectangles collide equally on 2 sides (like a corner collision). I wonder if factoring in the velocity vector would help (if the rectangles are moving)." CreationDate="2011-03-14T02:42:24.180" UserId="3547" />
  <row Id="12892" PostId="8506" Text="I was able to create a robust layout in XNA in a few hours while in Java every little GUI element I added screwed up everything." CreationDate="2011-03-14T03:09:13.763" UserId="5413" />
  <row Id="12895" PostId="9752" Text="But is parallax scrolling only for looping backgrounds? I just want the background to move from left to right once, at a constant speed. Basically I want to find this exact speed based on the fieldWidth, the background's width and the camera's location." CreationDate="2011-03-14T05:14:54.957" UserId="2111" />
  <row Id="12896" PostId="9752" Score="2" Text="I believe (I could be wrong) that parallax scrolling is for adding a feeling of depth to a 2d environment: in other words, more than one scrolling background to create a more &quot;realistic&quot; environment.&#xA;&#xA;Well finding the speed isn't a problem, especially if you're setting it =)" CreationDate="2011-03-14T05:17:32.877" UserId="5932" />
  <row Id="12897" PostId="9756" Text="Interesting concepts, how would using shorts for position (assumed vertex positions) work? If you could give an example on how to set that up. Only post what would be different in comparison to a traditional setup.&#xA;&#xA;Triangle strips require pre-formatting all your data, which I don't want entirely necessary?" CreationDate="2011-03-14T07:42:16.330" UserId="4513" />
  <row Id="12898" PostId="9720" Text="Hey Roger, thanks for your answer,   Ialmost go this to work fo rme by using this code &lt;pre&gt;setenemyPositionY(getenemyPositionY() + Math.sin(getRotation() * (Math.PI / 180))); &#xA;		setenemyPositionX(getenemyPositionX() + Math.cos(getRotation() * (Math.PI / 180)));                             &lt;/pre&gt;                                                                  Is this what you were talking about?  This seems to work however alwasy launches the enemy to my right. Ill keep working on it though. Thanks for your help." CreationDate="2011-03-14T08:10:51.687" UserId="5919" />
  <row Id="12899" PostId="9756" Text="For the position, figure out your maximum absolute x, y, z values (loop over all your positions and do something like mx = max(mx, abs(vertex.x))). Then divide all your positions with this value and multiply with MAX_INT16 (or similar). You can now convert to a short, just be careful of rounding errors since this will quantize your positions. Just multiply with your scale (mx, my, mz) in the vertex program to convert back to unscaled space. And yeah, preprocessing is required for strips, but it can be done right where you create your geometry too (I do that for splines and tubes.)" CreationDate="2011-03-14T08:52:43.443" UserId="2792" />
  <row Id="12900" PostId="9755" Text="While your answer contains excellent advice and best-practice, it doesn't answer the OPs question (which is how to properly calculate movement in order to prevent the black bars from appearing)." CreationDate="2011-03-14T09:02:28.153" UserId="20" />
  <row Id="12901" PostId="9759" Text="Most of this knowledge i gained by watching Dragons' Den :]. Do not take me too serious. I'm engineer." CreationDate="2011-03-14T09:03:50.057" UserId="3794" />
  <row Id="12902" PostId="9756" Text="Go with triangle strips all the way, with restarts or with degenerate triangles.  Another tool for generating strips is http://www.cs.sunysb.edu/~stripe/" CreationDate="2011-03-14T09:03:57.690" UserId="4129" />
  <row Id="12903" PostId="9759" Text="On the contrary, engineers are the people you *should* take seriously. The only thing those buinsess types on dragons den have are MBAs and ruthlessness. Without Artists and Engineers, they are nothing." CreationDate="2011-03-14T09:24:15.413" UserId="5957" />
  <row Id="12904" PostId="9720" Text="Yeah, something like that. If it's always sending the sprite off in a direction that's say 90 degrees out then chances are the sprite doesn't face in the same direction that lines up with Zero degrees. You can work around this by adding a constant to the value returned by getRotation() to shift the rotation angle around to compensate for this discrepancy. " CreationDate="2011-03-14T10:13:47.817" UserId="4410" />
  <row Id="12905" PostId="7348" Text="In any case I wonder where the two images came from.. you probably want to alter your content production pipeline so that the palettes do match (i.e, make the second image by altering the palette of the first)." CreationDate="2011-03-14T10:19:27.723" UserId="4264" />
  <row Id="12906" PostId="9722" Text="Peter, the problem you are describing ins't going to be a problem since the the maximum amount of pixels that can be moved = 1/60 * 1000 = 16.667 units, since all of my objects that are colidable are bigger then 34 pixels this shouldn't be a  problem." CreationDate="2011-03-14T10:28:46.433" UserId="6070" />
  <row Id="12907" PostId="9734" Text="The problem is that because of the gravity you are colliding with the ground every frame, the -1 part on the x coordinate is because GetTileCollision returns both -1 for x and y if there is no collision at all." CreationDate="2011-03-14T10:31:55.620" UserId="6070" />
  <row Id="12908" PostId="9727" Text="Absolutely, but then again, if you have these points in mind while playing you'll learn to identify what made you immersed and why. The same goes for when you play your own game. " CreationDate="2011-03-14T10:37:14.370" UserId="1217" />
  <row Id="12909" PostId="9758" Text="Thanks Tetrad, I've read around the link you post, very useful." CreationDate="2011-03-14T11:25:55.853" UserId="5759" />
  <row Id="12910" PostId="9759" Text="Hi notabene, actually, I'm not really concern on the graphic at this project, because I will re-develop the second version with improvement, most likely, this project just a stepping stone, to help me find out what do I need/notice in the future apps, so, that's why 40% is not worth for them I think, however, after thinking what you say, for long term, I should need a good designer, and if they can really help to generate the revenue, then 40% is absolutely acceptable. You make me figure out, the money is unlimited, it depends on what the way to earn it." CreationDate="2011-03-14T11:35:46.140" UserId="5759" />
  <row Id="12911" PostId="9759" Text="Hi Luther, I absolutely agree with you, although I didn't watch dragon's den (just figure out what it is :P)." CreationDate="2011-03-14T11:38:15.420" UserId="5759" />
  <row Id="12912" PostId="9734" Text="So I spotted the code is up there, fired it up, added some prints and it looks like the problem occurs due to &quot;DoCustomMovement&quot;. It's a special case when &quot;onground&quot; and &quot;W&quot; is pressed, etc. In that case when I was watching the velocity goes crazy when the problem occurs. I recommend adding some debug to look more closely what is going on. It's not always going wrong when this function is called, but it's probably a combination of colliding in X and this triggering." CreationDate="2011-03-14T11:52:57.270" UserId="4410" />
  <row Id="12913" PostId="9755" Text="I appreciate the advices on the camera. I knew it was ugly, but I didn't really know how to do it differently, thanks for correcting me! :)" CreationDate="2011-03-14T11:54:48.000" UserId="2111" />
  <row Id="12914" PostId="9757" Text="This is exactly what I've been looking for! Thanks a LOT!" CreationDate="2011-03-14T12:00:22.987" UserId="2111" />
  <row Id="12915" PostId="9492" Text="@notabene Thanks for the detailed information. For our purpose, the cloud will need to morph into a shape we specified. So I think we can use Perlin Noise 3d grid using particles. Lighting, even by volumetric raycasting, is probably prohibited, because mobile platform is our tergeted platform. " CreationDate="2011-03-14T12:27:35.593" UserId="4901" />
  <row Id="12916" PostId="9338" Text="Can I get more detail on your problem? I assume you have a normal rendering code with glDepthMask(false), render transparencies, glDepthMask(true)? Any screenshots of what's happening?" CreationDate="2011-03-14T12:31:08.243" UserId="4264" />
  <row Id="12917" PostId="9755" Text="@bummzack Ah - yes - I had assumed his ratio calculation was correct. But your answer is quite right in pointing out that you also need to take into account the viewport width." CreationDate="2011-03-14T12:41:45.867" UserId="288" />
  <row Id="12918" PostId="9653" Score="1" Text="Just googling around, I found [this](http://www.myogl.org/?target=show&amp;id=341) which seems to be a printout of the 330M (the discrete graphics in the 2010 MacBook Pro) and it says &quot;GL_MAX_ELEMENTS_VERTICES: 1048576&quot;. Try installing gfxCardStatus and make sure your discrete card is being used and not the integrated Intel chip; that might actually explain the system memory being faster too, since the integrated chip leeches off of system memory (I think) and should therefore have fast access to it..." CreationDate="2011-03-14T13:08:01.567" UserId="189" />
  <row Id="12919" PostId="9648" Text="Look at the stats generated by gDebugger too - you may be doing something weird by mistake." CreationDate="2011-03-14T13:59:57.417" UserId="4264" />
  <row Id="12920" PostId="9767" Text="Additionally you have to think about your target market - the minecraft players obviously can handle going to java.com and installing it, but lots of the &quot;internet explorer crowd&quot; might not be." CreationDate="2011-03-14T14:08:20.547" UserId="4264" />
  <row Id="12921" PostId="9767" Text="However, Minecraft is made well in that those users can simply download the executable version, which includes the JRE and doesn't need any such installation; it Just Works™." CreationDate="2011-03-14T14:20:21.080" UserId="189" />
  <row Id="12922" PostId="9767" Score="2" Text="I think, that java is great solution how to access gpu in browser without forcing user to install something (80-85% users has java installed ... including explorer noobs too :))" CreationDate="2011-03-14T14:41:33.370" UserId="3794" />
  <row Id="12923" PostId="9711" Text="One way, to get started with Mythology is to look into children's books about Mythology -- and then follow up on the more interesting stories. Every ancient culture has Mythology of some sort, most which are quite intriguing." CreationDate="2011-03-14T15:32:29.767" UserId="1198" />
  <row Id="12924" PostId="9338" Text="@Jari: I'll attach some tomorrow. This is on a borrowed phone, I don't have an Adreno-based phone myself. But it's basically like you said - clear depth with 1.0, glDepthMask(true), render opaque objects, glDepthMask(false), render alpha objects. Unless I remove the second call, the frame buffer shows mostly the clear control and a few untextured shapes of objects I was rendering. I'll borrow the phone today to do a few more experiments." CreationDate="2011-03-14T15:43:18.970" UserId="5876" />
  <row Id="12925" PostId="9761" Text="I guess a good starting point is wikipedia's [FFT](http://en.wikipedia.org/wiki/Fast_Fourier_transform) and [DSP](http://en.wikipedia.org/wiki/Digital_signal_processing) entries. The beat detection entry is sparse but links to [an article at gamedev.net](http://archive.gamedev.net/reference/programming/features/beatdetection/)" CreationDate="2011-03-14T15:47:16.343" UserId="252" />
  <row Id="12926" PostId="9769" Text="Its not actually the beat detection I'm having trouble with but understanding how FFT's work. I am really new to signal proccessing and things like : &quot;apply a window function to get a time dependent spectrum with the FFT&quot; don't make any sense to me. &#xA;&#xA;Thanks anyway :)" CreationDate="2011-03-14T16:22:26.307" UserId="6070" />
  <row Id="12927" PostId="9599" Text="5 years is the Average a general programmer will stay programming video games. I know it sounds low and lame and who wouldn't want to make video games forever. But crunch times can really take a toll, especially when working directly for some of the larger publishers. On AAA titles you will be spending 16 hours a day, 7 days a week for about 6 months at the end of the project.. After a few of these people start getting burnt out.. So again, its just an average.. as for studio hopping, thats a common occurrence and usually matches the end of a project, released or not.  " CreationDate="2011-03-14T16:38:52.583" UserId="4443" />
  <row Id="12928" PostId="9765" Text="Very - edited my answer for correctness." CreationDate="2011-03-14T16:59:55.370" UserId="4296" />
  <row Id="12929" PostId="9768" Text="Do I smell an opportunity? :)" CreationDate="2011-03-14T17:20:26.310" UserId="189" />
  <row Id="12930" PostId="9744" Text="I've ensured that this is normalized and now it seems that the shortest connecting now at least starts and finishes in a way that connects the two lines. The problem now is that this isn't the shortest distance. The end point of the connecting line is *always* very close to the start of the other line." CreationDate="2011-03-14T17:22:29.473" UserId="5740" />
  <row Id="12931" PostId="9685" Text="thanks, let me look into it." CreationDate="2011-03-14T18:17:57.440" UserId="5958" />
  <row Id="12932" PostId="9766" Score="1" Text="Maybe because few people do web games in Java, and prefer Flash?" CreationDate="2011-03-14T18:39:08.737" UserId="1156" />
  <row Id="12933" PostId="9768" Text="I'm not sure if the sponsorship model presents a good deal for creators. It's better to sell your work for a reasonable price than take a pittance from a portal site who make a pittance from the advertising. " CreationDate="2011-03-14T18:51:33.657" UserId="5957" />
  <row Id="12934" PostId="9744" Text="I think the problem lies with how I'm passing in my two lines... I'm just not sure why? I'm passing a start point of the line, and then a point 100 * the normalized direction away from it for the end point of the line (for both lines), does this seem right? Thanks for your help!" CreationDate="2011-03-14T19:04:14.400" UserId="5740" />
  <row Id="12935" PostId="9338" Text="Try setting the glDepthMask back to true after you've rendered the transparencies and before you flip." CreationDate="2011-03-14T19:59:03.660" UserId="4264" />
  <row Id="12936" PostId="9502" Text="+1, though you might find &quot;if ((image.getRGB()&gt;&gt;&gt;24)&gt;128) ...&quot; works a bit faster" CreationDate="2011-03-14T20:21:49.220" UserId="764" />
  <row Id="12937" PostId="9766" Text="Java is simply not as readily available in browsers anymore nowadays (compared to Flash, or by all means javascript), and there's a good chance your target audience won't have it installed. You can still use Java on the server side all you want though, regardless of client side tech, I don't understand the argument that &quot;server side javascript isn't as mature as the jvm platform&quot;." CreationDate="2011-03-14T20:38:36.457" UserId="653" />
  <row Id="12938" PostId="9757" Score="1" Text="is there a name for this technique?" CreationDate="2011-03-14T20:41:25.513" UserId="2301" />
  <row Id="12939" PostId="9653" Text="I'm not using a system with separate graphics, thus gfxCardStatus won't work on my computer. But I don't see GL_MAX_ELEMENTS_VERTICES higher then 2048 on *any* mac I've tested it on yet. Running the same problem on my pc gets me something in the range of 1Mil though." CreationDate="2011-03-14T21:09:15.483" UserId="5641" />
  <row Id="12940" PostId="9746" Text="http://ifile.it/fy1n0ia&#xA;Here's an example of how my collision detection and resolution stuff is working. If you're interested." CreationDate="2011-03-14T21:11:41.407" UserId="5932" />
  <row Id="12941" PostId="9653" Text="If you have a mac, I wrote a test program to print out GL_MAX_ELEMENTS_VERTICES, feel free to give it a try: https://github.com/Arelius/glstat" CreationDate="2011-03-14T21:12:30.287" UserId="5641" />
  <row Id="12942" PostId="7913" Text="If you're going to downvote me, at least post a comment saying &quot;NO JAVA R0X0R!&quot; or whatever your reason was." CreationDate="2011-03-14T21:14:21.797" UserId="3656" />
  <row Id="12943" PostId="9648" Text="@Jari, nothing obvious." CreationDate="2011-03-14T21:24:35.580" UserId="5641" />
  <row Id="12944" PostId="9757" Score="2" Text="Parallax scrolling (http://en.wikipedia.org/wiki/Parallax_scrolling)" CreationDate="2011-03-14T22:14:45.900" UserId="20" />
  <row Id="12945" PostId="9436" Score="1" Text="Have you tried disabled depth-writes (leaving depth tests on) when rendering the particles? That should make the incorrect ordering less obvious." CreationDate="2011-03-14T22:37:05.997" UserId="5824" />
  <row Id="12946" PostId="9774" Text="Just an FYI, most 3D sound APIs automagically map from surround to stereo sound output, chances are  you do not have to do anything special beyond what you would normally do :)" CreationDate="2011-03-14T22:55:43.253" UserId="4443" />
  <row Id="12947" PostId="9744" Text="But, then? How do you calculate the direction of a line? If you have the direction, why do you need the second point? Remember you are dealing with lines, not segments. I've edited my answer so you can see my code." CreationDate="2011-03-14T23:10:42.677" UserId="5899" />
  <row Id="12948" PostId="9784" Text="I think it's better if you give credit to the people that helped you rather than create your own answer than mark it as the answer. At the very least, give them an upvote. Just my two cent." CreationDate="2011-03-15T04:11:35.073" UserId="2946" />
  <row Id="12951" PostId="9784" Text="That's a good idea; I didn't think about it. I apologize for that, but I don't even have enough reputation to upvote yet. When I get it, though, I will do so." CreationDate="2011-03-15T04:18:26.300" UserId="5774" />
  <row Id="12952" PostId="9782" Text="This is the easiest way to go if you're looking for just basic positioning. But if you want doppler, you're probably better off with the tutorial that The Communist Duck posted. Also, being able to setup 3d properties in the XACT authoring tool makes it really convenient to use." CreationDate="2011-03-15T04:42:38.100" UserId="3656" />
  <row Id="12953" PostId="9784" Text="@defender-zone - It's nothing against you. I've taken the liberty and upvoted all the answers for you. " CreationDate="2011-03-15T04:43:15.403" UserId="2946" />
  <row Id="12954" PostId="6471" Text="The core idea of the game I want to make is a space combat sim controlled not unlike Freelancer. I figure the best way to get started is to work on this &quot;space flight&quot; aspect first then go from there." CreationDate="2011-03-15T04:43:40.783" UserId="627" />
  <row Id="12955" PostId="9784" Text="Thank you for doing so. Apparently, just now I have received enough reputation to upvote thanks to _your_ upvote, so I have done so as well. I have also given credit to those who helped in my answer." CreationDate="2011-03-15T04:47:36.070" UserId="5774" />
  <row Id="12956" PostId="6511" Text="Nothing beats the old hard coded multi-coloured triangles as placeholders :P" CreationDate="2011-03-15T04:50:48.450" UserId="627" />
  <row Id="12957" PostId="9784" Text="@defender-zone - Haha, that's pretty sweet. I didn't remember that would be the case!" CreationDate="2011-03-15T04:58:10.057" UserId="2946" />
  <row Id="12958" PostId="9784" Text="Yeah, I didn't know that either. Thanks again for upvoting for me. If you want some credit for doing so, I can certainly give it to you." CreationDate="2011-03-15T05:02:13.970" UserId="5774" />
  <row Id="12959" PostId="4829" Text="Once you use quaternions, you never go back!" CreationDate="2011-03-15T05:35:13.267" UserId="627" />
  <row Id="12960" PostId="9784" Text="Glad to help =)" CreationDate="2011-03-15T05:53:36.370" UserId="5932" />
  <row Id="12961" PostId="9508" Text="See also: http://gamedev.stackexchange.com/questions/6080/how-to-design-a-replay-system" CreationDate="2011-03-15T07:28:55.120" UserId="4264" />
  <row Id="12962" PostId="9782" Text="The downside to XACT (`Cue` instead of `SoundEffectInstance`) is that it doesn't work on Windows Phone. Of course, using `SoundEffectInstance.Apply3D` instead of my `SetSoundForCamera` is fine too." CreationDate="2011-03-15T08:08:26.487" UserId="288" />
  <row Id="12963" PostId="9783" Score="1" Text="If I'm not completely wrong, the question is not about how to store and load the data, but rather how to provide access to it once it's loaded (software design, OOP)." CreationDate="2011-03-15T09:02:18.473" UserId="20" />
  <row Id="12964" PostId="9786" Score="1" Text="possible duplicate of [A list of game mechanics](http://gamedev.stackexchange.com/questions/3297/a-list-of-game-mechanics)" CreationDate="2011-03-15T09:32:28.567" UserId="744" />
  <row Id="12965" PostId="9788" Text="http://www.swig.org/ comes to mind.." CreationDate="2011-03-15T10:33:58.330" UserId="4264" />
  <row Id="12966" PostId="9789" Text="This approach works for 2D as well I take it, just ignore the Z-part from the planes and calculate the distance form the origin of the circle and the middle of the planes? " CreationDate="2011-03-15T11:34:29.557" UserId="1199" />
  <row Id="12967" PostId="9791" Text="Oh, I just took a look at the code you linked, it already gives you the results in &quot;complex&quot; form and even provides you with a function to compute the magnitude of a complex number.  Then you would only have to compute the square of that magnitude for each element of the output vector, don't need to worry about sorting the results." CreationDate="2011-03-15T11:39:26.423" UserId="2091" />
  <row Id="12968" PostId="9789" Text="Thank you for the link, can't seem to find the slides though!" CreationDate="2011-03-15T11:41:43.763" UserId="1199" />
  <row Id="12969" PostId="9776" Text="the idea of using game center is such that I don't have to build a server because I have no knowledge of building a server." CreationDate="2011-03-15T12:10:25.040" UserId="6101" />
  <row Id="12970" PostId="9516" Text="+1 Just learned something new with your answer, thanks! =)" CreationDate="2011-03-15T12:22:37.207" UserId="2778" />
  <row Id="12971" PostId="9795" Score="1" Text="This doesn't really answer the question, I already understood what it does, but I wanted to know when it would actually be applicable to a 'common' implementation." CreationDate="2011-03-15T13:53:08.550" UserId="4513" />
  <row Id="12972" PostId="9795" Score="2" Text="I'm pretty sure it was relevant back when many mobile applications used primarily fixed point math and did not want to touch floating point math. Another possibility is that sometimes you might want to store data in a more compact way, say, in bytes, if the precision is enough, and let OpenGL convert the bytes into 0..1 range." CreationDate="2011-03-15T13:57:51.277" UserId="4264" />
  <row Id="12973" PostId="9790" Text="Pretty sure the OP is specifically asking about normals for the verts.  Not talking about velocity vectors and that kind of thing." CreationDate="2011-03-15T14:07:10.130" UserId="51" />
  <row Id="12974" PostId="8407" Text="These were all great answers, but I settled on TweenLite. It's easier for me since I prefer code to timeline work, and it lets me tween multiple properties at once and fire them on a delay. That library rocks!" CreationDate="2011-03-15T14:12:09.990" UserId="3234" />
  <row Id="12975" PostId="8411" Text="Thanks for the info. That method actually did work, we had 1 blank MC, animated it in the timeline, and added the graphics in code. But we still settled on TweenLite just for it's simplicity. I can write code, but i'm not good and doing timeline tweens graphically." CreationDate="2011-03-15T14:13:40.207" UserId="3234" />
  <row Id="12976" PostId="9796" Text="Is the hierarchy modification really a bottleneck?" CreationDate="2011-03-15T14:23:46.730" UserId="4264" />
  <row Id="12978" PostId="9797" Text="Do you just mean retaining aspect ratio or do you need to take the DPI differences into account too? (not to mention color, gamma and brightness, if we go deeper into the &quot;look the same&quot; definition..)" CreationDate="2011-03-15T14:45:37.940" UserId="4264" />
  <row Id="12979" PostId="9796" Text="Ultimately probably not but I was curious from an academic standpoint. Also, I did some really rough testing and when I put all the transforms in an array and updated them by going linearly through the array it ran almost an order of magnitude faster than by traversing the tree (same exact calculations on the transforms - the only thing I changed was how the list of transforms was iterated). That test is definitely not indicative of any &quot;real world&quot; performance but seeing that difference did make me curious about seeing if there was a different approach." CreationDate="2011-03-15T14:48:12.177" UserId="5167" />
  <row Id="12980" PostId="9797" Text="The shape should fit in the screen that same on all screens, I will Schick this by multiplying the position of each vertex by some scale (by I this scale is the size of the screen it will cause aspect ratio problems) I will post an image illustrating my intentions when I get home but I think you understand" CreationDate="2011-03-15T14:57:49.460" UserId="6053" />
  <row Id="12981" PostId="9796" Text="Well.. judging from this, I'd say if the changes are frequent, the tree model wins; if changes are infrequent, the array model wins (it's ok to rebuild the array if it's rare).. and in a real-world case some hybrid might be the optimal, leaving most of the hierarchy static while other parts are dynamic.. I won't post this as an answer though, as someone might have actual experience on the matter =)" CreationDate="2011-03-15T14:59:39.370" UserId="4264" />
  <row Id="12982" PostId="9797" Text="To rephrase: if you take a slide rule, should the shape be the same width in centimeters on different sized screens?" CreationDate="2011-03-15T15:01:10.180" UserId="4264" />
  <row Id="12983" PostId="9789" Score="1" Text="Hi Zolomon - the talk is next Wednesday (24 March 2011), so slides and movies will be posted in time for that. I believe you should be able to apply this approach to 2D rectangles &amp; circles instead of boxes and spheres, but I'm afraid I have currently implemented it in 3D only." CreationDate="2011-03-15T15:17:00.707" UserId="6099" />
  <row Id="12984" PostId="9776" Text="Ohhhh gotchya =), good to know!" CreationDate="2011-03-15T15:21:22.863" UserId="5932" />
  <row Id="12985" PostId="9797" Text="No it should not,  on the same aspect ratio screen the shape should be the same percent of the screens from thr sides as the same shape on a larger screen (the shape looks the same but larger on a larger screen) doing is not of relavent as I will be setting the position in pixels of each vertex" CreationDate="2011-03-15T15:23:48.620" UserId="6053" />
  <row Id="12986" PostId="9800" Text="I'm not sure what other information I can provide. The source can be found here: http://www.railsrocket.com/plainrl-10-released. As for mixins, I have a design pattern I employ for compile-time checkable aspects. That's not a problem... Also, I won't be using NCurses, but FRB for the GUI." CreationDate="2011-03-15T15:44:07.517" UserId="1929" />
  <row Id="12987" PostId="9790" Text="Pretty sure the OP is specifically asking about normals for the verts or (quote start) other thing I don't see yet (quote end) ..." CreationDate="2011-03-15T16:14:42.173" UserId="5660" />
  <row Id="12988" PostId="9475" Text="@Skoder Not exactly. Think about how your linear momentum is reduced over time (hint: other forces act on the object like friction and air resistance). You just need to do something similar for the angular momentum." CreationDate="2011-03-15T16:22:28.537" UserId="4586" />
  <row Id="12989" PostId="9801" Text="I'm not interested in Curses-type game development. That was a sad limitation of Ruby that I saw no work-around for. I'll be using .NET and FlatRedBall as my basis, a 2D engine." CreationDate="2011-03-15T16:42:01.017" UserId="1929" />
  <row Id="12990" PostId="9801" Text="Ah, I did not see that in the original question." CreationDate="2011-03-15T16:43:12.140" UserId="1156" />
  <row Id="12991" PostId="9801" Text="No worries. You're the second person to mention Curses in C#, so I thought I'd clarify that by editing my post a bit more." CreationDate="2011-03-15T16:45:15.067" UserId="1929" />
  <row Id="12992" PostId="9788" Text="swig is c/c++ to other languages.  Lua to other languages needs a different route." CreationDate="2011-03-15T17:17:15.260" UserId="891" />
  <row Id="12993" PostId="9801" Text="So is your post what to look out for when porting from Ruby to C# in general? If so, that's more of a SO question." CreationDate="2011-03-15T17:23:43.960" UserId="1156" />
  <row Id="12994" PostId="9802" Text="You'll be struggling, but good luck." CreationDate="2011-03-15T17:26:10.260" UserId="1156" />
  <row Id="12995" PostId="9802" Score="3" Text="Don't expect anything for NDS or GBA that's a) Completely legal and b) Managed" CreationDate="2011-03-15T17:34:33.197" UserId="2332" />
  <row Id="12996" PostId="9801" Text="It's pure game portage, and the main anticipated issue is with NCurses. I know I'm not the first person to port a game, not even Ruby to C#. I'm looking for something...not sure what. If I knew, I would ask about specifics instead :)" CreationDate="2011-03-15T18:13:02.790" UserId="1929" />
  <row Id="12997" PostId="9802" Score="2" Text="Well, I guess GBA/NDS dev is not for me, then." CreationDate="2011-03-15T18:14:08.497" UserId="1929" />
  <row Id="12998" PostId="9805" Text="Why would you doubt the feasibility of getting a Nintendo dev license? Is it intentionally designed to be difficult for small companies and one-person teams?" CreationDate="2011-03-15T18:14:44.690" UserId="1929" />
  <row Id="12999" PostId="9802" Text="I wouldn't completely disregard it though. If you get a basic game working on the NDS, you can easily show it off at interviews, not only does it show your passion about creating games, but it also shows that you're the kind of programmer that takes things like memory allocation and performance seriously (which is a very desirable trait in a game developer)" CreationDate="2011-03-15T18:16:55.593" UserId="2332" />
  <row Id="13000" PostId="9805" Score="1" Text="@ashes999 Pretty much. Nintendo (like Sony and Microsoft) is a business at the end of the day. They need established teams that they know can deliver and make them a profit. Plus the devkits are pretty expensive." CreationDate="2011-03-15T18:18:21.630" UserId="2332" />
  <row Id="13001" PostId="9802" Text="@Ray I'm a full-time software developer; For the few hours I can scrounge for game development, I'd rather invest in adding new features and debugging in a .NET or Java game, rather than tracking down pointer errors and BSODs in a C++ game. Maybe I'll revisit this question in a few years and see if I have more options." CreationDate="2011-03-15T18:21:06.367" UserId="1929" />
  <row Id="13002" PostId="9802" Text="Ah, that's fair enough :)" CreationDate="2011-03-15T18:26:43.053" UserId="2332" />
  <row Id="13003" PostId="9805" Score="1" Text="IIRC Nintendo requires that you have a brick-and-mortar location (home office doesn't count) w/ adequate security before they will allow you to get one of their development kits." CreationDate="2011-03-15T18:55:09.670" UserId="14" />
  <row Id="13004" PostId="9744" Text="Many, many thanks for the help! I managed to trace my problem down to the matrix manipulation I was doing to the vectors I was passing into the line creation functons! Thanks!" CreationDate="2011-03-15T19:05:32.600" UserId="5740" />
  <row Id="13005" PostId="9802" Score="1" Text="I doubt there'll be managed runtimes for the NDS in a few years. You just can't do managed code with 4MB. I don't think 3DS specs are public yet, but I would be surprised to see over 64MB." CreationDate="2011-03-15T19:14:53.853" UserId="744" />
  <row Id="13006" PostId="9802" Text="@Joe I'm not in a hurry. I'm very interested in hand-held console dev, but on my own terms. Without a managed environment and unit-testing tools, it's just not worth the time effort for me." CreationDate="2011-03-15T19:17:05.800" UserId="1929" />
  <row Id="13007" PostId="9805" Text="@Noctrine you're right (at least, they had that for GBA dev kits). I may or may not have a brick-and-mortar building in the future; I'd rather not depend on that, and explore other options." CreationDate="2011-03-15T19:17:29.480" UserId="1929" />
  <row Id="13008" PostId="9141" Text="+1 Flixel is a pretty decent engine" CreationDate="2011-03-15T19:19:23.813" UserId="1929" />
  <row Id="13009" PostId="9801" Score="1" Text="You just said you weren't interested in Curses, but the main issue is Curses. What?" CreationDate="2011-03-15T20:07:00.247" UserId="1156" />
  <row Id="13010" PostId="9810" Text="Wouldn't a level designer set out that NPC X should be here, and that passage Y should be locked; whereas an environment artist would create the model of the door in passage Y?" CreationDate="2011-03-15T20:09:58.967" UserId="1156" />
  <row Id="13011" PostId="9801" Score="1" Text="I'm upvoting this because libtcod is an excellent library for cross-platform console applications (particularly roguelikes), and the original question didn't have the clear &quot;No console-like engines&quot; requirement that was added later." CreationDate="2011-03-15T20:32:17.713" UserId="2491" />
  <row Id="13012" PostId="9791" Text="As a example if I have all 1024 samples from window 0-1024 and I got them as real values, so no complex part. and I want to calculate the energy in there on the frequency band 43Hz. How would I integrate it then ? (I only need the real part back, the postive part) If you could do it in some pseudocode I'll be in depth of you forever and then I may actually grasp the concept a bit :)" CreationDate="2011-03-15T20:34:21.190" UserId="6070" />
  <row Id="13013" PostId="9771" Text="Thanks for this, both answers so far, have been very good answers. Could you recommend a book about usability as i am not sure what to search for? Also i have currently the most simple GUI possible, only text and buttons." CreationDate="2011-03-15T20:39:16.413" UserId="4830" />
  <row Id="13014" PostId="9796" Text="Thanks for the suggestions/opinions - they definitely work as an answer for me. I really just wanted to know if there was some low hanging fruit to be picked but it sounds like there isn't so I think I'll stick to the tree." CreationDate="2011-03-15T21:33:02.153" UserId="5167" />
  <row Id="13015" PostId="9791" Text="The code I wrote is using the C library you linked, which already contains a &quot;complex&quot; structure.  This makes the unwrapping I described in my question unnecessary (and the code reflects that)" CreationDate="2011-03-15T21:48:03.937" UserId="2091" />
  <row Id="13016" PostId="9805" Text="Nintendo have been *very* clear that they do not want to deal with 'garage' developers. They want to deal business to business so any development work you do will be using Devkitpro and a device like the R4 or you'll work for a larger developer. &#xA;  Unless you want to make DS titles as a learning exercise or as experience for a future job, I'd develop for more open platforms where you have a chance to legally selling what you create." CreationDate="2011-03-15T22:02:08.853" UserId="5957" />
  <row Id="13017" PostId="9338" Text="@Jari: That did indeed fix it. Can you make that an answer so I can accept it?" CreationDate="2011-03-15T22:25:58.503" UserId="5876" />
  <row Id="13018" PostId="9806" Text="Pipes are a useful approach especially if you want something to test out quick and dirty.  It isn't very scalable though and much slower than direct socket to socket communication." CreationDate="2011-03-15T22:54:56.967" UserId="891" />
  <row Id="13019" PostId="9814" Score="1" Text="probably better to ask on http://answers.unity3d.com/ it's like Game Development but just for unity." CreationDate="2011-03-15T23:06:13.963" UserId="891" />
  <row Id="13020" PostId="9784" Text="@defender-zone - You are welcome. There is no need for crediting me, I didn't help you on your question ;)" CreationDate="2011-03-15T23:10:59.980" UserId="2946" />
  <row Id="13021" PostId="9782" Text="I didn't realize there wasn't any XACT support for Windows Phone, that's a serious buzzkill. Good to have this bit of code around then, thanks for the followup!" CreationDate="2011-03-15T23:15:11.567" UserId="3656" />
  <row Id="13022" PostId="9816" Text="+1 I totally missed this one. It's not complete but it's a good start. " CreationDate="2011-03-16T00:14:02.077" UserId="364" />
  <row Id="13023" PostId="9803" Text="I'm already using sockets to get the AI's move from the AI server to the iOS client. Everything is in Lua. I want to know how an AI routine, coded in Python, for example (on the server) could communicate with the Lua socket routine (on the server). For example, the Python AI sends its move to the Lua socket routine which then uses the TCP socket to relay the move to the iOS client." CreationDate="2011-03-16T00:38:23.693" UserId="4984" />
  <row Id="13024" PostId="9806" Text="Maybe I'm missing something. I'm new to this. I thought sockets were used to get info from one computer to another computer somewhere on the net. Can sockets also be used for communication between two programs/processes/coroutines running on the same computer?" CreationDate="2011-03-16T00:41:17.777" UserId="4984" />
  <row Id="13025" PostId="9806" Text="Yep! you are basically communicating over a localhost socket which won't actually route outside the ethernet card.  With socket communication you could be talking to another program on the same computer or another program on a different computer.  It's handled exactly the same." CreationDate="2011-03-16T01:10:40.857" UserId="891" />
  <row Id="13026" PostId="9803" Text="Answered below but socket to socket communication can be used to communicate between two processes or programs on the same computer.  In the same manner as two programs communicating over the internet.  Except you don't need all that TCP/IP handling." CreationDate="2011-03-16T01:13:09.497" UserId="891" />
  <row Id="13027" PostId="9806" Text="Thanks. Even if this is possible the non-Lua AI routine would have to code socket communication routines. I want to get away from this. I just want the non-Lua AI to send a string like &quot;Move P1 to X Y&quot; to my Lua socket code on the server. The Lua socket code will relay the string to the iOS client." CreationDate="2011-03-16T01:17:33.767" UserId="4984" />
  <row Id="13028" PostId="9806" Text="You might try using Pipes directly then.  Let your server side Lua spawn a child process which is your non-Lua AI program.  You can communicate with the child process through it's In and Out pipes.  http://lua-users.org/wiki/ExtensionProposal" CreationDate="2011-03-16T01:32:06.843" UserId="891" />
  <row Id="13029" PostId="9801" Text="@TCD the main issue in porting will be porting the curses to FRB API. I have no interest in using Curses with C#." CreationDate="2011-03-16T02:07:10.810" UserId="1929" />
  <row Id="13030" PostId="9806" Text="How can Lua spawn non-lua processes?" CreationDate="2011-03-16T02:19:23.420" UserId="4984" />
  <row Id="13031" PostId="9574" Text="It's a great project, thanks for sharing it." CreationDate="2011-03-16T02:24:06.537" UserId="5711" />
  <row Id="13032" PostId="9823" Text="This is essentially the pattern I use to define mixins in C#: a public interface, an implementation of that interface, and redirection (&quot;inheritance&quot; by composition)" CreationDate="2011-03-16T02:59:28.347" UserId="1929" />
  <row Id="13034" PostId="9763" Score="1" Text="You might be able to find some more answers here: http://ui.stackexchange.com/" CreationDate="2011-03-16T04:48:33.883" UserId="51" />
  <row Id="13035" PostId="9814" Score="1" Text="@David the signal/noise ratio on Unity Answers has gotten pretty bad.  Here's probably a better resource: http://forum.unity3d.com/forums/16-ShaderLab" CreationDate="2011-03-16T04:53:19.323" UserId="51" />
  <row Id="13036" PostId="9826" Text="I'm wondering how they'll find out the codes for the cheats though! How will I tell them the codes :P" CreationDate="2011-03-16T05:20:37.740" UserId="5925" />
  <row Id="13037" PostId="9826" Text="Updated it with a second part." CreationDate="2011-03-16T05:23:53.713" UserId="962" />
  <row Id="13038" PostId="9826" Text="That was the bit i was asking about sir, i think the only way I can tell them the codes is through the game, but will they get a static code at the end of each level, or a randomised one?" CreationDate="2011-03-16T05:24:47.207" UserId="5925" />
  <row Id="13039" PostId="9826" Text="That's up to you. I personally would have the cheat menu there, and inside it has all the cheats saying locked, and when they click on it, or select it, it will then tell the player what he has to do to unlock the cheat. And when the user does any of the requirments for any of them, he will get the cheat unlocked and a message saying so. The user then can pause and activate the cheat from the cheat menu after he has unlocked it. And when he has unlocked the cheat, it stays unlocked. Solves the random cheat code issue, and gives players things to strive for." CreationDate="2011-03-16T05:30:28.137" UserId="962" />
  <row Id="13040" PostId="9827" Text="Duh, glDepthMask affects glClear. Okay, that actually makes a lot of sense. Thanks!" CreationDate="2011-03-16T06:20:33.780" UserId="5876" />
  <row Id="13041" PostId="2708" Text="@Dave O The first million is the easiest, right? :-)" CreationDate="2011-03-16T06:31:01.587" UserId="5678" />
  <row Id="13042" PostId="9824" Score="1" Text="Leave the enterprising users to find them themselves by disassembling..." CreationDate="2011-03-16T08:43:46.440" UserId="5020" />
  <row Id="13043" PostId="7828" Text="I checked Protocol Buffers and there's no Lua implementation." CreationDate="2011-03-16T09:23:44.463" UserId="4984" />
  <row Id="13045" PostId="9798" Text="This might help http://journal.stuffwithstuff.com/2010/06/11/amaranth-an-open-source-roguelike-in-c/" CreationDate="2011-03-16T11:29:56.197" UserId="789" />
  <row Id="13046" PostId="9832" Score="21" Text="Why do you want to prevent that? If the player wants to cheat, why shouldn't he? He paid for the game after all. (we're talking about single player / offline games, aren't we?)" CreationDate="2011-03-16T12:41:07.067" UserId="2091" />
  <row Id="13048" PostId="9834" Score="2" Text="Considering your method for collecting sprites, I'd lean towards free, just to avoid any significant legal concerns" CreationDate="2011-03-16T13:14:33.297" UserId="4513" />
  <row Id="13049" PostId="9834" Text="Well, according to Turbosquid's license agreement, it is legal for me to do so. The models are sold free, and using them as images are included. I already asked." CreationDate="2011-03-16T13:18:55.977" UserId="6126" />
  <row Id="13050" PostId="9834" Text="Good to hear :)" CreationDate="2011-03-16T13:32:58.803" UserId="4513" />
  <row Id="13051" PostId="9824" Score="4" Text="Wait, cheats are put into games *to be sold by the programmers*? Whoa, apparently I’ve always misunderstood the purpose of cheats." CreationDate="2011-03-16T13:47:31.053" UserId="4661" />
  <row Id="13052" PostId="9826" Text="If you're including cheats to help players who find the game too hard, linking cheats to in-game achievements is probably not the best approach." CreationDate="2011-03-16T14:00:57.093" UserId="953" />
  <row Id="13053" PostId="9768" Text="Luther: true enough. Just because a model is established doesn't mean it's the best one." CreationDate="2011-03-16T14:01:56.330" UserId="953" />
  <row Id="13054" PostId="9816" Text="@Klaim It's a wiki, You can always add what you think should be there. As far as what you described (considering that you referenced TVTropes in your question), it's probably as close as you will get." CreationDate="2011-03-16T14:09:59.393" UserId="14" />
  <row Id="13055" PostId="9816" Text="@Klaim Also, don't forget to check the categories on the right. There are even more in those." CreationDate="2011-03-16T14:11:39.597" UserId="14" />
  <row Id="13056" PostId="7828" Score="1" Text="https://github.com/indygreg/lua-protobuf" CreationDate="2011-03-16T14:26:53.530" UserId="395" />
  <row Id="13057" PostId="9840" Score="1" Text="What kind of game? Multiplayer can be anything from scrabble to a first person shooter... be more specific." CreationDate="2011-03-16T14:33:38.363" UserId="20" />
  <row Id="13058" PostId="9840" Text="I think you didin't understand the question. What I want to know is if it's possible to use these two technologies (cocos2d-javascript - cocos2d-javascript.org - and node.js) together." CreationDate="2011-03-16T14:38:07.407" UserId="6011" />
  <row Id="13059" PostId="9840" Text="It means any kind of game I can make with cocos2d-javascript, so a first person shooter isn't included..." CreationDate="2011-03-16T14:40:28.590" UserId="6011" />
  <row Id="13060" PostId="9840" Text="cocos2d together with node.js should work perfectly fine IMO. Node.js is server-side and doesn't impose much limitations when it comes to the client-side library or language." CreationDate="2011-03-16T14:54:08.447" UserId="20" />
  <row Id="13061" PostId="9840" Text="Yeah, I know that but I don't realize how to do that. Do you know any tutorial or blog post about that? It could be just a simple game." CreationDate="2011-03-16T14:59:57.387" UserId="6011" />
  <row Id="13062" PostId="9843" Score="1" Text="+1 for removing random keys! Best way to beat cheaters, detect when it happens, and subtly make their life hard." CreationDate="2011-03-16T16:05:12.163" UserId="1198" />
  <row Id="13063" PostId="1624" Text="@nhnb Regarding your flag, please see TomWij's comment (and kind action) on the question itself." CreationDate="2011-03-16T16:17:48.287" UserId="189" />
  <row Id="13064" PostId="9847" Text="I don't want to ignore the gravity... I will try by applying force..." CreationDate="2011-03-16T16:24:03.140" UserId="1560" />
  <row Id="13065" PostId="9843" Text="@Nate this is precisely what I'm trying to do; make it harder to cheat. People find it fun to cheat. Well, I find it fun to throw wrenches in their cheating! +1 for checksumming." CreationDate="2011-03-16T16:39:59.513" UserId="1929" />
  <row Id="13066" PostId="9845" Score="1" Text="Use a slingshot: http://www.lapitapi.com/angry-birds-based-on-open-source-physics-engine-box2d.html" CreationDate="2011-03-16T16:40:17.703" UserId="1868" />
  <row Id="13067" PostId="9832" Text="We are indeed talking about single player offline games. Free games. I find it fun to throw wrenches in the plans of cheaters." CreationDate="2011-03-16T16:40:24.273" UserId="1929" />
  <row Id="13068" PostId="9842" Score="1" Text="Pointless? Maybe. Fun? Aw yeah." CreationDate="2011-03-16T16:41:04.380" UserId="1929" />
  <row Id="13069" PostId="6411" Text="Also, I want to add: use an agile/iterative method. Cut your game into small, two-week implementation cycles where you do something. Not a full feature, maybe, but something playable." CreationDate="2011-03-16T16:43:22.943" UserId="1929" />
  <row Id="13070" PostId="9832" Score="4" Text="You like putting extra effort in for pretty much no reason?" CreationDate="2011-03-16T17:09:35.013" UserId="1156" />
  <row Id="13071" PostId="9847" Score="1" Text="If you don't want to ignore gravity entirely, can you be more specific about what you mean by &quot;fly?&quot; Suffer a reducing effect from gravity?" CreationDate="2011-03-16T17:51:41.637" UserId="1430" />
  <row Id="13072" PostId="9832" Score="2" Text="-1 for spending extra effort to make games that are quantifiably less fun." CreationDate="2011-03-16T17:57:54.660" UserId="962" />
  <row Id="13073" PostId="9838" Text="That is mobile, which is completely different than console or PC." CreationDate="2011-03-16T18:07:59.457" UserId="962" />
  <row Id="13074" PostId="9847" Text="Yup it worked(By applying force to bird)... How to make bird to moving randomly in the screen. Do i need to apply force randomly and continuously?" CreationDate="2011-03-16T18:11:18.700" UserId="1560" />
  <row Id="13075" PostId="9832" Text="@TCD I like to solve problems that I find interesting to solve. What's wrong with that?&#xA;@AH less fun for you, maybe." CreationDate="2011-03-16T18:41:13.420" UserId="1929" />
  <row Id="13076" PostId="9745" Text="Woops! replaced the missing part, was having some problems because I was on a crappy 3G network.&#xA;&#xA;The trigger method was what I was going for :) I just don't know how to translate the idea to code. I guess the type of trigger and the action aswell would be defined in a string. But using a huge switch statement to react to the given trigger/action like my example seems inefficient. Perhaps an example would example further?&#xA;Thanks :)" CreationDate="2011-03-16T18:55:41.457" UserId="5677" />
  <row Id="13077" PostId="9846" Text="Thanks Josh, great answer and just the information I was looking for." CreationDate="2011-03-16T19:26:27.407" UserId="5527" />
  <row Id="13078" PostId="9844" Text="I do know that very large companies will have a group like that and have producer/managers. As @Josh had said, someone needs to be managing the tracking/reporting/metrics. I've found that a developer may not be the best fit for that type of role. People who like to write code, generally don't like sitting in meetings, looking at schedules, babysitting artists, etc... :)  Thanks for the answer" CreationDate="2011-03-16T19:32:44.983" UserId="5527" />
  <row Id="13080" PostId="9832" Score="1" Text="Why are people hating? If you don't want to add helpful comments, please keep your comments to yourself. If you don't want to play  my games, don't." CreationDate="2011-03-16T19:50:18.790" UserId="1929" />
  <row Id="13081" PostId="9842" Text="My normal procedure of locating memory addresses which hold game stats would detect both health and healthComplement." CreationDate="2011-03-16T19:58:37.603" UserId="202" />
  <row Id="13082" PostId="9832" Score="9" Text="Regardless of whether or not you think a single player game should have cheat prevention, the question has merit as it applies to more than just his game. +1" CreationDate="2011-03-16T20:01:33.897" UserId="4604" />
  <row Id="13083" PostId="9851" Score="1" Text="This is very easy to find with, for example, &quot;artmoney&quot; memory hack tool." CreationDate="2011-03-16T20:14:26.677" UserId="4264" />
  <row Id="13084" PostId="9851" Text="I like your creativity." CreationDate="2011-03-16T20:20:00.200" UserId="1929" />
  <row Id="13085" PostId="9854" Text="I did the square thing. Investigating the FBX file, I noticed that I it has two values called UnitScaleFactor and OriginalUnitScaleFactor. They both are 100 when I export the files... And if I manually change UnitScaleFactor to 1, it works fine :S" CreationDate="2011-03-16T20:43:51.583" UserId="802" />
  <row Id="13086" PostId="9854" Text="What version of 3DS Max are you using?  Briefly looking here, it seems that the FBX 2010 and 2011 versions are a bit different and break some things: http://www.nuclex.org/articles/graphics/115-mesh-based-bone-animation-in-xna (Check down in the &quot;Exporting to XNA section&quot;)" CreationDate="2011-03-16T20:58:08.060" UserId="4296" />
  <row Id="13087" PostId="9854" Text="I am using 3DS Max 2010 but with the latest version of the exporter  (FBX 2011.3.1)" CreationDate="2011-03-16T21:07:00.830" UserId="802" />
  <row Id="13088" PostId="9832" Score="2" Text="@ashes99 Ok then, I didn't see that point originally. And there's no point saying 'helpful comments only please' because everything I see is constructive criticism. " CreationDate="2011-03-16T21:41:48.770" UserId="1156" />
  <row Id="13089" PostId="9860" Text="Note that in the screenshot, the green, red and blue lines are just the axes of the 3D world." CreationDate="2011-03-16T21:53:34.557" UserId="5740" />
  <row Id="13090" PostId="9862" Score="1" Text="I got an upvote less than a minute after posting this, which I refuse to believe is enough time to read it and decide if it is a good answer or not. I have seen several indications that some people are simply upvoting answers that are long and written without horrible grammar. Please don't do that." CreationDate="2011-03-16T22:24:19.850" UserId="744" />
  <row Id="13091" PostId="9847" Text="You should probably make a few states for bird flight patterns, and randomly switch between different modes of flight patterns. Don't just use completely random forces and directions or that will not look like a bird at all." CreationDate="2011-03-16T22:25:05.910" UserId="962" />
  <row Id="13092" PostId="9859" Text="Thanks. I had a feeling this was the answer, but I thought it couldn't hurt to ask." CreationDate="2011-03-16T22:29:20.227" UserId="6135" />
  <row Id="13093" PostId="9833" Text="-1 &quot;You should definetely make a class for XP&quot; - this is one of the fundamental errors of OO design. If you want an OO design, you should definitely make a class to chunk numbers into bounded ranges, of which XP should be an instance carrying particular data. It is also a myth that xp.getRequiredXP(level) is somehow less public than xp[level] or xp.required[level], if xp is const." CreationDate="2011-03-16T22:38:02.577" UserId="744" />
  <row Id="13094" PostId="9824" Text="@Konrad Rudolph, I think the OP is talking about the horrible practice of basically selling cheats, when developers/publishers who sell DLC that unlocks stuff or gives unfair advantages in multiplexer games." CreationDate="2011-03-16T22:43:20.903" UserId="962" />
  <row Id="13095" PostId="9838" Text="@AttackingHobo My mistake. Edited accordingly." CreationDate="2011-03-16T22:43:52.887" UserId="789" />
  <row Id="13096" PostId="9861" Text="I was more looking for algorithms to update the AABB. I'd rather not project every vertex into world space, and then compute the AABB from that." CreationDate="2011-03-16T22:54:18.240" UserId="4662" />
  <row Id="13097" PostId="9802" Text="By the time we have handhelds where managed environments are the norm, that attitude will just produce desire for the next fancy programming &quot;productivity&quot; toy." CreationDate="2011-03-16T23:09:13.317" UserId="744" />
  <row Id="13098" PostId="9821" Text="+1 - When you only have 256KB of RAM (as in a GBA), it's probably more a chore to find a place for new pointers than figure out where bad ones went!" CreationDate="2011-03-16T23:12:06.060" UserId="744" />
  <row Id="13099" PostId="9833" Text="@Joe I didn't say that xp[level] would be less public, I said that using direct access to a variable tightly couples the classes and restricts any further modifications (e.g. one decides to change the whole XP system) very drasticly and that why direct access to variables is against the very basic principles of OO. Your first point doesn't make any sense. I haven't discussed about the internal design in any way, just suggested a wrapper class for the charts, which exactly answers the OP's question &quot;how should those logic routines access the constants and charts?&quot;" CreationDate="2011-03-16T23:20:30.860" UserId="789" />
  <row Id="13100" PostId="9861" Text="I updated the answer with details on how to compute a less precise bounding box that is more efficient than parsing all the vertexes of the model." CreationDate="2011-03-16T23:24:44.283" UserId="962" />
  <row Id="13101" PostId="9739" Text="Video of new stuff&#xA;http://www.youtube.com/watch?v=hf1H8vDvp98" CreationDate="2011-03-16T23:51:08.757" UserId="5932" />
  <row Id="13103" PostId="9861" Text="@Dave O There made it more readable." CreationDate="2011-03-17T02:08:17.607" UserId="962" />
  <row Id="13104" PostId="9821" Text="I spent years coding (enterprise) C++ applications. I may eventually do what you say; but the lure of managed memory is the lure of productivity, and given scant resources, I'd rather spend time worrying about features than pointers." CreationDate="2011-03-17T02:21:12.920" UserId="1929" />
  <row Id="13105" PostId="9802" Text="@Joe maybe you don't think managed memory and unit testing are significant. I know they boost my productivity by several orders of magnitude. That's worth waiting for." CreationDate="2011-03-17T02:21:57.893" UserId="1929" />
  <row Id="13106" PostId="9844" Text="Some will, some won't. But with technical departments in technical companies, almost all management will be ex-technical staff promoted from within. Generic management skills are usually insufficient to manage such a specific technical area. Even a typical producer on the game side is an ex programmer, artist, or designer, simply because they know how the projects work in a way that an 'outsider' would not." CreationDate="2011-03-17T02:35:32.497" UserId="1101" />
  <row Id="13107" PostId="9844" Text="Oh... and you're right that that those of us who like code don't like sitting in meetings, looking at schedules, or babysitting artists - but that comes with the job unfortunately! Multidisciplinary skills are the order of the day as you move up the ladder." CreationDate="2011-03-17T02:37:59.280" UserId="1101" />
  <row Id="13108" PostId="9861" Text="@DeadMG There's no way of &quot;updating the AABB&quot; in the sense you want it. By definition, the aabb has to completely enclose the model and if the model changes, you're pretty much forced to process all vertices. Hobo's on the spot." CreationDate="2011-03-17T03:38:24.457" UserId="202" />
  <row Id="13109" PostId="6954" Text="+1 for Moock's Essential ActionScript 3.0 " CreationDate="2011-03-17T05:15:05.347" UserId="6137" />
  <row Id="13110" PostId="9619" Text="Nice additions... I need help with some of these topics! ;)" CreationDate="2011-03-17T05:16:51.583" UserId="1953" />
  <row Id="13111" PostId="9821" Text="I was worried about the same thing when I started writing an interpreter for a little language in C++. I spent literally a couple of hours writing a smart pointer class and that was the last I had to worry about it. I just pass `Ref&lt;T&gt;` everywhere and I'm 90% of the way back to a GC language." CreationDate="2011-03-17T05:34:55.530" UserId="160" />
  <row Id="13112" PostId="9861" Score="1" Text="..Or, if you want to skip all this updating, use bounding spheres instead. =)" CreationDate="2011-03-17T06:36:40.893" UserId="4264" />
  <row Id="13113" PostId="9862" Text="This particular answer just rings true for any experienced developer. I upvoted it almost immediately too, because when I read it I'm like &quot;Yeah, yeah, it always works like this&quot;." CreationDate="2011-03-17T06:57:27.113" UserId="2710" />
  <row Id="13114" PostId="9871" Text="Indeed! It's quite terrible under Wine, and I haven't gotten it to work yet... but I guess that's the only option." CreationDate="2011-03-17T07:52:23.687" UserId="5876" />
  <row Id="13115" PostId="9871" Text="Based on a quick search it looks like the compressonator is the only way to do it. There's some hints that some SDK used to support it as well, so one might be able to roll your own tool, but nothing concrete. See this thread for some clues: http://www.opengl.org/discussion_boards/ubbthreads.php?ubb=showflat&amp;Number=262790" CreationDate="2011-03-17T08:04:16.170" UserId="4264" />
  <row Id="13116" PostId="9871" Text="Oh well... I decided to run the compressonator under VirtualBox, which can access my Linux file system, so I can still fully automate it. And at least I can do all my DXT textures with the same tool too." CreationDate="2011-03-17T08:09:53.937" UserId="5876" />
  <row Id="13117" PostId="9847" Text="Can you explain little bit... How to make a bird to move in the described flight patterns..." CreationDate="2011-03-17T08:24:51.323" UserId="1560" />
  <row Id="13118" PostId="9863" Text="Ah... ok! Do you know how I can figure this out mathematically..?" CreationDate="2011-03-17T08:41:44.080" UserId="5740" />
  <row Id="13119" PostId="9832" Score="1" Text="The same functionality applies to multiplayer games, so this is a totally valid question." CreationDate="2011-03-17T12:19:50.813" UserId="4264" />
  <row Id="13120" PostId="9830" Text="Thanks for the link to the article. The scene graph approach in it was interesting and while I'll stick to the tree for now it's definitely nice to know about it for future reference" CreationDate="2011-03-17T12:34:05.113" UserId="5167" />
  <row Id="13121" PostId="9875" Text="Jari, i don't think that your image is correct, photoshop doesn't change direction vectors and this is not fluid simulation. It is similar, but irelevant to the answer. And some kind of transformation function? That is really wrong without mentioning Navier-Strokes or LBM ... " CreationDate="2011-03-17T12:41:37.743" UserId="3794" />
  <row Id="13122" PostId="9875" Text="I don't think the linked video is &quot;fluid simulation&quot; either, but exactly this." CreationDate="2011-03-17T12:53:42.417" UserId="4264" />
  <row Id="13123" PostId="9737" Text="What data format are you using? (XML?) I'm not familiar with Action Script. Sounds like this is going to be data driven." CreationDate="2011-03-17T13:23:49.453" UserId="3547" />
  <row Id="13124" PostId="6780" Text="+1 FlashPunk looks awesome. Flixel is not my cup of tea, though." CreationDate="2011-03-17T15:11:06.850" UserId="1929" />
  <row Id="13125" PostId="9842" Text="@DaveO even if Complement was a random integer which was XOR'ed with the health value? You could probably find the changing memory addresses, but making sense of them without knowing what's going on would be difficult, I think." CreationDate="2011-03-17T15:14:22.420" UserId="2531" />
  <row Id="13126" PostId="8994" Text="@DeadMG: Every language's interoperation with C++ is terrible (including C++ itself from different compilers) - that's usually C++'s fault, not the other language's." CreationDate="2011-03-17T16:14:55.407" UserId="744" />
  <row Id="13127" PostId="8994" Text="@Joe: Those languages are not interpreted from within C++." CreationDate="2011-03-17T16:35:05.207" UserId="4662" />
  <row Id="13128" PostId="9832" Text="@Jari Komppa wouldn't this not be needed, since data is stored on the server?" CreationDate="2011-03-17T16:35:55.260" UserId="1156" />
  <row Id="13129" PostId="9832" Text="@The Communist Duck: The important data, yes.. but sometimes you want to offload tasks to the client for performance and latency reasons. *Shrug*." CreationDate="2011-03-17T16:39:53.970" UserId="4264" />
  <row Id="13130" PostId="9832" Text="Ok, thanks for clearing that up :)" CreationDate="2011-03-17T16:40:42.727" UserId="1156" />
  <row Id="13131" PostId="9883" Score="1" Text="btw. I work on fluid rendering in Autodesk Maya :)" CreationDate="2011-03-17T16:46:25.157" UserId="3794" />
  <row Id="13133" PostId="9887" Text="I know how to do a sphere-sphere collision test. My problem is trying to find the position where this collision will happen in the future. Thanks." CreationDate="2011-03-17T20:42:04.603" UserId="5740" />
  <row Id="13134" PostId="9889" Text="I know how to do a sphere-sphere collision test. My problem is trying to find the position where this collision will happen in the future. Thanks." CreationDate="2011-03-17T20:43:09.627" UserId="5740" />
  <row Id="13135" PostId="9889" Text="@James that article will solve your problems.  Look at page 2 and you can use an arbitrarily high number for the &quot;velocity&quot; on one of your spheres to determine the collision point &quot;in the future&quot;." CreationDate="2011-03-17T20:58:29.283" UserId="51" />
  <row Id="13137" PostId="9889" Text="Ok - sorry for not checking it out, it does look pretty good! I'll have to get back to you once I've read it. Thanks :)" CreationDate="2011-03-17T22:03:59.620" UserId="5740" />
  <row Id="13139" PostId="9893" Text="Punkbuster, hehe.. There is a reason there is a third party app that detects third party apps and alterations :)" CreationDate="2011-03-17T23:52:02.500" UserId="4443" />
  <row Id="13143" PostId="9894" Text="With Java 7 around the corner it's time to stop targeting Java 5." CreationDate="2011-03-18T05:24:11.657" UserId="891" />
  <row Id="13144" PostId="9899" Text="Very good stuff there!" CreationDate="2011-03-18T05:27:33.007" UserId="1198" />
  <row Id="13145" PostId="9899" Text="i really enjoyed that article" CreationDate="2011-03-18T05:33:54.207" UserId="6165" />
  <row Id="13146" PostId="9899" Text="Yes! once you start following his FAQs you will soon realize that you are a getting all answers to your questions. However you can ask him questions on his bulletin board also and i bet he will answer. But be specific and non repetitive. :)" CreationDate="2011-03-18T06:16:34.670" UserId="3212" />
  <row Id="13147" PostId="9896" Text="The amount of times this occurs to even the best :)" CreationDate="2011-03-18T06:54:29.357" UserId="4513" />
  <row Id="13148" PostId="9894" Score="1" Text="@David Young, for server software and controlled environments, it's easy to use the latest versions (after they are considered mature enough).  But if your target group is more or less random website visitors, the version actually in use by those is more important than the latest version released. So the percentage of Java 5 users going down drastically is a very good sign. But that is not because Java 7 is to be released next year." CreationDate="2011-03-18T07:00:50.613" UserId="450" />
  <row Id="13149" PostId="9896" Score="3" Text="Pick one and live with it. In the next project you'll know better. =)" CreationDate="2011-03-18T08:23:51.073" UserId="4264" />
  <row Id="13150" PostId="5461" Text="yes! thats the beauty of this book. Plus it feeds you with more ideas, actually every possible idea that a game can have. A must in game developer's book shelf :)" CreationDate="2011-03-18T08:52:23.053" UserId="3212" />
  <row Id="13151" PostId="9897" Text="-1, try to search for your problem before asking question. We have tons of &quot;how do i start&quot; questions.  " CreationDate="2011-03-18T09:24:53.697" UserId="3794" />
  <row Id="13152" PostId="9897" Text="yes i did but question is little different that 3 point " CreationDate="2011-03-18T09:28:00.730" UserId="6165" />
  <row Id="13153" PostId="9853" Text="How are you drawing your model in XNA? Are you applying the absolute transform matrix?" CreationDate="2011-03-18T09:33:38.943" UserId="2798" />
  <row Id="13154" PostId="436" Score="1" Text="Sadly I know plenty of people that write &quot;JAVA&quot;." CreationDate="2011-03-18T09:39:40.883" UserId="744" />
  <row Id="13155" PostId="9897" Text="Ok, you are right. Sorry then." CreationDate="2011-03-18T09:43:22.487" UserId="3794" />
  <row Id="13156" PostId="9904" Text="i love to program, and i'm not tired. The think is i like to be little professional .I think  PHP is worst language.so i try to learn little more stuff..     " CreationDate="2011-03-18T10:24:54.253" UserId="6165" />
  <row Id="13157" PostId="9848" Text="This approach is good for debugging - you can pipe the dictionary to a http server and edit the numbers on the fly from another app, or print the values on the screen, etc. " CreationDate="2011-03-18T11:07:22.087" UserId="259" />
  <row Id="13158" PostId="9842" Text="@Vilx: You could find out exactly what's going on by decompiling the program or reading the assembly - skills I think would be common for the kind of hacker we're talking about." CreationDate="2011-03-18T11:17:49.203" UserId="2698" />
  <row Id="13159" PostId="9842" Score="2" Text="@Jonathan Hobbs - Yes, but we're talking about memory editors here, which are used by people of lot less skill. Also, although _theoretically_ nothing can stand against reading the disassembly, _in practice_ it is possible to provide enough obfuscation that only the most skilled of skilled can hack through it. Reading disassembly isn't exactly easy." CreationDate="2011-03-18T11:36:12.890" UserId="2531" />
  <row Id="13160" PostId="9843" Text="It's a game of [walls and ladders](http://blogs.msdn.com/b/oldnewthing/archive/2011/03/10/10138969.aspx), but I find it fun on both sides. :) Never played it though. :P" CreationDate="2011-03-18T11:40:14.693" UserId="2531" />
  <row Id="13161" PostId="9881" Text="Can you post a plot of the evolution of instantEnergyList[index + 1] and historyBuffer over time for one band?  The two graphs overlayed on top of each other.  That would give clues about what the problem might be.  Also, energy must be the square of the magnitude, don't forget that." CreationDate="2011-03-18T12:31:16.647" UserId="2091" />
  <row Id="13162" PostId="9909" Score="3" Text="If you're not learning anything new using Unity, you're not looking at your schooling the right way. You can learn something new from any new technology, even if it's not to your taste or seems too simplistic. However, it's good that you're working to learn other techs on your own." CreationDate="2011-03-18T13:12:33.010" UserId="953" />
  <row Id="13163" PostId="9893" Text="Why are you worried if people create bots?  Maybe you can work around it, so it's just not a problem." CreationDate="2011-03-18T13:15:30.197" UserId="3673" />
  <row Id="13165" PostId="9908" Score="2" Text="(Or like, any of the other dozen questions about how to apply MVC / what the asker thinks is MVC.)" CreationDate="2011-03-18T13:22:05.123" UserId="744" />
  <row Id="13166" PostId="9881" Text="Ahh yes that might unveil the problem, let me see if I can somehow make some graphs" CreationDate="2011-03-18T14:44:27.040" UserId="6070" />
  <row Id="13167" PostId="9844" Text="Yep, I agree, there is a technical knowledge requirement from past experience as a developer. I know a lot of the great developer / programmers that I work with don't have, and could care less about, the skills required to lead groups. Was just pointing out that not everyone is suited for those roles." CreationDate="2011-03-18T15:01:52.120" UserId="5527" />
  <row Id="13168" PostId="9900" Text="I doubt you found a guy with a mechanical bot. It was more likely a software bot that emulated a hardware keyboard for the inputs." CreationDate="2011-03-18T15:30:52.797" UserId="962" />
  <row Id="13169" PostId="9864" Score="1" Text="Trusted Computing? &lt;Stallman&gt; You mean, Treacherous Computing! &lt;/Stallman&gt;" CreationDate="2011-03-18T15:44:42.870" UserId="4604" />
  <row Id="13170" PostId="9696" Text="I would love to get more advices from you but I can't find a way to communicate directly with you (a PM or something like that). Just don't wanna reveal insides of my game publicly." CreationDate="2011-03-18T15:52:30.587" UserId="4538" />
  <row Id="13171" PostId="9896" Text="http://gamedev.stackexchange.com/questions/3404/architecture-a-for-a-central-renderer-rather-than-self-rendering Would be a good read :)" CreationDate="2011-03-18T16:02:06.333" UserId="1156" />
  <row Id="13172" PostId="9909" Score="2" Text="I don't see the point in this question." CreationDate="2011-03-18T16:03:02.700" UserId="1156" />
  <row Id="13173" PostId="9897" Text="I still feel this follows the basic pattern of 'how do I start?': that is; what language do I use, where can I learn from, and what of my previous languages will help." CreationDate="2011-03-18T16:04:08.890" UserId="1156" />
  <row Id="13174" PostId="9909" Text="Unity Pro licenses? Why not make editor extensions?" CreationDate="2011-03-18T16:04:27.190" UserId="14" />
  <row Id="13175" PostId="9916" Text="You have two separate questions; how and when to load data, and how to check if something is in camera shot." CreationDate="2011-03-18T16:28:13.317" UserId="1156" />
  <row Id="13176" PostId="9916" Text="Okay, then my main question is; does a game load every single object(in a basic kind of way?) that will be used, when it starts?" CreationDate="2011-03-18T16:30:49.800" UserId="6173" />
  <row Id="13177" PostId="9916" Text="I would edit out the last part of your question then, and maybe ask it as a separate question later?" CreationDate="2011-03-18T16:34:04.107" UserId="1156" />
  <row Id="13178" PostId="9916" Text="Okay done hopefully that's more to the point?" CreationDate="2011-03-18T16:39:37.453" UserId="6173" />
  <row Id="13179" PostId="9916" Text="That looks good, I'll clear up your tags. And +1, good question." CreationDate="2011-03-18T16:40:07.457" UserId="1156" />
  <row Id="13180" PostId="9909" Score="2" Text="Surely it doesn't matter what tool you're using, it depends on what you want to learn. If you want to learn low level graphics then you are completely entitled to use OpenGL/DirectX. If you want to learn other things like Physics and AI you can very easily learn these concepts through creating the appropriate scripts in Unity. In all honesty, the final question seems to me like you want everyone here to say &quot;YOU'RE DOING IT WRONG&quot; to your school, just so you can show them and that, quite frankly, just doesn't sit right with me." CreationDate="2011-03-18T16:42:45.140" UserId="2332" />
  <row Id="13181" PostId="9914" Text="I think that games that depend on teamwork and preparation, and games that depend on pure twitch skills have their place. Still I don't think anyone should adapt their game design choices to technical obstacles" CreationDate="2011-03-18T17:09:41.127" UserId="6117" />
  <row Id="13182" PostId="9916" Score="1" Text="http://gamedev.stackexchange.com/questions/1171/what-all-should-be-happening-during-the-loading-screen Might also be of use to you." CreationDate="2011-03-18T17:11:45.167" UserId="1156" />
  <row Id="13183" PostId="9922" Text="Potentially yes." CreationDate="2011-03-18T17:54:11.107" UserId="14" />
  <row Id="13184" PostId="9924" Score="1" Text="I don't see why a maths library would be dependent on a graphics API anyway. :P" CreationDate="2011-03-18T18:15:09.340" UserId="1156" />
  <row Id="13185" PostId="9926" Text="Thanks. I have all GPU Gems, but i haven't read them yet. I will try them. Only problem is, that all of these books are old :(" CreationDate="2011-03-18T18:17:10.763" UserId="4947" />
  <row Id="13186" PostId="9924" Score="2" Text="afaik opengl uses column major matrices and directx row major. so it would be nice if the library supported both" CreationDate="2011-03-18T18:28:51.043" UserId="554" />
  <row Id="13187" PostId="9933" Score="2" Text="everything is possible in a game... it's just the amount of time you want to invest." CreationDate="2011-03-18T19:34:56.393" UserId="2301" />
  <row Id="13188" PostId="9900" Score="1" Text="No, actual mechanical bot. The author sent us pictures. Unfortunately, they're already deleted from server (it was back in 2007!), so you'll have to take my word for it." CreationDate="2011-03-18T19:35:50.823" UserId="2710" />
  <row Id="13189" PostId="9696" Text="You can reach me via email and/or googletalk at cthulhu dot within at gmail dot com." CreationDate="2011-03-18T19:40:30.553" UserId="2710" />
  <row Id="13190" PostId="9696" Text="Although I strongly suggest you ask as much as possible here, and not in private. That way, it'd benefit more people and you'd get better answers." CreationDate="2011-03-18T19:46:24.180" UserId="2710" />
  <row Id="13191" PostId="9893" Text="@James Punkbuster is horrible. I am many others have had bad experiences trying to play new games when they come out. Constantly get kicked for some punkbuster error, not fun." CreationDate="2011-03-18T19:48:13.540" UserId="962" />
  <row Id="13192" PostId="9893" Text="@Beska: as cool as that sounds I need some serious convincing that bots wont destroy the game for non-bot players.  I sure a game could be designed where bots would not ruin the experience.  I am quite certain that for most online multiplayer games it's non-trivial to make the game mechanics bot proof." CreationDate="2011-03-18T19:49:40.193" UserId="370" />
  <row Id="13193" PostId="9936" Text="What are you going to use this for? If we know what you are trying to achieve it will be easier to answer." CreationDate="2011-03-18T19:53:20.870" UserId="962" />
  <row Id="13194" PostId="9914" Text="@Zaky: I once prototyped a worms-style game where during sudden death the screen would slowly fill with an SPH fluid.  It looked really cool until the game lagged to death.  I think many game design decisions are effected by technical obstacles." CreationDate="2011-03-18T19:57:38.653" UserId="370" />
  <row Id="13195" PostId="9914" Text="@deft_code I meant game design as in gameplay mechanics, not artistic or  graphical design" CreationDate="2011-03-18T20:02:05.927" UserId="6117" />
  <row Id="13196" PostId="9936" Text="If you want to &quot;replicate&quot; exactly the same shape, why not simply clone it or create a new instance of it?" CreationDate="2011-03-18T20:36:44.057" UserId="20" />
  <row Id="13197" PostId="9932" Text="the Matrix.CreateLookAt method does this internally. He is correct supplying Vector3.Up as the 3rd arg. Internally, it uses the Vector3.Up as a helper to determine the ortho up vector." CreationDate="2011-03-18T20:39:24.330" UserId="1923" />
  <row Id="13198" PostId="9933" Score="1" Text="Are you sure you want a globe? Going &quot;up&quot; 10 units, then &quot;left&quot; 10 units, &quot;down&quot; 10 units and &quot;right&quot; 10 units on a sphere will usually not land you at your starting point. However, doing so on a [torus](http://en.wikipedia.org/wiki/Torus) will." CreationDate="2011-03-18T20:45:40.887" UserId="5864" />
  <row Id="13199" PostId="9933" Text="@Sam: I think you are right. I would definitely use a torus instead of a globe if it solves that &quot;problem&quot;." CreationDate="2011-03-18T20:57:21.983" UserId="1694" />
  <row Id="13200" PostId="9940" Text="I think what I want is more like a torus as pointed by Sam in the comments. Yes, I would want that to happen, but I am afraid it is too complex to achieve." CreationDate="2011-03-18T20:59:12.480" UserId="1694" />
  <row Id="13201" PostId="9941" Text="I have neve heard of Scoreloop before this. I have a ton of OpenFeint games, however." CreationDate="2011-03-18T21:34:30.510" UserId="1156" />
  <row Id="13202" PostId="9924" Score="1" Text="In GL, you can always set the transposed matrix, and in DX, you can specify the layout in the shaders. Manually adjusting is also no big deal." CreationDate="2011-03-18T21:37:38.930" UserId="2919" />
  <row Id="13203" PostId="9893" Text="@AttackingHobo All I meant to point out is that there are entire companies who do nothing but attempt to figure out a solution to this problem. PunkBuster is just one of the more known pieces of software that attempts to do this, good or bad :)" CreationDate="2011-03-18T22:05:40.397" UserId="4443" />
  <row Id="13204" PostId="9935" Text="This post seems to prepare you for more &quot;high&quot;-end companies.&#xA;Especially as student the required knowledge/req. skills are not that extremely as described in the blog post.&#xA;It gives a broad overview of what &quot;could come&quot;, but I assume as long as you apply to lower or mid-class jobs, at normal companies, you are not forced to know that stuff as good as you write your M.D. about it." CreationDate="2011-03-18T23:16:26.567" UserId="2063" />
  <row Id="13206" PostId="9914" Text="My use of SPH is as much a game mechanic as the watery death in worms.  I just change the way the water interacted with the game." CreationDate="2011-03-18T23:41:11.227" UserId="370" />
  <row Id="13208" PostId="9948" Text="Thanks for the response! I appreciate it." CreationDate="2011-03-19T00:53:31.180" UserId="5932" />
  <row Id="13209" PostId="9936" Text="OK...here's what i'm trying to do...I'm using Box2D and I put sprites or movieclips as the Box2D object's 'skin'. Previously I created a combination of Box2D primitive shapes that resembled the sprite but it was never satisfactory as the sprite was not a regular shape...some bits were sicking out which were not over the underlying box2D shape. So I wanted a way to replicate the sprite's shape programmatically and create a Box2D shape that resembled the sprite's shape so that the collisions would look realistic there'll be no overlapping of sprites as in the previous case." CreationDate="2011-03-19T07:11:52.130" UserId="5705" />
  <row Id="13211" PostId="9943" Score="1" Text="A bit of clarification on the disorientation subject. Say that you are at the equator and scroll along it. You will end up on the other side of the world. You sense of UP will be north. BUT, if you are at the equator and scroll north, you will end up on the other side of the world and your UP will be south. In order to avoid this you can stop the camera at the poles (as Leniency says) or having the camera auto rotate so that UP always is north. In the latter case, battling around the poles will be difficult since the camera will always rotate to point up." CreationDate="2011-03-19T07:33:41.933" UserId="5250" />
  <row Id="13212" PostId="9933" Score="1" Text="You might want to take a look at Populous 3 game for a working example. There are globe worlds/maps there. Very neat :)" CreationDate="2011-03-19T08:55:15.610" UserId="3644" />
  <row Id="13213" PostId="9869" Text="I like the third way of doing things. For example, you could have a &quot;damageable&quot; function that adds a health attribute and a damage() method. You could then duck-type your other code based on the presence of real data/methods instead of sentinel &quot;isDamageable&quot;-type values." CreationDate="2011-03-19T09:37:10.217" UserId="148" />
  <row Id="13214" PostId="9943" Text="Interesting. However, I don't find that disorientation a problem. It actually does not matter where the north is in my game. It's just some map that you can view and play on." CreationDate="2011-03-19T10:39:19.863" UserId="1694" />
  <row Id="13215" PostId="9929" Score="1" Text="LGPL, so it's pretty useless. A math library is meant to be inlined, so this pretty much forces your project to be (L)GPL too." CreationDate="2011-03-19T10:55:14.590" UserId="4264" />
  <row Id="13216" PostId="9942" Score="1" Text="LGPL/GPL. They claim the version of LGPL they're using is compatible with closed-source projects, but I'd be wary." CreationDate="2011-03-19T10:58:27.350" UserId="4264" />
  <row Id="13217" PostId="9944" Score="1" Text="uses MIT license" CreationDate="2011-03-19T10:59:03.137" UserId="4264" />
  <row Id="13218" PostId="9934" Score="1" Text="Seems like zlib/libpng license." CreationDate="2011-03-19T10:59:55.163" UserId="4264" />
  <row Id="13219" PostId="9927" Score="1" Text="Boost software license." CreationDate="2011-03-19T11:00:25.273" UserId="4264" />
  <row Id="13220" PostId="9939" Text="I have no idea whatsoever about XNA's licensing terms, e.g, is it ok to use them in non-microsoft operating systems, for instance. That said, I've used d3dx math library (which is pretty much the same thing) in a software rendering project at one point, so it's not dependent on directx in any means." CreationDate="2011-03-19T11:01:43.383" UserId="4264" />
  <row Id="13221" PostId="9954" Score="3" Text="First thing to ask yourself is whether you really, really need pixel level collisions. They can be done, but they're not really as needed as you might think, and implementing efficiently requires bit masks and all sorts of fun." CreationDate="2011-03-19T11:19:40.717" UserId="4264" />
  <row Id="13222" PostId="9942" Text="@Jari See http://eigen.tuxfamily.org/index.php?title=Licensing_FAQ#So_what_does_the_LGPL_require_me_to_do.3F" CreationDate="2011-03-19T11:27:38.790" UserId="356" />
  <row Id="13224" PostId="9939" Score="1" Text="Clarification: d3dx math is probably pretty much the same thing in licensing terms - implementation-wise it's different though. According to SDK documentation d3dx math relies heavily on inlining and pass by pointer whereas xnamath relies on SIMD and intrinsics." CreationDate="2011-03-19T12:54:12.530" UserId="1562" />
  <row Id="13225" PostId="9942" Score="1" Text="@Carnby: Their FAQ is awkward. If they are arguing that section 3 applies, then they can't ask for the source for changes under section 4. If they are asking for the source for changes under section 4, they can't argue that people are using it under section 3. The email from Brett Smith at the FSF does not clarify this issue, as far as I can tell - all he says is that yes, the section 3 exception can apply. All in all, it is tricky enough I might want to talk to a lawyer, or the FSF/Eigen developers directly." CreationDate="2011-03-19T13:38:27.597" UserId="744" />
  <row Id="13226" PostId="9959" Text="Your post doesn't give me much more than what I already had seen on both of the articles I posted. I still have the same questions when I first started this topic, **how to do that in GLUT?**. That's what I don't understand because its event-driven behavior." CreationDate="2011-03-19T13:58:07.453" UserId="6178" />
  <row Id="13228" PostId="9964" Text="yeh but that would mean 18 different sprites... it could work but am trying to find the easiest way. Thanks though, this will be plan B." CreationDate="2011-03-19T18:09:04.260" UserId="6186" />
  <row Id="13229" PostId="9966" Score="1" Text="You're going to struggle getting much higher level." CreationDate="2011-03-19T18:12:15.237" UserId="1156" />
  <row Id="13230" PostId="9961" Text="Why do you **need** SVG?" CreationDate="2011-03-19T18:17:17.877" UserId="962" />
  <row Id="13231" PostId="9869" Text="Exactly right. There are a bunch of JS frameworks that provide &quot;mixins&quot; that do pretty much that: add a bunch of functions to a given prototype." CreationDate="2011-03-19T19:13:27.610" UserId="160" />
  <row Id="13232" PostId="5762" Score="1" Text="Silverlight + Azure would be a powerful platform if you're experienced with .NET" CreationDate="2011-03-19T19:19:50.597" UserId="5540" />
  <row Id="13233" PostId="9967" Text="in &quot;int count = Directory.GetFiles(&quot;Content/&quot;+path,&quot;*&quot;,SearchOption.TopDirectoryOnly).&quot; the &quot;SearchOption.TopDirectoryOnly).&quot; doesnt work, it doesnt recognise &quot;SerachOption&quot;" CreationDate="2011-03-19T19:39:46.047" UserId="6186" />
  <row Id="13234" PostId="9961" Text="I don't *need* SVG, but it would help provide the look and feel I want. I want the engine to be easily scalable to many different screen sizes, plus have dynamic zooming of the active game area." CreationDate="2011-03-19T20:42:12.437" UserId="6037" />
  <row Id="13235" PostId="9974" Text="Note that ZLib is cross-platform, and that it is well tested. I really think that this is probably the easiest solution in your case. In the XML file, use relative paths, i.e. &quot;/walking/frame1.tga&quot;, and then have the loading code handle those in the archive. Shouldn't be more than 10-20 lines at the most for that. You might also want to consider using big sprite sheets for families of animation." CreationDate="2011-03-19T20:49:55.513" UserId="5259" />
  <row Id="13236" PostId="9967" Text="Sorry about that. You need to use System.IO, I edited the question to include that information." CreationDate="2011-03-19T21:14:20.420" UserId="962" />
  <row Id="13237" PostId="9961" Score="1" Text="If you need a lot of scaling that might be a good way to go. But with SVG or any other vector format, there is a large downside, each object takes longer to draw the more complex it is. While with raster art, most of the drawing time depends on the size of the object, and to some extent the amount of transformations. " CreationDate="2011-03-19T21:18:38.093" UserId="962" />
  <row Id="13238" PostId="9959" Text="Step 1: add a glut idle func that calls glutPostRedisplay. Step 2: do the stuff I mentioned in my post in your glut display func. This was based on a quick read of the GLUT 3 spec ( http://www.cs.arizona.edu/classes/cs433/spring02/opengl/docs/glut-3.spec.pdf ), but I seriously recommend moving to SDL or SFML instead." CreationDate="2011-03-19T21:27:35.400" UserId="4264" />
  <row Id="13241" PostId="9955" Text="that's exactly what I will do. thanks." CreationDate="2011-03-19T22:20:05.527" UserId="6122" />
  <row Id="13242" PostId="9977" Text="Might want to post what language you are using." CreationDate="2011-03-19T22:30:03.693" UserId="962" />
  <row Id="13244" PostId="9954" Score="1" Text="Thanks Jari,  I wanted to implement some per pixel collision into my game for when the enemy hits the hero sprite because right now the bitmap has some transparent points in front of the hero.  I was just hoping someone could explain the steps involved for achieving this. I am already checking if bounding boxes are intersecting and then was going to implement per pixel collision. " CreationDate="2011-03-19T23:11:07.763" UserId="5919" />
  <row Id="13245" PostId="9954" Text="Also really I am just confused on how to check if it is a pixel by pixel collision rather than bounding boxes. Like if you get the non alpha pixels of the enemy and hero but how do you check if those overlap as well." CreationDate="2011-03-19T23:13:12.317" UserId="5919" />
  <row Id="13246" PostId="9844" Text="And that is exactly why they often end up stuck in precisely those positions. http://en.wikipedia.org/wiki/Peter_Principle :)" CreationDate="2011-03-20T00:08:42.953" UserId="1101" />
  <row Id="13247" PostId="9924" Text="Platform is important here, because it's quite easy to make a mathematics library that works great on a PC but awful on a console, or vice versa." CreationDate="2011-03-20T00:11:33.340" UserId="1101" />
  <row Id="13248" PostId="9951" Text="No, SDL's 'hardware surfaces' are an older construct that don't use the modern 3D accelerated pipeline." CreationDate="2011-03-20T00:13:15.803" UserId="1101" />
  <row Id="13249" PostId="9959" Text="I've already explained in the question post why I don't want to use GLUT idle function." CreationDate="2011-03-20T02:13:03.787" UserId="6178" />
  <row Id="13250" PostId="9983" Text="I have heard of Lua. I'm one of the authors of ChaiScript and am aiming to work on a project that exercises the language. Besides that it is significantly less work to use ChaiScript with C++ then Lua (event taking into account SWIG or LuaBind)." CreationDate="2011-03-20T03:45:18.383" UserId="6037" />
  <row Id="13251" PostId="9983" Text="Regarding libcairo. It seems that there's a lot of work and a significant number of dependencies to get libcairo rendering to SDL, or am I missing something?" CreationDate="2011-03-20T03:45:59.663" UserId="6037" />
  <row Id="13252" PostId="9983" Text="Oh, one other thing. I don't see any methods for actually loading an SVG file and rendering it with libcairo." CreationDate="2011-03-20T03:52:31.447" UserId="6037" />
  <row Id="13253" PostId="9990" Text="yeah thinking about it more and more I wouldn't mind per pixel detection but if I can get it to work without the use of it then I'll just implement that way.  maybe I'll draw a circle instead of a box for right now and check to see if the enemy hits that.  My hero is pretty much circular anyways. Thanks for your answer." CreationDate="2011-03-20T04:08:01.877" UserId="5919" />
  <row Id="13254" PostId="9983" Text="SVG is just XML. I'm sure there are [libraries](http://librsvg.sourceforge.net/) for reading svg files that would suit your needs. Cairo however is a fast 2D graphics library that would give you the visual style that you are after. [Using Cairo with SDL](http://www.cairographics.org/SDL/) makes it look simple." CreationDate="2011-03-20T04:40:25.820" UserId="6190" />
  <row Id="13255" PostId="9659" Text="Game maker would be &quot;suitable&quot; but it won't really get you very far (in my experience) you would probably be better served to learn some basic programming (like c#[which I dislike btw]). Python or something would probably do well also. But in general you could easily set up your project in gamemaker swiftly and easily. But it won't get the same performance, and you won't have as much flexibility." CreationDate="2011-03-20T05:30:49.043" UserId="5932" />
  <row Id="13256" PostId="9994" Score="3" Text="And most of the time because the lighting is softish, the lightmap can be saved in lower resolution than the rest of the textures, still looks good, but renders faster, and takes less memory." CreationDate="2011-03-20T09:03:47.943" UserId="962" />
  <row Id="13257" PostId="9959" Text="Then sleep more. Or use a timer function to trigger the refresh instead. The glut spec specifically says that you should refresh from idle in order to get continious rendering. It won't get called more than once per render cycle anyway, as you won't be idle." CreationDate="2011-03-20T10:07:58.857" UserId="4264" />
  <row Id="13258" PostId="9989" Text="I also would assume programmer, since he tagged it programmer ;)" CreationDate="2011-03-20T11:21:37.003" UserId="1156" />
  <row Id="13259" PostId="9998" Score="4" Text="FYI: You can develop flash-games using only freely available tools: http://gamedev.stackexchange.com/questions/325/how-can-i-develop-flash-games-without-expensive-software" CreationDate="2011-03-20T11:57:16.987" UserId="20" />
  <row Id="13260" PostId="9981" Text="Do you happen to know how to get the DirectX shader to the 3d models in 3ds Max? When I tried to set a material with a type of shader and set the shader to ReplaceColor.fx and exported the model, the result was `Error 1 Missing asset &quot;C:\Users\Kai\AppData\Local\Temp\fbx.shader.temp.1064.2756\ReplaceColor.fx&quot;`. I don't understand how can I get that correct." CreationDate="2011-03-20T12:21:35.450" UserId="1694" />
  <row Id="13261" PostId="9999" Text="Pyglet is great." CreationDate="2011-03-20T12:59:10.210" UserId="1156" />
  <row Id="13262" PostId="10002" Text="I don't think this is on-topic." CreationDate="2011-03-20T13:15:39.837" UserId="1156" />
  <row Id="13263" PostId="9695" Text="But then, when I want to change how something is drawn, I'll have to create another class for that, won't I? This way I could have specific classes to &quot;skin&quot; my own game, just setting the drawaction to something else (like drawing a border on every game object). I dunno." CreationDate="2011-03-20T13:29:33.753" UserId="6059" />
  <row Id="13264" PostId="9994" Text="+1, this is a really nice and extensive answer, thank you. :)" CreationDate="2011-03-20T14:52:43.140" UserId="5714" />
  <row Id="13265" PostId="9989" Text="+1 As brutal as this is, I completely agree with it :)" CreationDate="2011-03-20T15:01:27.833" UserId="2332" />
  <row Id="13266" PostId="9889" Text="Could I just clarify that on page 2 under the section &quot;Bank Shot: Collision between two moving circles&quot;, it means that you should use the difference between the two circle's velocity in the algorithm *instead* of the first circle's velocity? (The second circle's velocity is not used in the stationary version of the algorithm.) This bit wasn't so clear to me. Thanks." CreationDate="2011-03-20T16:18:50.823" UserId="5740" />
  <row Id="13267" PostId="10001" Score="1" Text="And it is super-not-isometric" CreationDate="2011-03-20T16:39:20.307" UserId="2063" />
  <row Id="13268" PostId="9971" Text="The web server has a global IP (or whatever devices in front of it)." CreationDate="2011-03-20T16:44:45.317" UserId="2239" />
  <row Id="13269" PostId="9991" Score="1" Text="I'm not sure where you get an over-constrained equation system out of this - I can see that for a problem like Lights Out, but one of the hallmarks of this sort of system is that it inherently can't be solved mathematically like that (well, to the best of anyone's knowledge at least!) - if we could get a reasonable set of equations out of it then we could easily solve it in polynomial time. Can you give an example of what you mean by this?" CreationDate="2011-03-20T16:48:54.193" UserId="5687" />
  <row Id="13270" PostId="10001" Text="'You could use the orthographic camera for isometric easily.'." CreationDate="2011-03-20T17:09:38.963" UserId="1156" />
  <row Id="13271" PostId="10002" Score="1" Text="Short of a better stack exchange site, I would think that game dev art tools would be on topic." CreationDate="2011-03-20T17:22:02.127" UserId="51" />
  <row Id="13272" PostId="10005" Text="Good spot on the `const char*`, I hadn't noticed that." CreationDate="2011-03-20T17:39:17.137" UserId="4662" />
  <row Id="13273" PostId="10006" Text="Ask here  [Game Development-StackExchange](http://gamedev.stackexchange.com/)." CreationDate="2011-03-20T03:04:08.873" />
  <row Id="13274" PostId="10006" Text="I flagged this for moderator attention to see if they want to move it.  I'm interested to see how they handle this question because it could be equally valid both here and on Game Dev SE." CreationDate="2011-03-20T03:51:03.543" />
  <row Id="13275" PostId="10006" Text="Yeah... this definitely borderline for sure but I see it being fine for this site." CreationDate="2011-03-20T04:12:39.097" />
  <row Id="13276" PostId="10006" Text="It's probably too broad for Game Development, I'll see if I can get one of their moderators to give the final word." CreationDate="2011-03-20T14:37:54.623" UserId="382" />
  <row Id="13277" PostId="9995" Text="Psyco really won't help much with modern idiomatic Python code. Use PyPy if you want a JIT (not sure if PyGame is working there though)." CreationDate="2011-03-20T17:40:31.530" UserId="395" />
  <row Id="13278" PostId="10004" Score="2" Text="**Singleton:** Singletons aren't bad if they're used right. Basically, the renderer hasn't any state to speak of so singleton is okay here (it's more complex than that, though). | **Free:** Deallocation _is_ handled in the destructor. The `free()` function is there for the same reason the `ifstream::close()` function exists. | **Blit:** I'm trying to separate the data from the mechanism that uses the data. | **Sprites:** This is just the graphics module. Sprites are to be handled in the higher levels of the engine, in a manner similar to what you described. [contd.]" CreationDate="2011-03-20T17:43:02.607" UserId="6188" />
  <row Id="13279" PostId="10004" Text="[cont.] **Inheritance:** I don't understand how I could use inheritance here. | **Void-pointer:** Why shouldn't it be used? I thought it's a good way to limit the number of files that have access to the 3rd-party library. `data_` is just an `SDL_Surface*` cast to `void*`. Whenever I use it I cast it back to `SDL_Surface*`. | **Blit [contd.]:** Another way of thinking about this is, the image doesn't draw itself &amp;mdash; the renderer draws it. The image simply _exists_." CreationDate="2011-03-20T17:47:06.627" UserId="6188" />
  <row Id="13280" PostId="10005" Text="**Void-pointer:** I don't _need_ it. It's a way for me to limit the number of files that include `SDL.h` (`void* data_` is just an `SDL_Surface*` cast to `void*`). | **Strings:** Do I have any reason not to use them? I don't do any manipulations, I just need a string. I'm free to use `std::string` outside of these classes, if I so desire. | **Singletons:** Yes, more than one GR will break my code. GR initializes SDL. Having it a singleton I don't have to worry about when SDL gets initialized or exited." CreationDate="2011-03-20T17:58:49.187" UserId="6188" />
  <row Id="13281" PostId="10004" Text="Thanks for showing me `std::shared_ptr`, though. Thanks definitely going to come in handy." CreationDate="2011-03-20T18:12:22.273" UserId="6188" />
  <row Id="13282" PostId="9695" Text="No just have a field in each object that holds information that references what graphics it has. Don't store the actual graphic in each object. Use an Asset Manager." CreationDate="2011-03-20T18:12:24.847" UserId="962" />
  <row Id="13283" PostId="10004" Score="1" Text="**Free**: depending the system, destroying the object and its associated resources (such as a texture) may need to happen in different threads, hence the need for a `free()` function; also, one could be using a custom allocation scheme that does not call the destructor." CreationDate="2011-03-20T18:14:50.757" UserId="5864" />
  <row Id="13284" PostId="10005" Text="The advantage of less files including `SDL.h` is pretty much zero. Somehow, I wouldn't have a renderer intialize SDL. I would abstract that to the main engine, or something else. What if you wanted other parts of SDL, except graphics?" CreationDate="2011-03-20T18:20:42.713" UserId="1156" />
  <row Id="13285" PostId="9993" Text="Also, anytime you bake something, whether its physics, lighting or anything else. It means you have set up something that will take a long time to render/process in real time, or you want it to play the same way each time, so you only do it once, and save the results for later use, and because all of thecalculations are done, displaying what has been baked is fast, and always the same across all playthroughs. " CreationDate="2011-03-20T18:21:45.213" UserId="962" />
  <row Id="13286" PostId="10002" Score="1" Text="Creating assets for games is entirely on topic." CreationDate="2011-03-20T18:27:13.070" UserId="962" />
  <row Id="13287" PostId="10005" Text="**Other components:** I would initialize them separately, in the components that need those parts. | **Initialization:** The main engine (GameManager, usually) shouldn't care about details such as what library I'm using. In my current setup I don't have to worry about initialization one bit, everything happens automatically (and is ensured to happen exactly when I need it to happen, not later, not sooner). | **Header:** Yes, there's no real technical advantage. I do find the code to be neater when the underlying library isn't exposed to me in the class interface, however." CreationDate="2011-03-20T18:30:04.250" UserId="6188" />
  <row Id="13288" PostId="10004" Text="Your point would be perfectly valid, but I'm not going to have more than one thread. This is a simple 2D game." CreationDate="2011-03-20T18:31:15.963" UserId="6188" />
  <row Id="13289" PostId="10005" Text="**Other components [contd.]:** GR initializes only the video component of SDL (because that's the one it uses). Other classes will initialize other components that they may need." CreationDate="2011-03-20T18:34:53.697" UserId="6188" />
  <row Id="13290" PostId="10001" Text="It's still not an isometric engine :)" CreationDate="2011-03-20T18:46:55.003" UserId="2063" />
  <row Id="13291" PostId="10005" Text="I can't think of anything else, then." CreationDate="2011-03-20T18:48:31.460" UserId="1156" />
  <row Id="13292" PostId="10005" Text="Is that like an acknowledgement that the design isn't so bad or more like &quot;you're too dumb to be bothered with&quot;? :))" CreationDate="2011-03-20T18:55:21.847" UserId="6188" />
  <row Id="13293" PostId="10005" Score="1" Text="More of a thing that the only points I can see wrong with the design you have reasons for. I still stand by that singletons are not needed here, and that void pointers should be replaced with SDL_Surface ones. :P" CreationDate="2011-03-20T19:03:12.430" UserId="1156" />
  <row Id="13294" PostId="10004" Score="1" Text="@DeadMG I'm also confused on how to provide encapsulation with inheritance. I always figured the best way to hide private members would be sticking to the strongly typed opaque pointer. Could you elaborate on your inheritance suggestion?" CreationDate="2011-03-20T19:44:51.877" UserId="3656" />
  <row Id="13295" PostId="4349" Score="1" Text="Define 'better'. Also, accept previous answers." CreationDate="2011-03-20T20:23:24.077" UserId="1156" />
  <row Id="13296" PostId="10006" Text="I am confused as to what you want. You say 'basic game logic', but just list quite advanced AI topics." CreationDate="2011-03-20T21:15:22.940" UserId="1156" />
  <row Id="13297" PostId="9981" Text="Is that when you load it? It seems weird that the path in the FBX would point to a temp folder. Does that file exist? I'm not very familiar with exporting FBX from 3ds Max but maybe you need to edit the files (or set an option) to make the paths relative." CreationDate="2011-03-20T21:24:08.533" UserId="6191" />
  <row Id="13298" PostId="10010" Text="After some of the comments I decided that I will define a private `struct FontData` and have a `std::shared_ptr&lt;FontData&gt;` as a private member instead of the `void*`. This means I can avoid forward declaration too, which means there's no mention of the library in the header file. :)" CreationDate="2011-03-20T21:24:17.543" UserId="6188" />
  <row Id="13299" PostId="10006" Text="@The Communist Duck: I just wanted to make sure it was related to game logic, and not graphics or 3D engines, etc. However, I don't know technically what that job description or term would be called in game programming." CreationDate="2011-03-20T22:34:39.200" UserId="6214" />
  <row Id="13300" PostId="10015" Text="+1 Thank you for the text based game examples by name." CreationDate="2011-03-20T23:38:56.743" UserId="6214" />
  <row Id="13301" PostId="10002" Text="That's a good thing to comment. I see most questions here are programming related. But game developing is also making the assets, I guess... I am a game graphic artist and sometimes am not very sure on if should I answer questions related to game graphics or not." CreationDate="2011-03-20T23:39:09.163" UserId="3599" />
  <row Id="13302" PostId="9993" Text="AttackingHobo, that is a great way to put it. I understand it now. But curious, how would physics be baked? Does Luxrender produce photorealistic renders because they can calculate the physics of the light?" CreationDate="2011-03-20T23:40:10.097" UserId="6122" />
  <row Id="13303" PostId="10023" Text="Can you be more specific about what's not working? Does it compile? If so, what's not happening that should be happening?" CreationDate="2011-03-21T00:23:53.680" UserId="3656" />
  <row Id="13304" PostId="10023" Text="@bearcdp The window frame doesn't come up, but when I comment Components.Add(screenManager); line in the Game1.cs. It works but its the default with none of my screens." CreationDate="2011-03-21T00:46:48.287" UserId="5413" />
  <row Id="13305" PostId="10026" Text="10 minutes ago I just stepped through the code, yes I noticed my infinite loop . Thanks for taking a look at it, and I just updated and got it up and running. No screens show up, but I will debug through it." CreationDate="2011-03-21T01:25:12.747" UserId="5413" />
  <row Id="13306" PostId="10021" Text="Hey Roger thanks for your answer.  Do you have any examples or anything I could take a look at.  I am getting stuck at the point where I evaluate the intersecting points to check for a collision of non alpha values.  I'll edit my post with some code h=that I have now.  Thanks!" CreationDate="2011-03-21T01:40:44.703" UserId="5919" />
  <row Id="13308" PostId="10020" Text="Thank you, this is very helpful. What do you think of a mini-game while the preloader is running?" CreationDate="2011-03-21T01:57:11.693" UserId="2913" />
  <row Id="13309" PostId="10022" Score="5" Text="-1, speculation and subjective." CreationDate="2011-03-21T02:02:52.843" UserId="51" />
  <row Id="13310" PostId="9993" Score="1" Text="Physics can be baked for complex scenes by once simulating and storing all the objects positions, and rotations etc for every timestep. Then instead of recalculating all the values again live, they are just played back from the stored values." CreationDate="2011-03-21T03:02:10.013" UserId="962" />
  <row Id="13311" PostId="10028" Score="3" Text="Decoupling updating from rendering is not only highly recommended, it is required if you want a non-shit engine." CreationDate="2011-03-21T03:05:08.110" UserId="962" />
  <row Id="13312" PostId="10030" Score="10" Text="Math, lots of it." CreationDate="2011-03-21T06:19:38.097" UserId="4513" />
  <row Id="13313" PostId="10032" Text="**Load:** No, it should be an Image class' job to load itself, the same way it's std::ifstream's job to load itself. This is not the place to do mem management: it will be done in a separate ResourceManager class. | **Strings:** It's not hard converting `std::string` to `char*`, so that's not the reason. the reason is simply that `std::string` would provide no advantage." CreationDate="2011-03-21T08:01:10.517" UserId="6188" />
  <row Id="13314" PostId="10010" Text="Ok, nice solution." CreationDate="2011-03-21T09:03:54.807" UserId="6210" />
  <row Id="13315" PostId="10000" Text="question states &quot;no flash&quot;" CreationDate="2011-03-21T09:06:59.797" UserId="4308" />
  <row Id="13316" PostId="10001" Text="Yeah, Unity3D is really lacking on the whole &quot;isometric&quot; part. It is, however, finished and reasonably well-documented. No real isometric engine can boast of that (-8" CreationDate="2011-03-21T09:11:12.060" UserId="2710" />
  <row Id="13317" PostId="10001" Text="Not all browsers are supported. Be aware that the unity plugin is not available for a significant part of your target audience." CreationDate="2011-03-21T09:25:28.207" UserId="2091" />
  <row Id="13320" PostId="10025" Score="2" Text="You might be interested [in this question](http://gamedev.stackexchange.com/questions/7569/creating-an-electricity-lighting-tesla-coil-effect-in-a-2d-xna-game), which provides an interesting method for producing lightning." CreationDate="2011-03-21T12:29:33.340" UserId="3588" />
  <row Id="13321" PostId="10037" Text="thats a very kind offer; I *ahem* already wrote my own though." CreationDate="2011-03-21T13:53:24.670" UserId="4129" />
  <row Id="13322" PostId="7162" Score="1" Text="An Octree is actually just a special case KD-tree. With fixed position splitting planes. Implementing KD-trees you will need some way to find your &quot;best&quot; axis splitting offset per node." CreationDate="2011-03-21T14:18:50.517" UserId="2792" />
  <row Id="13325" PostId="2775" Text="+1 Warning Forever is exactly what came to mind" CreationDate="2011-03-21T15:01:23.543" UserId="1929" />
  <row Id="13326" PostId="9983" Text="So, if I'm really set on SVG and I don't want to roll my own renderer, that'd mean librsvg which requires libcairo, which requires libgdk and libgtk and then sdl for crossplatform input management. Or just Qt. Out of curiosity, does anyone have experience with building an SVG based game engine that's crossplatform?" CreationDate="2011-03-21T15:03:39.827" UserId="6037" />
  <row Id="13327" PostId="10033" Text="I downloaded RenderMonkey. Really nice and lots of cool effects but no spark and no electricity sample." CreationDate="2011-03-21T15:09:48.650" UserId="6216" />
  <row Id="13328" PostId="10000" Score="1" Text="Only because the he thinks developing in flash is not free, but in reality Adobe offers the FLEX compiler for free, and you do not need to use flash to create assets. " CreationDate="2011-03-21T15:19:40.130" UserId="962" />
  <row Id="13329" PostId="9436" Text="After some experiments I found that disabling depth write is the best solution in most cases." CreationDate="2011-03-21T15:31:24.727" UserId="3149" />
  <row Id="13330" PostId="10040" Score="1" Text="There are other stylistic decisions that you've been taken to task over (load() methods, void*, use of singletons, etc.) that, frankly, are completely overshadowed by the lack of functionality your proposed interface exposes. You shouldn't waste time worrying over what software development tropes you should be using when your software *engineering* here is so goddamn broken it makes my eyes bleed." CreationDate="2011-03-21T16:14:31.617" UserId="5259" />
  <row Id="13331" PostId="10040" Score="1" Text="You're off to a good start, you just need some more experience so you can learn to spot what functionality you are missing. Check out SFML, make some fun little apps, and then come back to this when you've got a clearer idea what capabilities you need to expose. Don't worry how ugly the plumbing is until you've got everything you need otherwise." CreationDate="2011-03-21T16:16:13.033" UserId="5259" />
  <row Id="13332" PostId="10028" Text="Most people aren't making engines though, and probably the majority of games still don't decouple the two. Settling for passing an elapsed time value to the update function works acceptably in most cases." CreationDate="2011-03-21T16:32:46.183" UserId="1101" />
  <row Id="13333" PostId="10003" Text="Question: What sort of engine is this? What is the expected scope of the project? I'm a little worried that I might be giving poor advice based on a misconception of what you intended your project to do." CreationDate="2011-03-21T16:39:11.267" UserId="5259" />
  <row Id="13334" PostId="9989" Score="1" Text="-1 So, you not only missed that the person tagged it for programmers, you also missed that it was for indie development, which would immediately imply that there wouldn't be a tech lead to learn from. Requirements analysis is useful--even when not doing full system specs--learning how to get in the correct mindset to analyze problems. Additionally, the practice in writing will always be useful if the need arises to make a pitch to a publisher. Your advice, frankly, neither addresses the target audience nor provides any useful insight on the topic." CreationDate="2011-03-21T17:00:25.510" UserId="5259" />
  <row Id="13335" PostId="10029" Text="+1 Everything said here is correct, as well as somewhat addressing the idea that you might end up doing corporate programming until you've made it in the indie scene." CreationDate="2011-03-21T17:01:51.310" UserId="5259" />
  <row Id="13336" PostId="9985" Text="To clarify, what are your alternatives?" CreationDate="2011-03-21T17:05:16.347" UserId="5259" />
  <row Id="13337" PostId="10020" Score="1" Text="We studied that initially. The problem is, if what you expect for simple games is, let's say, a total of 1k, as much 2k $, the only sensible way for us was to do it polished but not do too many extras. If you mean a mini game for a high quality game, big download, yep,that could work. Or even if it's story based, instead of a game, as text is no weight(or can have graphical nice text saving quite memory), give a fade-in/outs nice font text screens in the ambience of the game, to get them already into the atmosphere and story. Instead of showing a tedious % preloading bar." CreationDate="2011-03-21T17:07:12.007" UserId="3599" />
  <row Id="13338" PostId="10020" Text="even if it's so long that have to make appear, a loading bar, at the end.(like if the actual preload would start there from zero. Psicologically their &quot;wait&quot; starts there.) If it's a medieval game (or sci-fi, etc), all these using good artwork going with the theme. No raw arial font and plain color slider, etc, that I have seen in some games." CreationDate="2011-03-21T17:10:55.453" UserId="3599" />
  <row Id="13339" PostId="9240" Text="On #2, consider using area of the triangle in 3D space as a heuristic of how much texel space to allocate for it." CreationDate="2011-03-21T17:21:39.267" UserId="5904" />
  <row Id="13340" PostId="10013" Text="See my post on Open Source Bot API's.  Programming the AI not the engine. http://gamedev.stackexchange.com/questions/8920/open-source-ai-bot-interfaces " CreationDate="2011-03-21T17:30:22.923" UserId="891" />
  <row Id="13341" PostId="10046" Score="2" Text="Also, nothing prevents you from using fake names and then releasing an unofficial 'mod' after the fact that sets the weapon names right." CreationDate="2011-03-21T17:41:16.270" UserId="4604" />
  <row Id="13342" PostId="10006" Text="It depends. Are we talking straight AI, then? (getting an enemy to do the clever thing)" CreationDate="2011-03-21T18:31:07.600" UserId="1156" />
  <row Id="13343" PostId="10023" Text="You are going to do so much better posting the code here than a download link." CreationDate="2011-03-21T18:34:02.900" UserId="1156" />
  <row Id="13344" PostId="9989" Text="-1 Agreed. Enough crappy software out there that doesn't do what people need and enough indie games that suffer from terrible designs that don't solve the technical problems and devolve into endless rewrites and unreleased games.&#xA;Formal methods are a formality which indie games may not explicitly go through, but having the background does lead to a &quot;stop and think&quot; mindset rather than &quot;code and fix&quot; which is all too prevalent. Coders are a dime a dozen, and yet quality software so rare. You do the math. " CreationDate="2011-03-21T18:59:44.407" UserId="5904" />
  <row Id="13345" PostId="10042" Text="I hope &quot;fluid requirements&quot; isn't a euphemism for &quot;feature creep&quot;. :\&#xA;&#xA;I disagree that &quot;much&quot; of what you'd end up with is meaningless and vague terms such as &quot;fun&quot;, &quot;addiction&quot;, etc. Those represent non-technical requirements, which are a subset of a truly thought out requirements document." CreationDate="2011-03-21T19:05:31.657" UserId="5904" />
  <row Id="13346" PostId="2302" Text="I thought GameKit was a bluetooth library? Please enlighten me if i'm wrong :)" CreationDate="2011-03-21T19:11:43.523" UserId="6117" />
  <row Id="13347" PostId="10002" Text="This isn't specific to games, it is specific to Maya. A question related to games might be how to establish a pipeline for content, or what format to export to from Maya, how to optimize models made in Maya for use in a game or *something* that relates TO GAMES. Not being able to use the texturing tool properly has nothing to do with games." CreationDate="2011-03-21T19:11:45.940" UserId="5904" />
  <row Id="13348" PostId="10042" Score="1" Text="I think fluid requirements certainly is a euphemism for feature creep, but if you want to compete in a retail and hit-driven environment, you need to accept feature creep from day one. The sort of things that you can learn by gathering and analysing requirements for a traditional 'software customer' are too different from how entertainment software needs to work. In particular you have one major problem in that your client is not your end user, and another major problem in that technical requirements can't be pinned down when you know that feature creep is inevitable." CreationDate="2011-03-21T19:19:17.183" UserId="1101" />
  <row Id="13349" PostId="10053" Text="@Tetrad: would this include interaction with NPCs and more complex events like walking to a monitor and the monitor screen taking up your entire screen to perform tasks on there that influence the map?" CreationDate="2011-03-21T19:56:10.210" UserId="1379" />
  <row Id="13350" PostId="10036" Text="Your video link is broken." CreationDate="2011-03-21T20:06:08.973" UserId="2467" />
  <row Id="13351" PostId="9956" Text="I'm marking this one as accepted because it was straight to the point and I'm actually going with my second solution, it's working fine for now. I believe it suffices for the time being." CreationDate="2011-03-21T20:08:02.960" UserId="6178" />
  <row Id="13352" PostId="9985" Text="Yes, shed a bit more light on your situation, please. Is this something to take in addition to your core coursework or are you trying to determine if RA is part of your core?" CreationDate="2011-03-21T20:08:52.273" UserId="5497" />
  <row Id="13353" PostId="10036" Text="Thanks, corrected." CreationDate="2011-03-21T20:11:17.077" UserId="3794" />
  <row Id="13355" PostId="10018" Text="Thanks, I just started maya so I didn't know yet that UV mapping is the best way to texture your objects. I was used to using the 3D paint tool." CreationDate="2011-03-21T20:25:16.673" UserId="6203" />
  <row Id="13357" PostId="10054" Text="Sadly modern Flash games need to be one file, and one file only. You cannot load assets later on from other sources. If, however, you could somehow figure out which assets get loaded first, and then simply start the game when you reach 50% or whatever the first level needs, that might work..." CreationDate="2011-03-21T20:47:58.553" UserId="2913" />
  <row Id="13361" PostId="10040" Score="1" Text="**Interface:** Yes, it is an interface. It's the API kind of interface, not the virtual class type of interface. **Void-pointer:** Already sorted out. See my comments on jv42's answer. | **Image copying:** You make that assumption based on what? | **Manipulation:** A lot of details of the classes I haven't yet implemented or I considered only a distraction to the question. Also, you seem to be asking be for things like image rotation, getting the name of the font, etc. I'll implement those when and if the need arises, not now. [contd.]" CreationDate="2011-03-21T21:06:41.723" UserId="6188" />
  <row Id="13362" PostId="10059" Score="2" Text="&quot;Best&quot; is extremely subjective. You've given some requirements -- you need access to the code, and specifically you'll need to be able customize touch/gesture recognition. What other requirements do you have? What kind of game to you plan on making, what kind of price range, et cetera?" CreationDate="2011-03-21T21:08:03.843" UserId="1430" />
  <row Id="13363" PostId="10040" Score="1" Text="[cont.] **SFML:** Indeed, I just discovered this library and I like it a lot more. | **Bottom line:** What I've shown here is only the core (loading, and rendering). Other details I considered unimportant to show. Also, I won't start implementing any features (rotation, skewing, scaling) unless I later find I need them. It'll be easy to do that anyway. " CreationDate="2011-03-21T21:09:42.737" UserId="6188" />
  <row Id="13364" PostId="10040" Score="1" Text="+1 for SFML. It'll get rid of most of this interface stuff with its API. :P" CreationDate="2011-03-21T21:24:10.977" UserId="1156" />
  <row Id="13365" PostId="10059" Text="Is not to sell, is just a game engine that allow to access the source code and i will incorporate my framework for gesture recognizer and treat the touches of the game in my own way" CreationDate="2011-03-21T21:32:50.113" UserId="6233" />
  <row Id="13366" PostId="10053" Text="For NPCs I think you generally tie Kismet with Matinee.  http://udn.epicgames.com/Three/MatineeUserGuide.html  For the second I think you can do all that with Kismet.  I haven't done anything that complicated with it, though." CreationDate="2011-03-21T21:33:09.283" UserId="51" />
  <row Id="13367" PostId="10040" Score="1" Text="**API vs. interface** If you want an API, write it using virtual interface classes. This is how it is done (wouldn't say that often, but here there actually just might be One True Way). Otherwise, you just have a pile of related classes. **|Clarification** Do you want a review of your API, or of your implementation and class hierarchy?" CreationDate="2011-03-21T21:40:22.117" UserId="5259" />
  <row Id="13368" PostId="10040" Score="1" Text="**Image Copying assumption** The assumption I believe you are referring to is the one about not handling deep-copying of SDL_surfaces. To be blunt, the code posted so far screams &quot;simple wrapper over SDL&quot;--and its design choices so far suggest a lack of forethought which I expect also leads to mishandling things like proper resource management. I say this because *I've been in the exact same spot*." CreationDate="2011-03-21T21:46:09.083" UserId="5259" />
  <row Id="13369" PostId="10040" Score="1" Text="**Font** For something concrete, note that in the Font class you include a ptsize parameter. Presumably, this is the size (in points) of the font when rendered. If I want to draw the same font several times, with the same text but different sizes, I need to allocate one font per size. That makes no sense--you should be passing the size as a parameter to the blitText function." CreationDate="2011-03-21T21:49:33.387" UserId="5259" />
  <row Id="13370" PostId="10040" Score="1" Text="The programming idiom that we use heavily in our tech is that things communicate solely through interfaces, whenever possible. Implementations inherit an interface, and any time you need to access something you pass it into whatever function would need it. This removes the need for things like friend classes. Also, don't use the &quot;private&quot; specifier until you are certain that the class won't be extended--you can get really annoying bugs that way." CreationDate="2011-03-21T21:52:41.840" UserId="5259" />
  <row Id="13371" PostId="10040" Score="1" Text="**Font addendum** If you move the size specifier into the renderer as I've suggested, you'll note that the logistics (loading, etc.) functions of your Font and Image class become identical, hinting that maybe they should be implementing/inheriting a Resource class or something similar." CreationDate="2011-03-21T21:54:54.210" UserId="5259" />
  <row Id="13372" PostId="10040" Score="1" Text="And you still haven't answered my original question: Why are you writing an engine?" CreationDate="2011-03-21T21:55:11.760" UserId="5259" />
  <row Id="13373" PostId="9995" Text="Pygame doesn't work under PyPy, but Pyglet does so there you go." CreationDate="2011-03-21T22:01:10.647" UserId="395" />
  <row Id="13374" PostId="10059" Score="1" Text="The term you are looking for is open-source. And best how, like Josh Petrie says; easy to use? well-documented? fast?" CreationDate="2011-03-21T22:05:51.063" UserId="1156" />
  <row Id="13375" PostId="10041" Text="I'm less interested in auto-generation than manual; it seems like autogeneration would tend to lead to uninteresting and/or unintuitive puzzles - think Rush Hour, for instance, where for the most part the puzzles are carefully crafted for unique, deductive solutions. The goal isn't to have ten of these a day for years, Sudoku-style, but to have a few dozen cherry-picked puzzles chosen for maximum enjoyment; more art than science, in a way." CreationDate="2011-03-21T22:07:19.300" UserId="5687" />
  <row Id="13376" PostId="10040" Score="1" Text="**What to review:** The class hierarchy and/or interaction between classes. | **Assumption:** It's a wrong one to make. Why would I ever define a copy constr. and an assignment opr. otherwise, anyway?! | **Ptsize:** Yes, I know. It was a temporary solution to the limitations imposed by SDL. Now that I switched to SFML the problem is fixed. | **Private:** Others say 'everything should start out private and become more visible as needed. To me that personally makes more sense than everything should become as visible as needed and become more hidden as it becomes less needed. [contd.]" CreationDate="2011-03-21T22:21:44.077" UserId="6188" />
  <row Id="13377" PostId="10040" Score="1" Text="[cont.] **Friends vs inheritance:** How would you suggest I make the ImageData available to the Renderer through interface inheritance? | **Similarity of classes:** I did notice that. | **Reason for engine:** To learn. It's my first 2D engine. Or do you mean what is its scope?" CreationDate="2011-03-21T22:27:28.423" UserId="6188" />
  <row Id="13378" PostId="10039" Text="To the best of my knowledge the AI Director is not evolutionary at all. It creates a dynamic environment, and is heuristically-informed, but is still based on static data sets. It's pretty hard to reliably feed whether you successfully &quot;scared&quot; or &quot;tensed&quot; someone back into a computer." CreationDate="2011-03-21T22:52:47.600" UserId="744" />
  <row Id="13379" PostId="9989" Score="1" Text="Ha ha ha. All game development, especially indie, is about being agile and iterating on a core idea. Requirements analysis has nothing to offer and is for the most part a front heavy process. So I generalized my answer. If they plan on going indie having a network of semi-experienced developers and artists will be hard to do without. So either you need to be a genius in all areas of game development and business or you find mentors, a la tech leads etc. Try not to be so sensitive guys." CreationDate="2011-03-21T22:54:30.687" UserId="6190" />
  <row Id="13380" PostId="10042" Text="I don't believe he said he's competing or even making a product that sells. A lot of indie games aren't designed to compete with retail games, they usually aren't even on the same playing field as AAA titles. Hell, Steam shoves all of the indie games into their own little sandbox, probably as more of a warning label.&#xA;When your an indie developer, you, by definition have control over what you want to do. If you didn't then you'd be partnered / invested in, and you wouldn't really be indie then, would you? Either way, I don't seem to find feature creep in whatever hobby games I work on. YMMV.&#xA;&#xA;" CreationDate="2011-03-21T23:15:32.103" UserId="5904" />
  <row Id="13381" PostId="10061" Score="1" Text="Shadows for transparent objects are pretty hard to archive, however possible with depth peeling (for example) and RGB shadow maps. Are you familiar with regular shadow mapping?" CreationDate="2011-03-21T23:15:59.273" UserId="3794" />
  <row Id="13382" PostId="10059" Text="There are gesture recognizers that are built in to iOS and fairly easy to use." CreationDate="2011-03-21T23:26:14.217" UserId="2942" />
  <row Id="13383" PostId="10061" Text="no, not quite .. " CreationDate="2011-03-21T23:30:24.883" UserId="5378" />
  <row Id="13385" PostId="10001" Text="I looked at Unity3D previously when I was considering a different, real-time 3D project. Is it useful at all for me though?" CreationDate="2011-03-22T00:06:20.080" UserId="6202" />
  <row Id="13386" PostId="9998" Text="The page you linked to talks a lot about haXe. Is there a non-haXe free Flash development solution?" CreationDate="2011-03-22T00:08:06.457" UserId="6202" />
  <row Id="13387" PostId="10000" Text="The as3isolib library looks nice. Which free tools are you referring to?" CreationDate="2011-03-22T00:10:21.277" UserId="6202" />
  <row Id="13388" PostId="10043" Text="You mentioned using a simple std::list or some such to pass messages. This may be a topic for StackOverflow, but is it true that threads all share the same address space, and as long as I keep multiple threads from screwing with the memory belonging to my queue simultaneously, I should be alright? I can just allocate data for the queue on the heap just like normal, and just use some mutexes in it?" CreationDate="2011-03-22T00:55:15.023" UserId="6215" />
  <row Id="13389" PostId="9989" Score="1" Text="@PatrickB Requirements analysis wouldn't affect how a piece of software is designed. Requirements analysis is full of useless pieces of information that a games developer would hardly ever use (use case diagrams especially spring to mind). It's a topic that is pretty much geared towards stakeholders and hence corporate environments. I agree that the developer should list requirements (features) but that should be common sense. Designing a piece of software is a completely separate topic which requirements analysis barely touches on (at university anyway)" CreationDate="2011-03-22T01:26:54.860" UserId="2332" />
  <row Id="13390" PostId="9985" Text="What's involved in your software architecture class? If it's geared more towards designing a system then I'd definitely suggest taking that. Requirements analysis consists of &quot;I don't care how I do it, what do I want my software to do?&quot; Designing a system consists of &quot;I know what I want to do, how can I achieve it in the most efficient way?&quot;" CreationDate="2011-03-22T01:30:11.037" UserId="2332" />
  <row Id="13391" PostId="10062" Text="I never said anything about only 3 textures. The reason that I don't want to pack multiple textures into a single texture is because then I won't have the ability to use mipmapping, I believe.&#xA;&#xA;I don't think that 3D textures are available on the Xbox360 (which uses DX9 plus a few DX10 features).&#xA;&#xA;Sticking with your example of 3 textures, how else would I render 3 textures on each instance primitive? A separate pass per texture?" CreationDate="2011-03-22T01:40:28.430" UserId="5021" />
  <row Id="13392" PostId="10060" Text="What I am trying to accomplish exactly is:&#xA;I have several hundred instances, and am CPU bound. Draw calls are very expensive on the XBOX360, so I am trying to reduce the number of draw calls that I need to make." CreationDate="2011-03-22T01:52:02.197" UserId="5021" />
  <row Id="13393" PostId="10040" Text="**What to review** Thanks for the clarification. **Assumption** My mistake; again, I didn't think it unreasonable that that might be the case. **Private** That's fine, but using protected instead helps reduce the chance of getting spurious variables in subclasses (been bitten on this before)--it has the same level of visibility to external non-friend classes." CreationDate="2011-03-22T02:59:08.317" UserId="5259" />
  <row Id="13394" PostId="10042" Score="1" Text="I don't think independent normally means 'hobby games', it normally means 'small company not reliant on publisher funding'. As such your client/customer situation can be simpler than I suggested above, but you can be arguably even more susceptible to market forces. But at the end of the day most formal requirements analysis is going to come up short because it is incredibly hard to qualify what a &quot;business need&quot; is in terms of a game. Games differ significantly from other software in this regard and thus I would humbly suggest that other ways of specifying the software are more relevant." CreationDate="2011-03-22T02:59:27.227" UserId="1101" />
  <row Id="13395" PostId="10046" Text="@James: I wouldn't assume that that would deal with the copyright issues. You'd really need to talk to a lawyer" CreationDate="2011-03-22T03:08:05.633" UserId="1500" />
  <row Id="13396" PostId="10065" Score="2" Text="You do know it is open source right? Here is an XNA port of it: http://xnasfxrsynth.codeplex.com/" CreationDate="2011-03-22T03:24:39.747" UserId="2345" />
  <row Id="13397" PostId="9998" Text="Yes, http://www.flashdevelop.org/ + Flex SDK" CreationDate="2011-03-22T06:32:39.637" UserId="20" />
  <row Id="13398" PostId="9043" Text="I wonder why you brought up the Q3A sources? The OP didn't mention them anywhere?" CreationDate="2011-03-22T06:48:42.487" UserId="20" />
  <row Id="13399" PostId="10064" Score="1" Text="You're not really answering the question but I think your answer would make an excellent question itself. Why not go ahead and ask how to resolve such an &quot;unfair&quot; prioritization?" CreationDate="2011-03-22T07:15:34.467" UserId="20" />
  <row Id="13400" PostId="10033" Text="I think you can find it in an example called &quot;image space effects&quot; .. its not the default shader by so you need to browse different shaders in the example." CreationDate="2011-03-22T07:33:08.803" UserId="5440" />
  <row Id="13401" PostId="10061" Text="could you anyway direct me to some sources or can you tell me how to achieve only transparency ?" CreationDate="2011-03-22T08:23:09.810" UserId="5378" />
  <row Id="13403" PostId="10075" Text="Which platform(s) are you making the game for?" CreationDate="2011-03-22T09:17:38.950" UserId="5824" />
  <row Id="13404" PostId="10075" Text="PC (Windows) only." CreationDate="2011-03-22T09:42:00.280" UserId="6244" />
  <row Id="13406" PostId="9935" Text="I very much appreciate your answer and the bog post. Just as you advised, I am going to challenge my fear with knowledge." CreationDate="2011-03-22T10:40:48.180" UserId="6175" />
  <row Id="13407" PostId="9923" Text="&quot;Hope that helps.&quot; It really does help. Thank you very much." CreationDate="2011-03-22T10:42:49.487" UserId="6175" />
  <row Id="13408" PostId="9928" Text="Thanks but I didn't quite understand the response. Could you please elaborate on it?" CreationDate="2011-03-22T10:48:30.167" UserId="6175" />
  <row Id="13409" PostId="10062" Text="Ok, I may have plucked the number 3 out of nowhere. There's a Texture3D class on the 360 and the number of layers is independant to the width/height. What might be a better approach for you is to render all models of a certain type together, you could have vertex/index buffers set up to render 4 in a single go, you could then have an index in the vertex buffer to select which matrix to use to render, that way you could set up the matrices for say 4 objects to render in a single call, all using the same texture/shader/state setup." CreationDate="2011-03-22T11:17:33.803" UserId="4410" />
  <row Id="13410" PostId="10065" Text="I noticed he did say you could get the source code, but where is the code to the original? I quickly glanced over the sfxr-sdl-1.1.tar.gz link he has on there, but couldn't find the audio bits. I'll take a closer look at it later, as well as that link to the XNA one (which is REALLY useful btw. I had no idea you could get that much control over sound in XNA. Thanks!)" CreationDate="2011-03-22T12:17:02.690" UserId="982" />
  <row Id="13411" PostId="10081" Text="And Magicka as well" CreationDate="2011-03-22T12:20:51.683" UserId="769" />
  <row Id="13412" PostId="10081" Text="Yup, Magicka as well. There are several examples available." CreationDate="2011-03-22T12:43:39.640" UserId="6210" />
  <row Id="13413" PostId="10085" Text="I know there are some open source speech synths, but they are mostly research projects and not too.. friendly. Also, I'd rather not touch GPL'd stuff too much, in case I get infected =)" CreationDate="2011-03-22T12:48:30.587" UserId="4264" />
  <row Id="13414" PostId="10079" Score="6" Text="I think you mean the XNA Game Studio installer, which is required to use the Content Pipeline APIs. The [XNA Framework Redistributable](http://www.microsoft.com/downloads/en/details.aspx?FamilyID=a88c6dec-aeae-42cd-a108-d35c013c3b97) is, in fact, redistributable." CreationDate="2011-03-22T14:15:20.227" UserId="288" />
  <row Id="13415" PostId="10054" Text="I cannot imagine why that feature has been removed from Flash. If that is the case then load raw assets - visuals, audio and video - on the fly. You need to create your own loader/manager class for that. In Flex the runtime shared libraries framework is exactly that - except that in that case you load compiled swfs" CreationDate="2011-03-22T14:30:03.820" UserId="5797" />
  <row Id="13416" PostId="9928" Text="If you really love programming to the point where it shows when you talk about it and you can back it up with personal/open source projects, then you will likely end up in a smaller firm, like a startup, which won't immediately pass over you because you don't have a CS degree and will focus more on the quality of your programming and your attitude towards it rather than the piece of paper hanging on the wall in your office. If you're looking at going for a bigger firm then it's more likely that you have to clear the HR hurdles, who wouldn't know what a CS degree is beyond it being a job req." CreationDate="2011-03-22T15:20:49.483" UserId="5540" />
  <row Id="13417" PostId="10046" Text="@Casebash: It does.  A similar trick has been performed for every release of the STALKER series.  As long as it is put out as a 'user mod' and is not distributed / sold by the company that released the game, there is really nothing they can do about it." CreationDate="2011-03-22T15:30:02.893" UserId="4604" />
  <row Id="13418" PostId="10072" Text="Well, I *am* using instancing, which is the problem. +1 for pointing out that mipmapping is possible with texture atlases. I may go that route." CreationDate="2011-03-22T15:57:19.670" UserId="5021" />
  <row Id="13419" PostId="10054" Text="Sorry, that might have been unclear. Flash is still able to do this of course. I meant to say that if you are developing a Flash game, you want the final game to be a single file and completely self-contained. This makes it easier for the game to go &quot;viral&quot; and to spread across Flash portals. For more on this, you can read the 9th Q&amp;A [here](http://www.flashgamelicense.com/view_library.php?page=fgl-faq-developer)" CreationDate="2011-03-22T16:41:41.830" UserId="2913" />
  <row Id="13421" PostId="10082" Text="I already have a basic familiarity with the Nyquist frequency and some Fourier transform understandings. I'm more interested in how you actually go about sending say a sample that you made to the speakers. The links you posted look interesting, I'm especially interested in getting that Audio Programming Book, thanks!" CreationDate="2011-03-22T16:46:15.503" UserId="982" />
  <row Id="13422" PostId="10054" Text="I understand you want to use this service, and hence this question. Lets assume that whichever you cut it, you want a RICH game and when everything is added up, your game will exceed the limits set up in this contract. You can then either reduce the &quot;rich&quot; -ness of your game or commit to serving this service indefinitely by hosting your assets (as this contract allows). Best of luck." CreationDate="2011-03-22T16:47:54.380" UserId="5797" />
  <row Id="13423" PostId="10085" Text="Understandable, open source gets a little hairy. If it'd be beneficial to you at all, you should be safe to check out their source though, their license is MIT-style. http://pastebin.com/a45MUU5B (from copy.texi in the latest festvox tar)." CreationDate="2011-03-22T16:55:19.387" UserId="3656" />
  <row Id="13424" PostId="10078" Text="Thanks, that's exactly what I was looking for! I wonder why not use PortAudio or SDL for both? In the comments it says &quot;ancient portaudio stuff&quot; before defining it for win32. But aren't SDL and PortAudio both cross platform?" CreationDate="2011-03-22T16:59:32.883" UserId="982" />
  <row Id="13431" PostId="10091" Score="1" Text="Thanks for the great answer. One of the hardest parts of deciding to pursue a career in game development is convincing people that you're not another naive, &quot;I have an idea for a game&quot; stereotype. I'll use this as an opportunity to gain some better insight into the developer work environment and more so just enjoy it as a fun experience. Thanks again for your answer and the useful link." CreationDate="2011-03-22T20:15:21.540" UserId="3327" />
  <row Id="13432" PostId="10033" Text="Got it, thanks. That is just what I'm looking for." CreationDate="2011-03-22T20:19:02.050" UserId="6216" />
  <row Id="13433" PostId="10064" Text="I doubt that most games care about this unfairness because they update so frequently that it is rarely an issue. One simple workaround is to alternate between iterating forwards and backwards through the entity list when updating." CreationDate="2011-03-22T20:21:39.937" UserId="1101" />
  <row Id="13434" PostId="462" Text="Isn't there some sort of licensing issue with bundling the frameworks on a cd to distribute yourself?" CreationDate="2011-03-22T23:21:07.553" UserId="4690" />
  <row Id="13435" PostId="10094" Text="sounds pretty good. does it makes sense to separate the update and draw logic like it's done in other game frameworks?" CreationDate="2011-03-22T23:21:22.670" UserId="743" />
  <row Id="13436" PostId="10094" Text="Yes, you might also want to divide update into physics step and game parameter updates." CreationDate="2011-03-22T23:24:50.003" UserId="395" />
  <row Id="13438" PostId="10098" Score="3" Text="What is wrong with the Cartesian Co-ordinate system or the Polar Co-ordinate system? What causes you to want a different one?" CreationDate="2011-03-23T02:02:01.220" UserId="5916" />
  <row Id="13439" PostId="10098" Text="X Y and Z? I don't really know what you are asking." CreationDate="2011-03-23T02:03:16.507" UserId="962" />
  <row Id="13440" PostId="10097" Text="What means of rotating does the object has available?" CreationDate="2011-03-23T02:37:57.790" UserId="5818" />
  <row Id="13441" PostId="10098" Text="Yes, &quot;custom coordinate system&quot; sounds strange. The most &quot;custom&quot; I've ever done was for a 2d game where the coordinates got mirrored and re-mirrored at one point with parallax scaling and stuff; it wasn't necessary, but I was in a hurry, and it ended up complicating things overmuch.. =)" CreationDate="2011-03-23T06:19:35.467" UserId="4264" />
  <row Id="13443" PostId="462" Score="1" Text="@Bill: No: &quot;The XNA Framework Redistributable download provides game developers with the XNA Framework run-time libraries **they can include with their product** for redistribution on the Windows platform.&quot; [Reference](http://www.microsoft.com/downloads/en/details.aspx?FamilyID=a88c6dec-aeae-42cd-a108-d35c013c3b97)" CreationDate="2011-03-23T06:45:54.630" UserId="288" />
  <row Id="13444" PostId="10103" Text="While I agree with your comment in general, I want to strongly urge against SDL because oh man SDL has major problems. SFML is great, use that!" CreationDate="2011-03-23T07:01:46.563" UserId="323" />
  <row Id="13445" PostId="10101" Text="You've mixed up two different things here. First talk about TCP vs UDP, and then you move to client-server vs peer-to-peer architecture. None of those imply each other. You can make both UDP client-server and TCP p2p as good." CreationDate="2011-03-23T07:14:42.207" UserId="3991" />
  <row Id="13446" PostId="10103" Text="They both have their sides, and I like SDL, so.. =)" CreationDate="2011-03-23T07:28:07.117" UserId="4264" />
  <row Id="13447" PostId="10097" Text="@Chris :Not sure if I understand the question. The object may only move horizontally and vertically and cannot rotate? Is that right?" CreationDate="2011-03-23T07:40:24.463" UserId="20" />
  <row Id="13448" PostId="10079" Text="Ah yes, you're right." CreationDate="2011-03-23T07:57:23.487" UserId="5224" />
  <row Id="13449" PostId="10101" Text="UDP isn't available for Flash anyway, so the point is moot. See: http://stackoverflow.com/questions/907041/is-it-possible-to-use-udp-in-flash-actionscript" CreationDate="2011-03-23T09:59:45.673" UserId="20" />
  <row Id="13450" PostId="10098" Text="I am confused on where the object is placed in the beginning? what coordinates will an object have? I am trying to create a coordinate system for a robot and using its movement, I want to calculate its current position." CreationDate="2011-03-23T10:44:55.733" UserId="5266" />
  <row Id="13451" PostId="10103" Text="Please don't get this the wrong way but, this is the second time you're telling me to switch. While I appreciate anyone's answer, if I insist on posting GLUT specific questions, maybe I have a good reason for this and can't switch? I've already realized how GLUT sucks, but I have to put up with it, it's not my choice. Sorry if I sound harsh, but I hate when people insist like this, I &quot;heard&quot; you the first time." CreationDate="2011-03-23T12:28:39.547" UserId="6178" />
  <row Id="13452" PostId="10105" Text="Thank you, I'll keep this post in mind as reference. You're dealing with Windows APIs as I suspected being the only *good* way to achieve this but I didn't want to go that route. Not that I don't know how, because I do as I've done it before, but for what I'm tyring to do, it's not worth trouble and it's not a priority." CreationDate="2011-03-23T12:34:07.233" UserId="6178" />
  <row Id="13453" PostId="10103" Text="I'm voting your answer up because I'm ignoring that last paragraph. :)" CreationDate="2011-03-23T12:35:13.393" UserId="6178" />
  <row Id="13454" PostId="10103" Score="1" Text="Nazgulled, sorry if I seem to be repeating things, I don't really track whose questions I'm answering =). Additionally, people will end up finding this question through searches, and I also want to answer to them, not only to you." CreationDate="2011-03-23T13:36:19.340" UserId="4264" />
  <row Id="13455" PostId="9928" Text="Thanks for the clearity. I appreciate it." CreationDate="2011-03-23T13:40:23.527" UserId="6175" />
  <row Id="13456" PostId="10110" Text="So what if I want to include the FN SCAR or the MG36 with their name clearly stated so the player knows what weapon he uses, do you think that would be okay?" CreationDate="2011-03-23T15:34:29.223" UserId="1883" />
  <row Id="13457" PostId="10113" Score="1" Text="Pff. I need to learn to type faster. This is basically what I have in the editor window below... +1 to you Sir." CreationDate="2011-03-23T15:35:02.917" UserId="20" />
  <row Id="13458" PostId="8860" Score="1" Text="I can't tell if this is supposed to be an &quot;I have found the answer to my own question&quot; post or a &quot;clarification of my original question&quot; post -- if the former you should mark it as the answer (I think you can accept your own answers) and if the latter it should be a comment or edit to the original question. " CreationDate="2011-03-23T15:46:16.543" UserId="1430" />
  <row Id="13459" PostId="10112" Text="I disagree with almost everything you said. The UDK web page says: &quot;What is it? UDK is Unreal Engine 3&quot;" CreationDate="2011-03-23T15:48:00.767" UserId="5899" />
  <row Id="13461" PostId="10112" Score="2" Text="@momboco: UDK is very much like UE3 if you are an artist, designer, or designer-programmer. It is very unlike UE3 if you are a dedicated programmer." CreationDate="2011-03-23T16:20:04.337" UserId="744" />
  <row Id="13462" PostId="10112" Text="-1 because the question is very specifically about _which would a game development company prefer_. It's true that good C++ skills will help you get jobs outside the games industry as well as inside, but it's also irrelevant to the question." CreationDate="2011-03-23T16:21:18.890" UserId="744" />
  <row Id="13463" PostId="10118" Text="Thanks. My issue is that I will be creating a coordinate system for a physical object which wouldnt need camera angle control etc. I will be mapping the objects movement using data from the accelerometer. How or where would the object start in this coordinate system, and how is it managed? " CreationDate="2011-03-23T17:19:49.433" UserId="5266" />
  <row Id="13464" PostId="10109" Text="Questions like this are better answered with some kind of visual to describe what you're after. The good answer below might be either too technical or not technical enough." CreationDate="2011-03-23T17:23:02.393" UserId="1742" />
  <row Id="13465" PostId="10113" Text="cheers i'll give it a go." CreationDate="2011-03-23T18:30:52.917" UserId="6267" />
  <row Id="13466" PostId="10108" Text="Thanks for your answer. The fps counter was just an example. What I wanted to know is how you structure your components so that you can reuse them easily in several other projects." CreationDate="2011-03-23T19:10:56.290" UserId="743" />
  <row Id="13467" PostId="1624" Text="@Ricket, do you mean the discussion about the possible bug?" CreationDate="2011-03-23T19:38:20.980" UserId="450" />
  <row Id="13468" PostId="10098" Text="You do not want to create a coordinate system. You want to use one, yes, but not create your own." CreationDate="2011-03-23T20:48:31.073" UserId="1156" />
  <row Id="13469" PostId="10110" Text="As I said, I'm not a lawyer, but the fair use rule would probably cover it. Just don't include and copyrighted elements - logos and suchlike. Remember that there's nothing special about a gun trademark over and above any other trademark (cars, drinks, typewriters, food, etc). Trademarks just stop competitors from selling similar products with the same name/slogan (hence, iPod is a trademark so that MS can't make an mPod/iBob/whatever music player, MS called it Zune). I don't think Ian Fleming was paying license fees for the Walther PPK name." CreationDate="2011-03-23T21:09:40.107" UserId="1143" />
  <row Id="13470" PostId="1624" Text="@nhnb No, he sacrificed 100 of his reputation to give this question a bounty in order for your answer (the top one) to receive the bounty. You may not have noticed it before it finished, and for some reason there isn't a &quot;+100&quot; next to your answer, but I am pretty confident you received the 100 points given that you are (and have been) the top answer during that time period." CreationDate="2011-03-23T21:26:22.083" UserId="189" />
  <row Id="13471" PostId="8860" Text="yes, but I had to wait for marking it as an answer, aqll done now !" CreationDate="2011-03-23T21:28:51.343" UserId="1829" />
  <row Id="13472" PostId="1624" Text="@Ricket, Josh Simmons got 25 rep out of TomWjJ 50 rep bounty as his answer had more votes back than. I did get [no bounty](http://paste.org/pastebin/view/30679). &quot;Community Wiki&quot; should be renamed to &quot;no reward&quot;. The wiki-name is even more miss-leading nowadays as everyone can edit all posting." CreationDate="2011-03-23T21:41:12.600" UserId="450" />
  <row Id="13473" PostId="9981" Text="Good technique, but if you are using the alpha channel to denote &quot;tintability&quot;, don't forget to reset the alpha component in your finalColor." CreationDate="2011-03-23T21:54:48.643" UserId="2130" />
  <row Id="13474" PostId="10123" Text="What does that &quot;cot&quot; function does? in `yScale = cot(fovY/2)`" CreationDate="2011-03-23T22:47:26.127" UserId="5844" />
  <row Id="13475" PostId="10123" Text="Figured it out, it's cotangent (1 / tangent). It works, thank you!" CreationDate="2011-03-23T23:00:30.263" UserId="5844" />
  <row Id="13476" PostId="10017" Score="1" Text="You realize that your proposed map is 1 million square kilometers, or 1 trillion square meters. If you use 1 byte of information for each 20 square meters, the map would be 50 GB. So I don't think you are going to be able to fit this into memory. And if you want a lot data, as it looks like you do then you are going to be looking at incredibly huge maps." CreationDate="2011-03-23T23:10:59.480" UserId="962" />
  <row Id="13477" PostId="10120" Score="1" Text="Related: http://gamedev.stackexchange.com/questions/453/what-are-some-ways-to-prevent-or-reduce-cheating-in-online-multiplayer-games" CreationDate="2011-03-24T00:41:32.220" UserId="51" />
  <row Id="13478" PostId="10122" Text="You should totally learn about Matrix mathematics, it will make your life in 3D land that much easier. It would also make it obvious why it is a 4x4 matrix instead of a 3x3 one that you might expect in a setting with only three dimensions." CreationDate="2011-03-24T00:46:56.387" UserId="5916" />
  <row Id="13479" PostId="10017" Text="yep - there's a lot to draw, but only a little at once..&#xA;It will mostly be vector data, so while the object density in urban areas will be pretty high, it should be balanced out a bit by the (much larger) emptier rural areas.&#xA;Point taken about the sheer impossibility of containing the whole data set in memory at once, though!" CreationDate="2011-03-24T01:27:21.890" UserId="6213" />
  <row Id="13480" PostId="10119" Text="Great links, thanks.." CreationDate="2011-03-24T01:31:14.710" UserId="6213" />
  <row Id="13481" PostId="10123" Text="Don't forget to transpose that DirectX matrix for use in OpenGL" CreationDate="2011-03-24T01:35:16.457" UserId="1923" />
  <row Id="13482" PostId="9475" Text="Thanks, it's started to make sense now :D" CreationDate="2011-03-24T02:38:16.480" UserId="4234" />
  <row Id="13483" PostId="10123" Text="I have no idea why, but if I transpose it then it doesn't work, I also thought that I was supposed to transpose it, but it works fine the way it is on the msdn page." CreationDate="2011-03-24T02:38:17.520" UserId="5844" />
  <row Id="13484" PostId="10115" Text="A good read but these techniques are not available in DX9, and therefore XNA/XBOX." CreationDate="2011-03-24T03:10:59.353" UserId="5021" />
  <row Id="13487" PostId="10049" Text="As far as I know, there is no such thing as a &quot;true&quot; rating (don't take my word for it). Elo and other adaptive ratings were developed so temporary good or bad streaks would have little effect on player ratings, therefore, they are thought for players that do change across time. In other words, Elo ratings are not meant to be static, so there are no &quot;true&quot; ratings. I'm not really sure if Elo ratings is what you're looking for, for bot battles. The best way to get good rating values is to have as many matches as possible, optimally between opponents of similar strength." CreationDate="2011-03-24T06:22:18.543" />
  <row Id="13488" PostId="10121" Text="I didn't think to search for cheating, was more concerned with security, but it does make sense if that is what I am trying to prevent." CreationDate="2011-03-24T08:47:25.407" UserId="6272" />
  <row Id="13489" PostId="10048" Text="I'd have to disagree, mainly because there are many things that are trademarked and appear in various games which you wouldn't think about licensing. The red cross symbol is one such trademark. Trademarks don't protect the object, they only prevent competitors from using the same name and/or description of the object. A good example would be LEGOtm. The company had a patent on the design of the lego brick and a trademark on the LEGO name. There is an &quot;Unofficial LEGO Builder's Guide&quot; which uses the trademark and has many pictures of the bricks in it. " CreationDate="2011-03-24T12:19:13.123" UserId="1143" />
  <row Id="13490" PostId="10048" Text="You may be right -- after all, I'm not a lawyer and most of the subtleties inherent in legal wording aren't something I understand fully. That said, I don't think the argument that things appear in various games is necessarily a good vehicle for your point. The legal processes for a lot of commercial games are pretty opaque and lots of indie/hobby games violate IP laws (though probably copyright, most often) all over the place without necessarily having been &quot;caught&quot; doing it." CreationDate="2011-03-24T15:01:00.150" UserId="1430" />
  <row Id="13491" PostId="10048" Text="I've edited my answer accordingly." CreationDate="2011-03-24T15:07:44.343" UserId="1430" />
  <row Id="13492" PostId="10138" Score="2" Text="XNA is a framework, not an engine... If you are judging XNA because you think its an engine, I suggest you take another look at XNA based engines." CreationDate="2011-03-24T15:55:02.583" UserId="1198" />
  <row Id="13493" PostId="10138" Text="I think I might have a misnomer in my question then. I'm looking for something similar to the set of tools that XNA offers, but just not XNA. I guess I don't know the difference between a framework and an engine?" CreationDate="2011-03-24T17:00:48.857" UserId="5640" />
  <row Id="13494" PostId="10138" Score="1" Text="&quot;framework&quot; and &quot;engine&quot; are pretty loosely defined, but generally an engine &quot;does more&quot; (often at a higher or broader scope) than a framework. In this case I don't think it much matters since your reason for not wanting to use XNA (&quot;already using it&quot;) is valid regardless of what XNA actually *is*." CreationDate="2011-03-24T17:08:46.563" UserId="1430" />
  <row Id="13495" PostId="9900" Text="@Nevermind thanks for the response. I suppose encryption could &quot;raise the bar&quot; a bit and shield from many of the hackers. But would any real communication encryption be practical in time-critical games such as shooters, or even MMO's?" CreationDate="2011-03-24T17:10:50.600" UserId="6117" />
  <row Id="13496" PostId="10139" Text="cocos2d/cocos2d for the iphone have greatly piqued my interest. Torque2D also seems really cool too. Your input is greatly appreciated!" CreationDate="2011-03-24T17:13:04.260" UserId="5640" />
  <row Id="13497" PostId="9900" Text="None of the games I worked on used encryption anywhere except login sequence, so I don't know just how much it affects lag. Depends on encryption algorithm, I guess." CreationDate="2011-03-24T17:52:04.780" UserId="2710" />
  <row Id="13498" PostId="10145" Score="2" Text="You are correct about the [Java MMO server](http://www.reddwarfserver.org/?q=content/open-source-online-gaming-universe)." CreationDate="2011-03-24T17:58:20.753" UserId="189" />
  <row Id="13499" PostId="10141" Text="Great answer.  I was hoping for some math about confidence bounds, but your common sense answer is irrefutable." CreationDate="2011-03-24T18:41:16.837" UserId="370" />
  <row Id="13500" PostId="10131" Score="1" Text="In the shader model 5 (at least in directx11) you can also solve this problem by dynamic shader linking. We was able to transfer 80% of uber shader code to dynamic shader linking. It is much cleaner and nicer." CreationDate="2011-03-24T19:14:23.177" UserId="3794" />
  <row Id="13501" PostId="10139" Text="Some friends used torque and said bad things about it." CreationDate="2011-03-24T19:48:08.547" UserId="457" />
  <row Id="13502" PostId="10149" Text="We ported as much code as possible from UnrealScript to native at my past job. Having solid C++ skills is definitely far more important, especially since it applies to non-UE3 houses." CreationDate="2011-03-24T21:30:21.163" UserId="138" />
  <row Id="13503" PostId="10130" Text="Interesting reads, thankyou. To answer your questions, I am determining that it is interating 10 times by inference from the fact that my frame rate is 20fps when I set NumPointLights to 10 or to 2. If I reduce the size of the PointLights struct to 2-3 then the frame rate dramatically increases to about 70fps.&#xA;Clearly it's iterating through the size of the PointLights struct and clearly I'm pixel shader bound." CreationDate="2011-03-24T21:48:13.357" UserId="5021" />
  <row Id="13505" PostId="10128" Text="I'm still not sure why, and if someone can explain why I'll accept their answer, but recompiling my code just now generated a shader that now does not loop all 10 times anymore, and in fact loops the number of times that is specified by NumPointLights." CreationDate="2011-03-24T22:05:28.773" UserId="5021" />
  <row Id="13507" PostId="10151" Text="Wow, thanks for the superb details.  This should be made into a community wiki.  I was reading through the legal speak for more details on single vs multiple-use licensing and so far can't find anything beyond what you linked.  +1 for the Dead Space zinger." CreationDate="2011-03-24T23:03:31.500" UserId="4212" />
  <row Id="13508" PostId="10147" Score="2" Text="The real risk of game development (or any real time development) in managed languages is not that everything takes a millisecond or two longer, but that random frames will take tens of milliseconds longer because the GC decided to finalize things. Encouraging throughput-focused comparisons with terms like &quot;bottleneck&quot; is misleading." CreationDate="2011-03-24T23:40:46.413" UserId="744" />
  <row Id="13509" PostId="10125" Text="Thanks for the editing, and sorry about my faults, English is not my mother language. =)" CreationDate="2011-03-25T00:25:24.167" UserId="6276" />
  <row Id="13510" PostId="10146" Text="+1 If I could favourite an answer I would :)" CreationDate="2011-03-25T00:54:33.317" UserId="4443" />
  <row Id="13511" PostId="10142" Text="I like your post, especially the &quot;this.DoCrazyAwesomeComboAttack();&quot; XD. Your path seems to be the better way for complicated stuff, so im going to stick with easier stuff. Thank you for your help!" CreationDate="2011-03-25T06:01:04.610" UserId="6277" />
  <row Id="13512" PostId="10085" Text="Unfortunately they seem to concentrate on concatenative synthesis :(" CreationDate="2011-03-25T08:44:08.157" UserId="4264" />
  <row Id="13513" PostId="10161" Text="There was a blog regarding encrypting a swf - [Protect Your Flash Files By Using Encryption](http://active.tutsplus.com/tutorials/workflow/protect-your-flash-files-from-decompilers-by-using-encryption/) - that I'll be implementing. It won't stop someone who is seriously committed, but it will stop the average kiddy from working out what does what. But I agree - I won't be keeping anything really interesting in the source." CreationDate="2011-03-25T08:50:22.887" UserId="6272" />
  <row Id="13514" PostId="9881" Text="Started making the graphs only there are 27000 samples for the whole song so I can't make it for the whole song, only for a part of song. this is the graph for the first 46 secconds on band 3 http://i.cubeupload.com/d169df.png " CreationDate="2011-03-25T11:01:57.500" UserId="6070" />
  <row Id="13515" PostId="9881" Text="Where Red = instant and Green is history, and top = 0 As you can see the instant energy is hugging zero" CreationDate="2011-03-25T11:03:45.130" UserId="6070" />
  <row Id="13516" PostId="9911" Text="&quot;and they will have more fun with it&quot;: I don't think it is about having fun, it is about learning to do stuff, not do stuff with stuff that makes stuff for you. I'm strongly against learning to do stuff with unity first, because this app uses a lot of stuff game devs would have liked a game editor would have been, but this kind of app just *ease* the work, it doesn't teach it. Unlike you, I think it's more important to learn things from the ground up, from scratch, then use an application like unity to see the bigger level." CreationDate="2011-03-25T11:17:59.960" UserId="1829" />
  <row Id="13517" PostId="9911" Text="For your last sentence, when learning game programming, you need to teach it as a whole, not just scripting or engine programming. Game programming has to be like an efficient and reliable toolchain so it scales best for everyone. It's better to have less cons than having too much pros which in the end will just be useless because of the cons." CreationDate="2011-03-25T11:20:20.567" UserId="1829" />
  <row Id="13518" PostId="10142" Text="+1 Very interesting answer! I have learned from this answer and shall take an eye out it when I have more time to spend in my hobby game development. And thanks for telling that my answer is good, though it is for simpler stuff, which I wouldn't argue, since I'm a beginner in GD. =) Thanks!" CreationDate="2011-03-25T13:13:23.200" UserId="2778" />
  <row Id="13519" PostId="10126" Text="+1 Your answer allowed me to learn something new from bearcdp's answer. Thanks for asking! =)" CreationDate="2011-03-25T13:14:55.443" UserId="2778" />
  <row Id="13520" PostId="10168" Text="You also forgot credit card fraud" CreationDate="2011-03-25T13:28:58.633" UserId="4513" />
  <row Id="13521" PostId="9789" Text="(Link is broken at the moment.)" CreationDate="2011-03-25T13:30:22.917" UserId="1199" />
  <row Id="13522" PostId="10173" Text="May I ask what your opinion on the above might be, in terms of which is the best strategy - both for myself and my users? Currently I feel like ads sound like the best choice with the ability to donate/pay to remove them. Though, I have not found any existing ad services for XNA. " CreationDate="2011-03-25T13:43:28.857" UserId="1199" />
  <row Id="13523" PostId="10175" Text="I think this belongs on [GameDev](http://gamedev.stackexchange.com/)" CreationDate="2011-03-25T04:48:56.013" />
  <row Id="13524" PostId="10175" Score="1" Text="Why isn't it efficient? You don't use any resources when the user is offline, and calculate everything as soon as it's needed.. Sounds very efficient to me." CreationDate="2011-03-25T08:02:17.913" />
  <row Id="13525" PostId="10175" Text="I think It's not efficient because I must save time in database any action of user. For example, time when user feed horse, time when user wash horse, time when user plant a plant,...Many queries will be excuted in database at the same time. What if we have 5000 users then that's really a mess!" CreationDate="2011-03-25T08:23:20.453" />
  <row Id="13526" PostId="10175" Score="6" Text="If you need this data you'll have to store it. That's the easy part. If this becomes a mess depends only on your database design. You'll have a record for the plant anyway and it won't give problems to have a few additional fields like time_planted, last_watered and so on. In business applications this kind and amount of data is quite common. Having fields like created_at, last_edit, booked_at is quite common for much more than 5000 users and millions of records with bookings or similar actions." CreationDate="2011-03-25T08:56:23.193" />
  <row Id="13527" PostId="10173" Score="1" Text="@Zolomon - I think paid for addons are possible. However, as they would have to be low priced and not essential to the game you might not get many takers and it may actually put some people off." CreationDate="2011-03-25T13:55:38.700" UserId="382" />
  <row Id="13528" PostId="10151" Text="@Error 454, Glad its useful! The license is a little light on details; I am glad they are trying to enter the market at least though. If I get any more information on the licensing, permitted use, or what kind of protection is required to satisfy 'not available to end users', ill be sure to update it here. Good luck!" CreationDate="2011-03-25T14:24:25.410" UserId="5399" />
  <row Id="13529" PostId="10176" Text="That's the approach I'm most interested in - haven't found any way to implement it on XNA for windows based games though." CreationDate="2011-03-25T14:28:25.217" UserId="1199" />
  <row Id="13530" PostId="10178" Text="Are you describing how to use it for an iphone game(objective C)? I am asking about using C." CreationDate="2011-03-25T14:36:42.917" UserId="5266" />
  <row Id="13531" PostId="10177" Text="It's done in C the same way it's done in any other language.  If there isn't a good library you can write one yourself.  The fundamentals are the same." CreationDate="2011-03-25T14:38:38.967" UserId="51" />
  <row Id="13532" PostId="10178" Text="I'm describing the generic form. I used it with C++, but it is perfectly valid to C. You have to use the file read functions of C/C++ and parse the file that Tiled generates.&#xA;For C: http://www.go4expert.com/forums/showthread.php?t=2977, for C++: http://www.cplusplus.com/doc/tutorial/files/&#xA;" CreationDate="2011-03-25T14:45:27.307" UserId="5899" />
  <row Id="13534" PostId="10176" Score="3" Text="Because it is Windows you can add a browser control, so you could even show Google Adsense or something like that as long as the user is connect to the internet. (*There might be smarter solutions though*)" CreationDate="2011-03-25T15:32:28.203" UserId="5224" />
  <row Id="13535" PostId="10181" Text="thank you very much man" CreationDate="2011-03-25T15:47:41.750" UserId="6310" />
  <row Id="13536" PostId="10187" Score="1" Text="There is also a sequel to the first book (Massively Multiplayer Game Development 2). It's not a terribly useful book series in my opinion (it is definitely not a start-to-finish make-a-MMO-in-x-hours book like most game dev books are), but it does discuss some of the theoretical problems asked in this question. And maybe it'd be more useful to someone who already has a MMO partly developed." CreationDate="2011-03-25T16:52:33.170" UserId="189" />
  <row Id="13537" PostId="10182" Score="1" Text="Possibly, but this place isn't exactly a discussion board. So are you looking for something more specific?" CreationDate="2011-03-25T17:00:30.697" UserId="14" />
  <row Id="13538" PostId="10191" Score="2" Text="You would need to post specifically what you need help with. " CreationDate="2011-03-25T17:06:01.613" UserId="14" />
  <row Id="13539" PostId="10162" Text="http://jmonkeyengine.org/wiki/doku.php/jme3:beginner:hello_audio?s[]=playing&amp;s[]=sound Is that what you are looking for?" CreationDate="2011-03-25T17:13:53.883" UserId="14" />
  <row Id="13540" PostId="10164" Text="+1 for that last piece of advice, which I should've added to my own post.  UDK on top of C++ may well be worth the knowing, and not just at UE3 shops, but because it demonstrates scripting knowledge." CreationDate="2011-03-25T17:16:40.823" UserId="5708" />
  <row Id="13541" PostId="10190" Text="TCP while is good for reliable data is pretty stupid for movement, and there are plenty MMOs that utilize UDP at least for movement. Having a network library like enet solves the reliable problem too as UDP and TCP don't mix well." CreationDate="2011-03-25T17:28:38.927" UserId="5810" />
  <row Id="13542" PostId="10190" Score="4" Text="I will repeat that if you are using differential updates (usually binary diffs of in-game structures) and you use anything with out-of-order delivery (reliable or not) you will regret it. People that dislike TCP in gaming generally just don't know enough about it (such as knowing what NODELAY does). UDP makes sense for stuff like voice data, where out-of-order packets can simply be dropped, this is rarely the case in a game." CreationDate="2011-03-25T17:44:25.620" UserId="395" />
  <row Id="13543" PostId="10191" Score="2" Text="Drop Dev-C++. It is full of bugs, and is horribly outdated. And openGL in 2D = openGL in 3D, with no z-axis (pretty much)." CreationDate="2011-03-25T18:08:28.080" UserId="1156" />
  <row Id="13544" PostId="10181" Text="Why is this answer CW?" CreationDate="2011-03-25T18:18:15.077" UserId="744" />
  <row Id="13545" PostId="10181" Text="Good question! must have clicked that by mistake. My bad." CreationDate="2011-03-25T18:21:45.717" UserId="2469" />
  <row Id="13546" PostId="10190" Text="&quot;rarely the case in a game&quot;? Provided that the server is giving me authoritative game states every frame, I don't care what happened in the past. A simple monotonically-increasing frame number from UDP packets is perfect for this. How much data do you really need to transmit reliably?" CreationDate="2011-03-25T19:18:38.300" UserId="5259" />
  <row Id="13547" PostId="10195" Text="I assume this is pseudocode? Because you're missing parameters and/or not saving off useful return values here." CreationDate="2011-03-25T19:25:38.790" UserId="1430" />
  <row Id="13548" PostId="10190" Score="2" Text="&quot;Provided that the server is giving me authoritative game states every frame&quot; Sure, if you treat that as a given. Note that I said &quot;if you are using differential updates&quot; which would be the opposite of strobing the full state every frame. In an MMO with any level of complexity to the world it will rapidly become impossible to ship full updates that frequently." CreationDate="2011-03-25T19:29:39.450" UserId="395" />
  <row Id="13549" PostId="10190" Text="I see what you mean... I think we are looking at slightly different interpretations of differential. I take it to mean a complete update of the relevant element(s) of the state vector--which is, I believe, just as easy to send as the delta of that element from the previous state (x1 = 2, x2 = 5, as opposed to dx=3,dx=5)." CreationDate="2011-03-25T19:32:38.850" UserId="5259" />
  <row Id="13550" PostId="10195" Text="This seems to be C++ code, but yes, some functions miss parameters..." CreationDate="2011-03-25T19:39:07.143" UserId="1829" />
  <row Id="13551" PostId="9023" Text="+1 very good point, which you could have made without insulting the stupid people, they know not who they are." CreationDate="2011-03-25T19:57:25.540" UserId="5846" />
  <row Id="13553" PostId="10190" Score="1" Text="Even if send the full state of things that change, you end up with issues of out-of-order delivery where merging things together can become infeasible. Think of the updates &quot;x=1,y=2&quot; and then &quot;y=1,z=2&quot;. If those arrive backwards you want to drop the &quot;first&quot; one so that the value of y is correct, but then you lose the change to x." CreationDate="2011-03-25T20:25:35.830" UserId="395" />
  <row Id="13554" PostId="10196" Text="+1 because if XNA does not support this then this is the type of functionality you would want to wrap around what they do do :)" CreationDate="2011-03-25T21:08:41.313" UserId="4443" />
  <row Id="13556" PostId="3555" Text="I got a google malware warning trying to visit his page?" CreationDate="2011-03-25T21:21:08.397" UserId="5540" />
  <row Id="13558" PostId="10190" Text="UDP can easily be wrapped to provide either a guarantee that packets arrive in order or that they always get there. The problem with doing both (i.e. what TCP does) is that any time a packet is lost you have to wait for a retransmit of it, which will cause big lag spikes especially on connections with higher latency or packet loss." CreationDate="2011-03-25T21:53:01.037" UserId="5824" />
  <row Id="13559" PostId="10190" Score="1" Text="@Adam Which is why I said you should go read the TCP spec and understand how window scaling works and how it interacts with retransmission ;-) Rewriting TCP is basically always wrong, the chances of screwing it up are near 100%. If you want reliable, in-order delivery you shouldn't be using UDP." CreationDate="2011-03-25T21:59:20.117" UserId="395" />
  <row Id="13560" PostId="9911" Text="Teaching game programming as a whole is just not a feasible option for most schools as it is such a large topic. That's the reason most schools task you with either a small project using OpenGL/DirectX or a large one using a stable engine. Teaching everything (graphics, physics, AI, etc) would be separate modules on their own and even then would only be an introduction to them. I think you're focusing more on reusability on flexibility than necessary at this stage &quot;why worry about the reusable when you don't yet know what's usable?&quot;" CreationDate="2011-03-25T23:21:57.350" UserId="2332" />
  <row Id="13561" PostId="9911" Text="And no, game programming doesn't have to be an efficient and reliable toolchain when you're starting out. If you want to learn game programming, you need to make games. If you want to learn graphics programming, then code graphics stuff." CreationDate="2011-03-25T23:23:52.683" UserId="2332" />
  <row Id="13562" PostId="10194" Text="&quot;The first option is purely a run-time option: iterate over all of the model.MeshParts and directly modify the ModelMeshPart.Effect property to the new effect. I haven't tried this but I would expect it to work.&quot;&#xA;Actually he's doing that at compile time (in a ContentProcessor) and you can't do that at run-time as far as I know.&#xA;&#xA;I think what you're trying to say is that I can assign an effect to the model and then just pick whatever technique I want in that effect at run-time.&#xA;&#xA;That's true but doesn't answer the question of: how do I use different effects on the same model at run-time?" CreationDate="2011-03-26T00:38:54.237" UserId="5021" />
  <row Id="13563" PostId="10208" Text="I have done this allready, I just screwed that made &quot;axe coordinate system&quot; (tan(z/y),tan(z/x)) and then x=cos(ang_x+T(0)) and y=cos(ang_y+T(1)), but this does not go well " CreationDate="2011-03-26T00:43:28.023" UserId="6321" />
  <row Id="13564" PostId="10208" Text="If you could edit in your rotation code that might help get to the root of the issue.. Otherwise we will just be guessing ;)" CreationDate="2011-03-26T00:58:03.190" UserId="4443" />
  <row Id="13565" PostId="10199" Text="I removed your references/tags for D3D11 since there's nothing in your question (aside from the casual reference at the end) that pertains specifically to D3D11; in fact, it's a pretty graphics-API-agnostic problem." CreationDate="2011-03-26T04:00:36.027" UserId="1430" />
  <row Id="13566" PostId="10213" Text="No actually I haven't even started yet XD." CreationDate="2011-03-26T04:23:05.150" UserId="4779" />
  <row Id="13567" PostId="10212" Score="1" Text="omg that sounds exactly like Digimon :&gt;" CreationDate="2011-03-26T04:33:00.243" UserId="288" />
  <row Id="13568" PostId="10213" Score="5" Text="Why not make something new and original then?" CreationDate="2011-03-26T06:15:32.340" UserId="395" />
  <row Id="13569" PostId="10212" Score="4" Text="You seem to have outlined everything that defines Pokemon, except called them monsters. :P" CreationDate="2011-03-26T09:00:25.593" UserId="1156" />
  <row Id="13570" PostId="10190" Text="@coderanger both protocols have there pros and cons and you cna have reliable on UDP if your using libraries.&#xA;[Comparison for reliable protocols](http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.122.2392&amp;rep=rep1&amp;type=pdf).&#xA;&#xA;Besides TCP isn't the most efficient when you consider that some data is not needed to be reliable.&#xA;[More research](http://mmnet.iis.sinica.edu.tw/pub/chen06_tcp_slides.pdf)&#xA;&#xA;[The wonderful world of Scholar](http://scholar.google.com/scholar?hl=en&amp;q=udp+tcp+mmorpg&amp;btnG=Search&amp;as_sdt=0%2C5&amp;as_ylo=&amp;as_vis=0)" CreationDate="2011-03-26T09:16:54.130" UserId="5810" />
  <row Id="13571" PostId="10218" Text="Hi, I just posted my drawing code, I use CopyAbsoluteBoneTransformsTo and still get the error... It also seems like the max exporter is stupid, it keeps exporting the scale factor as 2.54 even though in the settings I have set it to '1'... *sigh*" CreationDate="2011-03-26T12:44:40.533" UserId="2933" />
  <row Id="13572" PostId="10218" Text="Yeah, that is consistent with what I find about the scale too. " CreationDate="2011-03-26T12:50:28.037" UserId="1923" />
  <row Id="13573" PostId="10218" Text="good to know it's not just me and it in fact does suck :)" CreationDate="2011-03-26T13:10:09.793" UserId="2933" />
  <row Id="13574" PostId="10190" Score="1" Text="@adrix: Of course, the first hit in your search says, e.g. &quot;Funcom's Anarchy Online is... based on TCP... In these game streams, TCP does not back off, using TCP does not have to be slower than using UDP&quot;. In practice, there is very little data in games - especially games with the complexities of a PC MMO - that does not need to be reliable." CreationDate="2011-03-26T16:14:14.567" UserId="744" />
  <row Id="13575" PostId="10218" Text="Doesn't look like your getting much response from either thread. If you want to copy &amp; past the FBX files on a pastebin (   http://xna.multigan.com/pastebin/   ), &amp; reply back here with a link to it, I'll take a look at them and see if I can help figure it out. I can tell you the content pipeline processing does not cause these things." CreationDate="2011-03-26T16:19:26.377" UserId="1923" />
  <row Id="13576" PostId="10213" Text="'Cuz I like a Pokemon-like game. I'm not saying I want to clone the whole game, I just want to know whether the points I said are valid. Apparently many are not, like using a &quot;ball&quot; to catch a monster :(.." CreationDate="2011-03-26T16:31:11.550" UserId="4779" />
  <row Id="13577" PostId="10218" Score="1" Text="If it's exporting the scale as 2.54 rather than 1 it sounds like you might be modeling in inches and exporting in centimeters." CreationDate="2011-03-26T17:01:48.427" UserId="744" />
  <row Id="13578" PostId="10210" Text="So far I have a the equivalent of the Geometry class, on the other hand I'm not sure I understand how you suggest I should handle the vertex formats. Even by using interfaces to build the geometry from a file or analytically, I'm still faced with having to call the vertex ctor at some point. That's my main problem. In the case of a {pos, color} vertex, the function will do something like: VertexPosColor v[] = { VertexPosColor(), ... }.&#xA;but now if I want to use a VertexTexture I need to change the vertex array to: VertexTexture v[] = { VertexTexture(), ... }&#xA;I hope I'm making sense." CreationDate="2011-03-26T17:05:08.737" UserId="2469" />
  <row Id="13579" PostId="9911" Score="1" Text="The amount of fun involved directly affects motivation. If you are stuck typing code for weeks with only a polygon on screen as a test of your &quot;engine&quot;, you're going to abandon it. But if you can start with something like Unity and make a game or two, and THEN decide that you want to try writing it from scratch, you'll have more motivation to start and perhaps a better idea of how it should go." CreationDate="2011-03-26T17:16:22.737" UserId="189" />
  <row Id="13581" PostId="10209" Text="Which, again, is concatenative synthesis." CreationDate="2011-03-26T19:11:05.713" UserId="4264" />
  <row Id="13582" PostId="10213" Text="First lesson of professional game development, you don't always get to work on your favorite thing ever ;-)" CreationDate="2011-03-26T19:45:22.093" UserId="395" />
  <row Id="13583" PostId="10190" Text="@adrix This is coming from two people (myself and Joe) that used to do this professionally (MMO networking), I would submit you should probably stop arguing this when the whole point of this question was to ask for help." CreationDate="2011-03-26T19:49:18.220" UserId="395" />
  <row Id="13584" PostId="10210" Text="Sure. You don't *need* to call the vertex structure constructor -- and in fact you don't *need* a vertex structure at all. But you can still work directly with raw bytes (first allocate enough raw bytes, and then reinterpret_cast the raw byte pointer to a VertexPosColor* for example)." CreationDate="2011-03-26T19:49:32.040" UserId="1430" />
  <row Id="13585" PostId="10217" Text="Ahoj Martine, how do you setup camera? Also vertex shader looks pretty weird, because it doesn't outputs transformed vertices. I'm not sure if something is rastarized. Does this really works if compiled as regular opengl?" CreationDate="2011-03-26T20:03:58.503" UserId="3794" />
  <row Id="13586" PostId="10210" Text="I updated my answer with what I hope is some clarification. Note that there are other solutions; for example you could attempt to employ a factory for creating the vertex buffers, using the vertex format as a key. Just ensure that your vertex structures remain POD." CreationDate="2011-03-26T20:05:47.050" UserId="1430" />
  <row Id="13587" PostId="10202" Text="what language is this? Javascript?" CreationDate="2011-03-26T21:55:57.623" UserId="2787" />
  <row Id="13588" PostId="10233" Text="I certainly agree with the first two points, the other ones sound very interesting too." CreationDate="2011-03-26T23:01:41.130" UserId="6341" />
  <row Id="13589" PostId="10230" Text="What are you doing for audio?" CreationDate="2011-03-26T23:12:18.107" UserId="3656" />
  <row Id="13591" PostId="10230" Text="@bearcdp: Nothing yet, seems interesting, thanks." CreationDate="2011-03-26T23:28:58.640" UserId="6341" />
  <row Id="13592" PostId="10235" Text="I'm currently letting confetti in all different colors fall from top to the bottom of the screen. I think fireworks are more exciting, thanks." CreationDate="2011-03-26T23:29:56.223" UserId="6341" />
  <row Id="13593" PostId="10235" Score="1" Text="and how are you handling camera movement when changing turns? Because you could add some fancy camera movement there too. But I must admit that I've never made a 3D Tic-Tac-Toe though.." CreationDate="2011-03-26T23:32:31.353" UserId="2111" />
  <row Id="13594" PostId="10235" Text="Well that's not too bad at all. It will most certainly make things more attractive. Thanks for your input." CreationDate="2011-03-26T23:55:30.867" UserId="6341" />
  <row Id="13595" PostId="10236" Text="Try to use glBlendFunc( GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA ); but we need to know more info about the current state of OpenGL ( more of your code ), and if you has loaded the textures on memory, placed the texture coordinates and texture binding." CreationDate="2011-03-27T00:54:58.923" UserId="5899" />
  <row Id="13596" PostId="10218" Text="I've set it to centimeteres in the units section and on export I select centimteres..." CreationDate="2011-03-27T01:25:59.130" UserId="2933" />
  <row Id="13597" PostId="10216" Text="I disagree. I find no problem in cloning a game. Many people clone Tetris. In fact in other questions, it's encouraged. What's wrong with cloning a more complex game such as Pokemon?" CreationDate="2011-03-27T02:45:51.627" UserId="982" />
  <row Id="13599" PostId="10213" Text="Haha, you might be right. Fortunately, Pokemon isn't my favorite thing XD (but it is a good idea D:)" CreationDate="2011-03-27T04:15:25.653" UserId="4779" />
  <row Id="13600" PostId="10213" Text="Of course the second lesson of professional game development is that borrowing ideas from other, successful (or not) games is the cornerstone of the field. Making a collectible monsters game is certainly not a bad idea, just maybe start from scratch and design something yourself." CreationDate="2011-03-27T04:23:29.110" UserId="395" />
  <row Id="13601" PostId="10240" Text="I plan to update the image with the hover image and visited image for square that your hover on and already visited. Would would still advice the single control?" CreationDate="2011-03-27T04:24:45.973" UserId="5413" />
  <row Id="13602" PostId="10240" Score="1" Text="Yes; in fact, the fewer controls (child windows) you have, the better your drawing performance generally will be. You can capture the mouse motion events for the main control and use them to compute the hovered cell, store that information, and access it while drawing." CreationDate="2011-03-27T04:33:40.067" UserId="1430" />
  <row Id="13603" PostId="10230" Text="Are you looking for ways to extend the game or the visualization?" CreationDate="2011-03-27T08:08:51.800" UserId="6347" />
  <row Id="13604" PostId="10239" Score="3" Text="That game is trivially won by the starting player in three moves." CreationDate="2011-03-27T08:09:38.523" UserId="6347" />
  <row Id="13605" PostId="10236" Text="thanks i've edited" CreationDate="2011-03-27T08:17:20.607" UserId="4508" />
  <row Id="13606" PostId="10190" Text="@Joe Wreschnig What I'm saying is that you can go both ways depending on what you need,sometimes you might need a unreliable channel and all I'm saying is that you can have reliable and ordered with the help of libraries on UDP&#xA;&#xA;@coderanger What is your problem? the comments are relevant to your answer, people shouldn't just blindly accept answers,otherwise we would have the problem of giving bad advice which is precisely why the comment system was made,I'm just giving my opinion on your answer" CreationDate="2011-03-27T08:39:02.087" UserId="5810" />
  <row Id="13608" PostId="10230" Text="@Tim Nordenfur: Well, both perhaps. As bearcdp stated, audio can also be an interesting addition." CreationDate="2011-03-27T10:16:53.937" UserId="6341" />
  <row Id="13609" PostId="10239" Text="Oh I see, very interesting indeed. I currently just have a 2D grid placed in 3D. Thanks. Difficult to win though I guess, as there are more escaping possibilities (not every move can always be blocked)." CreationDate="2011-03-27T10:18:14.060" UserId="6341" />
  <row Id="13610" PostId="10128" Text="Likely answers to the question in your edit are: &quot;you made a mistake&quot;, &quot;you changed compiler options&quot;, &quot;you modified the code&quot; and &quot;it works now so who cares?&quot;. Your new question is unanswerable as-is, because you haven't provided the code before and after (and if you did that you should make a new question anyway). Just accept an answer to the original question (&quot;How do I proceed?&quot;)." CreationDate="2011-03-27T10:28:45.487" UserId="288" />
  <row Id="13611" PostId="10239" Text="@Tim really? That's awesome. I played it years ago, so I never bothered strategizing. Tic-tac-toe itself is also trivially winnable almost all the time if you have the right strategy." CreationDate="2011-03-27T11:09:26.190" UserId="1929" />
  <row Id="13612" PostId="10239" Score="1" Text="@ashes999: If both players use perfect stragedy, all games will end up in a draw ;)." CreationDate="2011-03-27T11:26:54.090" UserId="6341" />
  <row Id="13613" PostId="10239" Text="@pimvdb that was my experience, too." CreationDate="2011-03-27T11:30:14.127" UserId="1929" />
  <row Id="13614" PostId="10238" Text="The size per square is 20x20, but you position each one 30x30. I guess it should either be `i*20, j*20` or `i*40, j*40`." CreationDate="2011-03-27T11:50:11.637" UserId="6341" />
  <row Id="13616" PostId="2361" Text="So you think Beyond Good &amp; Evil, Command &amp; Conquer &amp; God of War are bad names?" CreationDate="2011-03-27T12:13:38.543" UserId="1883" />
  <row Id="13617" PostId="10128" Text="I think that you're right Andrew. I've accepted an answer." CreationDate="2011-03-27T12:31:14.543" UserId="5021" />
  <row Id="13618" PostId="10212" Score="2" Text="@The Communist Duck: I would say he's actually outlined _everything_ that defines Pocket Monsters." CreationDate="2011-03-27T15:30:01.380" UserId="2698" />
  <row Id="13619" PostId="10212" Text="@Jonathan Hobbs Except they are being carried in balls, not pockets. ;)" CreationDate="2011-03-27T15:30:37.040" UserId="1156" />
  <row Id="13620" PostId="10212" Text="@The Communist Duck: In Japan, Pokemon is called Pocket Monsters. The English translators just contracted it into one word. Now you know where the name comes from! :)" CreationDate="2011-03-27T15:32:53.593" UserId="2698" />
  <row Id="13623" PostId="10167" Text="Is this a question? Sounds like you need to use another networking library if red5 is dead/not ready to be used. I woud suggest avoiding unneeded fluff like spring. Spring is good if your developing complex java applications but will make it unnecessary hard to use a new technology. Everything you can configure in a spring xml you can do in code. You can later change it back to spring." CreationDate="2011-03-27T15:44:02.473" UserId="4345" />
  <row Id="13624" PostId="10212" Text="@Jonathan Hobbs Yes, I know. I guess I can't crack a good joke today. :P" CreationDate="2011-03-27T15:56:26.130" UserId="1156" />
  <row Id="13625" PostId="10194" Text="I tried the first option and you can modify the effect at run-time using code like &#xA;`foreach (var mesh in model.Meshes)&#xA; {&#xA;      foreach (var part in mesh.MeshParts)&#xA;      {&#xA;           part.Effect = newEffect;&#xA;      }&#xA; }`&#xA;&#xA;As for the second approach, doesn't the ability to change the technique at run-time give you the same functionality as changing the effect if you write a single effect that exposes the original multiple effects as separate techniques?&#xA;" CreationDate="2011-03-27T16:05:51.213" UserId="6318" />
  <row Id="13626" PostId="10250" Text="Thanks for this answer. I know few on the subject, and I believed there would be some standard formats/way to do it, given all the 3D applications out there." CreationDate="2011-03-27T16:20:48.313" UserId="6312" />
  <row Id="13627" PostId="10235" Score="1" Text="@Jesse Emond: I implemented some automatic camera movement and it makes it quite attractive indeed, thanks!" CreationDate="2011-03-27T16:22:19.953" UserId="6341" />
  <row Id="13628" PostId="10216" Text="Yeah! What's wrong! Lol :)" CreationDate="2011-03-27T16:39:21.070" UserId="4779" />
  <row Id="13629" PostId="10213" Text="I guess you're right, I'll see what I could change..... AHA! Short grass will make monsters pop up and you catch them with your bare fists. Hey, that would be fun." CreationDate="2011-03-27T16:41:07.073" UserId="4779" />
  <row Id="13630" PostId="10256" Text="example2a works perfectly, this is not my problem. if you add some glcolor4f(1,1,1,1);glBegin(TRIANGLES); and draw some random triangles.. this does not work." CreationDate="2011-03-27T17:47:49.543" UserId="4508" />
  <row Id="13631" PostId="10250" Text="There are lots of formats but none of them are (or should) be tied to the android operating system - just as no image formats or document formats should be tied to an operating system.  In the end, it's all just bits and bytes and it's up to you to interpret those or to get a library that does that job for you. I use my own proprietary 3d file format that I output from a home grown 3d modelling program - that's a bit of an extreme example of D.I.Y. though. You could probably write a plugin for Blender that would output in whatever format is convenient for you - even as Java code." CreationDate="2011-03-27T18:14:06.620" UserId="5957" />
  <row Id="13632" PostId="10233" Score="1" Text="I completely agree. I've always found that developing in Iterations usually comes out better. (Draft then polish)" CreationDate="2011-03-27T18:25:39.890" UserId="3547" />
  <row Id="13633" PostId="10256" Text="I've edited my answer. The main loop of main function draws a triangle. Look at the lines with comments." CreationDate="2011-03-27T18:27:50.943" UserId="5899" />
  <row Id="13634" PostId="10247" Text="Related: http://gamedev.stackexchange.com/questions/4872/what-languages-are-used-to-develop-mmorpgs-like-eve-online-and-wow/4881#4881" CreationDate="2011-03-27T18:31:28.303" UserId="395" />
  <row Id="13636" PostId="6759" Text="Good answer. Never heard of collada, and that was a big help. " CreationDate="2011-03-27T19:14:00.333" UserId="3984" />
  <row Id="13637" PostId="10258" Text="If something works that doesn't mean that it is correct. And your solution is not correct. Check my answer for more informations. " CreationDate="2011-03-27T19:29:53.793" UserId="3794" />
  <row Id="13638" PostId="10259" Text="you are absolutly right. thanks for advice" CreationDate="2011-03-27T19:56:05.313" UserId="5459" />
  <row Id="13639" PostId="10212" Text="@TheC Pokemon are carried in balls. The balls just shrink to fit in your pocket" CreationDate="2011-03-27T20:16:36.983" UserId="14" />
  <row Id="13640" PostId="10214" Text="For 200 points, use real elements :) I was thinking of doing that." CreationDate="2011-03-27T20:20:46.933" UserId="14" />
  <row Id="13641" PostId="10256" Text="what's the hell! why has textures to be disabled??" CreationDate="2011-03-27T21:59:13.130" UserId="4508" />
  <row Id="13642" PostId="10252" Text="I'm currently at a very early stage: for now I'm only gathering information and I expected importation to be a simplier work. I know too few to cooperate I think, but I'll keep that in mind :)" CreationDate="2011-03-27T22:02:43.813" UserId="6312" />
  <row Id="13643" PostId="10261" Text="How would you do it for normal sprites? Have you considered offscreen rendering of &quot;collision map&quot; every frame?" CreationDate="2011-03-27T22:08:20.190" UserId="3794" />
  <row Id="13644" PostId="10256" Text="The primitives that you draw are affected by the current state of OpenGL, think that OpenGL is a large state machine. If the next primitive to draw doesn't have textures, ensure that the GL_TEXTURE_2D is disabled because there may be things that affect to painting when the texture state is enabled." CreationDate="2011-03-27T22:24:43.810" UserId="5899" />
  <row Id="13645" PostId="7872" Text="@Kylotan I realise this is very late, but I'd just like to thank you for that comment as I've been constantly quoting it to others :)" CreationDate="2011-03-27T22:51:40.420" UserId="2332" />
  <row Id="13646" PostId="10194" Text="Are you using XNA 4? `part.Effect = newEffect;` doesn't work because part.Effect has no setter." CreationDate="2011-03-27T23:30:09.950" UserId="5021" />
  <row Id="13647" PostId="10194" Text="Oh, nevermind, you're right, you CAN change the effect that way. Thanks!" CreationDate="2011-03-27T23:35:56.793" UserId="5021" />
  <row Id="13648" PostId="10261" Score="1" Text="If you just did the collision in 3D this would be trivial, but I'm assuming you don't have a framework that's set up for that." CreationDate="2011-03-28T00:55:57.813" UserId="51" />
  <row Id="13649" PostId="10264" Text="What school are you going to with degrees like that?  I point you to my answer on a relevant question about eduction: http://gamedev.stackexchange.com/questions/1611/game-development-degree-vs-computer-science-degree/1612#1612   &#xA;" CreationDate="2011-03-28T01:21:45.593" UserId="51" />
  <row Id="13650" PostId="10267" Text="I have low rep, otherwise I'd add &quot;mouse&quot; and &quot;full-screen&quot; tags" CreationDate="2011-03-28T03:05:09.823" UserId="6367" />
  <row Id="13651" PostId="10268" Text="By mouse capture, I mean locking the mouse to the view portal.  The goal being to keep you immersed in an action game, rather than wild mouse movements/clicks ripping you out to your desktop or other elements on a browser page.  I've seen this done in hacky or painful ways (usually in browser games) and quite nice ways (OpenGL/DirectX/Virtual machines without the integration options installed).  Usually you escape mouse capture by exiting to a menu or a drop-down console, or using alt-tab.  I mention it because I've seen flash/html5/svg apps that needed it, and I think it might not exist." CreationDate="2011-03-28T03:32:47.057" UserId="6367" />
  <row Id="13652" PostId="10268" Text="Also, &quot;FPS style&quot; nearly sums it up.  I've seen terrible implementations of this, too, that responded to mouse movements outside the window, but still allowed other apps to respond to clicks." CreationDate="2011-03-28T03:37:02.667" UserId="6367" />
  <row Id="13653" PostId="10261" Text="What Tetrad said, just do it the 3D way, there is nothing wrong with that." CreationDate="2011-03-28T03:57:53.720" UserId="5916" />
  <row Id="13654" PostId="10269" Score="1" Text="What's wrong with letting the user select which one to attack?" CreationDate="2011-03-28T04:15:35.007" UserId="51" />
  <row Id="13655" PostId="10269" Text="Nothing. That is an option as well :)" CreationDate="2011-03-28T04:19:33.723" UserId="6214" />
  <row Id="13656" PostId="10232" Text="But it does support Linux ? I see that it can be use in many moviles and win32 but not in linux as far as i read. Thanks for the answer i keep searching." CreationDate="2011-03-28T05:55:22.550" UserId="5139" />
  <row Id="13657" PostId="10268" Text="Yes, Unity has mouse capture." CreationDate="2011-03-28T06:14:52.453" UserId="2710" />
  <row Id="13658" PostId="10262" Text="Unless you are doing it in DrawQuad, you aren't explicitly setting the texture for the moon." CreationDate="2011-03-28T08:06:58.983" UserId="2798" />
  <row Id="13659" PostId="10272" Score="1" Text="... which is true since RPG is the best game genre; all others are so unrealistic." CreationDate="2011-03-28T09:20:58.480" UserId="6372" />
  <row Id="13660" PostId="10266" Score="1" Text="You shouldn't answer your own question with another one." CreationDate="2011-03-28T09:23:35.687" UserId="6372" />
  <row Id="13661" PostId="10266" Text="Use the DB, for the same reason you use a DB. Speed of the DB can be &quot;configured&quot; if ever necessary." CreationDate="2011-03-28T09:24:48.883" UserId="6372" />
  <row Id="13662" PostId="10253" Text="Thats a very clear and understandable awnser, thanks alot!&#xA;How is it handled on which subspace an object is? Is the subspace handeled as an object, where the object on it are saved as arrays and checked against each other? Or do you just check on which subspace it is by checking the X and Y inside the main loop?&#xA;&#xA;Seems like building and changing arrays all the time is pretty inefficient. So I want to be sure that I use the appropriate method :)&#xA;&#xA;I can also see a problem occurring when objects are varying in size. I guess the smallest subspace should be about as big as the biggest object?" CreationDate="2011-03-28T10:53:28.720" UserId="5677" />
  <row Id="13663" PostId="10202" Text="Actionscript 3, but the language is pretty irrelevent. Just want to found out whats the best way to handle and structure this :)" CreationDate="2011-03-28T10:54:30.513" UserId="5677" />
  <row Id="13664" PostId="10277" Score="3" Text="Perhaps you could use something along the lines of: y = abs(cos(x*5)*max(1-x,0))" CreationDate="2011-03-28T11:44:59.377" UserId="3644" />
  <row Id="13665" PostId="10266" Text="Files will perform much worse if you have to query stuff (eg. *get me the last time user X fed the horse*)." CreationDate="2011-03-28T11:55:40.390" UserId="20" />
  <row Id="13666" PostId="1986" Text="Add &quot;Replayable&quot; as well. I hate having to go to YouTube all the time I want to rewatch a cutscene, either because it was awesome or because I haven't played for a few months and want to catch up." CreationDate="2011-03-28T12:05:28.327" UserId="849" />
  <row Id="13667" PostId="2526" Text="+1 for QuickSave" CreationDate="2011-03-28T12:05:46.733" UserId="849" />
  <row Id="13668" PostId="10277" Score="5" Text="Using a graphical equation will not help you apply natural looking accelerations to the system. You may be surprised to find how easy it would be to simply use basic Newtonian equations here. Give the object a little mass and momentum and let the force of gravity and Newton handle the accelerations &amp; position changes. It's far easier than you may think." CreationDate="2011-03-28T12:24:55.540" UserId="1923" />
  <row Id="13669" PostId="10216" Text="@Jeff @Omega: Tetris is simple, so cloning it is useful to learn. Pokèmon is complex, so cloning it is just an enormous waste of time, which you could use to create something new instead." CreationDate="2011-03-28T13:21:35.293" UserId="2188" />
  <row Id="13670" PostId="10277" Score="1" Text="@SteveH You should put this to answer." CreationDate="2011-03-28T13:29:24.120" UserId="3794" />
  <row Id="13671" PostId="10277" Text="@notabene yeah, I was sitting on the fence with that and you pushed me to that side. Thanks. I hesitated because I didn't want to spend the 15 minutes to provide a pseudo code solution." CreationDate="2011-03-28T14:07:27.940" UserId="1923" />
  <row Id="13672" PostId="10277" Text="@Krom: Thanks, I currently have: `y = abs(cos((x+18)/6.2)/((x+18)/6.2))*149`. @SteveH: Could you possibly tell the key terms in Newtonian solutions? I seem to be using the wrong ones as I can't really find a good example on how to implement it." CreationDate="2011-03-28T14:10:46.397" UserId="6341" />
  <row Id="13673" PostId="10277" Text="Ok, I'll write up a little pseudo code. but I have to go to work now. It'l be a few hours. here's a good starter: http://gafferongames.com/game-physics/physics-in-3d but your deal is even simpler than this since you prolly don't need to concern yourself with angular momentum." CreationDate="2011-03-28T14:25:11.970" UserId="1923" />
  <row Id="13674" PostId="10277" Text="@Steve H: Thanks a million in advance, but  please do not spend too much time on it. Also thanks for the link." CreationDate="2011-03-28T14:30:34.210" UserId="6341" />
  <row Id="13675" PostId="10282" Score="1" Text="I disagree. It's a question of what game he wants to design. Some are more involving, some are less. Not every game that doesn't appeal to the casual players who only have 1 hour a day is non-user-friendly, it's just less casual-user-friendly, which is completely fine if that's what the game designer wants. If you have to log in every day to &quot;survive&quot; in the game it's fine if that's what the game designer wants. About the vacation thing some games have special systems for exactly that purpose, like when a friend takes over your account for a while with limited privilages :)" CreationDate="2011-03-28T16:03:39.793" UserId="6117" />
  <row Id="13676" PostId="10291" Text="Even though this technically is a more correct answer, Andrew's was still more the answer I was looking for." CreationDate="2011-03-28T16:35:02.417" UserId="6307" />
  <row Id="13677" PostId="10247" Text="Are we talking engines/libraries for MMOs, or actual MMOs?" CreationDate="2011-03-28T17:13:29.553" UserId="1156" />
  <row Id="13678" PostId="10270" Text="Let the players choose, its a game not a cutscene :)" CreationDate="2011-03-28T17:26:20.783" UserId="4443" />
  <row Id="13679" PostId="10210" Text="Ok, I see what you mean. Nonetheless, I still need a classed/functions that will build meshes from files or in the shape of a sphere, cone... an so on. Thanks a bunch, it's pretty clear now anyway!" CreationDate="2011-03-28T17:30:43.057" UserId="2469" />
  <row Id="13680" PostId="10210" Text="No problem; you can always ask another question about designs for handling procedural mesh construction (building spheres or cones based on parameters, etc)." CreationDate="2011-03-28T17:45:01.797" UserId="1430" />
  <row Id="13681" PostId="10291" Score="2" Text="Then if you are expecting a &quot;no&quot;, I don't see the point in asking :)" CreationDate="2011-03-28T18:05:14.190" UserId="2798" />
  <row Id="13682" PostId="10296" Text="Related http://gamedev.stackexchange.com/questions/2362/the-pros-and-cons-dx9-moving-to-dx11-render" CreationDate="2011-03-28T18:05:38.247" UserId="1156" />
  <row Id="13683" PostId="10279" Text="Example of the said equation in your answer would be great :)" CreationDate="2011-03-28T18:29:33.437" UserId="3644" />
  <row Id="13684" PostId="10269" Text="There were no Final Fantasy games on the N64... but for the most part, most of the early Nintendo ones (outside of the first) resolved to random choice. Enemies didn't really have a row or priority system like the party had, so random choice just went to any old target." CreationDate="2011-03-28T18:44:52.783" UserId="3588" />
  <row Id="13685" PostId="10104" Text="Hell, if he brought pizza and caffeine I'd invite him back. :)" CreationDate="2011-03-28T19:12:36.177" UserId="4604" />
  <row Id="13686" PostId="10299" Text="Thanks, just what I needed. I looked for some official guide to what had changed but somehow didn't manage to find it. Thank you for this answer and the other people who took the time to help with good answers too :)" CreationDate="2011-03-28T19:44:13.433" UserId="5771" />
  <row Id="13687" PostId="10270" Text="-1 That's a gameplay design matter, that doesn't answer the OP's question, just tells him not to make a decision he probably has already thought of and concluded that it's best for his specific game. Maybe he needs some sort of an &quot;aggressive&quot; mode where the player character automatically attacks enemies in sight?" CreationDate="2011-03-28T19:44:25.670" UserId="6117" />
  <row Id="13688" PostId="10307" Text="I must say this just works great. Apparently, it's not just one graph but a combination of `x^2` variants. If I use `easeOutBounce(50, 0, 50, 50)` I get the bouncing effect with 50 steps, in the range 0 - 50. Thanks! " CreationDate="2011-03-28T19:53:39.703" UserId="6341" />
  <row Id="13689" PostId="10308" Text="Really amazing! Thanks!" CreationDate="2011-03-28T19:55:17.253" UserId="6341" />
  <row Id="13690" PostId="10308" Text="+1 I've used freesound before and it's got some nice sounds and even nicer licenses." CreationDate="2011-03-28T19:55:24.730" UserId="2332" />
  <row Id="13691" PostId="10299" Text="That's funny how one forget those stuff quickly. I especially hated the effect compilation and it took me few days to make it work. But i did not include it into my answer..." CreationDate="2011-03-28T21:07:07.950" UserId="3794" />
  <row Id="13696" PostId="10279" Score="1" Text="http://en.wikipedia.org/wiki/Equations_of_motion" CreationDate="2011-03-28T21:48:40.380" UserId="5824" />
  <row Id="13697" PostId="10207" Text="Just to clarify: you are trying to do a hardware implementation of this using VHDL?" CreationDate="2011-03-28T22:18:58.043" UserId="5259" />
  <row Id="13698" PostId="10316" Text="I've looked into oolong. Just built the test ReadBlender file... I mean, that's nice for building scenes, but I can't exactly control the animation. Any advice on how to get from Maya -&gt; Blender? Or for controlling the animation in the pipeline?" CreationDate="2011-03-29T01:49:03.217" UserId="6384" />
  <row Id="13699" PostId="10104" Text="A small development house might, a bigger one might be insulted." CreationDate="2011-03-29T05:48:28.973" UserId="4264" />
  <row Id="13700" PostId="10324" Score="1" Text="&quot;Works&quot; as in, will people pay to remove them? Or &quot;works&quot; as in is it allowed by Apple's policies/guidelines that you can disable ads within an app that provides them?" CreationDate="2011-03-29T06:08:17.397" UserId="1430" />
  <row Id="13701" PostId="10233" Score="1" Text="Concerning vision, try to define a &quot;core&quot;. This can be a fun/unique gameplay mechanic or an overall theme. The core defines the game, and most every idea you have should support it and build it stronger. Starting with a well defined game should help you feel more kinship with it and possibly more drive to finish it." CreationDate="2011-03-29T07:20:51.780" UserId="3327" />
  <row Id="13702" PostId="10328" Text="How does this answer the question? It feels like more of a comment to me." CreationDate="2011-03-29T07:22:43.383" UserId="3637" />
  <row Id="13703" PostId="10327" Text="This is a really vague question, what data do you exactly want to store, and why, and what do you want todo with it once it has been stored. There is no such thing as an automatic-service that does everthing for you.  Why can't you just log your inputs events in memory and at the end of each game insert them into a database yourself (I'm thinking of a table like |ID|event|eventArgs|gameState|SessionID|)" CreationDate="2011-03-29T07:32:43.377" UserId="5224" />
  <row Id="13704" PostId="10327" Score="3" Text="and expecting millions of users a day with such a vague idea seems overly optimistic to say the least." CreationDate="2011-03-29T07:37:27.070" UserId="6169" />
  <row Id="13705" PostId="10115" Text="Right, it was supposed to be for XNA. Sorry, my bad :)" CreationDate="2011-03-29T08:34:16.933" UserId="1562" />
  <row Id="13706" PostId="10318" Text="I do apologise. I was trying to get a general idea of what others do. It seems whenever I do that I do seem to get vague. Thank you for your advice." CreationDate="2011-03-29T09:23:07.440" UserId="5253" />
  <row Id="13707" PostId="10332" Text="This is not answer." CreationDate="2011-03-29T10:32:06.580" UserId="3794" />
  <row Id="13708" PostId="10327" Score="1" Text="this question does not sound right. Are you sure you mean companies?" CreationDate="2011-03-29T10:55:12.790" UserId="4345" />
  <row Id="13709" PostId="10296" Text="I heard that DX10 was really different and not backward compatible with DX9, while DX11 was backward compatible with DX9." CreationDate="2011-03-29T11:12:56.857" UserId="1829" />
  <row Id="13710" PostId="10277" Text="here is the promised example: http://xna.multigan.com/pastebin/?page=view&amp;id=1301401080    I wrote it in XNA but I think it can be read as pseudo code as well." CreationDate="2011-03-29T12:23:55.357" UserId="1923" />
  <row Id="13711" PostId="10279" Score="1" Text="here is the example: http://xna.multigan.com/pastebin/?page=view&amp;id=1301401080    I wrote it in XNA but I think it can be read as pseudo code as well" CreationDate="2011-03-29T12:24:19.880" UserId="1923" />
  <row Id="13712" PostId="10296" Text="DX10 is quite different from DX9 but DX11 is fairly similar to DX10, I just wanted to know what the differences were. Strangely though, DX11 will work with DX9 hardware but DX10 won't ;)" CreationDate="2011-03-29T12:36:14.080" UserId="5771" />
  <row Id="13713" PostId="10343" Text="If you're into adventure games, you probably already know the companies you're interested in. It's not as if there are too many active adventure game companies these days.." CreationDate="2011-03-29T12:56:26.947" UserId="4264" />
  <row Id="13714" PostId="10324" Text="Hi, by &quot;works&quot; I meant both." CreationDate="2011-03-29T13:36:01.267" UserId="1021" />
  <row Id="13715" PostId="10330" Text="The user would see the ads everytime the game ends and the homescreen is displayed.  Since it's a casual game that's replayed often (in theory) the user would see the ads for a non-trivial amount of time." CreationDate="2011-03-29T13:38:45.257" UserId="1021" />
  <row Id="13716" PostId="10279" Text="@SteveH: Thanks so extremely much! You definitely deserve the answer as being the accepted one :)" CreationDate="2011-03-29T14:28:43.623" UserId="6341" />
  <row Id="13717" PostId="10353" Score="1" Text="Your impression is incorrect. I am professional with vision and preferences, not &quot;gimme play that&quot; amateur." CreationDate="2011-03-29T15:25:14.997" UserId="1677" />
  <row Id="13718" PostId="10351" Text="Good arguments. Thank you." CreationDate="2011-03-29T15:26:36.133" UserId="1677" />
  <row Id="13719" PostId="10279" Text="This is what I ended up with (JavaScript): http://jsfiddle.net/Cf9H4/." CreationDate="2011-03-29T15:47:27.207" UserId="6341" />
  <row Id="13720" PostId="10327" Text="-1; I agree with Roy T." CreationDate="2011-03-29T15:48:31.070" UserId="1430" />
  <row Id="13721" PostId="9881" Text="But this plot is just historyBuffer, or historyBuffer/numInBuffer*C ?  It looks like you have a massive C in there.  Looking at the code, historyBuffer should have similar values to instantEnergy, that graph can only be if C is too high or numInBuffer is too low (way below 1), which I guess it's not the case." CreationDate="2011-03-29T15:49:00.397" UserId="2091" />
  <row Id="13722" PostId="10343" Text="You're asking a very specific question; or at least, one I doubt will easily be answered." CreationDate="2011-03-29T16:00:52.837" UserId="1156" />
  <row Id="13723" PostId="10353" Text="He does claim to be a 'game developer' not an 'i liek games durr i want to make them'." CreationDate="2011-03-29T16:01:33.180" UserId="1156" />
  <row Id="13724" PostId="10355" Text="+1, especially for the last paragraph." CreationDate="2011-03-29T16:11:34.223" UserId="1430" />
  <row Id="13725" PostId="10358" Text="Impressive, but it looks to me like your videos only show off your skeletal animation engine. Do you have any resources to aid Mobius in building a bones animation engine, as he asked for?" CreationDate="2011-03-29T17:27:00.023" UserId="189" />
  <row Id="13726" PostId="10327" Text="As this question has now collected a couple answers which seem to reflect popular opinion, and has also accumulated some downvotes and close votes, I am closing it. @mariana, please read and reflect on the information gathered here, and if you need help implemented specific aspects, feel free to ask other questions." CreationDate="2011-03-29T17:31:44.513" UserId="189" />
  <row Id="13727" PostId="10355" Text="@The Communist Duck, of course you are right. But your answer sounds like an apologetics for inconvenient search systems. My question was not an apologetics for laziness in searching either." CreationDate="2011-03-29T19:12:53.453" UserId="1677" />
  <row Id="13728" PostId="10343" Text="@The Communist Duck, thank you for trying." CreationDate="2011-03-29T19:14:04.340" UserId="1677" />
  <row Id="13729" PostId="10370" Text="@Ray Dey thanks just brought it will take some time to arrive but would you mind telling me if the example is in C# or just generic ?" CreationDate="2011-03-29T19:22:43.633" UserId="2168" />
  <row Id="13730" PostId="10353" Text="I hear this a lot but it doesn't match any of my personal experiences. Everyone I know who liked _playing_ games and got a job in the industry still likes them, even if they don't always have time to play them in-depth anymore. On the other hand, I have met many people who claim to like _making_ games but don't really play them (you can find these people in interviews easily - &quot;Have you played any good games recently?&quot; &quot;Uh... WoW, I guess.&quot;), and then end up hating both making and playing them after some time." CreationDate="2011-03-29T19:27:49.947" UserId="744" />
  <row Id="13731" PostId="10370" Text="Sorry, I forgot to mention that the source code is available at Buckland's site. It's in C++, but it's fairly straightforward to work out what's going on since it's all set out in a nice OOP approach. I'll edit in a couple more links" CreationDate="2011-03-29T19:30:23.817" UserId="2332" />
  <row Id="13732" PostId="10355" Text="@topright I was not meaning to get at you for being lazy or anything else; I was simply giving a reason why those sorts of sites you are looking for do not exist. If that is what you mean." CreationDate="2011-03-29T19:32:29.677" UserId="1156" />
  <row Id="13733" PostId="10373" Score="3" Text="3D is aiming a little too high regardless of time, considering you have no gamedev experience. ;P" CreationDate="2011-03-29T19:49:34.297" UserId="1156" />
  <row Id="13734" PostId="10373" Text="sadly, I figured that :P" CreationDate="2011-03-29T19:51:41.813" UserId="5385" />
  <row Id="13735" PostId="10376" Text="A good point indeed :)" CreationDate="2011-03-29T19:55:21.670" UserId="5385" />
  <row Id="13736" PostId="2127" Text="All FOSS free-text transcription systems are generally terrible. Almost certainly not worth the effort it will take unless you are willing to shell out $$$$$ to work with someone like Nuance." CreationDate="2011-03-29T20:13:39.360" UserId="395" />
  <row Id="13737" PostId="2127" Text="@coderanger: Free-text transcription is hardly the only use of voice recognition, and probably least likely to be necessary in games." CreationDate="2011-03-29T20:34:11.060" UserId="744" />
  <row Id="13738" PostId="10371" Text="Nice site, thanks." CreationDate="2011-03-29T20:44:07.073" UserId="1677" />
  <row Id="13739" PostId="10332" Text="@notabene: What do you mean it is not an answer. How is 'actually experiment and get real results' not an answer?" CreationDate="2011-03-29T21:22:51.987" UserId="5916" />
  <row Id="13740" PostId="10318" Text="@kuroutadori: No apology required, you did nothing wrong per say, just asked a very open ended question. At any rate keep asking questions and maybe read this: http://www.catb.org/~esr/faqs/smart-questions.html" CreationDate="2011-03-29T21:24:45.790" UserId="5916" />
  <row Id="13741" PostId="10370" Text="About your edit, right now I am taking it easy doing some tests and examples to see how it work as a learn it, but that does seems interesting and I hope to be able to do it ;)" CreationDate="2011-03-29T21:32:23.490" UserId="2168" />
  <row Id="13742" PostId="10370" Text="I figured as much, I just mainly put it in there for completeness' sake, but it's pretty interesting stuff whenever you want to get on to it :)" CreationDate="2011-03-29T21:33:09.720" UserId="2332" />
  <row Id="13743" PostId="10377" Text="That's excellent advice." CreationDate="2011-03-29T21:55:46.513" UserId="6021" />
  <row Id="13744" PostId="10377" Score="1" Text="Good points. Although I think source-control can also make things more complicated for beginners (imagine somebody messes up the repo). When time is critical, one shouldn't start to use new tools. But if you're already familiar with a VCS then it should certainly be used." CreationDate="2011-03-29T22:04:22.053" UserId="20" />
  <row Id="13745" PostId="10373" Text="PONG! paddles, ball are there own objects, add a score. the ball hits a paddle you times the direction by -1. if the ball goes past the paddle point the other team, have the ball serve to the other player.  or is that too easy?&gt;" CreationDate="2011-03-29T22:30:32.260" UserId="2301" />
  <row Id="13746" PostId="2127" Text="Sure, but if you know enough about speech recognition to build your own language model, you probably wouldn't be asking on here :-)" CreationDate="2011-03-29T22:42:55.973" UserId="395" />
  <row Id="13747" PostId="10377" Score="1" Text="Ricket's advice for aiming low and using a prioritized list are great — they're about minimizing risk and increasing iteration. You want to avoid situations where you have to work for 8 hours before you get anything running. If it doesn't work out or if it takes longer than that you might end up with nothing. Instead try to get **a game running** in under 1 hour and then spend the rest of your 10 hours adding things, play testing, refining. As you play you'll keep finding more things to add." CreationDate="2011-03-29T22:47:22.203" UserId="2472" />
  <row Id="13748" PostId="10332" Text="I like the &quot;try it and see approach&quot;... this is what Ive done to date.  But I'd like the best monetization method in place when the app first appears in the app store and there's the initial spike in downloads." CreationDate="2011-03-30T00:04:57.307" UserId="1021" />
  <row Id="13749" PostId="10354" Text="Good point about the app state.  However I'm not planning a game over screen... so the app goes back to the homescreen when the game ends." CreationDate="2011-03-30T00:05:28.477" UserId="1021" />
  <row Id="13750" PostId="10336" Text="I can't believe I missed that." CreationDate="2011-03-30T00:47:03.430" UserId="6390" />
  <row Id="13751" PostId="10377" Text="@bummzack Agreed! It can REALLY get in the way, thus practice and being sure about it are key, but it can also be super awesome and useful if used correctly." CreationDate="2011-03-30T01:41:33.380" UserId="189" />
  <row Id="13752" PostId="10382" Text="Two things, this is in 2d? And does your Trig functions require radians instead of degrees?" CreationDate="2011-03-30T02:14:51.387" UserId="2187" />
  <row Id="13753" PostId="10382" Text="Not only that but your variable names could be better. vSin should probably be v_x to represent that it it the X component of v for example." CreationDate="2011-03-30T03:28:38.873" UserId="5916" />
  <row Id="13754" PostId="10383" Text="&quot;This formula gives the horizontal distance of the object's travel only&quot; -- CalculateMaximumRange looks just right." CreationDate="2011-03-30T05:46:39.553" UserId="3644" />
  <row Id="13755" PostId="10382" Text="What is the MathF class anyway, I' used to seeing Math and MathHelper (float math), not MathF." CreationDate="2011-03-30T06:41:04.420" UserId="5224" />
  <row Id="13756" PostId="10373" Text="I think maybe we should aim for a better, more creative concept, though an easy one to develop..." CreationDate="2011-03-30T06:41:15.200" UserId="5385" />
  <row Id="13757" PostId="10383" Score="1" Text="Judging by &quot;MathF&quot;, Joren is using Unity. In Unity MathF.Sin and MathF.Cos indeed work with degrees, not radians." CreationDate="2011-03-30T06:55:34.500" UserId="2710" />
  <row Id="13758" PostId="10332" Text="@RobertMassaioli I really didn't want to be rude. Just try and see is actualy clear option, if nobody provide good answer :). Sorry it is just my opinion that your answer doesn't answer at all. " CreationDate="2011-03-30T07:38:32.363" UserId="3794" />
  <row Id="13759" PostId="10383" Text="Joren should definitely check his constants (g) and units (g, v, y, a, result)" CreationDate="2011-03-30T08:50:34.573" UserId="3644" />
  <row Id="13760" PostId="10383" Score="1" Text="@Nevermind: Mathf.Sin appears to use radians: &#xA;&#xA;http://unity3d.com/support/documentation/ScriptReference/Mathf.Sin.html" CreationDate="2011-03-30T09:08:03.763" UserId="5021" />
  <row Id="13761" PostId="10377" Text="The best thing how to get things working fast is to do it in extreme programming fashion (better than svns), which i mean that whole teams sits together in front of one computer. It works great in small teams (2-3 max). You support each other and problems are solved more quickly - you dont get frustrated." CreationDate="2011-03-30T09:46:39.727" UserId="3794" />
  <row Id="13762" PostId="10384" Text="I've extended the algorithm a bit. Keeping track of score (and guaranteed score) for each player. Score for all players is calculated on every move. So it's not hard to prune the branch where choosing a particular move results in a lower-then-guaranteed score for a player. Are there any other reasons why this algorithm can't be extended to n players?" CreationDate="2011-03-30T09:50:24.210" UserId="1693" />
  <row Id="13763" PostId="10332" Text="@notabene: True but perhaps because it is my opinion that the question cannot be answered at all. You need to experiment and get real results; every 'answer' here is not an answer just an opinion." CreationDate="2011-03-30T10:04:59.270" UserId="5916" />
  <row Id="13764" PostId="10295" Score="1" Text="+1 for attempting to use existing libraries instead of reinventing the wheel." CreationDate="2011-03-30T10:21:51.763" UserId="1581" />
  <row Id="13766" PostId="10391" Text="Thanks. But is there any document about these? You know, I cannot write in my thesis that I learnt this from SE :-)" CreationDate="2011-03-30T11:41:54.463" UserId="6416" />
  <row Id="13767" PostId="10393" Text="Thanks. Same here actually, any documents will be highly appreciated as I need to cite references in the thesis." CreationDate="2011-03-30T11:43:16.957" UserId="6416" />
  <row Id="13768" PostId="10393" Text="As I wrote in my answer you'll find a link to the paper at the bottom of the (linked) page [PDF]. While the paper is probably a good reference by itself, it also contains several references which might be interesting for you too." CreationDate="2011-03-30T11:47:27.360" UserId="20" />
  <row Id="13769" PostId="10393" Text="BTW: The reason why I didn't provide a direct link to the PDF is because you'll have to read/agree to a disclaimer before downloading it." CreationDate="2011-03-30T11:53:55.067" UserId="20" />
  <row Id="13770" PostId="10394" Text="thanks!&#xA;I will dig into it more :D. " CreationDate="2011-03-30T12:00:45.950" UserId="6395" />
  <row Id="13771" PostId="10395" Text="Thank you very much for your detailed answer. I heard of Collada the first time today (recommended by a friend) and wasn't sure if it's really ready to be used in a production environment. I'll give it a shot now, thanks. :-)" CreationDate="2011-03-30T12:08:56.367" UserId="6418" />
  <row Id="13772" PostId="10377" Text="AKA pair programming, as mentioned :). I agree to some extent, especially in the start of the project before things have been split into multiple files, but at some point it is safe to say &quot;you go make the title screen, you go do a quick GUI menu, and I'll work on getting this character moving and jumping properly&quot;. The problem lies in doing this before any code is written; these things should already be next-steps and split into separate files before the team splits off and works on them individually." CreationDate="2011-03-30T12:47:18.297" UserId="189" />
  <row Id="13773" PostId="10385" Text="Great search terms, can you elaborate any more about these? Do you have experience with them? (edit your answer with the &quot;edit&quot; link just under it)" CreationDate="2011-03-30T12:49:40.357" UserId="189" />
  <row Id="13774" PostId="10383" Score="2" Text="WTF, I could've sworn it uses degrees. OK, I was wrong, sorry." CreationDate="2011-03-30T13:07:44.537" UserId="2710" />
  <row Id="13776" PostId="9881" Text="In other words, can you check the graph with just historyBuffer? How big is your threshold C?" CreationDate="2011-03-30T13:48:24.410" UserId="2091" />
  <row Id="13777" PostId="9789" Text="Hi Zolomon - I've fixed the link, it seems everything got moved once the meeting was done. Apologies." CreationDate="2011-03-30T13:58:07.970" UserId="6099" />
  <row Id="13778" PostId="8450" Text="@James It never hurts to ask, or be interested in different fields. I'm glad both questions have received responses not only useful to me but to anybody reading and interested. I thank you for your banter and for the good luck wishes." CreationDate="2011-03-30T15:11:43.493" UserId="2819" />
  <row Id="13779" PostId="10391" Text="You can look at this: http://create.msdn.com/en-US/education/catalog/sample/chasecamera" CreationDate="2011-03-30T15:22:54.683" UserId="4947" />
  <row Id="13780" PostId="10269" Text="It might have been Super Nintendo (that was so long ago :)... all I remember is my friend being so pissed that it appeared so random after he made an attack. That might be an indicator that if a player can choose, then that would make it more fun." CreationDate="2011-03-30T15:36:07.920" UserId="6214" />
  <row Id="13781" PostId="10393" Text="+1 that camera control looks absolutely incredible!" CreationDate="2011-03-30T16:04:00.207" UserId="2332" />
  <row Id="13782" PostId="10407" Text="I wish I have time to code :-) Unfortunately, I am very busy with my thesis at the moment. Thanks anyway." CreationDate="2011-03-30T16:22:22.153" UserId="6416" />
  <row Id="13783" PostId="8450" Text="@kymully Never does hurt to ask and I do hope it is seen while I wrote it in good humor, I was not being sarcastic. The full time writer we had on our staff was also a screenplay writer, their backgrounds and such being very similar.. So a traditional writing background will be very helpful in this. I suppose the main difference these days is instead of picking the most awesome path for a book or movie, video games will tend to let you explore any path through the story." CreationDate="2011-03-30T16:26:54.660" UserId="4443" />
  <row Id="13784" PostId="10410" Text="Any reason you can't change the texture coords in a shader?" CreationDate="2011-03-30T16:57:53.137" UserId="4604" />
  <row Id="13785" PostId="10412" Text="did you actually mean to say this?  &quot;the developer will make the game at a loss to themselves and then receive compensation from the developer&quot;" CreationDate="2011-03-30T17:00:44.350" UserId="5932" />
  <row Id="13786" PostId="10410" Text="What is the max number of states and blocks 16x16x?" CreationDate="2011-03-30T17:21:22.010" UserId="5259" />
  <row Id="13787" PostId="7276" Text="Note that having a predictable spread pattern isn't a bad thing; it gives experienced players a bit of an edge as they learn what to expect. Back before Counter-Strike:Source, if memory serves, the TMP would fire reliably in a sort of figure 8, and you could compensate with practice. Also, note that the recoil for a right-handed shooter (stock on right shoulder) is going to pull up and right for an automatic weapon." CreationDate="2011-03-30T17:28:37.120" UserId="5259" />
  <row Id="13788" PostId="10395" Score="2" Text="Good advice, especially the reference to AssImp. I wouldn't suggested COLLADA, though, as nobody seems to consistently and correctly support all of it, and it is rather large for actual content purposes. I'd suggest using something like MD5, which gets you the skeleton and is pretty widely implemented correctly (I think). I'd also not dismiss quite so easily MD2; there are a *lot* of sample models out for it, and you can trivially animate it cheaply (though it is useless for ragdolls or what have you)." CreationDate="2011-03-30T17:32:35.870" UserId="5259" />
  <row Id="13789" PostId="10407" Text="To me, _Real-time Cameras_ by Mark Haigh-Hutchinson is the best litterature you'll find on the subject. I would call it a must-read for any camera system designer or programmer." CreationDate="2011-03-30T17:49:34.293" UserId="478" />
  <row Id="13790" PostId="10410" Score="1" Text="With GL_STREAM_DRAW your VBO will function pretty much like regular &quot;vertex arrays&quot;." CreationDate="2011-03-30T18:07:22.640" UserId="668" />
  <row Id="13791" PostId="10406" Text="Are there any down sides to making the camera a Public Static? If not it seems that it is a lot simpler to do that than say, pass the camera in every objects constructor. To be honest, I'm quite new at XNA and Game Development in general (I've previously done a lot of Actionscript, but this is quite different), and I'm not really familiar with the services pattern you guys are talking about. If it's the best route to go though I will look it up." CreationDate="2011-03-30T18:46:20.143" UserId="6383" />
  <row Id="13793" PostId="10412" Text="@ultifinitus Yes. What this means is that if it costs you more to finish the game than you contracted with the publisher for, you will eat those losses as well." CreationDate="2011-03-30T19:04:43.043" UserId="4443" />
  <row Id="13794" PostId="10412" Text="I had assumed you meant to substitute the second &quot;developer&quot; with &quot;publisher&quot;" CreationDate="2011-03-30T19:30:44.627" UserId="5932" />
  <row Id="13795" PostId="10412" Text="Oh, LOL Yes I had, I will edit that in there correctly now.. Apologies :)" CreationDate="2011-03-30T19:38:57.757" UserId="4443" />
  <row Id="13796" PostId="10383" Text="I checked my variable values and these were my results ( tried both radians and degrees for the angle ).&#xA;&#xA;g: -30 y: 3.854626 v: 35 a: 45&#xA;range: 33.94&#xA;g: -30 y: 3.854626 v: 35 a: 0.7853982&#xA;range: 36.5239&#xA;&#xA;Nothing looks amiss. The range value is definitely wrong because if I manually set the range it still finds a solution angle given that elevation and velocity." CreationDate="2011-03-30T19:55:50.347" UserId="6412" />
  <row Id="13797" PostId="10383" Text="The actual range seems closer to ~50ish by manually returning that range value." CreationDate="2011-03-30T20:09:25.577" UserId="6412" />
  <row Id="13798" PostId="10395" Text="I will just play around with different file formats. Thanks to AssImp, that'll be easy to do. MD2 was indeed my first idea, however it's quite expensive to create, I think, instead of just exporting the proper bones. Ragdolls are not needed in my case, I just need animated models, no physics involved." CreationDate="2011-03-30T20:15:15.010" UserId="6418" />
  <row Id="13799" PostId="10383" Text="Those numbers make sense to me. The first set launches the projectile at 58.3 degrees upward, the other at 45 degrees upward. The 45 degree angle produced a longer range.&#xA;What do you meant it found a solution angle? What's &quot;it&quot;?" CreationDate="2011-03-30T20:17:39.907" UserId="5021" />
  <row Id="13800" PostId="10383" Text="@Joren: That's because 45 degrees is not the optimal angle to fire the projectile at when you are not launching it from the ground (y=0 in your case)." CreationDate="2011-03-30T20:18:25.087" UserId="5021" />
  <row Id="13801" PostId="10383" Text="@Joren: are you trying to find the maximum range of the projectile (i.e. what angle to fire it at to make it go furthest), or are you trying to find out how far it will go given an angle to fire it at?" CreationDate="2011-03-30T20:21:40.683" UserId="5021" />
  <row Id="13802" PostId="10382" Text="@Roy T, it's Unity's floating point math helper class." CreationDate="2011-03-30T20:22:07.860" UserId="5021" />
  <row Id="13803" PostId="10395" Text="There are indeed very bad Collada exporters out there, but at least is the format well-documented so you always know whom to blame :-). MD5 is a good candidate, too, but I don't know how good the Blender exporters are. &#xA;&#xA;MD2 has a very limited vertex representation and suffers from size and accuracy limit. I *really* wouldn't use it, there is no reason to do so. " CreationDate="2011-03-30T20:28:15.937" UserId="6021" />
  <row Id="13804" PostId="10383" Text="@Joren: I edited my answer to provide you with the method for finding maximum distance." CreationDate="2011-03-30T20:29:30.973" UserId="5021" />
  <row Id="13805" PostId="10383" Text="@Krom: Turns out it's not just right :)" CreationDate="2011-03-30T20:30:24.590" UserId="5021" />
  <row Id="13806" PostId="10383" Text="I was trying to find the maximum distance it could fire, which I thought meant a 45 degree angle. I see now that being elevated changes the optimum angle. I'll try your revised formula once I get off work. Thanks. :)" CreationDate="2011-03-30T20:41:36.583" UserId="6412" />
  <row Id="13807" PostId="10383" Text="As you get higher and higher off the ground, the angle decreases. At infinite height, the ideal angle to fire the projectile is 0." CreationDate="2011-03-30T20:52:51.367" UserId="5021" />
  <row Id="13808" PostId="10406" Score="1" Text="Hi Ben, when you have time do look at the services pattern - I wrote this a while ago: http://xna-uk.net/blogs/braindump/archive/2009/08/23/game-services.aspx  In your current project the downside of using a Static on the *specific* game object is that your drawables will always be 'tied' to this object in the future in order to get their camera - a service or passed standard interface will 'decouple' the drawables from any *particular* game object. To re-use them in the future they just need to be created in a new Game object that offers an object with this interface." CreationDate="2011-03-30T21:06:13.020" UserId="6099" />
  <row Id="13809" PostId="84" Text="Both your links are dead now; also, GDNet's &quot;Start Here&quot; page has been woefully out of date for a long time, unfortunately." CreationDate="2011-03-30T21:13:50.127" UserId="1430" />
  <row Id="13810" PostId="10430" Score="1" Text="If they click 2+ wu/tiles away from where they are, are you going to move them 1 wu/tile in that direction as best you can figure or to the closest complete wu/tile they clicked on?" CreationDate="2011-03-30T21:50:42.407" UserId="4443" />
  <row Id="13811" PostId="10430" Text="@James: If they clicked 2 wu away, the idea is that it detects the closest wu &quot;tile&quot; to the coordinates of the click, and moves them to that wu tile. So in that case, they would move two &quot;squares&quot; in that direction." CreationDate="2011-03-30T21:54:19.730" UserId="6432" />
  <row Id="13813" PostId="10433" Score="1" Text="So you're suggesting that if I had sprites that are e.g. 22x17, 24x19, and 30x24, they'd all be rounded up to 32x32 and then stored in the same sprite sheet? And then another sprite that might be 12x10 would be rounded up to 16x16 and kept on a separate sheet? That seems a reasonable approach..." CreationDate="2011-03-30T22:34:25.440" UserId="6429" />
  <row Id="13814" PostId="10434" Text="Oh, excellent resource, thanks! Regarding mipmaps -- is your warning against them because they're non-rectangular nature wouldn't work well with this packing algorithm, or is there some other reason to avoid them? (I don't need them in my case anyway, at least not for the foreseeable future, I'm just curious.)" CreationDate="2011-03-30T22:38:35.967" UserId="6429" />
  <row Id="13815" PostId="10434" Text="If you pack oddly shaped sprites on a mipmap, you're not going to get as clean breaks as, say, packing a multiple of 2 number of power-of-two sprites on a texture.  You'll get bleeding between sprites." CreationDate="2011-03-30T22:44:32.480" UserId="51" />
  <row Id="13816" PostId="10434" Text="Its because you pack the textures close together, when you start to apply mipmapping to them they will blend in unintended ways. That would be more of a 3D concern anyways though when dealing with distance from the camera and using lower quality (smaller) textures. No worries in a basic 2D sprite engine :)" CreationDate="2011-03-30T22:46:33.497" UserId="4443" />
  <row Id="13817" PostId="10410" Text="@James: Not a single reason. :) I'm just not experienced much with shaders. Any hints for that?&#xA;@ChrisE: Maximum is 16*16*16. Do you think of allocating the space completely before?&#xA;@c0d3rguy: Does that imply uploading the data to the GPU every frame? I'm currently very happy with the performance the VBOs give, so if GL_STREAM_DRAW would impact it, that won't be an option." CreationDate="2011-03-30T22:46:57.943" UserId="6418" />
  <row Id="13818" PostId="10434" Text="Okay, I think I get what you're saying. Thanks!" CreationDate="2011-03-30T22:48:09.003" UserId="6429" />
  <row Id="13819" PostId="10406" Text="Oooooh, that makes a lot of sense actually. I was even thinking of reusing some objects in later projects. Thank you for the link too, very useful!" CreationDate="2011-03-31T00:32:04.170" UserId="6383" />
  <row Id="13820" PostId="10438" Text="I just tried it.  I was hopeful but it looks the same as before." CreationDate="2011-03-31T02:53:00.343" UserId="3128" />
  <row Id="13821" PostId="10416" Score="1" Text="Why not just make an adaptation or even a comedic work based on the book? " CreationDate="2011-03-31T03:33:48.530" UserId="5916" />
  <row Id="13822" PostId="6836" Score="1" Text="@AttackingHobo: If you believe that an answer is not an answer then down vote it. Otherwise let it slide. People telling other people that their responses are not answers is annoying; after all, if you think there is a better answer that could be written then write it yourself. Problem solved." CreationDate="2011-03-31T03:38:44.737" UserId="5916" />
  <row Id="13824" PostId="10438" Text="One thing I'm doing that I'm beginning to suspect I shouldn't is that each time I animate I perform the transforms from the last position instead of the mesh at the origin.  Do you think perhaps I should always do the transform of the mesh from the origin?" CreationDate="2011-03-31T03:53:31.563" UserId="3128" />
  <row Id="13825" PostId="10439" Text="Actors are a multi-threaded solution. The communications are not synchronous. Scala actors (concept from Erlang) allow easy multi core programmation. " CreationDate="2011-03-31T03:55:16.517" UserId="721" />
  <row Id="13826" PostId="10383" Text="@Joren: You should update your question now and accept Olhovsky answer! :)" CreationDate="2011-03-31T04:32:17.263" UserId="3644" />
  <row Id="13827" PostId="10383" Text="Just tried it and the returned range is roughly the same. The optimum angle returned is 48 degrees, which isn't nearly enough to make up for the ~40% shortfall." CreationDate="2011-03-31T04:41:24.673" UserId="6412" />
  <row Id="13828" PostId="10384" Text="when there is a third player you can not prune grandfather nodes as the other players score (not involved in the prune) can affect the outcome.  there is quite a bit of literature on this. checkout  http://citeseerx.ist.psu.edu/search?q=multiplayer+pruning&amp;submit=Search&amp;sort=rel" CreationDate="2011-03-31T06:03:02.643" UserId="704" />
  <row Id="13829" PostId="10444" Text="Why don't you just resize the texture before loading (in e.g. Photoshop) or on loading? It will be much easier and faster." CreationDate="2011-03-31T06:09:10.323" UserId="3644" />
  <row Id="13830" PostId="10442" Score="3" Text="Sounds like a mix of game theory, with 'points' adjusted against epoch based learning." CreationDate="2011-03-31T06:19:46.687" UserId="4513" />
  <row Id="13831" PostId="10445" Text="You mean lens - lens flare? Is that 3D? Roration is not what lens flare usualy does :-). " CreationDate="2011-03-31T07:24:39.590" UserId="3794" />
  <row Id="13832" PostId="10444" Text="Can you give me a hint, how to resize it on loading? I am using PVR texture " CreationDate="2011-03-31T07:53:54.687" UserId="5459" />
  <row Id="13834" PostId="10383" Text="That's because you entered -30 for gravity, which would mean that gravity is pointing up, and the floor is above you. Use 30 for gravity instead, and the result will be 42.53 degrees." CreationDate="2011-03-31T08:11:12.063" UserId="5021" />
  <row Id="13835" PostId="8173" Text="Good answer. You also may need to look at raycasting to keep out of terrain. Have a look at this question http://gamedev.stackexchange.com/questions/10388/camera-control-techniques-in-games which talks about how complex this issue can get." CreationDate="2011-03-31T08:18:56.660" UserId="259" />
  <row Id="13836" PostId="10422" Text="This seems to be a very nice website. Thanks!" CreationDate="2011-03-31T08:27:30.943" UserId="6416" />
  <row Id="13838" PostId="10444" Text="I'm not familiar with iOS/PVR, maybe there are resizing functions in utils units. Just make another low-resolution version of your PVR texture in PVR-editing software and use it." CreationDate="2011-03-31T09:18:40.167" UserId="3644" />
  <row Id="13839" PostId="10444" Text="Martin please, share screenshot so we can see the actual problem." CreationDate="2011-03-31T10:04:05.167" UserId="3794" />
  <row Id="13840" PostId="10439" Text="@Kylotan: You do have a point there, but the difference here would be that the Actor-based sprite does not block the game loop while performing the action, whereas the method-approach waits until `xyz.doThis(x)` is done. I think this could even help to make game logic faster, especially on multi-core systems." CreationDate="2011-03-31T10:35:21.267" UserId="6054" />
  <row Id="13841" PostId="10382" Text="Do you have unit tests where you verify the range given a bunch of different inputs?" CreationDate="2011-03-31T11:07:13.310" UserId="1929" />
  <row Id="13843" PostId="10447" Text="Your code works, but why use expensive stuff like Sqrt while you could achieve the very same by simply setting the sprite origin correctly? I don't know how XNA handles memory allocation, but calling *new* for every update isn't best practice in most programming languages I'm aware of." CreationDate="2011-03-31T12:48:30.283" UserId="20" />
  <row Id="13844" PostId="10441" Score="3" Text="Design documents?  What are those? ;-)" CreationDate="2011-03-31T14:01:33.357" UserId="4296" />
  <row Id="13845" PostId="10410" Score="1" Text="@Tank: Well, if you have access to VBO's, you have access to some version of the GLSL shading lang.  A vertex shader for manipulating texture coordinates would do what you are asking with minimal performance impact, but it might require a significant change in your rendering system if you are currently using the fixed-function pipeline." CreationDate="2011-03-31T15:06:26.283" UserId="4604" />
  <row Id="13846" PostId="10410" Text="@Tank: I would go with c0d3rguy's suggestion and try using the VBO that might be updated as a GL_STREAM_DRAW or GL_DYNAMIC_DRAW and see what the performance impact is.  It might prove to work just fine." CreationDate="2011-03-31T15:07:59.093" UserId="4604" />
  <row Id="13847" PostId="10473" Text="Nice, but not what I'm looking for. Joe Wreschnig's answer is essentially what I want -- the terminology of what it is I'm looking to research/write about. Also, I'm not big on terminology and theoretical research; I'd rather write a reusable library and distribute it so people can use it." CreationDate="2011-03-31T15:17:27.573" UserId="1929" />
  <row Id="13848" PostId="10450" Score="1" Text="+1 for A Modern Approach. Great book. Although I disagree with the usefulness per se of neural networks in games (bar Black and White)." CreationDate="2011-03-31T15:35:40.217" UserId="2332" />
  <row Id="13849" PostId="10453" Text="If you can post a picture link in the comments, someone can edit it in for you." CreationDate="2011-03-31T15:36:26.510" UserId="1156" />
  <row Id="13850" PostId="10447" Score="2" Text="@bummzack Vector2 is a value type (assuming XNA's Vector2 or some other sane implementation), so the `new` there is just an extremely cheap stack allocation." CreationDate="2011-03-31T15:42:39.607" UserId="1430" />
  <row Id="13851" PostId="10415" Text="The design isn't mine (it's a port) but I did start replacing calls to the gluScaleImage and the performance is much better. Thanks" CreationDate="2011-03-31T15:48:32.147" UserId="788" />
  <row Id="13852" PostId="10450" Text="I didn't say they're useful, just important. They've been used in several games and many AI techniques are based on them or compared to them. Unlike, say, data clustering techniques, which I use incredibly often but I don't think I've seen anything more complicated than k-means variations in games." CreationDate="2011-03-31T16:05:44.447" UserId="744" />
  <row Id="13853" PostId="10450" Text="That's fair enough, I agree that they are the most applicable areas to games though, they just need a bit of work ;)" CreationDate="2011-03-31T16:21:17.933" UserId="2332" />
  <row Id="13854" PostId="10450" Text="Thanks for the links, exactly what I want to know." CreationDate="2011-03-31T16:30:25.060" UserId="1929" />
  <row Id="13855" PostId="10447" Text="Thanks so much for your help man much appreciated !! " CreationDate="2011-03-31T17:52:58.757" UserId="5275" />
  <row Id="13856" PostId="10451" Text="this should be a comment" CreationDate="2011-03-31T17:58:14.987" UserId="20" />
  <row Id="13857" PostId="10453" Text="Thanks. I got a few vote ups so i can post pictures now. :)" CreationDate="2011-03-31T18:00:20.777" UserId="6441" />
  <row Id="13858" PostId="10462" Text="It looks like you meant to include a link there, but it seems to have gotten lost; can you try again to post the URL please?  Also, good point on the compression bit -- I do intend to use compression, whichever way I go, so an easier-to-view, but slightly larger, sprite sheet could work better for me, at least in the early stages." CreationDate="2011-03-31T18:15:43.103" UserId="6429" />
  <row Id="13860" PostId="10452" Text="@MartinPilch if this doesn't help, i would like to see whole code. You can share it via pastebin or something, if you want." CreationDate="2011-03-31T18:46:10.450" UserId="3794" />
  <row Id="13862" PostId="10506" Text="I have some more materials on this topic in work, if you are interested i will share it too." CreationDate="2011-03-31T19:16:07.647" UserId="3794" />
  <row Id="13863" PostId="10329" Text="Yes, but it's definitely not a *primary* mechanic." CreationDate="2011-03-31T19:34:58.793" UserId="2188" />
  <row Id="13864" PostId="10410" Text="@James Alright, I'll try that out, whereas the shader solution also sounds good to me (more control without uploading anything again or fiddling around in GPU memory). Thank you very much, guys." CreationDate="2011-03-31T19:35:08.753" UserId="6418" />
  <row Id="13865" PostId="10410" Text="@Tank: I'll move the comments into an answer so your accept rate is not affected... should you choose to accept it. :)" CreationDate="2011-03-31T19:39:07.550" UserId="4604" />
  <row Id="13866" PostId="10407" Text="_Real-time Cameras_ is the bible on video game camera systems. The 3rd person cameras in the Metroid Prime games are still some of the best you'll find in the industry." CreationDate="2011-03-31T19:39:51.833" UserId="5267" />
  <row Id="13867" PostId="10271" Text="@Nevermind dont worry!)) I think it is not matter Russian/Brazilian/American/German/etc if guys are creative. So if you wanna know &quot;King's Bounty: The Legend&quot; was made by Russian company &quot;Katauri Interactive&quot; http://www.kings-bounty.com/eng/screens.php" CreationDate="2011-03-31T19:44:29.987" UserId="2776" />
  <row Id="13868" PostId="10275" Text="@Cloudanger, thank you! cool!" CreationDate="2011-03-31T19:47:23.587" UserId="2776" />
  <row Id="13869" PostId="10422" Text="There was a recent talk this year from the camera programmer for God of War 3 with detailed slides on how they did their system. Be sure to check it out. [GOW3: Iterating on a Dynamic Camera](http://gdcvault.com/play/1014606/Iterating-on-a-Dynamic-Camera)" CreationDate="2011-03-31T19:53:13.840" UserId="5267" />
  <row Id="13870" PostId="10085" Text="Oh well, your answer is the best I got for this bounty, even if I still don't have the book. =)" CreationDate="2011-03-31T20:14:35.623" UserId="4264" />
  <row Id="13871" PostId="10329" Text="Not any more than Dwarf Fortress but I agree." CreationDate="2011-03-31T20:27:58.397" UserId="364" />
  <row Id="13872" PostId="10383" Text="Ok it actually is working, it just didn't look like it because I was choosing the high angled firing solution." CreationDate="2011-03-31T20:30:36.693" UserId="6412" />
  <row Id="13874" PostId="10444" Score="1" Text="I think i see the problem :). You have too big fov (field of view) in your perspective camera setup. This problem actualy really cannot be solved by resizing. And if you want to add something to you question, edit the question ;) " CreationDate="2011-03-31T18:26:04.227" UserId="3794" />
  <row Id="13875" PostId="10516" Score="4" Text="&quot;which platform&quot; is one of those questions people (especially beginners) spend a lot more time agonizing over than they should." CreationDate="2011-03-31T21:44:08.057" UserId="2624" />
  <row Id="13876" PostId="10506" Text="The main problem with big resolutions is that in the end game I have about 3-4 lights which are undirected =&gt; I will have to use cubic shadow maps there, which results in 24 shadowmaps. If you have additional materials, I would really appretiate your effort of sharing it with me :-)" CreationDate="2011-03-31T21:46:51.460" UserId="6440" />
  <row Id="13877" PostId="10506" Text="I am interested at the least if that matters :)" CreationDate="2011-03-31T21:48:25.683" UserId="4443" />
  <row Id="13878" PostId="10483" Text="Even at the highest cost, $4,500 (Pro, iOS Pro, and Android Pro) is not all that expencive for the level of polish on the Engine... that said, it is quite steep for a start-up and/or hobby game." CreationDate="2011-03-31T22:20:55.983" UserId="1198" />
  <row Id="13879" PostId="10506" Score="1" Text="@Etan. Yeah omni directional lights are real pain if talkin about shadows. (i know something about it :) http://gamedev.stackexchange.com/questions/6203/point-light-soft-shadows). Try to use dual paraboloid maps. Or if you like cubemaps, try to save some space by frustum-camera_frustum intersection culling for every face/render. You propably won't need shadow for all directions all the time (especially in exteriors)" CreationDate="2011-03-31T22:28:16.950" UserId="3794" />
  <row Id="13880" PostId="10506" Text="@James I'll do my best in trying to not forget it :)" CreationDate="2011-03-31T22:28:42.833" UserId="3794" />
  <row Id="13881" PostId="5676" Text="I personally did not like Rick Pierce site at all, not sure why, maybe its more artsy then im used to?" CreationDate="2011-03-31T22:30:29.677" UserId="2301" />
  <row Id="13882" PostId="10439" Text="It makes it easier to distribute the entity handling across multiple cores, true. But the cost of that is that you can't easily refer from one actor to another without either additional messages or extra data sent in the messages. So you quickly realise that the naive approach here doesn't help you - can you formulate an actor-based way of performing the updates?" CreationDate="2011-03-31T23:19:09.927" UserId="1101" />
  <row Id="13883" PostId="6836" Text="@Robert Massaioli I downvoted and explained why, I believe that is much better than a downvote, as if I downvote without explaining, the poster will not know why he was downvoted. I for one would like to be told why I was downvoted." CreationDate="2011-03-31T23:27:36.987" UserId="962" />
  <row Id="13884" PostId="9566" Text="One more reference art. http://jinsonathemes.com/demo3/wp-content/uploads/2011/02/vladstudio_socotra_1024x768.jpg" CreationDate="2011-03-31T23:58:45.750" UserId="5711" />
  <row Id="13885" PostId="10516" Score="1" Text="How about just make the game and find out as you go. Many games use C++ but every game on Android uses Java, every iPhone/Pad game uses Objective C. There are games written in Python, Haskell, C and many others and all will fit the bill if done correctly. Just make the game and then worry about performance." CreationDate="2011-04-01T01:01:09.137" UserId="5916" />
  <row Id="13886" PostId="10453" Text="Why are you dividing by 14? Is your lightmap's size really &quot;14&quot;? Most lightmaps are powers of 2..." CreationDate="2011-04-01T01:38:16.457" UserId="5904" />
  <row Id="13887" PostId="10519" Score="1" Text="-1 What's the question here? This site is for questions and answers, not for critiques and suggestions." CreationDate="2011-04-01T03:17:03.613" UserId="2787" />
  <row Id="13888" PostId="9706" Text="Why would the renderer update the objects positions? Surely that should lie with the animation and physics layer. Which may abstract from a movable layer... and so on" CreationDate="2011-04-01T05:16:50.150" UserId="4513" />
  <row Id="13889" PostId="10271" Score="1" Text="I only worried that you might not understand the language on these sites. Of course, being a Russian game developer myself, I know of King's Bounty and lots of other great Russian games. Lots of bad ones too (-8" CreationDate="2011-04-01T06:51:57.543" UserId="2710" />
  <row Id="13890" PostId="10525" Text="Keywords to google: &quot;IoC containers&quot;, &quot;Inversion of control&quot;, &quot;Dependency injection&quot;. These are techniques for generic hot-pluggable systems, that can discover and load components at runtime." CreationDate="2011-04-01T06:57:02.843" UserId="2710" />
  <row Id="13892" PostId="9706" Text="My wording was unclear - I meant the renderable can update its own state, based on the game logic. I'll edit the answer to make this clearer!" CreationDate="2011-04-01T11:04:23.230" UserId="1101" />
  <row Id="13893" PostId="10519" Score="4" Text="What about http://codereview.stackexchange.com/?" CreationDate="2011-04-01T11:13:43.037" UserId="6021" />
  <row Id="13894" PostId="10519" Text="thanks a lot for that @ alexander" CreationDate="2011-04-01T11:38:54.513" UserId="6456" />
  <row Id="13896" PostId="10523" Score="1" Text="Sounds a lot like [hot swapping](http://en.wikipedia.org/wiki/Hot_swapping). Perhaps there is some literature on this that can be helpful. Anyway, very interesting question. +1 …" CreationDate="2011-04-01T12:24:16.983" UserId="4661" />
  <row Id="13898" PostId="10522" Text="XNA has a browser plugin?" CreationDate="2011-04-01T14:15:21.683" UserId="14" />
  <row Id="13900" PostId="10516" Score="2" Text="If you need to ask about which language is best, chances are you're *not* going to be able to produce a commercial game." CreationDate="2011-04-01T14:54:37.840" UserId="1156" />
  <row Id="13901" PostId="10532" Score="1" Text="Thats the exact book I was gonna start with lol." CreationDate="2011-04-01T15:25:17.750" UserId="6465" />
  <row Id="13905" PostId="10534" Text="that is possible but i am sure that professionals have a better was as what you sujest entails hundreds of thousands of booleans and ints (i have tried it). i just don't see it as a realistic approach to a large scale game. thanks for the link" CreationDate="2011-04-01T14:33:29.260" />
  <row Id="13906" PostId="10534" Text="Not necessarily, imagine 5 independent superposable states.  You get 32 possible branches for 5 booleans.  I think that's reasonable.  Also, trigger systems are used in a lot professional games, especially because you can then script behavior using series of triggers." CreationDate="2011-04-01T14:40:12.370" UserId="5651" />
  <row Id="13907" PostId="10535" Text="interesting approach and i like it will have to try it out but how would you track side quests that are not dependant on on the story progression?" CreationDate="2011-04-01T14:54:23.337" />
  <row Id="13908" PostId="10535" Text="It really depends on how complex your story gets. It may be easiest to have multiple FSAs (one for each substory) or you might need some complex branching. You need to sit down and draw out your story as a roadmap. When you understand how everything intertwines, think about how you could store the current state (or states if it can be in more than one at once). Some things will need to be stored separately, such as the positions of NPCs (if you need them to be saved) and the health of certain characters, because these are not dependent on the story." CreationDate="2011-04-01T15:02:24.733" />
  <row Id="13909" PostId="10535" Text="this FSA you talk about, where would i find an explanation of this, preferably simplified and without other theories intertwined." CreationDate="2011-04-01T15:38:10.490" UserId="6469" />
  <row Id="13910" PostId="10536" Text="that sounds like the sort of system the is used in the rpg game maker series. but what if that tile has 5 different events based on how far through the story you are?" CreationDate="2011-04-01T15:38:39.757" UserId="6469" />
  <row Id="13911" PostId="10536" Text="@Skeith It can't.  Each tile only has one zone associated with it.  And each zone only has one script function that it calls.  That's not a problem though.  Remember, you have a fully fledged programming language here.  Information about how far through the story you are would be stored in a variable(or several).  So deciding what to do is a simple matter of testing that variable in the script, and taking the appropriate action based on it's value." CreationDate="2011-04-01T15:42:27.907" UserId="5604" />
  <row Id="13912" PostId="10536" Text="@Skeith: Although you might add the option of changing which zone a tile belongs to." CreationDate="2011-04-01T15:44:00.107" UserId="5604" />
  <row Id="13913" PostId="10531" Score="3" Text="Possible, yes. Easy? No way." CreationDate="2011-04-01T16:08:00.180" UserId="1156" />
  <row Id="13914" PostId="10538" Text="+1 for expanding on my answer" CreationDate="2011-04-01T16:09:43.983" UserId="6470" />
  <row Id="13915" PostId="10538" Text="fot this example imagne a town. i have a file which holds the tile layout as well as the graphic and size, lists of npc and general stuff like that. by adding a file a new town cam be added to the game allowing others to contribute or so was the plan but the file is becoming somewhat full and complex. if i understand you i would put the events that can take place in said town in this file with flags to track progress?" CreationDate="2011-04-01T16:12:10.113" UserId="6469" />
  <row Id="13916" PostId="10532" Score="2" Text="Another +1 for that book, very good read. From there I would recommend books by Wolfgang F. Engel. his Shader X books especially have been very useful over the years." CreationDate="2011-04-01T16:43:13.813" UserId="4443" />
  <row Id="13917" PostId="10210" Text="Regarding the implementation of an interface that actualy builds the geometry, what is that &quot;best&quot; way to go ? So fat I've got an interface and a few classes that implement that interface and take care of building shapes with a certain material. Thing is, I end up with a bunch if statements, a little like in your example. I'm starting to get the feeling I might be off track." CreationDate="2011-04-01T17:37:12.600" UserId="2469" />
  <row Id="13918" PostId="10522" Text="@Noctrine: Nope. I just now noticed the &quot;browser-based-plugin&quot; tag. Maybe the asker will reconsider the game being browser-based." CreationDate="2011-04-01T18:22:23.337" UserId="5021" />
  <row Id="13919" PostId="10262" Text="@r2d2rigo: It is set once at load time on the cloned effect &quot;_moonEffect2&quot; and then never set again, as that is more efficient." CreationDate="2011-04-01T18:23:32.587" UserId="5021" />
  <row Id="13920" PostId="10538" Text="@Skeith yes, that sounds like a reasonable approach. " CreationDate="2011-04-01T18:29:13.053" UserId="2306" />
  <row Id="13921" PostId="10328" Text="Could you give some details about the game you are making? I would like to know more. How is different from earlier games you made?" CreationDate="2011-04-01T18:50:17.870" UserId="6340" />
  <row Id="13922" PostId="10450" Text="There's a third approach (also &quot;strategizing&quot;) called Expert Systems, where you basically find a rule-based algorithm that may require no search trees at all, just essentially a series of if-thens." CreationDate="2011-04-01T18:55:25.373" UserId="458" />
  <row Id="13923" PostId="6699" Text="@Joe Wreschnig and my answer had nothing to do with my random example, the question was about budget, and I replied making a small team, as that way you can save your budget for other things." CreationDate="2011-04-01T19:13:57.503" UserId="2301" />
  <row Id="13924" PostId="10544" Text="So the game was not &quot;planned&quot; to be fun but &quot;came out&quot; that way by &quot;accident&quot;?" CreationDate="2011-04-01T19:31:49.343" UserId="6340" />
  <row Id="13925" PostId="10230" Text="Depends... what's the purpose of making this game? Are you just building your programming skills? What kinds of programming are areas of interest to you? If you like databases you could hook it up to an online leaderboard with player statistics; if you like graphics you can add new ones; and so on. Basically, instead of thinking &quot;what feature to add?&quot; think &quot;what do I want to get out of this for my time?&quot; and the features should come naturally." CreationDate="2011-04-01T19:40:29.420" UserId="458" />
  <row Id="13926" PostId="10175" Score="1" Text="I don't see why this is inefficient either. If you're already storing user actions in the database then adding a Timestamp field is trivial. (If you're not storing user actions, you might consider doing that for logging and metrics purposes anyway.)" CreationDate="2011-04-01T19:48:25.137" UserId="458" />
  <row Id="13927" PostId="10439" Text="@Kylotan: Currently, I am experimenting with some kind of distributed updating: My actors are like nodes in a tree-structure, and updating the root updates the children, by message distribution. Also, the true advantage will be networking: In Scala, an Actor and an RemoteActor (Actor on another system) can be addressed the same way, by the same messages." CreationDate="2011-04-01T20:03:02.067" UserId="6054" />
  <row Id="13928" PostId="10544" Text="It was planned to be fun (in my head) but I did not think it would be as fun as it is, I find I was spending more time &quot;testing&quot; it then fixing any bugs." CreationDate="2011-04-01T20:04:57.400" UserId="2301" />
  <row Id="13929" PostId="10535" Text="You can learn all about state machines all over the place but 99.9% of the time it won't be talking about games. An introductory book on computation will teach you about them but you really don't need that much detail. You just need to understand the concept of being in states and moving between them when certain events happen. @pwny's response is really just saying the same thing in a different way. Reading about FSAs will be a great way to learn the concepts of state machines though. Just Google for an introduction to state machines!" CreationDate="2011-04-01T20:10:39.657" UserId="6470" />
  <row Id="13931" PostId="10548" Text="@Alan Smith calculate everything in a continuous space seems like a good idea... if only I knew what that was." CreationDate="2011-04-01T20:32:46.217" UserId="6474" />
  <row Id="13932" PostId="10085" Text="Thanks! Good luck, and if you do find a good book, let me know, would love to delve more into that myself." CreationDate="2011-04-01T20:36:50.270" UserId="3656" />
  <row Id="13933" PostId="10548" Score="1" Text="The continuous space is where you do vector geometry ;-)&#xA;&#xA;If you aren't very comfortable with linear algebra, stay with the pixels (or go to http://www.khanacademy.org/ and learn it)&#xA;" CreationDate="2011-04-01T20:48:12.737" UserId="5586" />
  <row Id="13935" PostId="10295" Text="Ragdoll physics are great for ragdolls.  Not so great for posing/animation.  Ideally the ragdoll will closely resemble the rig, but they are not driven by the same system." CreationDate="2011-04-01T20:59:44.350" UserId="370" />
  <row Id="13938" PostId="10450" Score="1" Text="@Ian: I'm familiar with expert systems, but they are not a series of if-thens. In fact modern expert systems are implemented using the tools I described above - one might use machine learning to help gauge possible inference rules, or search using forwards or backwards chaining through those rules. Perhaps you are thinking of decision trees, but even those are often created and tweaked by machine learning and explore multiple paths using search." CreationDate="2011-04-01T21:11:22.277" UserId="744" />
  <row Id="13941" PostId="10532" Text="This is an excellent book which I have also recommended." CreationDate="2011-04-02T00:26:49.660" UserId="2077" />
  <row Id="13942" PostId="7725" Text="Great answer James, much appreciated. Did not occur to me to do registration." CreationDate="2011-04-02T01:13:09.147" UserId="6480" />
  <row Id="13943" PostId="10560" Text="If I should ask this on GameDev.StackExchange just let me know. I'm asking here because I'm sure this kind of thing is needed for all kinds of development problems and I don't need help with the &quot;game&quot; side of it, per se, just the route-planning part." CreationDate="2011-04-01T17:44:26.267" UserId="3552" />
  <row Id="13944" PostId="10560" Text="You need either a graph or a connectivity matrix (which is handy, because closure is easy to compute). Perhaps you need both. Look them up." CreationDate="2011-04-01T17:50:04.163" />
  <row Id="13945" PostId="10560" Score="2" Text="Have a look at graph data structures and algorithms: http://en.wikipedia.org/wiki/Graph_%28data_structure%29" CreationDate="2011-04-01T17:50:26.410" />
  <row Id="13946" PostId="10560" Score="1" Text="This doesn't look on-topic to me.  It should either be on GameDev or Stack Overflow, as it's too objective a topic for here." CreationDate="2011-04-01T17:54:20.973" />
  <row Id="13948" PostId="10559" Text="More complex than I'd hoped, but it makes sense. I'm assuming there should be a glColorMask(GL_FALSE, GL_FALSE, GL_FALSE) in the setup to make it actually only clear the depth buffer." CreationDate="2011-04-02T07:15:40.167" UserId="609" />
  <row Id="13949" PostId="10230" Text="@Ian Schreiber: This is basically my first game programming project which I'm trying to make complete and perfect. Of course I could just only care about graphics, but I was wondering if someone could come up with ideas that would perhaps not have come to my mind. I do understand that ideas should come naturally though, otherwise this would not be a good hobby of mine :)" CreationDate="2011-04-02T08:13:43.243" UserId="6341" />
  <row Id="13950" PostId="10565" Score="3" Text="+1 I'd vote for this answer 10 times if I could" CreationDate="2011-04-02T09:11:39.273" UserId="2710" />
  <row Id="13951" PostId="10569" Text="Actually, this is one of the cases where the &quot;no premature optimisation&quot; rule doesn't really apply. Obviously you don't want to sit every day with the CLR Profiler checking for allocations. But there are [two strategies for dealing with the GC](http://blogs.msdn.com/b/shawnhar/archive/2007/07/02/twin-paths-to-garbage-collector-nirvana.aspx) - one requires some up-front awareness and planning. The other *hurls* &quot;no premature optimisation&quot; out the window." CreationDate="2011-04-02T12:29:53.500" UserId="288" />
  <row Id="13952" PostId="10439" Text="Yeah, but the problem is not the triggering of the update as such, it's ensuring the recipient of the message has all the information it needs to act upon it." CreationDate="2011-04-02T12:55:19.567" UserId="1101" />
  <row Id="13953" PostId="10565" Text="@Nevermind, you can - google for *sockpuppets*. :) Just kidding - I'll add a vote for you. 5001 - cool, he can now vote on tag-wiki edits..." CreationDate="2011-04-02T12:56:47.897" UserId="165" />
  <row Id="13954" PostId="10565" Text="On a GMA 950 I wouldn't be at all surprised if the game was GPU bound rather than CPU bound." CreationDate="2011-04-02T15:51:03.453" UserId="5824" />
  <row Id="13955" PostId="10253" Text="I'm glad to help :) A subspace would be an object which maintains the 4 subspaces it contains. The smallest subspace is different since it does not contain anymore subspaces, but a list of your objects. Considering the update cost: the subspace tree is built once at game start. In each loop of the main loop the objects lists in the smallest subspaces is cleared and filled again. So only list add/remove is necessary. No arrays need to be changed. The smallest subspace should be large enough to contain several game objects. How large depends on your game and can be tweaked later." CreationDate="2011-04-02T16:20:15.510" UserId="4345" />
  <row Id="13956" PostId="10572" Score="1" Text="What physics engine are you using? Did you write your own, or are you trying to decide which one to use?" CreationDate="2011-04-02T18:12:11.720" UserId="1198" />
  <row Id="13957" PostId="10572" Text="I'm using Farseer." CreationDate="2011-04-02T18:20:22.453" UserId="4234" />
  <row Id="13958" PostId="10562" Text="Excellent, thank you. Do you have any suggestions for where to find such algorithms? I don't need shortest path so much, but things like checking for circles, etc. would be very handy." CreationDate="2011-04-02T18:20:27.350" UserId="3552" />
  <row Id="13959" PostId="10581" Text="I'm using Farseer with the Physics Helper. Not sure if you've had much experience with it, but I'm trying to use its camera class (just found out about it). However, I'm having trouble keeping the target element in the center as it just moves off screen whilst the camera only moves very very slightly in the right direction (but doesn't keep up). " CreationDate="2011-04-02T18:21:29.970" UserId="4234" />
  <row Id="13960" PostId="10573" Text="Excellent, thank you for the book pointers. There seem to be a ton of AI books and personal recommendations are much better than the broad results I've been getting from searching." CreationDate="2011-04-02T18:22:24.930" UserId="3552" />
  <row Id="13961" PostId="10572" Text="With the Physics Helper library. http://physicshelper.codeplex.com/)" CreationDate="2011-04-02T18:36:43.587" UserId="4234" />
  <row Id="13962" PostId="10506" Score="1" Text="@Etan @James I added some more stuff for you. Both is worth reading if you are interested on this topic. " CreationDate="2011-04-02T19:37:21.613" UserId="3794" />
  <row Id="13963" PostId="9706" Text="This is the same pattern used in modern GUIs like WPF, which have a logical tree (Button, List, ...) and a visual tree (Border, Ellipse, Bitmap, ...)" CreationDate="2011-04-02T20:05:47.020" UserId="5753" />
  <row Id="13964" PostId="10209" Text="Some of the systems such as Sinsy are HMM based" CreationDate="2011-04-02T21:27:57.170" UserId="6485" />
  <row Id="13965" PostId="10569" Text="I love Shawn Hargreaves and that is a great article (that I hadn't read before, thanks!) but I don't really know if it throws &quot;no premature optimization&quot; out of the window. However there is some more strategy involved in fixing this if it's a real problem. I just don't want people unnecessarily doing a lot of extra work/thinking because they might think it will become a problem, thats why I ask for the poster to first think about how much this will occur. :)" CreationDate="2011-04-02T21:37:08.750" UserId="5224" />
  <row Id="13966" PostId="10581" Text="I've heard of Farseer. It interoperates with FRB. Can't say I've used it though; sorry." CreationDate="2011-04-02T21:39:40.440" UserId="1929" />
  <row Id="13967" PostId="10570" Score="1" Text="Small addendum, in the link in Andrew Russel's comment on my answer he posted a Shawn Hargreaves blog post, about the GC, a follow up blog post is dedicated to the GC and delegates/events: http://blogs.msdn.com/b/shawnhar/archive/2007/07/09/delegates-events-and-garbage.aspx  this might be of value :)" CreationDate="2011-04-02T21:41:32.973" UserId="5224" />
  <row Id="13968" PostId="10586" Score="1" Text="I don't fully understand, but since mega man and the platform move together, then maybe it wouldn't be a horrible thing to bind their movement together. (if they move together like one entity, why not program them to be one entity or at least bind them in some fashion?)" CreationDate="2011-04-02T22:01:53.613" UserId="3547" />
  <row Id="13969" PostId="10581" Text="No problem. I should've mentioned the physics engine in my original question. " CreationDate="2011-04-02T22:06:56.293" UserId="4234" />
  <row Id="13970" PostId="10581" Text="Awesome. If you're not 100% locked in, I would say give FRB a try. It's pretty good; but the tools are mediocre in my estimation." CreationDate="2011-04-02T23:08:26.607" UserId="1929" />
  <row Id="13971" PostId="10585" Text="All of that is pretty easy to set up without using XACT. :/" CreationDate="2011-04-02T23:39:24.167" UserId="962" />
  <row Id="13972" PostId="10569" Text="Oh the second strategy definitely throws it out the window - you have to use fairly bizarre programming style across your *entire* program, and carefully monitor your GC performance. That why I recommend the first one. The first one only affects functions in your Draw/Update loop (and, because you know this in advance, optimising it isn't really premature). And all you have to do is avoid `new`ing reference types. Setting reference and value types with different highlight colours in Visual Studio makes this pretty easy. (Of course, this advice all only apples on 360 and WP7, not Windows.)" CreationDate="2011-04-03T04:47:59.853" UserId="288" />
  <row Id="13973" PostId="10586" Text="The way I solved the problem of 'falling after a platform' was to not transition into the falling-state until the player has been out of contact with the floor for at least two frames. The player falls; but the animations don't change so the player doesn't notice. This also handles walking down slopes pretty well." CreationDate="2011-04-03T04:48:15.407" UserId="3990" />
  <row Id="13974" PostId="10586" Text="@Blecki - That may or may not work for me - my system is customizable, so it would be a pretty generic change. Anyway, I'm still interested if anyone knows the &quot;correct&quot; game loop ordering." CreationDate="2011-04-03T04:50:53.610" UserId="141" />
  <row Id="13975" PostId="10585" Score="1" Text="I am not an expert, but when I wanted to add 3D effect for my sound in XNA (based on distance and mutual position), I didn't managed it without XACT. Maybe it's possible in code, but I think it was much easier with XACT." CreationDate="2011-04-03T06:57:56.357" UserId="4947" />
  <row Id="13976" PostId="10321" Text="You have edited in several more questions which aren't directly related to your initial question.  I suggest you create a new question for these, I'm sure you'll get better answers that way." CreationDate="2011-04-03T08:52:07.317" UserId="20" />
  <row Id="13977" PostId="10386" Text="This is a very detailed toturial about bones animation. Thank you!" CreationDate="2011-04-03T13:02:37.957" UserId="5693" />
  <row Id="13978" PostId="10592" Text="That article seems to be entirely about how to make the game loop time correctly with the hardware speed. But your suggestion seems to suggest my order is correct. The way you have it I think the problem would still exist. I think I have to do some kind of magic binding the two together." CreationDate="2011-04-03T14:55:23.447" UserId="141" />
  <row Id="13979" PostId="10596" Text="Both are probably used. Are you asking which one is 'better', for some value of better?" CreationDate="2011-04-03T16:02:26.670" UserId="1156" />
  <row Id="13980" PostId="10596" Text="yeah, which one better, and how to prevent infinite loop" CreationDate="2011-04-03T16:04:56.357" UserId="6496" />
  <row Id="13981" PostId="10597" Text="hm, can it be `Object` class having collision detection so a basket ball, grass, tree, all inherit from the Object class and have this capability?  This may feel more object oriented as in the real world, atoms repel themselves, not by another class." CreationDate="2011-04-03T16:25:04.847" UserId="6496" />
  <row Id="13982" PostId="10599" Text="can you not put the &quot;i think&quot; or &quot;i guess&quot; as an answer?  Once you put an answer, other people will not answer (initially), and the question is stuck with an &quot;i guess&quot; answer." CreationDate="2011-04-03T16:28:44.063" UserId="6496" />
  <row Id="13983" PostId="10597" Score="2" Text="While it might feel more *natural* to let every object handle its collision by itself it's probably not very efficient. Your objects *need* to be able to query the world somehow and they probably need some helper-class(es) to do that too. That means you'll have some data-structure that will allow you to query the world and you can use that for collision detection and other stuff just as well." CreationDate="2011-04-03T16:35:11.870" UserId="20" />
  <row Id="13984" PostId="10599" Text="Ok, edited. Happy now?" CreationDate="2011-04-03T16:39:26.673" UserId="20" />
  <row Id="13985" PostId="9873" Text="yes you were right,  i have started it in geekgameboard becuase it give complete framework for board and let you concentrate on game logic." CreationDate="2011-04-03T17:00:57.130" UserId="6143" />
  <row Id="13986" PostId="10599" Text="but doesn't that truly work or is it just a guess with the &quot;probably&quot; removed?" CreationDate="2011-04-03T17:10:08.600" UserId="6496" />
  <row Id="13987" PostId="10599" Score="1" Text="This is correct. " CreationDate="2011-04-03T17:19:45.880" UserId="2946" />
  <row Id="13988" PostId="10599" Text="Can you interactively debug or profile on a jailbroken device? I'm guessing not but would be interested to know for sure." CreationDate="2011-04-03T17:24:11.470" UserId="4410" />
  <row Id="13990" PostId="10599" Score="1" Text="@Roger Perkins I have not tried that myself, but others apparently have: http://www.alexwhittemore.com/?tag=jailbroken So yes, you can use XCode and the XCode tools with a jailbroken device." CreationDate="2011-04-03T18:04:28.033" UserId="20" />
  <row Id="13991" PostId="10602" Text="I would also recommend ILspy, it's free and opensource. http://wiki.sharpdevelop.net/ilspy.ashx" CreationDate="2011-04-03T18:42:46.833" UserId="3547" />
  <row Id="13992" PostId="10585" Text="@AttackingHobo The main thing about Xact is that you get that stuff and it's in accessible by sound designers. I'm sure it can save you time as well." CreationDate="2011-04-03T18:45:16.517" UserId="3547" />
  <row Id="13993" PostId="10604" Text="They can't use the marketplace, but they can still find other players. Latency is always an issue in all multiplayer games, more so in FPS games, and even more so without a dedicated server. However, this is how the big boys like Halo and CoD do it, so it's reasonable to do it this way on the XBOX ourselves." CreationDate="2011-04-03T18:47:29.713" UserId="5021" />
  <row Id="13994" PostId="10604" Text="This is true, XNA does have a lobby system that you can use though it is a lot more limited than most FPS lobbies. As for Halo and friends, they are using xnet directly, not the XNA wrappers." CreationDate="2011-04-03T18:55:01.443" UserId="395" />
  <row Id="13995" PostId="4917" Text="There are only 3 cores, and we have access to all of them. You don't get access to 2 threads. One of those threads is for XNA, the other is a thread that no one gets access to when making games, as it is for the XBOX OS." CreationDate="2011-04-03T18:55:08.863" UserId="5021" />
  <row Id="13996" PostId="4917" Score="1" Text="Also you don't get to be lazy with memory allocation. Except for very simple games, you have to pool all objects (which involves an allocate/free type model -- no better than C++) to prevent expensive garbage collections on the .NET compact CLR, which uses a generational collection approach." CreationDate="2011-04-03T18:56:45.277" UserId="5021" />
  <row Id="13997" PostId="10604" Text="Of course they don't use an XNA wrappers for anything. The point is that the XNA API provides everything you need to implement FPS multiplayer networking (except for a dedicated lobby server, which is not a big deal if you only have a couple hundred people in the lobby)." CreationDate="2011-04-03T19:15:37.053" UserId="5021" />
  <row Id="13998" PostId="10607" Score="2" Text="I would separate those questions out. Anyway, those games are probably made with Flash. You can use Flash or Unity (or HTML5...) to make games like that (they play in your web browser). Those are the main ones I know of." CreationDate="2011-04-03T23:09:23.273" UserId="3547" />
  <row Id="13999" PostId="10604" Text="XNet offers much nicer low-level networking API as compared to XNA. Still not as nice as the PS3, but every little bit helps when trying to shave off that last few ms of latency." CreationDate="2011-04-03T23:12:29.657" UserId="395" />
  <row Id="14000" PostId="10611" Text="Thanks Ricket. Ahhh, so stupid of me for that Flash. Nice insight. I will dig in through the references to see if I can find some good examples." CreationDate="2011-04-04T00:35:58.800" UserId="6498" />
  <row Id="14001" PostId="10613" Text="I don't much care for the folder organization (too complicated), but Amazon S3 seems good -- maybe with some custom software to let me tag it easily." CreationDate="2011-04-04T01:02:09.143" UserId="1929" />
  <row Id="14002" PostId="10590" Text="You should add this as a comment to your original post." CreationDate="2011-04-04T01:04:10.687" UserId="1929" />
  <row Id="14003" PostId="10253" Text="Thanks, forgot that the we will also be checking collisions between the actual objects in the smallest subspace, makes sense that it should be able to hold multiple objects now.&#xA;I've started on a test and it's coming along nicely. The biggest trouble I'm having is detecting in which subspace an objects belongs. I keep looping through subspaces childs X and Y values, is this an appropiate method?" CreationDate="2011-04-04T01:17:23.100" UserId="5677" />
  <row Id="14004" PostId="10590" Text="Done :). I have to wait a few hours before I can accept this as the answer." CreationDate="2011-04-04T01:25:12.657" UserId="4234" />
  <row Id="14005" PostId="10600" Text="You might want to check out [this question](http://gamedev.stackexchange.com/questions/9277/optimizing-an-xna-2d-game)." CreationDate="2011-04-04T01:38:56.260" UserId="288" />
  <row Id="14006" PostId="10614" Text="Bullet sounds cool?" CreationDate="2011-04-04T04:46:00.143" UserId="4513" />
  <row Id="14007" PostId="10592" Text="@Tesserex: I don't understand; if you change the position of the platform before the player does his gravity check then will he not move down and connect with the platform before the next step has occurred? Without looking at your code it just seems that you have an order of operations problem, thus my post." CreationDate="2011-04-04T05:29:28.110" UserId="5916" />
  <row Id="14008" PostId="10321" Text="As I read more I get more questions sadly. Since they're related I try to bunch em up together. I see u've answered many of my questions. Thank you." CreationDate="2011-04-04T05:42:00.320" UserId="5705" />
  <row Id="14009" PostId="10321" Text="It's ok that you have more question. I was just suggesting you put them in a separate question, chances are better you get an answer that way." CreationDate="2011-04-04T06:54:07.447" UserId="20" />
  <row Id="14010" PostId="10614" Text="Newton is open-source now? Nice" CreationDate="2011-04-04T06:55:46.900" UserId="20" />
  <row Id="14011" PostId="10619" Score="3" Text="Having texcoords &lt; 0 or &gt; 1 and GL_REPEAT as texture wrapping means that the texture will be [**removed erroneous statement**] repeated horizontally and vertically." CreationDate="2011-04-04T08:50:45.557" UserId="3644" />
  <row Id="14012" PostId="10616" Text="Another vote for Bullet, easiest to get started compared to Havok and PhysX (just a 15mb download), has a lot of good features and the guys in the forum are helpful." CreationDate="2011-04-04T11:27:56.327" UserId="3232" />
  <row Id="14013" PostId="10595" Text="Thanks. I think that's a novel approach. The game entities are defined externally, and the biggest reason I wanted it to work without some kind of special connection between them is so that any other falling platforms don't need the same special treatment in order to work. But maybe I can use this type of approach to make it easier to make such platforms." CreationDate="2011-04-04T12:30:12.560" UserId="141" />
  <row Id="14014" PostId="10624" Text="Thanks for pointing me in the right direction bummzack." CreationDate="2011-04-04T12:37:59.980" UserId="6507" />
  <row Id="14015" PostId="10609" Text="This is indeed great for testing. But that app still needs to be signed before you distribute it (i.e. you have to join the apple developer program). What you describe is a way to easily test apps on a lot of devices but that's not what's asked here." CreationDate="2011-04-04T13:47:04.330" UserId="20" />
  <row Id="14016" PostId="10626" Score="3" Text="Related: http://gamedev.stackexchange.com/questions/7338/multi-threaded-games-best-practices-one-thread-for-logic-one-for-rendering-o" CreationDate="2011-04-04T14:19:32.963" UserId="51" />
  <row Id="14017" PostId="10628" Text="Windows Phone 7 is 225MB (not sure about further carrier limits) " CreationDate="2011-04-04T15:20:48.717" UserId="1198" />
  <row Id="14018" PostId="10629" Text="`playerVel` versus `playerVek` -- is this a typo, or are you using the velocity vector in one instance the position vector in another? Beyond that I don't think you've provided enough context (for example, there are gates on bg1Offset, but you never update it that snippet, and it's not clear what bg1Offset represents that differs from bg1.X, et cetera...)." CreationDate="2011-04-04T15:38:35.603" UserId="1430" />
  <row Id="14019" PostId="7725" Score="1" Text="@hamlin11 Glad this information is still helping people :) In regards to the registration, if this happens quite a bit, remember you will want to optimize it for speed, have a pool of the registration objects to draw from, etc." CreationDate="2011-04-04T15:48:17.070" UserId="4443" />
  <row Id="14020" PostId="10613" Text="If you don't just store the files in folders, then you have to find a proprietary solution to manage the files and you will have an extra layer of abstraction and information to deal with. You will have to hope the solution is maintained and works on all platforms you use and will use in the future, and that it doesn't have bugs that might hinder you (or if you do find a bug, hope there is a maintainer who will fix it in a timely manner). If you make such a tool yourself then you have to deal with all the same concerns, but both sides are up to you to deal with." CreationDate="2011-04-04T15:49:22.433" UserId="189" />
  <row Id="14021" PostId="10629" Text="Sorry, I had my own custom classes and such and tried to extract the main points into one example. I've edited the code to show what it would look like without the custom player class. The `playerVek` was a typo :)" CreationDate="2011-04-04T15:50:08.097" UserId="5929" />
  <row Id="14022" PostId="10613" Text="That's very true." CreationDate="2011-04-04T15:50:15.863" UserId="1929" />
  <row Id="14023" PostId="10630" Text="Thanks, will take a look." CreationDate="2011-04-04T15:51:17.003" UserId="5929" />
  <row Id="14024" PostId="10613" Text="It makes me think of iTunes; iPods have to be managed using Apple's iTunes software. iTunes on Windows is terrible (slow, bulky, installs services and runs in the background, not very customizable, ...) but you are pretty much locked into using it and you play by its rules. Your songs are automatically copied into a folder where they are organized by artist and then by album, and generally wrapped in DRM, and your playlists and things are all stored in the iTunes Library file, readable only by iTunes (mostly). iTunes runs only on Windows and Mac. etc. etc. - you get the point. I don't like it." CreationDate="2011-04-04T15:53:36.223" UserId="189" />
  <row Id="14025" PostId="10440" Text="awesome article" CreationDate="2011-04-04T16:05:39.270" UserId="5846" />
  <row Id="14026" PostId="9601" Text="+1 essential mathematics looks awesome" CreationDate="2011-04-04T16:11:41.667" UserId="5846" />
  <row Id="14027" PostId="10609" Text="Uh, I thought that's exactly what was being asked here. Obviously it's not legal/ethical to distribute your iOS app without joining Apple's developer program, but if you want to develop your app first and be able to test it on an actual device, this would be the way to do it. First part of the question reads &quot;To test a program for iPhone or iPad&quot;." CreationDate="2011-04-04T16:34:33.140" UserId="3656" />
  <row Id="14030" PostId="10630" Text="The method seems to work for the first few 'scrolls' but then the image never comes back after that. I've updated the original post to show the new one with the method from your link." CreationDate="2011-04-04T17:43:16.123" UserId="5929" />
  <row Id="14031" PostId="10631" Text="I've added another image, but it doesn't work. I'll update my OP to to show my new code." CreationDate="2011-04-04T17:43:53.707" UserId="5929" />
  <row Id="14032" PostId="10634" Text="I'm not sure what to tag this question with, honestly. Any help?" CreationDate="2011-04-04T17:51:42.310" UserId="1929" />
  <row Id="14033" PostId="10633" Text="When you say &quot;keep them in a separate list&quot;, how do you store your reference between an NPC and a tile? For instance, a battle with a certain group of NPCs only occurs when a player enters a tile?" CreationDate="2011-04-04T17:53:00.780" UserId="6214" />
  <row Id="14034" PostId="10633" Score="1" Text="I'm guessing that this question is about managing large-scale maps with tons of stuff on them. In that case, I would keep one ADT with the tile data (tile image coordinates, walkable or not, etc.) and one with a list of all the NPCs. To give a C# reference, I would probably have a 2D array of some Tile class with ImageX, ImageY, etc. properties and a List&lt;T&gt; of some sort of Entity/NPC class that would have Tile XY coordinates." CreationDate="2011-04-04T18:03:58.560" UserId="1929" />
  <row Id="14035" PostId="10444" Text="Sorry for answering my own question. The image I have attached is after &quot;repairing&quot; of the vertex shader. Before that, I could see only &quot;pixel-art&quot; like texture :) thanks for help, now everything seems ok." CreationDate="2011-04-04T18:15:59.720" UserId="5459" />
  <row Id="14036" PostId="10571" Text="Thanks! This site looks like a great resource. Unfortunately, it's not quite what I'm currently looking for... I should probably have specified that I'm primarily looking for 2D illustration/digital painting, as opposed to textures and 3D models. I am also looking to commission custom assets rather than buy stock. That said, I'm sure I'll use it in the future, and I'm sure it will be useful to others, so have an upvote." CreationDate="2011-04-04T18:24:33.387" UserId="5311" />
  <row Id="14037" PostId="10582" Text="Thanks! This looks like it's pretty exactly what I need." CreationDate="2011-04-04T18:26:03.307" UserId="5311" />
  <row Id="14038" PostId="10635" Text="All very good points -- especially the *quality* point. That is something I'm worried about. I do intend to try it out and see how far it gets, but I would like to hear from the community / people who have tried it before, if I can." CreationDate="2011-04-04T18:30:06.223" UserId="1929" />
  <row Id="14039" PostId="10444" Text="You can answer your own question if you solve it. I did not recognize, that this is solved sorry:). Please remove it from edit and write it as answer and feel free to accept it. It is totaly ok. But i still think that your code is little bit strange. But if that works. Go on please:)" CreationDate="2011-04-04T18:37:48.433" UserId="3794" />
  <row Id="14040" PostId="10635" Text="If you're trying to *sell* your game, you're probably not going to have a lot of luck.  If you're trying to, say, get funding for a proof of concept it's probably fine." CreationDate="2011-04-04T19:12:49.587" UserId="51" />
  <row Id="14041" PostId="10633" Text="How do you store the reference between the Tile class and the NPCs in the Entity/NPC class? Is your tile coordinates your &quot;key&quot;? " CreationDate="2011-04-04T19:17:09.180" UserId="6214" />
  <row Id="14042" PostId="10635" Score="1" Text="My goal is to learn Unity, primarily, and distribute it for free. Thanks, I think I will give it a shot. Sounds like the answer is &quot;yes, but it might be a bit ugly.&quot;" CreationDate="2011-04-04T19:19:54.937" UserId="1929" />
  <row Id="14043" PostId="10633" Score="1" Text="I think I've used two approaches: the Entity has (TileX, TileY) coordinates, and (more recently) the Entity has a Tile reference, which in turn, has a (TileX, TileY) coordinate. As for the tiles, I would store them in an array, not a hashmap." CreationDate="2011-04-04T19:23:01.127" UserId="1929" />
  <row Id="14044" PostId="10633" Text="Awesome, thanks so much for your help!" CreationDate="2011-04-04T19:52:23.890" UserId="6214" />
  <row Id="14045" PostId="10609" Score="1" Text="The way I read it was: Do you have to join the Apple Developer Program to test your app or is it possible to use a jailbreaked device and save the $99? " CreationDate="2011-04-04T19:54:24.450" UserId="20" />
  <row Id="14046" PostId="10621" Text="Nice answer.  As for the unnecessary child traversals, do you think an acceleration structure such as an hgrid holding a forest of octrees is a feasible optimization when objects of a very large range of sizes are present?" CreationDate="2011-04-04T19:59:34.730" UserId="6467" />
  <row Id="14047" PostId="10595" Text="The only thing that binds the platform and player is a entity component. Thus, you can create other platforms and not attach this entity component to the player. You leave the platform open to extension, that'll make it easier." CreationDate="2011-04-04T21:05:24.173" UserId="3547" />
  <row Id="14048" PostId="857" Text="#3 would also give the real-world experience of clients who change the requirements on you after you've already started." CreationDate="2011-04-04T21:17:53.867" UserId="6513" />
  <row Id="14049" PostId="10621" Score="1" Text="I've found that a single octree usually works fine for a pretty large range of object sizes. I'd suggest starting with this unless you *know* you have a problem that requires a special fix. FWIW, I've found that having lots of overlapping AABBs can be a bigger problem than the size of the AABBs (since you run into n^2 intersections tests pretty quickly....)" CreationDate="2011-04-04T21:20:00.697" UserId="764" />
  <row Id="14052" PostId="3609" Text="Gabe is the man, got a signed copy of this just for visiting their HQ in Bellevue and doing some playtesting!" CreationDate="2011-04-04T22:15:24.760" UserId="2787" />
  <row Id="14053" PostId="3468" Text="See also: [Halo 3 balancing talk, GDC 2010](http://doublebuffered.com/2010/03/14/gdc-2010-design-in-detail-changing-the-time-between-shots-for-the-sniper-rifle-from-0-5-to-0-7-seconds-for-halo-3/). From the linked summary: _&quot;You want players to play, and you shouldn’t argue with them. Look for their reactions, NOT their solutions. “I don’t like x” is useful, “I don’t like x because of y” is great, and “You should do x” is useless. Trust the player’s gut (intuition) but don’t trust their reasoning as they do NOT have the same mental context you do as the designer.&quot;_" CreationDate="2011-04-05T00:35:21.273" UserId="101" />
  <row Id="14055" PostId="10644" Text="I &lt;3 GGJ. Always a blast in NYC." CreationDate="2011-04-05T01:34:24.617" UserId="3656" />
  <row Id="14056" PostId="10595" Text="@Omnion well the one way I've got it to work so far, I used a hitbox to communicate between the two. So it seems at the moment that there's no simple solution that doesn't create at least a small other object in each case." CreationDate="2011-04-05T01:57:05.910" UserId="141" />
  <row Id="14057" PostId="10595" Text="Yeah, but is that small object really a problem? It's only being allocated during one frame once. Very small amount in my opinion." CreationDate="2011-04-05T02:29:54.403" UserId="3547" />
  <row Id="14058" PostId="10595" Text="Right, it works fine. You just have to remember it every time you create such a platform." CreationDate="2011-04-05T02:38:00.993" UserId="141" />
  <row Id="14059" PostId="10653" Text="You should probably make separate questions out of these." CreationDate="2011-04-05T07:08:59.517" UserId="302" />
  <row Id="14060" PostId="10656" Text="Welcome to gamedev.stackexchange, nice answer!" CreationDate="2011-04-05T08:08:40.607" UserId="3794" />
  <row Id="14061" PostId="10652" Text="So there's no simple and direct way to do what I want in OpengGL... Too bad. Maybe I'll try adding another light source, but how exactly do I specify the light intensity?" CreationDate="2011-04-05T10:43:42.867" UserId="6178" />
  <row Id="14062" PostId="10652" Text="The `GL_SPECULAR` and `GL_SHININESS` don't seem to produce any effect though... I did change `glMaterialfv` to `glMateriali` because it was not compiling. And also tried a larger value like 128. It looks the same to me... Maybe the problem is on my loaded model (obj/mtl), will have to take a look." CreationDate="2011-04-05T11:30:23.830" UserId="6178" />
  <row Id="14063" PostId="10663" Text="Could you think of any problems for if it wasn't just a simple game?" CreationDate="2011-04-05T12:35:25.713" UserId="4200" />
  <row Id="14066" PostId="10411" Text="Thanks for the sample code, I will try to create a plugin for FSX with it." CreationDate="2011-04-05T14:46:47.017" UserId="3579" />
  <row Id="14067" PostId="10662" Text="It might help to show which configuration files you have already edited, and to what values." CreationDate="2011-04-05T15:18:39.833" UserId="1430" />
  <row Id="14068" PostId="10653" Text="Agreed; questions 3 especially should be edited out and posted separately." CreationDate="2011-04-05T15:19:57.930" UserId="1430" />
  <row Id="14069" PostId="10670" Text="Amen! You touch on a great point I didn't really talk about in my answer." CreationDate="2011-04-05T15:32:32.837" UserId="1198" />
  <row Id="14070" PostId="10648" Score="1" Text="I headed down this path and it will solve my issue.  " CreationDate="2011-04-05T15:59:46.537" UserId="6302" />
  <row Id="14071" PostId="10672" Text="It may be purely technical reasons, having to maintain/calculate progress for all possible achievements could be expensive. " CreationDate="2011-04-05T16:40:19.870" UserId="6021" />
  <row Id="14072" PostId="10672" Score="1" Text="@Alexander - From Jeff's response, I think we can infer that it is not - otherwise (you'd think) he would answer based on SO's own technical merits/limitations, and not based on the design of another system." CreationDate="2011-04-05T16:42:26.330" UserId="1747" />
  <row Id="14073" PostId="10672" Text="The way you have worded this, it sounds like you are asking about the 360 achievement system specifically, to me (which feels a bit off-topic for this site)." CreationDate="2011-04-05T17:11:26.613" UserId="1430" />
  <row Id="14074" PostId="10672" Text="@Josh - the question is &quot;Here are two achievement systems that are pretty clearly committed to not showing progress.  One of them is an achievement system pioneer.  Why is this a *good* thing?&quot; Game design is on-topic, right?  I'd like to know if/why I should consider leaving progress invisible." CreationDate="2011-04-05T17:17:46.237" UserId="1747" />
  <row Id="14075" PostId="10653" Text="Thanks. I've posted here (http://gamedev.stackexchange.com/questions/10680/what-do-you-use-to-support-multiplayer-turn-based-network-game-for-ios-and-androi)" CreationDate="2011-04-05T17:39:31.200" UserId="6519" />
  <row Id="14076" PostId="10654" Text="Thanks for yr reply. So u r saying learning curve of Lua is not deep if I have basic understanding in programming?" CreationDate="2011-04-05T17:40:57.970" UserId="6519" />
  <row Id="14077" PostId="10672" Score="3" Text="@Renesis: I don't think XBL is committed to not showing progress. If they were, the TCR would forbid showing it (they don't) and forbid achievements of the do 5 / do 10 / do 50 variety (they don't)." CreationDate="2011-04-05T19:21:25.000" UserId="744" />
  <row Id="14078" PostId="10677" Score="1" Text="On the other hand, LittleBigPlanet 2 is probably the least spreadsheety game I've played in recent memory, and it tracks and shows progress on every conceivable axis." CreationDate="2011-04-05T19:23:19.837" UserId="744" />
  <row Id="14079" PostId="10672" Text="+1. the concept of badges is an appealing reward /reputation system. what is the design idea behind not showing progress?" CreationDate="2011-04-05T19:26:35.870" UserId="6544" />
  <row Id="14080" PostId="10683" Score="1" Text="http://fabiensanglard.net/quakeSource/index.php&#xA;http://www.bluesnews.com/abrash/chap68.shtml&#xA;http://www.quaddicted.com/engines/engine_comparison.html" CreationDate="2011-04-05T19:30:30.650" UserId="6500" />
  <row Id="14081" PostId="10684" Text="I have a line that is at (320,0) and (320,480) vertically splitting the screen. Now if I have another line that intersects this line, how can I find the Y position of that intersect?" CreationDate="2011-04-05T19:46:57.320" UserId="6540" />
  <row Id="14082" PostId="10677" Text="That's true. It's also pretty easy to ignore the spreadsheety bits unless the game really shoves them in your face. I don't particularly believe in the argument I put forth in my edit, it's just the only thing I've ever really heard." CreationDate="2011-04-05T20:06:03.347" UserId="1430" />
  <row Id="14083" PostId="10684" Score="1" Text="=)&#xA;&#xA;You have two lines, one is at x=320 (a vertical line at x = 320), the second can be anything not parallel. Plug 320 into the equation for the other line. &#xA;&#xA;Ex.&#xA;Line #1: x=320&#xA;Line #2: y=13x+2&#xA;&#xA;they intersect at y=13(320)+2&#xA;" CreationDate="2011-04-05T22:30:08.480" UserId="6500" />
  <row Id="14084" PostId="10674" Text="Where do your releases and press releases get posted?" CreationDate="2011-04-06T00:32:16.110" UserId="1101" />
  <row Id="14085" PostId="10674" Text="On my site. I have stuff categorized into four categories: Play (online, like Flash), Download, Labs (non-final releases go here), and News (for press releases)" CreationDate="2011-04-06T01:53:05.980" UserId="1929" />
  <row Id="14086" PostId="10640" Text="Please do provide references. Also, I would really like an example of this." CreationDate="2011-04-06T01:54:33.657" UserId="1929" />
  <row Id="14087" PostId="10651" Text="I suggest that you consider using shaders, if possible.  The OpenGL fixed-function pipeline uses a fairly simple lighting model, whereas shaders give you full control over the maths." CreationDate="2011-04-06T02:09:20.700" UserId="5439" />
  <row Id="14088" PostId="4990" Text="There's no such thing as XNA 3.5. There's XNA 3.1 and XNA 4.0." CreationDate="2011-04-06T02:56:14.270" UserId="5021" />
  <row Id="14089" PostId="10676" Score="1" Text="And yet we have people rep whoring and or racing for a high rep count.This is Common in All online communities/forums where such behavior is called Trolling *A similar behavior to high scores in GAMES*.But in a professional setting this is of much interest due to what it implies. what reason is there in displaying privileges progress ? is it not implicitly increasing the demand for rep count. As you so put *badges are not a goal and achieving them isn't meant to be something you do on purpose.* How is this any different with privileges.What kind of design logic differentiates them?" CreationDate="2011-04-06T05:03:10.787" UserId="6544" />
  <row Id="14090" PostId="10689" Text="+1 Battlefield Bad Company's audio followed the mantra of do more with less, and look how that turned out." CreationDate="2011-04-06T05:13:26.493" UserId="3656" />
  <row Id="14091" PostId="10635" Text="Bonus point for &quot;consistent look&quot;. I found that the assets freely available are actually pretty good if you take the time to sort through them, but they are not consistent. So you end up with a game that looks like a spoiled toddler's toybox." CreationDate="2011-04-06T08:19:39.407" UserId="678" />
  <row Id="14092" PostId="963" Text="@Bryan Not anymore it's not. You been to digg lately? That place is a ghost town.&#xA;&#xA;@speeder On reddit you should try /r/gamedev, they're all helpful people" CreationDate="2011-04-06T08:28:53.937" UserId="4200" />
  <row Id="14093" PostId="10699" Text="This thread may help: http://forums.create.msdn.com/forums/p/33189/217676.aspx" CreationDate="2011-04-06T08:31:13.760" UserId="1386" />
  <row Id="14094" PostId="10652" Score="1" Text="@Nazgulled Just checked that the light0 specular defaults to 1.0, but the material specular defaults to 0.0. So change glLightfv(GL_LIGHT0, GL_SPECULAR, specLight0); to glMaterialfv(GL_FRONT, GL_SPECULAR, specLight0);&#xA;It's also good to set glLightModeli(GL_LIGHT_MODEL_LOCAL_VIEWER, GL_TRUE); or the specular might be calculated incorrectly when the camera is rotating." CreationDate="2011-04-06T09:15:38.480" UserId="2158" />
  <row Id="14095" PostId="10652" Score="1" Text="@Nazgulled For the secondary light, set the ambient and specular to zero and some small value like 0.2 for the diffuse. You can also set the ambient of all lights to zero and use global ambient with GL_LIGHT_MODEL_AMBIENT instead." CreationDate="2011-04-06T09:18:45.870" UserId="2158" />
  <row Id="14096" PostId="10674" Score="1" Text="I would have thought that relatively few people visit your site (without knowing which one it is). Posting on Reddit's Gamedev board, Gamedev.net's &quot;Your Announcements&quot;, and TigSource's 'Announcements' might be a good idea." CreationDate="2011-04-06T09:22:51.033" UserId="1101" />
  <row Id="14097" PostId="10674" Text="Yes, that's what I suspect too. But I'm sure that people who know about my site know about the labs section, since it's very obvious from the UI/design, and I make Silverlight games." CreationDate="2011-04-06T11:03:39.787" UserId="1929" />
  <row Id="14098" PostId="10674" Text="You can measure this sort of thing with Google Analytics." CreationDate="2011-04-06T11:13:01.640" UserId="1101" />
  <row Id="14099" PostId="963" Text="@Harold that comment is almost a year old, that was before digg screwed themselves over :D" CreationDate="2011-04-06T12:54:41.397" UserId="47" />
  <row Id="14100" PostId="10695" Text="This is a very good question. It would be nice if there was some theoretical work behind this issue." CreationDate="2011-04-06T13:14:45.310" UserId="4834" />
  <row Id="14101" PostId="10698" Text="That sounds very much a strategy for static maps. What if my game is 90%+ procedural, like a rogue-like?" CreationDate="2011-04-06T13:52:42.483" UserId="1929" />
  <row Id="14102" PostId="10697" Text="Can you give me a numerical example of the range + auto-balance?" CreationDate="2011-04-06T13:53:39.143" UserId="1929" />
  <row Id="14103" PostId="10695" Text="That's exactly what I want to know. I'm sure there's some systematic process you can apply to get this mostly right." CreationDate="2011-04-06T13:54:09.363" UserId="1929" />
  <row Id="14104" PostId="10674" Text="Already doing so. What I'm missing are the comments and emails with suggestions." CreationDate="2011-04-06T13:57:54.213" UserId="1929" />
  <row Id="14105" PostId="10689" Text="Thanks man. Love that game!" CreationDate="2011-04-06T14:01:04.503" UserId="6384" />
  <row Id="14106" PostId="10623" Text="I'll try this out and see if I can get it to work. Thanks for being descriptive and I'll let you know how it works. Wish this were better documented." CreationDate="2011-04-06T14:05:44.030" UserId="6384" />
  <row Id="14107" PostId="10695" Text="Imagine a scenario where all monsters are the same difficulty, same strength and the player doesn't get stronger. This solves the problems you mention. There isn't a systematic process. Realistically to keep a curve and prevent incredibly hard monsters use common sense, basic maths skills and playtesting." CreationDate="2011-04-06T14:17:53.800" UserId="1386" />
  <row Id="14108" PostId="10695" Text="That's what I do already. And I'm sure that someone has found something of a better approach." CreationDate="2011-04-06T14:23:22.973" UserId="1929" />
  <row Id="14109" PostId="10704" Text="I think you misunderstood. Individual monsters have their own difficulties. Eg. an Uber Dragon would have a difficulty of 180%, while a Small Slime would have 10%." CreationDate="2011-04-06T14:25:51.780" UserId="1929" />
  <row Id="14110" PostId="10695" Text="Why are you sure?" CreationDate="2011-04-06T14:27:08.150" UserId="1386" />
  <row Id="14111" PostId="969" Text="Bring a box of candy bars.  People seem to do anything for candy bars.  Just walk around an airport and see all the airline credit cards that you can sign up for..." CreationDate="2011-04-06T14:54:15.250" UserId="5661" />
  <row Id="14112" PostId="962" Text="I asked my beta testers if they wanted to be in the credits.  Had about 1 in 5 ask to be included.  Don't think you have much of an issue with billions of people (billions of bugs is a different issue! 8)." CreationDate="2011-04-06T14:55:41.490" UserId="5661" />
  <row Id="14113" PostId="10711" Score="5" Text="Not related to your question, but what about accepting some of the answers to your previous questions? 0% accept rate doesn't motivate people all that much to respond." CreationDate="2011-04-06T14:58:41.393" UserId="20" />
  <row Id="14114" PostId="10695" Score="2" Text="I think that there may not be a general answer to this question, but only due to the fact that a theoretical background has to be based on a very specific question. A theoretical work could define a metric of difficulty, and introduce formal definitions concerning game rules. Based on that, it could prove that for a given difficulty you have to do this and that. To give an example: One of the answers below mentions Kingdom of Loathing, which has very specific formulas about how monsters progress - these formulas apply to that particular game with its own set of rules." CreationDate="2011-04-06T15:05:21.267" UserId="4834" />
  <row Id="14115" PostId="10635" Text="Perhaps if your game is compelling, a talented artist will take pity on your &quot;programmer art&quot; and offer to help out." CreationDate="2011-04-06T15:46:56.940" UserId="5661" />
  <row Id="14116" PostId="10711" Text="Thanks for pointing that out. I needed to go back and do that." CreationDate="2011-04-06T15:52:47.703" UserId="853" />
  <row Id="14117" PostId="10634" Text="I think I sorted it out for you." CreationDate="2011-04-06T16:04:17.880" UserId="1156" />
  <row Id="14118" PostId="10675" Score="1" Text="I tried that, but it do not worked. Since this is my first game, the only people that see the game, are those that already know about it." CreationDate="2011-04-06T16:08:02.743" UserId="469" />
  <row Id="14119" PostId="10712" Text="+1 good reasearch" CreationDate="2011-04-06T16:09:41.323" UserId="5846" />
  <row Id="14120" PostId="10675" Text="I'm having the same issue. It's still a good marketing point -- you can email your friends the press-release part, for example." CreationDate="2011-04-06T16:46:54.650" UserId="1929" />
  <row Id="14121" PostId="10634" Text="Shouldn't there be a tag about free resources?" CreationDate="2011-04-06T16:47:27.100" UserId="1929" />
  <row Id="14122" PostId="10635" Text="Pity is great, but it's not a strategy. I already have two compelling, unique niches in which I'm developing; that has more likelyhood of pulling out someone who wants to help out." CreationDate="2011-04-06T16:48:16.443" UserId="1929" />
  <row Id="14123" PostId="10698" Score="1" Text="Then do as I suggested for linear games. Hand the player more a couple more difficult monsters, if he doesn't perform well, then reduce the monster level, until some lower bound. The player will still have a sense of progression, because the worst players will still always hit the lower bound of monster level spawning." CreationDate="2011-04-06T16:57:47.007" UserId="5021" />
  <row Id="14124" PostId="10634" Text="free sums it up IMHO." CreationDate="2011-04-06T17:17:07.617" UserId="1156" />
  <row Id="14125" PostId="10711" Text="@Joey Green: The easiest way is probably through your profile-page (no need to &quot;go back&quot;) :)" CreationDate="2011-04-06T17:38:42.053" UserId="20" />
  <row Id="14126" PostId="10684" Text="Could you maybe explain this a little further?" CreationDate="2011-04-06T17:51:43.623" UserId="6540" />
  <row Id="14127" PostId="10704" Text="@ashes999: oh.. sorry then :)" CreationDate="2011-04-06T18:00:45.973" UserId="4997" />
  <row Id="14128" PostId="10704" Text="No worries. I upvoted because I still like your idea." CreationDate="2011-04-06T18:05:35.003" UserId="1929" />
  <row Id="14129" PostId="10716" Text="I concur. I created a BatleManager object to manage the interaction between battles. This allows one-on-one battles (one player vs. one monster), but also can scale to complex battles (4 party members vs. 40 monsters)." CreationDate="2011-04-06T18:34:01.603" UserId="1929" />
  <row Id="14130" PostId="6723" Text="Storing extra information is the collision-map is a beautiful idea." CreationDate="2011-04-06T19:22:21.173" UserId="370" />
  <row Id="14131" PostId="10720" Text="Please tag. Thanks." CreationDate="2011-04-06T19:34:56.130" UserId="1929" />
  <row Id="14132" PostId="6868" Text="@Septagram: take a look at the [Physical engine](http://www.alecrivers.com/projects/physical.htm).  The entire engine is based around the idea that everything is a deforming/destructible lattice (like a tower of goo)." CreationDate="2011-04-06T20:02:40.657" UserId="370" />
  <row Id="14134" PostId="10247" Text="Converted this to CW as this is really just a &quot;list of&quot; question." CreationDate="2011-04-06T20:24:28.787" UserId="51" />
  <row Id="14136" PostId="10672" Text="Suggest we (well, some moderator) move this to *meta* - not really on-topic for this site (as Josh also says)." CreationDate="2011-04-06T20:25:49.613" UserId="165" />
  <row Id="14137" PostId="10722" Text="+1 I didn't consider competitions as a good way to improve. I don't get a lot of big blocks of time to code, but pressure will still help accelerate me forward." CreationDate="2011-04-06T20:26:10.677" UserId="1929" />
  <row Id="14138" PostId="10672" Text="@Cyclops - This is something I'm not getting.  I realize I'm new to this site but the first on-topic bullet point is about &quot;Game design&quot;.  This is unquestionably about game design.  SO is merely an *example*." CreationDate="2011-04-06T20:31:17.540" UserId="1747" />
  <row Id="14139" PostId="10720" Score="1" Text="I haven't created any games yet, but i'd love to hear from more people about the 40 hours thing, it's less than a week of work, how is that not super-fast for developing an application..." CreationDate="2011-04-06T20:33:07.447" UserId="6117" />
  <row Id="14140" PostId="10672" Text="@Renesis, okay, reading more closely, I misread it. Maybe you could re-word things? What's the point of referring to SO if you're asking about games? Also - are you asking a generic question about why other game-system designers do what they do? Or asking whether *you* should use a progress system in a game of yours?" CreationDate="2011-04-06T20:35:28.727" UserId="165" />
  <row Id="14141" PostId="10672" Text="@Cyclops - I have hopefully cleared it up.  My intented question is the second, and I put that in the footnote - which I removed and worked into the question itself." CreationDate="2011-04-06T20:37:44.900" UserId="1747" />
  <row Id="14142" PostId="10672" Text="@Renesis, it is more clear, although I still think you're making the question a bit over-complex :) What it *sounds* like you're asking, is &quot;what are the advantages and disadvantages of progress-tracking towards achievements, *for my game*&quot;? Maybe add a few details about your game-type. But the StackOverflow/Xbox remarks, still seem irrelevant to the question." CreationDate="2011-04-06T20:48:05.420" UserId="165" />
  <row Id="14143" PostId="10672" Score="1" Text="@Cyclops - it's not about *my* game, it's about learning the reasons why an achievement system might hide progress, so that I can make an informed decision on my own. You know, teach a man to fish, blah blah..." CreationDate="2011-04-06T20:52:27.140" UserId="1747" />
  <row Id="14144" PostId="10725" Text="Nice question. I'm interested what is practical usage of this approach. " CreationDate="2011-04-06T21:22:21.120" UserId="3794" />
  <row Id="14145" PostId="6722" Score="1" Text="Computational geometry such as this can get VERY complicated, VERY fast!" CreationDate="2011-04-06T21:29:04.683" UserId="1163" />
  <row Id="14146" PostId="10656" Text="Thank you! I figured something along those lines would probably be the answer.&#xA;&#xA;Also: +1 for exporting tangent frames from content creation software. Of course that's more natural for the entire art pipeline.&#xA;&#xA;I'm not sure if I understand completely, though- Is it correct that averaging tangent frames won't work for right/acute angles in your mesh and that this very case requires at least some redundant vertices?" CreationDate="2011-04-06T21:35:04.340" UserId="1562" />
  <row Id="14147" PostId="10707" Text="+1 Let the outcome determine the numbers, not the other way around." CreationDate="2011-04-06T22:25:49.200" UserId="5678" />
  <row Id="14148" PostId="8967" Text="An exponential curve is fine, but there's a question of how well does the gain scale with that curve? For example, in Ricket's anecdote of RS, you have a goal of 13m xp, but from the time you hit 2m xp (less with some skills) there's almost no increase to your gain per unit time. If your rate increases exponentially as well (but with a lower scale) you will find the ability to both draw out your later levels and give your players the feeling that they're going faster than before (which is important!)" CreationDate="2011-04-06T22:30:25.900" UserId="5678" />
  <row Id="14149" PostId="10720" Text="@Zaky German I was coding around 2.5-5 hours per week; at 40 hours with FlatRedBall, I made a decent 2D Silverlight puzzle game. I did all the graphics and stuff too (which was harder than the programming!)" CreationDate="2011-04-06T22:47:14.463" UserId="1929" />
  <row Id="14150" PostId="10725" Text="The main goal would be to save textures with a secondary device so it doesn't block the device used for rendering." CreationDate="2011-04-07T02:55:37.193" UserId="2469" />
  <row Id="14151" PostId="10733" Score="3" Text="+1 Nothing wrong with being like Google and having five-year betas on everything!" CreationDate="2011-04-07T07:44:42.350" UserId="5678" />
  <row Id="14152" PostId="10719" Text="Thanks for that, this seems to be exactly what I'm looking for " CreationDate="2011-04-07T08:21:18.160" UserId="5275" />
  <row Id="14153" PostId="10728" Score="1" Text="+1 for not Flash :-D" CreationDate="2011-04-07T08:58:05.513" UserId="3304" />
  <row Id="14154" PostId="9678" Text="Many would argue that for explicit multi-core support, you are better off with threads rather than processes (and Scala actors model processes). This is because you can take advantage of shared memory across the threads. Of course, that is error-prone in ways that the Actor model is not." CreationDate="2011-04-07T11:01:34.727" UserId="1101" />
  <row Id="14155" PostId="2043" Text="I found SDL good but it was very difficult to get the paths and includes setup properly." CreationDate="2011-04-07T12:21:17.693" UserId="6469" />
  <row Id="14156" PostId="10737" Text="Nice, but I'm a 2D guy; 3d games take an order of magnitude (10-100x) more time and energy and resources to make." CreationDate="2011-04-07T12:28:59.063" UserId="1929" />
  <row Id="14157" PostId="10736" Text="Looks like it runs on the JVM. Kind of interesting." CreationDate="2011-04-07T12:30:07.377" UserId="1929" />
  <row Id="14158" PostId="10746" Text="How similar is the deck to rummy? 4 suits * 13 cards per suit, Ace counts high or low?" CreationDate="2011-04-07T12:38:42.350" UserId="5020" />
  <row Id="14159" PostId="9136" Text="Granted but you are comparing the average BSC holder to the exceptional game programming degree holder." CreationDate="2011-04-07T12:42:13.627" UserId="6469" />
  <row Id="14160" PostId="10691" Text="Yes, I think Ill do that, thx for your advice.&#xA;However, what if when two or more sounds play at the ~same time, I play only one sound but at a higher volume?, would that look fine?" CreationDate="2011-04-07T12:57:05.083" UserId="5091" />
  <row Id="14161" PostId="10722" Text="+1 for Ludum Dare, the next one is in just a few weeks; give it a try!" CreationDate="2011-04-07T13:20:13.267" UserId="189" />
  <row Id="14162" PostId="10761" Text="In combination with what Ashes says here, I think it might also be well worth remembering that plot and story in games is in many ways completely unique. Because I can't think of a better set of terms to use I will use the ones in the title. I see story as the more traditional variety of storytelling with defined arcs and major story elements defined. Plot on the other hand, is what I see as the players domain, if indeed they have any effect on the game story. In my opinion plot is best told through the players options and the game environment." CreationDate="2011-04-07T14:11:42.627" UserId="2687" />
  <row Id="14163" PostId="2153" Score="3" Text="404, page not found" CreationDate="2011-04-07T14:23:14.703" UserId="4834" />
  <row Id="14164" PostId="10412" Text="Thanks for your answer James!" CreationDate="2011-04-07T14:31:06.573" UserId="6427" />
  <row Id="14165" PostId="10412" Text="I appreciate your input @James. However, I am still looking for more alternative ways in which both we as a developer and our publisher could divide the revenue from our upcoming game. As I mentioned - the development is being financed from another party then our publisher. So what we are really looking for with them is help with marketing. Considering that they are not paying for the development cost we are interested in finding different ways of dividing the revenue between us.   " CreationDate="2011-04-07T14:38:20.717" UserId="6427" />
  <row Id="14166" PostId="10678" Text="Can you try to explain a bit further what exactly you are looking for?" CreationDate="2011-04-07T14:51:19.183" UserId="1198" />
  <row Id="14168" PostId="10412" Text="@Annica If you are just looking for the marketing aspect of a publisher you would likely be better off to just seek out an entertainment media marketing company and work with them directly. You will really want to go to a publisher when you either need to fund the development of a project or access to their Console environments (not always easy to get from Microsoft/Sony/Nintendo as an Indy), QA or the like.  Hope this helps." CreationDate="2011-04-07T16:07:53.290" UserId="4443" />
  <row Id="14169" PostId="10746" Text="@Peter Taylor: 4 colours, 13 numbers, 2 decks and no Aces" CreationDate="2011-04-07T16:09:13.807" UserId="769" />
  <row Id="14172" PostId="10768" Text="So I should just call that (I think you meant `glBindTexture`) in in the end of every draw function which maps textures to objects?" CreationDate="2011-04-07T17:22:18.487" UserId="6178" />
  <row Id="14173" PostId="10759" Text="It will run off a server, nothing to download except the webpage.  I didn't put my full schedule into the question. I plan to fix bugs weekly (or at least shortly after they are found) and implement new functionality when it is done whether is takes a fortnight or 3 fortnights." CreationDate="2011-04-07T18:04:09.870" UserId="6381" />
  <row Id="14174" PostId="10775" Text="If you need to calculate `X` so that it “looks good” I doubt there is a formula. Could you maybe provide some screenshots of the visual effects that disturb you? Also, remember that quads are deprecated in OpenGL and you should use triangles instead (together with vertex buffers). Finally, displaying several quads instead of a large one will help you organise your scene better." CreationDate="2011-04-07T18:06:27.610" UserId="5864" />
  <row Id="14175" PostId="10775" Text="I can't post screenshots right now, but the problem is that the textures look distorted. Just pick any texture of any given size and stretch it. How does it look? Bad. That's the problem I'm having. What I want is to put the texture on the floor without stretching, no matter the size of the texture." CreationDate="2011-04-07T18:18:12.437" UserId="6178" />
  <row Id="14176" PostId="10729" Text="I have already planned to use the Agile method. Since I am working alone iterations will contains small amounts of features with larger work spread across multiple iterations." CreationDate="2011-04-07T18:25:00.843" UserId="6381" />
  <row Id="14177" PostId="10775" Score="1" Text="Did you [generate mipmaps](http://www.opengl.org/wiki/Common_Mistakes#Automatic_mipmap_generation) for your texture? From what you appear to experience, `X = 524288 / S` where `S` is your texture size should work." CreationDate="2011-04-07T18:26:31.133" UserId="5864" />
  <row Id="14179" PostId="10735" Text="My goal is to make a game that I will have fun playing (or at least creating). I will make sure to make as fun a game as possible." CreationDate="2011-04-07T18:42:23.907" UserId="6381" />
  <row Id="14180" PostId="10733" Score="1" Text="This makes sense. The community will potentially gain loyal users. More importantly, something I just realized. If I start taking suggestions for features and functionality. The players will have a sense of ownership in the game as well thus helping the game's community." CreationDate="2011-04-07T19:02:27.693" UserId="6381" />
  <row Id="14181" PostId="10740" Text="@Neverender, Your `TakeDamage()` is in the player Pawn itself, correct?  Essentially intercepting any damage calls before moving up the hierarchy?  I'll have to give some of that logic a try." CreationDate="2011-04-07T19:04:45.563" UserId="3051" />
  <row Id="14182" PostId="10776" Text="Thanks! That's a cool way of doing it too, and similar to what I'm doing now, as you said. I know nothing about HLSL but I'll definitely look into it. Another way I was told I could do is blacken it as I approach the edge of the crater, but I'll try this way too." CreationDate="2011-04-07T19:15:24.980" UserId="6383" />
  <row Id="14183" PostId="10750" Text="It requires Ogre 1.8.0 alpha, I version I can't find anywhere. I have 1.7.2 on my Ubuntu system from the PPA." CreationDate="2011-04-07T19:27:13.843" UserId="769" />
  <row Id="14184" PostId="10737" Text="Understood, but the point is that if it runs fast enough for an interactive multi-person networked 3D space, it runs fast enough for a 2D game." CreationDate="2011-04-07T19:33:21.260" UserId="6570" />
  <row Id="14185" PostId="10737" Text="My question is not &quot;is it fast enough,&quot; but more like &quot;are the technologies for it in existence and mature enough?&quot;" CreationDate="2011-04-07T19:36:03.490" UserId="1929" />
  <row Id="14186" PostId="10775" Text="That solves it, even for the 512x521 textures. I thought they looked good with `X=512` (the same `X` for 1024 textures) but it actually looks much better with `X=1024`, which is the number that little formula gives for `S=512`. Everything makes sense now. You want to answer that below so I can mark the answer as accepted? About mipmaps, I haven't generated them yet, why?" CreationDate="2011-04-07T19:38:17.343" UserId="6178" />
  <row Id="14187" PostId="10775" Text="The only issue is that I was not saving the texture size, just the texture ID. Will have to find place to save that image size info along with the ID." CreationDate="2011-04-07T19:39:22.147" UserId="6178" />
  <row Id="14188" PostId="10775" Score="1" Text="You may also retrieve the texture size using `glGetTexLevelParameter()`." CreationDate="2011-04-07T19:48:52.933" UserId="5864" />
  <row Id="14189" PostId="10775" Text="I assume it's ok to call that every frame then?" CreationDate="2011-04-07T20:02:00.140" UserId="6178" />
  <row Id="14190" PostId="10740" Text="Yes, both of those excerpts were from the pawn class." CreationDate="2011-04-07T20:02:26.463" UserId="101" />
  <row Id="14191" PostId="10775" Text="One thing missing from the question is the details of your projection. Your goal should be something like 1 texel = 1 fragment (or 2, 4, 8, etc texels = 1 fragment to take advantage of mipmapping). But unless you know how world units map to fragments, which is controlled by the projection, you can't answer this at all." CreationDate="2011-04-07T20:04:07.990" UserId="744" />
  <row Id="14192" PostId="10768" Text="Nitpick: glBindTexture(x, 0) doesn't disable texturing, but actually binds what is called the OpenGL default texture, which is for most API purposes a &quot;real&quot; texture; you can change its parameters, prioritize it, sample it, etc." CreationDate="2011-04-07T20:12:52.677" UserId="744" />
  <row Id="14193" PostId="10775" Text="I'm not sure I understand what you mean..." CreationDate="2011-04-07T20:13:09.370" UserId="6178" />
  <row Id="14194" PostId="10768" Text="Yeah, I know it doesn't disable texturing, but it does the trick. I was just disabling texturing before because that was the solution I could find. Ideally, I don't want to keep enabling/disabling texturing; I want to enable it once and done. &quot;Unbinding&quot; the previous texture seems to be enough." CreationDate="2011-04-07T20:16:09.183" UserId="6178" />
  <row Id="14195" PostId="10771" Text="There is a concrete difference between a framework and other libraries; these are listed in the [Wiki page](http://en.wikipedia.org/wiki/Software_framework) of the former. Succinctly, the framework controls the flow of the application, and you plug your code into it; in other libraries you control the flow and call its code." CreationDate="2011-04-07T20:30:08.350" UserId="2854" />
  <row Id="14196" PostId="10770" Text="I'd say the distintion can't be made, because they're concepts at a different level of abstraction. A &quot;big&quot; engine is still a framework." CreationDate="2011-04-07T20:31:42.387" UserId="2854" />
  <row Id="14197" PostId="10729" Text="Good point on the people getting upset over point resets or experience. I will keep that in mind." CreationDate="2011-04-07T20:35:41.373" UserId="6381" />
  <row Id="14198" PostId="10728" Text="Thank you every one for your responses. I appreciate them all." CreationDate="2011-04-07T20:36:40.590" UserId="6381" />
  <row Id="14199" PostId="10729" Text="Bear in mind as your game gets older, people who invested hours of their life into it will not want to be equated with n00bs (newbies). This means if you upset the game balance (newbies can become strong disporportionally to older players), older players will also balk." CreationDate="2011-04-07T20:37:02.870" UserId="1929" />
  <row Id="14200" PostId="10779" Score="2" Text="I'm voting to close this because it lacks context. There's a huge difference if you're creating models for say, a Nintendo DS compared to a system like a PS3. Something that's considered low-poly on PS3 might be ultra-high poly on a DS..." CreationDate="2011-04-07T20:40:38.890" UserId="20" />
  <row Id="14201" PostId="10771" Text="I wouldn't consider that definitive; Wikipedia has a page for &quot;game engine,&quot; too, and just like &quot;library&quot; and &quot;framework,&quot; those terms are used just as often in ways that conform to the description on the wiki page as in ways that do not, in my experience. It's still all very hand-wavy." CreationDate="2011-04-07T20:55:01.893" UserId="1430" />
  <row Id="14202" PostId="2153" Text="http://archive.gamedev.net/community/forums/mod/journal/journal.asp?jn=263140&amp;reply_id=3598844" CreationDate="2011-04-07T21:00:58.997" UserId="4513" />
  <row Id="14203" PostId="2187" Text="What gave you this impression? Sources?" CreationDate="2011-04-07T21:01:57.153" UserId="4513" />
  <row Id="14204" PostId="10782" Text="My question is not about how to implement agile and project management; it's how to tune my existing processes of game development. Cheers though." CreationDate="2011-04-07T21:10:08.797" UserId="1929" />
  <row Id="14205" PostId="10778" Text="What about the difference between a rendering engine and a graphics library? :p" CreationDate="2011-04-07T21:29:27.183" UserId="6117" />
  <row Id="14206" PostId="10773" Text="This might help: http://gamedev.stackexchange.com/q/6721/1163" CreationDate="2011-04-07T21:33:06.480" UserId="1163" />
  <row Id="14207" PostId="10656" Text="You are correct, for right angles or any other scenario where you want a hard edge you will be required to duplicate the edge vertices for each adjacent triangle. For example there's no point in using indexed primitives for a cube because each corner vertex needs to be duplicated for each face anyway - otherwise the shading will be all crazy." CreationDate="2011-04-07T21:35:49.533" UserId="6521" />
  <row Id="14208" PostId="10787" Text="Okay I should've checked it out a bit before asking.. but then how do I have an attribute that uses a different index array?" CreationDate="2011-04-07T21:36:04.353" UserId="6562" />
  <row Id="14209" PostId="10787" Text="You will have to issue a different draw call and swap in/out attribute arrays whenever you need to use a different index buffer. Scenarios where you need to do this are ideal for using non-interleaved vertex arrays instead of interleaved vertex buffers." CreationDate="2011-04-07T21:42:50.120" UserId="6521" />
  <row Id="14210" PostId="10769" Text="I'm sharing resources between D3D11 devices, I'm not sure how using a D3D10 device could solve the problem." CreationDate="2011-04-07T22:32:44.680" UserId="2469" />
  <row Id="14211" PostId="10790" Text="Yeah it's all about time and also, and creators of open source games are probably doing it for fun. The last 10% of polish gets into more grunt work/less fun territory. " CreationDate="2011-04-07T22:44:52.887" UserId="2994" />
  <row Id="14212" PostId="10778" Text="@Zaky German - Ogre3D is a graphics 'engine' like FMOD is an audio 'engine'. Separate however these are not a Game engine, they do not handle user input, network connectivity or the like for example. This is where I think some of the confusion can come into play. In this connotation you could interchange Library, Module, Component, or Engine. These are not a 'Game Engine' though. A graphics library would be something akin to Direct3D or a thin API to over Direct3D to make it easier, but it wont directly do rendering. OpenGL and wrappers around it would also fall into the graphics library area." CreationDate="2011-04-07T23:18:21.973" UserId="4443" />
  <row Id="14213" PostId="10788" Score="3" Text="Since there are likely to be much more in-depth answers to this one, I think it is fair to say that programmers are not always artists, so you get games with a great deal of 'Programmer Art' in the open source area vs games made by paid professional artists in the commercial environment :) Oh, and most Open Source projects are Programmer driven (hence open source :))" CreationDate="2011-04-07T23:46:44.243" UserId="4443" />
  <row Id="14214" PostId="10779" Text="thanks guys for the help guys." CreationDate="2011-04-07T23:51:16.477" UserId="4306" />
  <row Id="14215" PostId="10793" Text="When's the next Ludum Dare?" CreationDate="2011-04-08T00:51:39.283" UserId="5932" />
  <row Id="14216" PostId="10793" Text="Seems like 29th April, 2011" CreationDate="2011-04-08T01:15:21.707" UserId="1929" />
  <row Id="14217" PostId="10793" Text="This is not a question.  If it were, the data should be stored in the question (or more specifically, the answers) instead of something off-site that isn't maintainable by the community." CreationDate="2011-04-08T01:20:58.547" UserId="51" />
  <row Id="14218" PostId="10793" Text="I've edited it to be a real question, and requested it be re-opened. I'll post the spreadsheet link later as a resource -- how's that?" CreationDate="2011-04-08T02:23:16.947" UserId="1929" />
  <row Id="14219" PostId="10793" Text="Typically if you want to post something that's not a question, which you want to make maintainable by the community, you create a wiki." CreationDate="2011-04-08T04:57:05.840" UserId="5021" />
  <row Id="14220" PostId="10793" Score="1" Text="The thing is, a question like this requires a lot of upkeep to keep the list of competitions updated. I might recommend, if you want to manage something like this, putting it in the [Game Development Wiki](http://wiki.gamedev.net/), but please don't keep it here. Also, we already have a question listing [gamedev related contests](http://gamedev.stackexchange.com/questions/300/what-are-your-favorite-gamedev-related-contests), so if you know of other contests, post them there and don't include a date. I agree with Tetrad's close of this question. Sorry @ashes999." CreationDate="2011-04-08T05:16:42.810" UserId="189" />
  <row Id="14221" PostId="9678" Text="Scala actors are multiplexed on top of a thread pool, so that they could be more lightweight than threads. This means that they can manipulate shared memory to communicate, provided that it's synchronized properly. If you use remote actors, then they might be on different processes, and the only way to communicate is sending messages." CreationDate="2011-04-08T06:55:19.900" UserId="4834" />
  <row Id="14222" PostId="10759" Text="Ok that sounds more sensible. Do seriously think about server traffic, I once made a facebook style website for my degree and it worked fine but when we opened it up to the public for a laugh it crashed the uni network, in the end it looked more like a DOS attack that a website lol." CreationDate="2011-04-08T08:13:13.377" UserId="6469" />
  <row Id="14223" PostId="10748" Text="I'm sorry, I do not completely understand the question. Is your problem *calculating* the damage or *showing* the damage?" CreationDate="2011-04-08T08:15:52.037" UserId="678" />
  <row Id="14224" PostId="10791" Score="2" Text="One of the reason open source games often suck is that the people working on them vehemently believe things like Quake 3 (1999) or Uru Online (2003) are modern technology. (-1)" CreationDate="2011-04-08T08:19:04.400" UserId="744" />
  <row Id="14225" PostId="10762" Text="Why do you think binary values are restricted to 256 possible values?" CreationDate="2011-04-08T08:28:09.763" UserId="20" />
  <row Id="14226" PostId="10791" Text="&quot;Open source and commercial are not mutually exclusive!&quot; - They aren't, but you can assume that the question asker means non-commercial games." CreationDate="2011-04-08T08:39:03.353" UserId="769" />
  <row Id="14227" PostId="10792" Text="Very strange considering how its creator looks badly upon tools that you need to compile from source." CreationDate="2011-04-08T08:40:12.260" UserId="769" />
  <row Id="14228" PostId="10762" Text="basic 8 bit binary can have 256 values, this is the smallest and most efficient way of storing data.  " CreationDate="2011-04-08T09:28:22.780" UserId="6469" />
  <row Id="14229" PostId="10802" Text="@Poma: Where did you find out it doesn't exist? How could we ever write in [D3D11](http://www.microsoft.com/downloads/en/details.aspx?displaylang=en&amp;FamilyID=3021d52b-514e-41d3-ad02-438a3ba730ba)?" CreationDate="2011-04-07T21:50:45.107" UserId="4598" />
  <row Id="14230" PostId="10802" Text="I mean managed directX SDK. And thanks, I didn't noticed that gamedev site exists." CreationDate="2011-04-07T21:53:27.413" UserId="6590" />
  <row Id="14231" PostId="10803" Text="@Adam: Depends on going on your own or showing €1000 for subversion support." CreationDate="2011-04-07T21:48:22.817" UserId="4598" />
  <row Id="14232" PostId="10799" Text="On Android devices, the GPU does not have dedicated memory.. doesn't that mean that VBOs are useless? And also, I have the use glDrawElements because then I need to specify 6 vertices per quad( There is no such thing as GL_QUADS in OpenGL ES)" CreationDate="2011-04-08T10:17:43.040" UserId="6562" />
  <row Id="14233" PostId="10793" Text="Well, it was worth a try :)" CreationDate="2011-04-08T10:41:15.127" UserId="1929" />
  <row Id="14234" PostId="10762" Text="Yes, 8 bit means 256 different values, but you could just as well use 4 bit or 24 bit to encode tiles. So your statement about commercial games always being limited to 256 tiles is simply not true. Also your statement about 8bit being the smallest and most efficient way to store data seems a bit odd. What leads you to this conclusion?" CreationDate="2011-04-08T11:05:12.947" UserId="20" />
  <row Id="14235" PostId="10762" Text="Conversation with a square-enix developed a few years back. Its just one of those random bits of information that gets stuck in your brain. Just thought it might interest him as it seemed relevant. Also I didn't mean they were limited I meant they limit them selves to 256 " CreationDate="2011-04-08T11:11:54.937" UserId="6469" />
  <row Id="14236" PostId="10799" Text="I am sorry, I don't have experience with Opengl ES. " CreationDate="2011-04-08T11:17:43.483" UserId="4947" />
  <row Id="14237" PostId="10750" Text="Have you tested the linux version of this post? http://www.ogre3d.org/forums/viewtopic.php?f=11&amp;t=59600" CreationDate="2011-04-08T11:45:40.750" UserId="5899" />
  <row Id="14238" PostId="10654" Text="If you feel like C++ would be easier for you then you are mistaken. I've programmed with many languages, including both C++ and Lua, and Lua is way easier to learn and use. A good analogy would be the difference between manual and automatic transmission: C++ is like manual, Lua is like automatic." CreationDate="2011-04-08T11:47:01.920" UserId="6588" />
  <row Id="14239" PostId="10815" Text="I was looking more for a genre of game like FPS, TPS, RPG, Platformer, Puzzle, Hack-n-Slash rather than space invaders. Have already made the &quot;tutorial&quot; games and want a project I am likely to finish." CreationDate="2011-04-08T12:05:07.863" UserId="6469" />
  <row Id="14240" PostId="10750" Text="All versions require 1.8.0" CreationDate="2011-04-08T12:08:35.053" UserId="769" />
  <row Id="14241" PostId="10815" Score="5" Text="A SHMUP is a genre" CreationDate="2011-04-08T12:09:25.453" UserId="2332" />
  <row Id="14242" PostId="10750" Text="I haven't prove the binary because I don't have linux installed on my machine, but this version seems to be linked with Ogre in the binary. Am I wrong?" CreationDate="2011-04-08T12:11:20.073" UserId="5899" />
  <row Id="14243" PostId="10814" Text="Go down this list: http://gamedev.stackexchange.com/questions/854/what-are-good-games-to-earn-your-wings-with" CreationDate="2011-04-08T13:43:11.213" UserId="51" />
  <row Id="14244" PostId="10817" Text="Also games like: pong, tetris, breakout." CreationDate="2011-04-08T13:54:17.647" UserId="153" />
  <row Id="14245" PostId="10823" Text="I worked in ASP.Net MVC for a period of time + other MVC frameworks. Is the Web MVC approach a similar one to Game MVC?&#xA;&#xA;M = Ship Model, Enemy Model;&#xA;&#xA;V = View Layer where that ship will be; &#xA;C = Handles User Inputs, Input Layer;&#xA;&#xA;Does this looks right? " CreationDate="2011-04-08T14:15:34.833" UserId="6395" />
  <row Id="14246" PostId="10815" Text="@Apreche Sorry I didn't know what a shump was." CreationDate="2011-04-08T14:18:28.450" UserId="6469" />
  <row Id="14247" PostId="10251" Text="I think I will make rectangular map with blocked walking above top or below bottom (it will wrap only from left to right and from right to left), but map will be similar to earth (poles at top and bottom)." CreationDate="2011-04-08T14:23:14.827" UserId="6352" />
  <row Id="14248" PostId="10823" Text="I'd say so. Just make sure that (1) the view works on nothing but the model and that (2) the controller affects nothing but the model. Also, if you have view-specific model (texture ID's, for example) try to keep them out of your base game objects (model)." CreationDate="2011-04-08T14:24:38.997" UserId="6592" />
  <row Id="14249" PostId="10816" Text="I'm not trying to save memory at all. On the contrary, what I'm doing will take up a more memory. I'm trying to save HD textures to file without killing the frame rate, and for that, I share a texture, and save it with a second device/context. I've worked it out, I'll post the answer a little later." CreationDate="2011-04-08T14:39:21.117" UserId="2469" />
  <row Id="14250" PostId="10825" Text="This is good advice. As is, I already play a slew of games both new and retro of many different genres. That is probably what makes not being able to identify what need these games fill so  disappointing. " CreationDate="2011-04-08T14:51:23.320" UserId="1330" />
  <row Id="14252" PostId="10825" Text="Play more games! Even if you don't want to invest in the platform / game itself, watch some videos on youtube. I develop mobile games, so I'm always looking through the latest games that are released, and I've found some great ideas in doing so." CreationDate="2011-04-08T14:54:10.417" UserId="6592" />
  <row Id="14253" PostId="10825" Text="I primarily deal in mobile myself although not games. A lot of the mechanics in hit mobile games are lifted directly from retro games so I try to analyze them when I play. Given this is a PC game and my first crack at design, its a bit exciting given opportunities the hardware offers, but daunting given the high bar and amazing content a lot of independent studios are creating," CreationDate="2011-04-08T14:59:02.067" UserId="1330" />
  <row Id="14254" PostId="10814" Score="2" Text="Tic-Tac-Toe? :)" CreationDate="2011-04-08T15:07:44.570" UserId="1283" />
  <row Id="14255" PostId="10824" Text="I think you mean finding a niche?" CreationDate="2011-04-08T15:18:40.520" UserId="1156" />
  <row Id="14256" PostId="10823" Text="Agreed, most game experiments I've had were based on the MVC." CreationDate="2011-04-08T15:25:18.500" UserId="4834" />
  <row Id="14257" PostId="10823" Score="2" Text="I wouldn't say MVC is the most logical approach to game architecture by far." CreationDate="2011-04-08T15:28:38.980" UserId="1156" />
  <row Id="14258" PostId="10831" Text="Thanks user6592, I will give it a go.  Although I notice you use GLUtils.texImage2D.  I was using it previously and it worked on the emulator, but wouldn't work on the device.  Hopefully it was a different problem.  Thanks! Ash" CreationDate="2011-04-08T15:32:35.313" UserId="6605" />
  <row Id="14259" PostId="10833" Score="1" Text="+1 for yourself over other people." CreationDate="2011-04-08T15:33:57.007" UserId="1156" />
  <row Id="14260" PostId="10791" Text="By open source I mean games which are developed by community and licensed under GPL or similar license. For example 0ad, Flightgear... Good example is FlightGear, which cannot be compared with Flight Simulator from Microsoft. Flightgear is developed over than 15 years... But.. Huge difference." CreationDate="2011-04-08T15:38:59.443" UserId="4818" />
  <row Id="14261" PostId="10790" Score="2" Text="Enthuatism(fun) is better motivation than money.. At least for me." CreationDate="2011-04-08T15:40:49.830" UserId="4818" />
  <row Id="14262" PostId="10831" Text="Odd. This has been working on my test phone for quite some time now... Hope this helps!" CreationDate="2011-04-08T15:44:09.613" UserId="6592" />
  <row Id="14263" PostId="10831" Text="Yep it works.  I needed to use scaleToPO2, otherwise it was very small.  Odd as it's already PO2 (512x512).  Thanks a lot!" CreationDate="2011-04-08T15:48:27.640" UserId="6605" />
  <row Id="14264" PostId="10823" Score="1" Text="MVC is not really used in game architectures. In fact, I've never met a professional game engine even remotely using MVC. I've encountered some MVP in production code, and then promptly helped gut it because it was holding back development. I'd encourage you to read this: http://www.amazon.com/Game-Engine-Architecture-Jason-Gregory/dp/1568814135 as a means of helping out" CreationDate="2011-04-08T15:56:45.607" UserId="138" />
  <row Id="14265" PostId="10814" Text="The easiest kind of games to make are bad ones. There have already been plenty of great suggestions below, so work at making some of those, then making them really awesome, and then tackle bigger projects." CreationDate="2011-04-08T17:09:45.260" UserId="6569" />
  <row Id="14266" PostId="10843" Text="@Josh Petrie: in order to make this kind of systems, what kind of commands/privileges are a prerequisite? Suppose we have 99.99% CPU-consuming game using a huge amount of memory, a real bottleneck. To monitor such program sounds a challenge in itself, because the monitoring it may overheat the system. I am not sure but this problem may require zero 0 level privileges on some systems such as W.XP (maybe associating to unrelated topic, not sure) to prioritize the kill over the bottlenecked software's commands. So by which technique you can address this problem, not making monitoring a problem?" CreationDate="2011-04-08T17:23:23.560" UserId="6365" />
  <row Id="14267" PostId="945" Text="Great list, although I think the whole ladder aspect breaks down after Pacman. At that point you know enough to go and do any kind of game; I don't think you need to develop Diablo before you develop Wolfenstein. Everything up until Pacman you should do in order." CreationDate="2011-04-08T17:30:33.213" UserId="6588" />
  <row Id="14268" PostId="862" Text="These 3 are all good for starting out, but other games that are useful to beginners are Minesweeper and Space Invaders." CreationDate="2011-04-08T17:33:43.353" UserId="6588" />
  <row Id="14269" PostId="1038" Text="I've never heard of Nibbles before, but definite up-vote on Space Invaders." CreationDate="2011-04-08T17:35:09.030" UserId="6588" />
  <row Id="14270" PostId="1047" Text="I like this advice, but it can be dangerous. After all, this mentality is precisely why so many people go to game dev forums and say &quot;I've never made a game before, I'm gonna start a MMORPG.&quot; I would say you should start with a game you enjoy from a limited selection of good starter projects. So, like, if you really hate Tetris then fine don't do that. But do Breakout instead, not just any random game that appeals to you." CreationDate="2011-04-08T17:38:33.460" UserId="6588" />
  <row Id="14271" PostId="10843" Text="@hhh In order to discover the bottleneck in any game, simply reduce usage of a single system resource such as memory bandwidth, or texture bandwidth, or pixel shader usage, and if the framerate increases, you've found your bottleneck. Profiling tools that track the duration of time spent in various sections of code CPU side, only use 0.01% of the CPU anyway, so the problem you mention isn't really an issue." CreationDate="2011-04-08T17:45:40.613" UserId="5021" />
  <row Id="14272" PostId="7816" Text="That is all you need for the tracking, but tracking isn't the reason HMDs are bulky. Ironically, your answer even pointed out how motion tracking has become so easy through Wii controllers and Kinect. What's bulky is the display, not the tracking." CreationDate="2011-04-08T18:25:22.843" UserId="6588" />
  <row Id="14273" PostId="10832" Text="Thats pretty cool. " CreationDate="2011-04-08T18:43:31.483" UserId="3794" />
  <row Id="14274" PostId="385" Score="1" Text="I haven't gotten it to make me coffee in the morning yet..." CreationDate="2011-04-08T20:31:55.743" UserId="6429" />
  <row Id="14275" PostId="10851" Text="Thanks, that seems to work well." CreationDate="2011-04-08T20:42:23.660" UserId="4234" />
  <row Id="14276" PostId="10824" Score="1" Text="Not so much a niche, more like the selling point. I apologize if I am being vague." CreationDate="2011-04-08T21:05:04.273" UserId="1330" />
  <row Id="14277" PostId="1757" Text="I'm up-voting this question simply because the title is amazingly hilarious. The logic is impeccable: you go to a game dev QA site, so naturally you ask..." CreationDate="2011-04-08T21:09:08.763" UserId="6588" />
  <row Id="14278" PostId="1768" Text="jealousy perhaps?" CreationDate="2011-04-08T21:10:51.353" UserId="6588" />
  <row Id="14279" PostId="10830" Text="Making a complete roguelike requires an unbelievable amount of balancing work on the design, even if you choose designs that are simple to represent in code. An unbalanced roguelike is like a platformer with a single level - a prototype to iterate on, not a game." CreationDate="2011-04-08T21:21:48.347" UserId="744" />
  <row Id="14280" PostId="10843" Text="For inline'd profiling I have always loved the code sample from GameDev Magazine's Aug04 edition.. Might be a bit dated by now but is a good piece of code to use and fiddle with. Anywho, can find all the code samples over the years at: http://www.gdmag.com/resources/code.htm (Also just neat to see how the topics have changed over a decade as well)" CreationDate="2011-04-08T21:42:06.800" UserId="4443" />
  <row Id="14281" PostId="10860" Text="So that means it is divided by 255?" CreationDate="2011-04-08T21:58:29.037" UserId="6562" />
  <row Id="14282" PostId="10860" Text="Right, unsigned byte has range of 0 - 255. So if you passed 0xFF (which is equal to 255), you'd get 1.0f." CreationDate="2011-04-08T22:09:45.993" UserId="6592" />
  <row Id="14283" PostId="10860" Score="1" Text="... Did you ever play the original Zelda? The maximum amount of rubies you could hold was 255, not 256 ;)" CreationDate="2011-04-08T22:12:00.300" UserId="6592" />
  <row Id="14284" PostId="10861" Text="The problem with darkening the rest of the scene is, that the only light comes from the players :-) So, it's a very dark environment. For this soft particle effect in your last sentence: This is exactly what my question is: Do you know any tutorials which explain how to do &quot;simple&quot; particle effects in xna 4.0? Also, what model should I use for the players? I don't think that I can use the billboards as now if I should rotate them over time." CreationDate="2011-04-08T22:30:01.927" UserId="6440" />
  <row Id="14285" PostId="10860" Text="I know that unsigned bytes only go to 255.. I was just wondering because it seemed logic for the GPU to divide by a power-of-two" CreationDate="2011-04-08T23:23:26.043" UserId="6562" />
  <row Id="14286" PostId="10860" Text="I was wondering something similar. There may be an efficient conversion from uint_8 to float that doesn't do much more than shifting bits around, but I'm not the one to ask... Someone who knows more about FPU's might chime in?" CreationDate="2011-04-09T00:05:25.267" UserId="6592" />
  <row Id="14287" PostId="10839" Score="1" Text="I do it this way, too. +1. Note however that 1) you need an orthographic projection (using `glOrtho()` for instance) and 2) if the sprites use a full alpha channel, for instance for anti-aliased contours, you will have to either accept a quality tradeoff caused by the blending method, or Z-sort tiles that have an alpha channel before sending them to the GPU and blitting them with disabled Z testing." CreationDate="2011-04-09T02:35:56.720" UserId="5864" />
  <row Id="14288" PostId="9222" Text="People making games in Flash are not hobbyists in flash. They are flash developers (or web developers) by day, and game making hobbyists by night. It's a very important distinction, I think, as Flash is not nearly as &quot;cheap&quot; or easy to pick up as everyone likes to think. Sure, if you've been animating banner ads for 5 years in flash, it might be easy to throw a game together in a weekend, but most people are going to find a much higher learning curve than that. And while the cost for flash is way less than a UDK or equivalent, you pay for it in other ways, IMHO." CreationDate="2011-04-09T02:47:49.160" UserId="1953" />
  <row Id="14289" PostId="8133" Text="This part I disagree with: &quot;To learn how games work it's better to write one on as low level as possible.&quot; If what you want to learn is engine programming then that's true, otherwise being swamped with low-level details can get in the way of learning." CreationDate="2011-04-09T04:26:52.127" UserId="6588" />
  <row Id="14290" PostId="10858" Text="Something like http://andrewrussell.net/dark/ ?" CreationDate="2011-04-09T05:17:45.557" UserId="288" />
  <row Id="14291" PostId="10866" Text="I totally agree. WebGL is just a technique to have accelerated 3D graphics in the browser, but it's as far from a game engine as OpenGL is. You'll have to implement tons of stuff just for the basics, heck even to get some 3D models on screen. Unity will let you create a game right from the start." CreationDate="2011-04-09T08:03:18.393" UserId="20" />
  <row Id="14292" PostId="10858" Text="Not exactly, however - I like the atmosphere :-) I've added a screenshot of my current lights to the question. It's an FPS game, where you have to compete with each other about this collectible lights. The problem is that you start to glow stronger if you collect more lights and you get more visible then and are more easily to be shot." CreationDate="2011-04-09T08:37:29.517" UserId="6440" />
  <row Id="14293" PostId="10823" Text="Thanks for the book recommendation! " CreationDate="2011-04-09T09:24:52.213" UserId="6395" />
  <row Id="14294" PostId="10784" Text="+1. I've been writing software in C/C++ and Lua for the last 4 years and can attest to Lua being a much more productive language for development. The more logic I can move into Lua the better." CreationDate="2011-04-09T11:03:40.647" UserId="6190" />
  <row Id="14295" PostId="10868" Score="1" Text="What does the State pattern have to do with this? (Or, what do you think it would have to do with it?) There doesn't necessarily have to be a pattern involved at all." CreationDate="2011-04-09T11:09:59.083" UserId="1101" />
  <row Id="14296" PostId="10831" Text="`int` is a 32-bit type. The `n = n | (n &gt;&gt; 32);` line is therefore useless." CreationDate="2011-04-09T11:30:24.510" UserId="5864" />
  <row Id="14297" PostId="8133" Text="@jhocking Well, yes, being swamped with low-level detail is hard. But you can't become a good game programmer (any kind of programmer actually) unless you understand low-level details. No one said it would be easy." CreationDate="2011-04-09T11:38:27.993" UserId="2710" />
  <row Id="14298" PostId="10875" Text="I did math college, long time ago. Now when I am doing some pysical simulation in my first aracade game, I feel I need all that math knowledge back! Making games is like being a scientis/artist - it is quite cool actually. " CreationDate="2011-04-09T11:51:40.043" UserId="6616" />
  <row Id="14299" PostId="10101" Text="It's a 6 player game and since most Internet accesss provider offer a much smaller upstream than downstream, a central server is a better approach than peer to peer." CreationDate="2011-04-09T12:04:28.473" UserId="450" />
  <row Id="14300" PostId="10871" Text="This. Too often they forget that a game is, well, a *game*, and it should be fun to play. Most open source games badly need good game design, and they usually don't even realise that!" CreationDate="2011-04-09T12:38:28.320" UserId="2188" />
  <row Id="14301" PostId="10879" Text="Yes, and this of course depends on the nature of the game. In a card game for example one would expect to always be on the edge losing or winning. Check my edits..." CreationDate="2011-04-09T13:53:28.783" UserId="6616" />
  <row Id="14302" PostId="10878" Text="Perhaps some little tricks can be added to the game play, but not too many suddenly. This would look like the computer player is getting more clever... or perhaps learing from the human? Ok this last bit may be over the top, it would require a real AI." CreationDate="2011-04-09T13:57:53.240" UserId="6616" />
  <row Id="14303" PostId="10877" Score="1" Text="Nice question. I think that this will become comunity wiki so i putted my answers like cw. If will not, i'll merge them. What you have proposed is pretty good. Enviroment mapping is very good example, simple and impressive :). " CreationDate="2011-04-09T14:07:55.817" UserId="3794" />
  <row Id="14304" PostId="8133" Text="That's a tough catch-22 for learners and teachers to address: there is a ton of complexity to learn eventually, but being confronted with everything right up front can be counter-productive. One nice thing with Unity is that you can start simply and go deeper, rather than having to face everything right from the start." CreationDate="2011-04-09T14:41:47.287" UserId="6588" />
  <row Id="14305" PostId="6585" Text="Circling back to the answer we're commenting on, tools that visualize point clouds often do it by placing a sprite at each point. To do that efficiently obviously requires combining all the sprites into a single draw call, which is a pretty low-level optimization that you wouldn't use Unity for." CreationDate="2011-04-09T14:54:08.240" UserId="6588" />
  <row Id="14306" PostId="7071" Text="Yeah it's a little worrisome to me that the asker accepted an answer that didn't mention draw calls. Minimizing draw calls is the most important reason, the texture size point he brought up is secondary." CreationDate="2011-04-09T14:57:31.060" UserId="6588" />
  <row Id="14307" PostId="7072" Text="It definitely still matters. Graphics hardware has been optimized toward pushing tons of polygons for a small number of detailed models (eg. characters) because most games tend in that direction. The result is that you need to push as many polygons as possible in each of just a couple dozen draw calls. Game engines that render large scenes like cities often combine multiple textures into one on the fly in order to reduce draw calls." CreationDate="2011-04-09T15:00:42.957" UserId="6588" />
  <row Id="14308" PostId="10868" Text="Most saved game data from what I've researched is from an object in state (using the State pattern). The object maintains its state so that when it is saved it can be serialized without a lot of hassle. It was just an observation." CreationDate="2011-04-09T15:38:06.743" UserId="6214" />
  <row Id="14309" PostId="10875" Text="+1 all that highschool algebra paid off; I've used equations for circles for line-of-sight stuff -- but in general, I don't get too big a benefit from my extensive Math background (first year multi-variable calculus?!)" CreationDate="2011-04-09T15:48:41.827" UserId="1929" />
  <row Id="14310" PostId="8133" Text="Valid point. But I still think that for the sake of learning it's best to start with difficult things. Although the definition of &quot;difficult&quot; might differ... maybe if we're talking about someone who can't program at all, Unity3D is already &quot;as low-level as possible&quot;." CreationDate="2011-04-09T17:03:12.477" UserId="2710" />
  <row Id="14311" PostId="10868" Text="All games and objects have state, but that's very rarely using the State pattern as such. More often you just have write and read functions to save and restore whatever state the object has." CreationDate="2011-04-09T17:07:49.473" UserId="1101" />
  <row Id="14312" PostId="10880" Score="1" Text="How is theMatrix declared in your shader? What does the code that sets the matrix look like? Have you tried using PIX to debug the shader?" CreationDate="2011-04-09T17:46:35.430" UserId="5824" />
  <row Id="14313" PostId="10101" Text="so I'm not sure which language this is being game is being made in, but I've been reading docs on rtmfp for flash and the most efficient way of creating a connection is using a &quot;full mesh&quot; system where you upload 1 stream (send) but download n strms. but the math would be similar to the one stated. Never realized how expensive it could be to create a multilayer game. I calculated a game cst for 1000 simultaneous users to be a bit more then $100 a day or about $3000 for band. and cpu on aws. with 1k simultaneous users the rev is less then a tenth of cost. How do indie dev make mltiplyr games?" CreationDate="2011-04-09T20:28:55.243" UserId="6258" />
  <row Id="14316" PostId="10895" Text="Can you write some examples of puzzles ?" CreationDate="2011-04-10T00:10:09.070" UserId="4828" />
  <row Id="14317" PostId="10870" Score="1" Text="[Windows Game Programming for Dummies](http://www.amazon.com/Windows-Programming-Dummies-Andr%C3%A9-LaMothe/dp/0764503375)!" CreationDate="2011-04-10T00:54:04.350" UserId="3637" />
  <row Id="14318" PostId="10897" Text="It isn't about programming at all. Which isn't a criticism; that is one of the best books on game design. But, like, fyi." CreationDate="2011-04-10T02:12:41.740" UserId="6588" />
  <row Id="14319" PostId="10809" Text="You are looking for an Inverse Kinematics solution. [Locomotion](http://unity3d.com/support/resources/unity-extensions/locomotion-ik) would be a good start" CreationDate="2011-04-10T08:11:35.297" UserId="4956" />
  <row Id="14320" PostId="10880" Text="well i am using a prototyping tool called rendermonkey. so i assume there is no error on the application side. btw i am using ps3.0" CreationDate="2011-04-10T09:23:36.610" UserId="1510" />
  <row Id="14321" PostId="10896" Text="I can definitely not move the files because some of them are shared across games and need to stay in the `engine` directory, which is in a separate repository. Symlinks might be acceptable but I am not sure they'd work well on Windows and then there is still the problem of having them synchronised automatically by `build.xml`." CreationDate="2011-04-10T09:35:16.837" UserId="5864" />
  <row Id="14322" PostId="10912" Text="Your image link link has virus attached to that website!" CreationDate="2011-04-10T10:39:53.007" UserId="6616" />
  <row Id="14323" PostId="10898" Text="For the vertex shader, will I render two triangles over the near-plane of the camera? So that for every pixel in the near-plane, a ray can be traced to the light?" CreationDate="2011-04-10T10:43:17.077" UserId="6440" />
  <row Id="14324" PostId="10898" Score="1" Text="@Etan Yes exactly. Except that ray is not traced to the light but just in its direction = (pixel_position_on_near_plane_in_world_space - cameraPos). And than makes samples on the ray and ask lights for shadow, intensity etc. as in pseudocode." CreationDate="2011-04-10T10:47:37.183" UserId="3794" />
  <row Id="14325" PostId="10891" Text="Great article, with some very good suggestions." CreationDate="2011-04-10T10:58:25.540" UserId="2188" />
  <row Id="14327" PostId="10898" Text="So:   &#xA;1. create vertices (-1, -1, zNear) / (-1, 1, zNear) / (1, -1, zNear) / (1, 1, zNear)   &#xA;2. create two triangles over this vertices in clockwise orientation&#xA;3. in my vertex shader, apply inverse projection matrix to it, then inverse camera view matrix to get world coordinates&#xA;4. in my pixel shader, shoot a ray from the calculated position to the light and calculate color" CreationDate="2011-04-10T11:11:40.540" UserId="6440" />
  <row Id="14328" PostId="10898" Score="1" Text="Yes. This is one of many solutions. Ray directions can be also computed analyticaly: http://gamedev.stackexchange.com/questions/8974/converting-a-mouse-click-to-a-ray/8997#8997. But your solutions is nice. Maybe look at the book realtime volume rendering on google books and find some raycaster examples there. I'm not sure how much i'm allowed to share my solutions with you, because they are property of my studio, so i'm just trying to point you to the right direction and sources" CreationDate="2011-04-10T11:24:57.867" UserId="3794" />
  <row Id="14329" PostId="10912" Text="Oh, I'm so sorry. I always use that site to upload images and never seen any problem. Photobucket is safe then: http://i763.photobucket.com/albums/xx274/fleuve_rouge/cornercollide.png" CreationDate="2011-04-10T11:26:56.007" UserId="6636" />
  <row Id="14330" PostId="10912" Text="I've just had to restore my windows to a previous retore point. That link installs an exe file which pretends to be anti-virus software. My firewall stoped it communicating but it still overtook my PC. You better remove the &quot;imege link&quot;, that webiste could be compromised!" CreationDate="2011-04-10T11:35:09.210" UserId="6616" />
  <row Id="14331" PostId="10898" Text="I've tried to implement the pseudocode in HLSL. After fiddling with many compiling problems due to SM 2.0 restrictions I got to http://pastebin.com/XeCLzRPa . Couldn't test it until now, but one of my questions is what the effect of this value.a actually is. Why do you use (1.0 - outColor.a) there, what does it stand for? Rest makes perfectly sense." CreationDate="2011-04-10T11:57:06.057" UserId="6440" />
  <row Id="14332" PostId="10912" Text="I'm so sorry about the incident (everything still works fine in my PC thought). Does the Photobucket link work for you? (I guess it does because Photobucket is a famous site). My point of view is different to the one in the 2nd link, because I don't think the new velocity vector depends on the center of the block like that. My brother told me the ball will bounce back to the old direction (dx = -dx &amp;&amp; dy = - dy) but I don't think so." CreationDate="2011-04-10T12:06:14.320" UserId="6636" />
  <row Id="14333" PostId="10908" Text="I'm not sure I understand your question... The `Acceleration` vector is a fixed, it never changes, so of course the &quot;last acceleration&quot; is stored, unless that was not what you meant. `IsCameraMoving` checks the `CurrentVelocity` vector length and if it's zero, it means the camera is stopped. `CameraDirection` values are set to `0` as soon as the keyboard button was released. I could post the whole code but I don't think it's relevant. I wasted too many hours looking for the problem and it's not on `CurrentVelocity` is calculated, `CurrentVelocity` will always be negative moving to the left..." CreationDate="2011-04-10T12:09:05.757" UserId="6178" />
  <row Id="14334" PostId="10908" Text="...or always positive moving to the right. And like I already said, `Acceleration` is not calculated is a fixed positive value for all 3 axis. But basically, `CurrentVelocity` is a multiplication of: direction (1 or -1) * acceleration (fixed positive value) * elapsed time. The problem is on the displacement that it should *always*  be negative if I'm moving on `-1` direction (left on the x axis). The formula left side `(CurrentVelocity * elapsedTime)` is always negative moving to the left and always positive to the right, the right side `(Acceleration * 0.5f * elapsedTime * elapsedTime)`..." CreationDate="2011-04-10T12:13:34.443" UserId="6178" />
  <row Id="14335" PostId="10908" Text="...is the one giving problems. it will always be a positive number since `Acceleration` is positive and all the next multiplications will be with positive numbers. When `CurrentVelocity` is a very small value (but negative, moving to the left), the left side will be negative but the right one will be of a positive number enough that the sum of the two will give a positive number, making the camera move slightly to the right side and only then to the left side when `CurrentVelocity` increases enough for the sum of both sides to give a negative value." CreationDate="2011-04-10T12:16:14.550" UserId="6178" />
  <row Id="14336" PostId="10898" Text="That is opacity. Opacity is (1 - transparency) and vice versa. Why do i use (1.0 - outColor.a) * values? It is exponential light absorbtion - which is physicaly  correct (well not exacly correct, but it is near) and that's one of the reasons why it looks soo good :-P. The linear depth which is sometimes used for the fog or dust is not correct (and looks kinda weird to human eyes). I maybe add some explained theory also. Once you understand Volume rendering integral nothing can stop you ;)." CreationDate="2011-04-10T12:20:54.207" UserId="3794" />
  <row Id="14337" PostId="10898" Text="Also big respect for sm 2.0. I very courious how this stuff will run on xbox." CreationDate="2011-04-10T12:21:26.373" UserId="3794" />
  <row Id="14338" PostId="10912" Text="Yes this link works better. If the ball hits the corner and ballX distance from cornerX is smaller than 1/4 of ballW then it will bounce back, otherwise it will deflect forward to the right. This is a simple model I am using at the moment, which is not fine tuned to find exact angle." CreationDate="2011-04-10T12:22:20.460" UserId="6616" />
  <row Id="14341" PostId="10908" Text="From the minimal part of code posted, one can tell if the acceleration was fixed, the camera would only move in one direction and never into the opposite direction. The key is the calculation of velocity and acceleration, it would be easier to help if you post that part :)" CreationDate="2011-04-10T13:20:06.627" UserId="1839" />
  <row Id="14343" PostId="10908" Text="Thanks for posting the code. The problem is: the Acceleration is only adjusted into the right direction in the first formula, in the 2nd it has the wrong sign.&#xA;&#xA;`1) CurrentVelocity.x += direction.x * Acceleration.x * elapsedTime;` &#xA;&#xA;`2) Vector3D displacement = (CurrentVelocity * elapsedTime) + (Acceleration * 0.5f * elapsedTime * elapsedTime);`&#xA;&#xA;Adjust the direction of the Acceleration in the 2nd formula too:&#xA;&#xA;`Vector3D displacement = (CurrentVelocity * elapsedTime) + (direction * Acceleration * 0.5f * elapsedTime * elapsedTime);`" CreationDate="2011-04-10T13:28:13.190" UserId="1839" />
  <row Id="14345" PostId="10912" Score="2" Text="For future reference, there's a button in the post window that links to the official, stackexchange approved, image hosting service: imgur" CreationDate="2011-04-10T13:43:47.107" UserId="51" />
  <row Id="14346" PostId="10908" Text=".. Or even better and cleaner: set the acceleration vector correctly according to its direction in the first place." CreationDate="2011-04-10T15:02:27.030" UserId="1839" />
  <row Id="14347" PostId="10882" Text="thanks! excellent answer! actually how would you duplicate a mesh without a geometry shader?" CreationDate="2011-04-10T15:10:37.267" UserId="1510" />
  <row Id="14348" PostId="10910" Text="But looking at the last section of code I posted, I don't see why that can run but why it won't recognize the variable I'm having trouble with... Or is the threat accumulating syntax I posted not what you're calling an &quot;under variable?&quot;" CreationDate="2011-04-10T16:07:31.880" UserId="6629" />
  <row Id="14349" PostId="10917" Text="this deserve +1" CreationDate="2011-04-10T17:09:13.363" UserId="5763" />
  <row Id="14350" PostId="10924" Text="We have the method for monster movement. That is simple enough. The problem is how to get monsters to move, and towers to shoot, when they have different &quot;speed&quot;... " CreationDate="2011-04-10T17:24:50.677" UserId="5385" />
  <row Id="14351" PostId="10917" Text="Feel free to upvote, then :-)" CreationDate="2011-04-10T17:52:45.010" UserId="6637" />
  <row Id="14352" PostId="10917" Text="okay..........." CreationDate="2011-04-10T17:57:54.347" UserId="5763" />
  <row Id="14353" PostId="10930" Text="A reason for doing so would be if the image format could not be read from Java, or if the texture required important CPU resources (procedural textures, or various effects). I do [the exact opposite](http://lol.zoy.org/blog/2011/3/2/load-pngs-using-android-ndk), too, but I don’t see either why the texture ID couldn’t be passed back to Java." CreationDate="2011-04-10T18:53:36.000" UserId="5864" />
  <row Id="14354" PostId="10929" Text="The question is not clear. Yes, it is allowed to mix OpenGL operations between C++ and Java. But I don’t think this is really what you are asking. Are you having a problem doing so? If so, please explain what you are doing and what happens." CreationDate="2011-04-10T18:55:34.687" UserId="5864" />
  <row Id="14355" PostId="10930" Text="Hi @stephelton, thanks for your reply.  I have some C++ code from a iPhone project i'd like to use (for loading a font texture and texture co-ords), but I'd like to do the majority of the opengl stuff in java (as it's easier to access resources and assets).  I'm not doing any threading stuff yet, unless it's done automatically?  Thanks! Ash" CreationDate="2011-04-10T18:59:50.160" UserId="6605" />
  <row Id="14356" PostId="10924" Score="1" Text="@Øyvind: Just pass the elapsed time as parameter to the update method. Then a monster can calculate its new position by moving `elapsedTime * movementPerSecond`. Or you could have a cooldown on the shooting tower: `if(cooldown &gt; 0){ cooldown -= elapsedTime } else { cooldown = X, shoot(); }` etc." CreationDate="2011-04-10T19:14:51.227" UserId="20" />
  <row Id="14357" PostId="10932" Text="Single player or multi player? Does the game run in the browser or on the server? You might not at all need a conventional database for this." CreationDate="2011-04-10T20:03:35.800" UserId="3505" />
  <row Id="14358" PostId="10656" Text="Alright, thanks. Marking as answer then :)" CreationDate="2011-04-10T20:06:20.907" UserId="1562" />
  <row Id="14359" PostId="10917" Text="+1 for making a math-retard giggle at the simplicity of the simplified binomial (?) formula" CreationDate="2011-04-10T21:00:18.777" UserId="6117" />
  <row Id="14360" PostId="10875" Text="I'd vote this up twice and thrice if I could. So obvious and overlooked, yet so true." CreationDate="2011-04-10T22:17:24.167" UserId="1562" />
  <row Id="14361" PostId="10908" Text="Fixing the acceleration fixes the problem, why I never thought of that is beyond me. What's confusing me is that most of my code I took from some sample code I found on Google and the code is very similar. In that version, the acceleration vector is never fixed with the direction but this problem doesn't exist there." CreationDate="2011-04-10T22:34:01.677" UserId="6178" />
  <row Id="14363" PostId="10908" Text="What do you mean by &quot;set the acceleration vector correctly according to its direction in the first place&quot;? The acceleration vector is of fixed values, I can't change it with the direction cause when the camera is not moving, the direction is 0 and if I multiply that, then the acceleration will be 0 and the camera won't move. The acceleration value is decided on the initialization, I would have to keep that value at hand to prevent the acceleration from being 0, but that's the same as calculating the acceleration with the direction on the fly when I need it. Maybe there's a better way?" CreationDate="2011-04-10T22:38:52.533" UserId="6178" />
  <row Id="14364" PostId="10917" Text="You did translate the coordinates such that the corner to be deflected from is located at (0,0)?" CreationDate="2011-04-10T22:39:01.917" UserId="6637" />
  <row Id="14365" PostId="10917" Text="If we assume the ball is immediately below the corner, i.e. `x = 0` and `y = 1`, I get `c = -2 oDy`, and thus `nDx = oDx` and `nDy = oDy - 2 * oDy = -oDy` as expected." CreationDate="2011-04-10T22:43:05.530" UserId="6637" />
  <row Id="14366" PostId="10917" Text="To translate the coordinates I just need to ballX = ballX -cornerX and the same for ballY, right?" CreationDate="2011-04-10T23:06:44.767" UserId="6616" />
  <row Id="14367" PostId="10917" Text="Yes; I added a code example now." CreationDate="2011-04-10T23:17:07.250" UserId="6637" />
  <row Id="14369" PostId="10917" Text="It is working! I had another condition in code which was moving the ball and confusing the issue, but after turning it into comments, it is all fine now. Thank you, this is really simple and fast!" CreationDate="2011-04-10T23:57:29.900" UserId="6616" />
  <row Id="14370" PostId="10911" Score="8" Text="Is this what they call a &quot;corner case&quot;?" CreationDate="2011-04-11T02:30:12.937" UserId="6646" />
  <row Id="14371" PostId="10939" Text="I'm having trouble following your question because first you say you need a GUI library but then you say the game uses this Metro for UI. Also, your references to Zune and Windows Phone implies to me you need something in C# for XNA but you didn't actually specify that." CreationDate="2011-04-11T03:45:10.267" UserId="6588" />
  <row Id="14372" PostId="10939" Text="@jhocking Sorry for the confusion. I need a GUI library that can imitate the features of Zune and WP7. It will be C++ OpenGL.So like, Text with very little bitmaps. If that isn't availabe, I dont mind making my own, I just need some tips if that is the case." CreationDate="2011-04-11T03:51:04.160" UserId="6647" />
  <row Id="14373" PostId="10941" Text="Thank you for the response! I will check that out." CreationDate="2011-04-11T03:57:44.780" UserId="6647" />
  <row Id="14374" PostId="10883" Text="As far as I know there's no fixed pipeline phong shading. The most sophisticated shading possible with fixed pipeline is gouraud (http://en.wikipedia.org/wiki/Gouraud_shading). But yes, implementing a phong shader is good to get started and will show the difference (quality improvement) between gouraud- and phong-shading." CreationDate="2011-04-11T06:32:24.867" UserId="20" />
  <row Id="14375" PostId="10936" Text="Check that you are setting uniform values (view and invView) to the used effect correctly. If the first case you mention works and the last one does not there must be something wrong with uniforms." CreationDate="2011-04-11T06:43:08.803" UserId="4241" />
  <row Id="14376" PostId="10883" Text="@Bummzack Ok. Right, but isn't gourad just phong interpolated between vertices? " CreationDate="2011-04-11T07:03:25.617" UserId="3794" />
  <row Id="14377" PostId="10883" Text="@notabene well yes, gouraud is interpolating between vertices, so it basically does it's lighting calculation on a per-vertex basis, whereas phong operates on a per-pixel basis. Calling the gouraud shader &quot;phong-shader&quot; is wrong though." CreationDate="2011-04-11T07:44:31.930" UserId="20" />
  <row Id="14378" PostId="10882" Text="It is pretty simple. GS can output multiple triangles (with one triangle input). So easy solution is just output one triangle with regular worldviewproj and one shifted on X axis (for example). It can have even another matrices, can be rotated or have inverted UVs... whatever, it may be fun" CreationDate="2011-04-11T07:59:02.313" UserId="3794" />
  <row Id="14379" PostId="7934" Text="+1 for making many small FSMs, rather than one big 'un. Grainularity is very useful here." CreationDate="2011-04-11T08:26:32.350" UserId="259" />
  <row Id="14380" PostId="10936" Text="as I've said. view * invView equals identity, when I put a breakpoint in visual studio. invView = Matrix.Invert(view)." CreationDate="2011-04-11T08:29:28.337" UserId="6440" />
  <row Id="14381" PostId="10937" Text="It doesn't discard information since I also have the z-buffer value. Haven't mentioned this strong enough :-)" CreationDate="2011-04-11T08:30:05.637" UserId="6440" />
  <row Id="14382" PostId="10882" Text="ah yes, sorry i didnt read that those were GS examples" CreationDate="2011-04-11T08:34:36.290" UserId="1510" />
  <row Id="14383" PostId="10944" Text="This won't work in winforms. You don't get any input if you don't let the UI thread run." CreationDate="2011-04-11T09:01:28.523" UserId="2710" />
  <row Id="14385" PostId="10884" Text="+1 for shadow mapping, because it's useful, can be implemented in simple ways and opens up a lot of questions for aspiring studets eg. blurring, depth buffer precision etc." CreationDate="2011-04-11T09:25:41.180" UserId="1562" />
  <row Id="14386" PostId="10908" Text="Great to hear it works :) About the fixed Acceleration: The acceleration in terms of Newtons Law is a vector, which basically means it has a direction and a magnitude/length. Now if the acceleration is fixed, that means its direction is fixed, the object will always move _only_ into that direction of the acceleration, but thats not what you want, your object must be able to move into different directions, so the acceleration can't be fixed.&#xA;" CreationDate="2011-04-11T09:25:43.060" UserId="1839" />
  <row Id="14387" PostId="10908" Text="Let's have a look at Newtons 2nd Law of Motion: `F = m * a`, the Force _F_ and the Acceleration _a_ are important here, ignore the mass _m_, you can simply see it as a scalar here that adjusts the units. The law says the force and acceleration will point into the same direction. So if you change the force acting on your camera, i.e. to make it move into the opposite direction, the formula tells you how the acceleration changes too in respect to it." CreationDate="2011-04-11T09:27:37.753" UserId="1839" />
  <row Id="14388" PostId="10908" Text="Now actually in terms of Newtons law the `direction` variable is the force `F`, so it would be good to change the name of the variable, it improves the physics conformity of your code." CreationDate="2011-04-11T09:28:48.110" UserId="1839" />
  <row Id="14389" PostId="10908" Text="When I say &quot;set the `acceleration` in the first place&quot; I mean to calculate it in `Camera::Move()`, change its first param from `direction` to `Force` like this `Camera::Move(Vector3D Force, float elapsedTime)`, then its simply `Acceleration = Force` with a mass implicitely set to `1`." CreationDate="2011-04-11T09:31:31.040" UserId="1839" />
  <row Id="14390" PostId="10908" Text="To add a proper cam-mass to your simulation, just change the formula to `Acceleration = Force / mass`  or `Acceleration = Force * 1/mass` and there you go, now its Newtos 2nd Law of motion:) and the proper acceleration is stored in the code, so you can safely use the original physics integration formulas `v += a * delta_t` which is: `CurrentVelocity += Acceleration * elapsedTime` and the 2nd formula you used `p += v*delta_t + a*0.5*t*t` which is: `Vector3D displacement = (CurrentVelocity * elapsedTime) + (Acceleration * 0.5f * elapsedTime * elapsedTime);`" CreationDate="2011-04-11T09:34:38.947" UserId="1839" />
  <row Id="14391" PostId="10884" Text="I'm just not sure if shadow mapping is possible in those &quot;Rendermonkey&quot; stuff, where you just play with shaders. " CreationDate="2011-04-11T09:35:25.387" UserId="3794" />
  <row Id="14393" PostId="10948" Text="@Nevermind, can you give a pseudo example of what you mean." CreationDate="2011-04-11T11:06:50.367" UserId="5413" />
  <row Id="14394" PostId="10933" Text="Thanks. I am sorry but I can't really understand what do you mean by 'hidden key' is this a database-related term? Can you be more specific? " CreationDate="2011-04-11T11:21:51.357" UserId="6642" />
  <row Id="14395" PostId="502" Text="That is a very cool demo but not technically an answer to the question. He asked about HTML5, not WebGL; while the two are often conflated, they are different (eg. Internet Explorer is implementing HTML5 but not WebGL.)" CreationDate="2011-04-11T11:22:54.990" UserId="6588" />
  <row Id="14396" PostId="405" Text="@rushyo WebGL and HTML5 are different. @op I so agree with this. I am dealing with this at work right now." CreationDate="2011-04-11T11:25:32.193" UserId="6588" />
  <row Id="14397" PostId="10934" Text="Thanks. This is going somewhere. Your suggestion seems logical. I will try to implement and maybe return with more questions (if any)" CreationDate="2011-04-11T11:25:37.717" UserId="6642" />
  <row Id="14398" PostId="10932" Text="This is interesting and I haven't thought of that before. It is a multiplayer game that runs on a browser (no flash required). Why do you say that I might not need a conventional db for this?" CreationDate="2011-04-11T11:27:50.773" UserId="6642" />
  <row Id="14399" PostId="10908" Text="I don't think I can do that, currently the acceleration vector has a fixed value of 8.0f and you're telling me to replace it with the direction (force) vector. If I do that, the acceleration will be very slow. That value can't be 1, it needs to be something greater, that's why it's the acceleration. I don't need this to be be &quot;proper physics&quot;, it's fine the way it is. The mass is implicit and it's assumed as 1unit, good enough in the context of what I'm making." CreationDate="2011-04-11T11:33:04.700" UserId="6178" />
  <row Id="14400" PostId="10768" Text="@Joe: thanks for the details." CreationDate="2011-04-11T11:53:12.857" UserId="6210" />
  <row Id="14401" PostId="10933" Text="The technical term is a surrogate key (http://en.wikipedia.org/wiki/Surrogate_key) and usually it just means a unique number, and is often called 'id' or something similar. So you might have a weak Ring of Power with id=1 and a strong Ring of Power with id=2." CreationDate="2011-04-11T11:55:09.127" UserId="1101" />
  <row Id="14402" PostId="10936" Text="But that does not mean that __view * invView__ equals identity in **shader**. That's why I recommended you to check that you have set uniform values correctly to the used effect. If __view * invView = I__ in shader there is no reason why your first case would work and the last one would not." CreationDate="2011-04-11T11:58:14.477" UserId="4241" />
  <row Id="14403" PostId="10908" Text="You can keep a magnitude of 8.0f for the force/acceleration, only the direction must be adjusted. I think you are mistaken the direction of the acceleration with its magnitude. You can have a fixed magnitude of 8.0 and still change the direction, an acceleration of {-8, 0, 0} is also an acceleration of 8.0, just to the left, not to the right. The amount of acceleration is the same.&#xA;" CreationDate="2011-04-11T12:02:36.220" UserId="1839" />
  <row Id="14405" PostId="10908" Text="&quot;the acceleration vector has a fixed value of 8.0f &quot; That's not quite true, look at the fix that you just did, you change it over and over again by multiplying with `direction` and so recalculation the _real_ `acceleration`. If you do it once and store the proper `acceleration` then you eliminate a great source of future errors, like the one you just fixed, just because the value in `acceleration` had the wrong sign. However, the problem is fixed this time, that's what matters, just wrote it because you asked: &quot;Maybe there's a better way?&quot; Good luck :)" CreationDate="2011-04-11T12:09:56.663" UserId="1839" />
  <row Id="14406" PostId="10941" Text="I know it's free and open-source, but blimey, it looks *so* cruddy.  Just a default style would be great - looks like this project is dying for a designer for an hour or two " CreationDate="2011-04-11T12:18:37.603" UserId="6656" />
  <row Id="14407" PostId="405" Text="@jhocking I never stated they were, but they _are_ interdependent. WebGL is reliant upon HTML5's canvas element. Without HTML5 you can't use WebGL. I should also like to point out that, having now tried both, I am appalled at the lack of power exposed by Unity3D. It is not a substitute for WebGL in any way, shape or form.&#xA;&#xA;I should also note that plugins such as Unity3D are vastly different from browser-based technology. They are not part of the open web stack and are essentially little different from desktop applications." CreationDate="2011-04-11T12:21:07.403" UserId="1628" />
  <row Id="14408" PostId="10917" Score="2" Text="You say very early that `At the moment of collision, the ball will be touching the corner` but I don't see a justification of this approximation (and it must be an approximation because it's not true - the ball is touching in *two* places, neither of which is the corner)." CreationDate="2011-04-11T12:28:54.510" UserId="5020" />
  <row Id="14409" PostId="10948" Text="I added a bit more to the answer. Hope this helps." CreationDate="2011-04-11T12:32:03.353" UserId="2710" />
  <row Id="14410" PostId="405" Text="To elaborate on my second point: Unity3D is not a graphics API. It is a games engine. WebGL is OpenGL ES 2.0, so it is truly cross-platform. You can deploy it on a huge variety of systems (including those running IE9, natively!) and OpenGL ES 2.0 has very few limits, being a low-level API and not an engine like Unity3D. There are decades worth of assets already existing for OpenGL which can be levered very easily and can continue to be levered. WebGL is built upon a very mature platform." CreationDate="2011-04-11T12:34:06.907" UserId="1628" />
  <row Id="14411" PostId="405" Text="I currently develop all my new applications in OpenGL, with backwards compatibility for ES 2.0. This allows me to target every platform with maximum power. IE users need to fallback to the desktop - but then that's their choice for opting for a vendor lock-in environment... and I can then offer full OpenGL 4 power anyway." CreationDate="2011-04-11T12:37:20.160" UserId="1628" />
  <row Id="14412" PostId="405" Text="I can lever both desktop + open web stacks wherever I want, ensuring I have the full integration with every platform. I can use any native language or use Javascript across the field. To put it simply: It's an optimal solution for basically any scenario except for one: IE9 users will have to fallback on the hugely powerful OpenGL4 on their desktop. Uh... boohoo?" CreationDate="2011-04-11T12:46:21.623" UserId="1628" />
  <row Id="14413" PostId="10906" Text="+1 This looks like it will be a tremendous resource for me. Thank you so much." CreationDate="2011-04-11T13:27:29.873" UserId="1330" />
  <row Id="14414" PostId="10941" Text="The lack of professionalism isn't just because it's open-source; the CE stands for &quot;Crazy Eddie's.&quot; A better default look would be nice, but it can be skinned." CreationDate="2011-04-11T14:16:06.257" UserId="6588" />
  <row Id="14415" PostId="10935" Text="+1 for the great explanation. I'd say it'd be worth to mention that &quot;variable time&quot; is not the only approach (although my personal favorite) approach to timing of update loops, variable time vs fixed time is often debated at places such as this and worth a search :)" CreationDate="2011-04-11T14:19:49.907" UserId="6117" />
  <row Id="14417" PostId="10930" Score="1" Text="GLSurfaceView will run your renderer in its own thread. So if you're using this class, you should not do any OpenGL work anywhere else (generally only in its onDrawFrame(), onSurfaceCreated(), and onSurfaceChanged() methods)" CreationDate="2011-04-11T14:56:48.983" UserId="6592" />
  <row Id="14418" PostId="10951" Text="oo great links thanks" CreationDate="2011-04-11T15:00:32.163" UserId="6588" />
  <row Id="14419" PostId="9503" Text="Why not host a game on an iDevice? Historically games have been hosted of PC's weaker than the iPhone, with 56k dial-up connections, and it worked :)" CreationDate="2011-04-11T15:04:36.730" UserId="6117" />
  <row Id="14420" PostId="9503" Text="I didn't mean it wouldn't work, I just meant that the 3G connection could cause issues for connected clients. As the phone moves 3G might move to Edge and/or drop for a short period, locking out all connected clients." CreationDate="2011-04-11T15:43:12.533" UserId="1198" />
  <row Id="14421" PostId="7198" Text="that is an interesting algorithm! can you elaborate on that law of sines? or do you have a link maybe?" CreationDate="2011-04-11T15:50:54.497" UserId="1510" />
  <row Id="14422" PostId="10939" Text="possible duplicate of [Good GUI for OpenGL](http://gamedev.stackexchange.com/questions/3617/good-gui-for-opengl)" CreationDate="2011-04-11T17:20:52.063" UserId="744" />
  <row Id="14423" PostId="10966" Text="Thanks! I've use the PVRTexTool on Linux and it works like a charm. Still no solution for the ATI tool, it doesn't work right under Wine. I've actually resigned to using PVR and ETC only at this point. I'll consider DXT5 for alpha textures." CreationDate="2011-04-11T17:24:11.000" UserId="5876" />
  <row Id="14424" PostId="3899" Text="Couldn't you use an iterative process to make sure everything gets applied correctly?  When a player logs in, it &quot;activates&quot; each of the resources which then trigger in a loop until the next-tick time is after the current system time.  A little more resource intensive perhaps, but it should take care of most non-linear systems." CreationDate="2011-04-11T18:36:05.383" UserId="4496" />
  <row Id="14425" PostId="10740" Text="Seems (due to logging) that the Pawn is never out of world nor is it damaged outside of the one frame it's hit by the flipper before dying.  Any other ideas?" CreationDate="2011-04-11T19:01:29.007" UserId="3051" />
  <row Id="14426" PostId="10739" Text="Any function I've used to try to relocate the Pawn hasn't seemed to prevent this from happening.  Also, as I mention in my question, the Pawn is only taking damage on one frame and it isn't enough to kill him." CreationDate="2011-04-11T19:02:10.270" UserId="3051" />
  <row Id="14427" PostId="10768" Text="funnily enough I had the same bug in my code recently" CreationDate="2011-04-11T19:06:38.920" UserId="4129" />
  <row Id="14428" PostId="10908" Text="Could you please edit your answer above with the real answer that actually fixed the problem so I can mark this as accepted? Thanks." CreationDate="2011-04-11T19:23:01.050" UserId="6178" />
  <row Id="14429" PostId="10953" Text="yes, you've got a point here. It is my fault though that I didn't mention that I won't be having more than 100 items. It is not a game that its gameplay depends on owning these items. Special Items are just an extra feature. So 100 (more or less) will be enough. This number is not going to produce much overhead. However I will consider that option. " CreationDate="2011-04-11T19:30:20.713" UserId="6642" />
  <row Id="14430" PostId="10968" Text="Thanks. Got this correct, but accidently forwarded the wrong inverse matrix to the shader ;-)" CreationDate="2011-04-11T19:50:16.020" UserId="6440" />
  <row Id="14431" PostId="10968" Text="Got this correct as in this response answers your question and solves your problem or you are still having trouble with something else?" CreationDate="2011-04-11T19:56:49.193" UserId="6521" />
  <row Id="14433" PostId="10953" Text="For only 100 you might just treat them however you treat any other item, keep it simple." CreationDate="2011-04-11T20:13:07.543" UserId="3505" />
  <row Id="14434" PostId="10941" Text="http://sfloyd.wmclan.net/hue/galleries/jing/2011-04-10_1404.png    This is what I am going for, very minimal, text based, and shape based GUI." CreationDate="2011-04-11T20:20:39.393" UserId="6647" />
  <row Id="14435" PostId="10968" Text="Got this correct as in my own answer answered my question :-)&#xA;Troubles I currently have lie now in the pixel shader ^_^" CreationDate="2011-04-11T20:23:23.587" UserId="6440" />
  <row Id="14436" PostId="10972" Text="Those are some excellent resources!" CreationDate="2011-04-11T20:55:32.493" UserId="6592" />
  <row Id="14437" PostId="10932" Text="@xpanta: You can put your data in files. A database is slower than parsed config files, I think. But the data structure is the same as in dbs. You should also consider to use memcached for php or the global scope in java to cache the items. In this case the save location doesn't matter since you cache your static data, which prevents you from always querying the db or reloa&#xA;" CreationDate="2011-04-11T20:57:11.650" UserId="6622" />
  <row Id="14438" PostId="10930" Text="@stephelton / Sam.  Sorry for not getting back earlier, my son is in hospital and my laptop is in here to stop my wife going crazy. Aha, I use GLSurfaceView.  Is there another way of using openGL?  A normal game loop perhaps?  I'll do some googling on the subject.  Thanks for the help!" CreationDate="2011-04-11T21:03:14.503" UserId="6605" />
  <row Id="14439" PostId="10974" Score="6" Text="What is wrong with external libraries?" CreationDate="2011-04-11T21:20:28.920" UserId="962" />
  <row Id="14440" PostId="10970" Text="Nice suggestion!  This sounds great but it looks like I may have to go back to school for Architecture, unless you feel I can compete with just knowing CAD.  Is there a specific CAD you recommend?" CreationDate="2011-04-11T21:28:32.003" UserId="6666" />
  <row Id="14441" PostId="10917" Text="@Peter Taylor: You did notice that the OP has drawn the ball *outside* the rectangle, and the collision detection formula given in the question assumes this, too? You gotta think outside the box here :-)" CreationDate="2011-04-11T21:35:57.663" UserId="6637" />
  <row Id="14442" PostId="10917" Text="@meriton, I saw the &quot;area of impact&quot; and assumed that it was two figures rather than one. All clear now. Thanks." CreationDate="2011-04-11T21:37:12.897" UserId="5020" />
  <row Id="14443" PostId="10970" Text="AutoCAD and Architectural Desktop are the standard tools. Throw in some 3DMax/3DViz for doing renderings. " CreationDate="2011-04-11T22:01:34.727" UserId="5527" />
  <row Id="14444" PostId="10974" Score="2" Text="Any language which can do any type of output can be used to make a 2D game... Console output and ASCII Art..." CreationDate="2011-04-11T22:14:31.760" UserId="1198" />
  <row Id="14445" PostId="10008" Text="Well I was discussing MVC implementation on Stackoverflow and it seems (in my case) it more reasonable to create and destroy unused frames always. But anyways thanks for advice." CreationDate="2011-04-11T22:50:08.747" UserId="3030" />
  <row Id="14446" PostId="3793" Text="Very nice forum :-)" CreationDate="2011-04-11T22:51:41.477" UserId="3030" />
  <row Id="14447" PostId="10970" Text="Well, if you want my opinion. I say you should go back to school, if you have the resources, and are positive it is a field you want to go into. Because without experiance in what you are trying to do, it can be really hard to get a job. If you just want to try it out, look at BlueSixty's post." CreationDate="2011-04-11T22:58:49.327" UserId="6647" />
  <row Id="14448" PostId="10977" Score="2" Text="&quot;For modern high quality 2D graphics you'd almost always be using 3D rendering&quot;&#xA;&#xA;This makes no sense to me.  There are LOTS AND LOTS of 2D games that have nothing to do with 3D rendering or styles." CreationDate="2011-04-11T23:06:54.137" UserId="3830" />
  <row Id="14449" PostId="10975" Score="1" Text="Keep in mind you can write boring stuff in any language, and that a lot of exciting stuff &quot;back in the day&quot; got written in assembly language." CreationDate="2011-04-11T23:08:35.493" UserId="3830" />
  <row Id="14450" PostId="10974" Text="Can you clarify what kind of features you're looking for?  " CreationDate="2011-04-11T23:24:06.110" UserId="3830" />
  <row Id="14451" PostId="10977" Text="Of course there are still games that use pure 2D, mostly small stuff. 3D gives easy to use rotation and scaling, if you need just one of those features it's the easy and performing choice. What recent high graphics quality 2D games have been made using pure 2d?" CreationDate="2011-04-11T23:53:23.570" UserId="3505" />
  <row Id="14452" PostId="10974" Text="@AttackingHobo: It wasn't necessarily that there is anything wrong with libraries, but I know Java, and if I can stick to the core API for graphics and sound without having to learn an external API as well, then that is always a plus." CreationDate="2011-04-12T00:42:59.503" UserId="6214" />
  <row Id="14453" PostId="10809" Text="Thank you for your reply. time to chec this out :)" CreationDate="2011-04-12T06:56:04.713" UserId="6601" />
  <row Id="14454" PostId="10934" Text="Additional table &quot;item attributes&quot; will be your bottleneck." CreationDate="2011-04-12T07:20:17.680" UserId="3132" />
  <row Id="14455" PostId="10879" Text="+1 I've played a 3d racing game that implemented this quite badly. If you tried to race you'd lose every time. The only way to win was to drive really slow on the first lap which made AI drive into trees for the rest of the race :)" CreationDate="2011-04-12T07:33:06.640" UserId="1693" />
  <row Id="14458" PostId="10934" Text="@Andrew Frolov: When he uses memcached it shouldn't be a performance problem. But I thought about it. Every item should have other attributes, so this additional table doesn't make sense. I will edit my answer. &#xA;" CreationDate="2011-04-12T09:34:31.817" UserId="6622" />
  <row Id="14459" PostId="10934" Text="Look at my answer below. I think you'll like it. I have already implemented this approach in my MMO game. And it works well without memcached :)" CreationDate="2011-04-12T09:39:25.050" UserId="3132" />
  <row Id="14460" PostId="10934" Text="@Andrew Frolov: Yes, this would work great. But only for items with unique description and name. And multiple items with the same description is, what the asking person wants. &#xA;&#xA;" CreationDate="2011-04-12T09:47:53.340" UserId="6622" />
  <row Id="14461" PostId="10898" Text="@etan. I'm sorry,you was propably looking for me on a chat,i cant read it or answer,because i have only mobile phone with me and chat is not working in opera mini. I'll be back tomorow and try to answer your all questions." CreationDate="2011-04-12T09:54:44.210" UserId="3794" />
  <row Id="14462" PostId="10934" Text="In my approach in item table you could store all possible variations of items + actual user items as well. I will add description in my answer." CreationDate="2011-04-12T09:54:53.927" UserId="3132" />
  <row Id="14463" PostId="10977" Text="Pokemon heart gold, soul silver, black and white are good examples of 2.5d games. Zenonia 2 (android) is an example for 2d games with good graphics. &#xA;" CreationDate="2011-04-12T10:05:21.460" UserId="6622" />
  <row Id="14465" PostId="10934" Text="@Andrew Frolov: you did not get the point. Of course, you can have multiply the same names in your table. But if you say: &quot;I don't like ring of power anymore. Let's give it the name 'ring of coolness'&quot; Then you have to edit it 2 times or more! This is like doubled code, which you should avoid in accordance to the OO concept. &#xA;&#xA;&#xA;" CreationDate="2011-04-12T10:13:32.733" UserId="6622" />
  <row Id="14467" PostId="10917" Text="@meriton, this solution is very sensitive to the frame animation, i.e. a ball fired with the same speed and direction at the corner bounces with different angle depending on the ball’s original distance from the corner, which should not happen. I think that a vector-angle type of calculation would depend less on the impact-position of the ball and more on its trajectory." CreationDate="2011-04-12T10:52:09.737" UserId="6616" />
  <row Id="14468" PostId="10917" Text="@meriton, also there is a strange behaviour when bouncing 90 degree to the right or left like there is a concentration of angle distribution there for about 3 ballX whole values, and then suddenly when ballX is changed just by one more unit the angle becomes drastically different." CreationDate="2011-04-12T10:52:49.313" UserId="6616" />
  <row Id="14469" PostId="10934" Text="Of course you will have to do it if you store constant parameters directly. We are talking about storing generated parameters, don't we? So item_name in my table was just an example.  For constant parameters you should use xml file or another table. " CreationDate="2011-04-12T10:53:43.377" UserId="3132" />
  <row Id="14470" PostId="10992" Text="Thanks, but z-buffering requires per-pixel rendering if I'm not mistaking. I'm not doing that - I'm drawing straight lines between the projected points of the cube. Is z-buffering still possible?" CreationDate="2011-04-12T11:01:17.693" UserId="6341" />
  <row Id="14471" PostId="10917" Text="@meriton, I guess these are the things you warned about in your last paragraph." CreationDate="2011-04-12T11:05:38.097" UserId="6616" />
  <row Id="14472" PostId="10990" Text="What is your question exactly? *How can I create a Game like X* isn't a question that can be answered easily. Try to ask something more specific." CreationDate="2011-04-12T11:15:51.770" UserId="20" />
  <row Id="14473" PostId="10993" Text="You are correct in saying that I'm creating a simple renderer. The point is that I'm not using any 3D libraries. I'm doing all projection calculations myself and then draw the lines using a 2D drawing library. This is not the fastest out there and I'm not doing anything on a per-pixel basis. I just have 4 points of each surface and fill the rectangular shape with a color. Since I'm drawing a complete surface at one time, am I correct in saying that I do have to draw back to front?" CreationDate="2011-04-12T11:19:45.260" UserId="6341" />
  <row Id="14474" PostId="10993" Text="Sounds like a lot of fun and a great way to learn. Back to front is your only way if you're doing this without any form of depth buffer. I think you're going to have to work out all the screen co-ordinates of your polygons and then check for any overlap. Where they overlap in depth you're potentially going to need to chop up the polygons to render, so you can actually resolve the sorting correctly. You might also want to look into Back Face Culling as a way to remove polygons that shouldn't necessarily be visible" CreationDate="2011-04-12T11:27:44.757" UserId="4410" />
  <row Id="14475" PostId="10977" Text="&quot;. What recent high graphics quality 2D games have been made using pure 2d?&quot; =&gt; vector graphics (ie mostly Flash, but also other Macromedia and non Macromedia products), see many experimental Flash games." CreationDate="2011-04-12T11:33:56.207" UserId="6210" />
  <row Id="14476" PostId="10990" Text="Perhaps I should study more about Flash and Actionscript. Until I have a better understanding of these things, I cannot be any more specific." CreationDate="2011-04-12T11:36:57.280" UserId="6568" />
  <row Id="14477" PostId="10983" Text="this is also a very interesting implementation. Would you be so kind in giving more details on these binary item_state_data? How will it look like? " CreationDate="2011-04-12T11:40:01.793" UserId="6642" />
  <row Id="14478" PostId="10992" Text="Even if you're drawing straight lines, at some point before the image gets to the screen (or bitmap file) it will be in pixel format." CreationDate="2011-04-12T11:40:25.320" UserId="769" />
  <row Id="14479" PostId="10992" Text="That's correct but my drawing library is too slow to do pixel rendering with 20fps. Thanks though." CreationDate="2011-04-12T11:41:04.740" UserId="6341" />
  <row Id="14480" PostId="10990" Text="Yes probably. If this is your first game you're going to write, consider something simpler (avoid networking and multiplayer stuff in your first game)." CreationDate="2011-04-12T11:50:40.707" UserId="20" />
  <row Id="14481" PostId="10996" Score="2" Text="The title of your question doesn't match the content of your question. Could you rephrase and be more specific as to what exactly you are designing, and what you need to know?" CreationDate="2011-04-12T11:56:10.437" UserId="1101" />
  <row Id="14482" PostId="10965" Text="Just to expand on this, the historical reason why framebuffer access has been slow is because the instructions are very heavily pipelined. Getting access to a given framebuffer pixel would involve stalling the current pipeline until all the other pipelines were flushed to complete any rendering relevant to the queried pixel. Even in the odd case of a completely non-parallel GPU, you'd still be flushing the entire pipeline for each query, which is just a bad idea. No doubt things are a bit different in the world of programmable hardware now but I expect a similar principle applies." CreationDate="2011-04-12T12:05:38.433" UserId="1101" />
  <row Id="14483" PostId="10983" Text="Example added.." CreationDate="2011-04-12T12:10:12.547" UserId="3132" />
  <row Id="14484" PostId="10997" Text="Thanks for your response. I did read about backface culling but the point is that I'd like to be able to remove one side. With a solid cube this might work just great, but if I remove one side then there is occulision happening - so I still need to sort them I guess. Anyway, I came up with the idea of fireing a ray from the origin through the midpoint of a surface. If that ray crosses another surface afterwards, then the first surface is overlapping the second. Could you possibly tell me whether that idea is that correct? Thanks!" CreationDate="2011-04-12T12:17:05.163" UserId="6341" />
  <row Id="14485" PostId="10993" Text="Roger Perkins is right. You won't be able to achieve correct z-sorting that way (meaning you'll always have some edge-cases), unless you chop up the polygons. That can become rather slow though." CreationDate="2011-04-12T12:45:57.437" UserId="20" />
  <row Id="14486" PostId="10717" Text="Blender is my favourite 3D tool.. Ever." CreationDate="2011-04-12T13:01:38.447" UserId="3068" />
  <row Id="14487" PostId="10997" Text="Although your idea would work for your example case, there are plenty of other cases where it's not going to work. For example, the same scene you have there, but with the camera tilted so that the centre of the incorrect rendering quad is not overlapping.I think you're  going to have to tesselate your primitives into smaller pieces." CreationDate="2011-04-12T13:22:27.847" UserId="1742" />
  <row Id="14488" PostId="10999" Score="2" Text="Just a comment on your terminology. The term &quot;developer&quot; is used differently in the games biz than in othet tech fields. In other fields &quot;developer&quot; is basically a synonym for &quot;programmer&quot; but in game development it means &quot;anyone who works on the production of a game.&quot; Programmers, artists, designers... they're all &quot;game developers.&quot; Which come to think of it is an oblique answer to your question." CreationDate="2011-04-12T13:27:52.970" UserId="6588" />
  <row Id="14489" PostId="10993" Text="I got it working! What I did was a combination of backface culling and sorting: in a solid cube, some faces are not visible whilst others are (max of 3). So I painted the non-visible parts first, and the visible parts over them. This works like a charm, if I remove one or more sides, they are overlapping but still drawn in the correct order. Thanks!" CreationDate="2011-04-12T13:29:35.617" UserId="6341" />
  <row Id="14490" PostId="10999" Text="@jhocking thanks for pointing that out, i edited my answer" CreationDate="2011-04-12T13:51:47.157" UserId="6117" />
  <row Id="14491" PostId="10977" Text="Flash is GPU accelerated these days, the Nintendo DS seems to be a platform where pure 2D still lives (does it even have hardware accelerated rotation and scaling?). Of course one could argue that the mobile 2D games does not meet the high quality graphics criterion, but that is a subjective argument. My point was mainly that for 2D games on desktop and consoles one should consider using 3D acceleration." CreationDate="2011-04-12T13:55:49.133" UserId="3505" />
  <row Id="14492" PostId="11009" Text="This might be a better question for http://www.stackoverflow.com" CreationDate="2011-04-12T14:11:21.233" UserId="189" />
  <row Id="14493" PostId="11011" Text="Thanks of the answer.." CreationDate="2011-04-12T15:10:38.413" UserId="6678" />
  <row Id="14494" PostId="10998" Text="Thanks For the answer. " CreationDate="2011-04-12T15:11:26.103" UserId="6678" />
  <row Id="14495" PostId="11011" Text="Thanks for the answer" CreationDate="2011-04-12T15:15:26.787" UserId="6678" />
  <row Id="14496" PostId="11009" Text="Should we move it?" CreationDate="2011-04-12T15:21:02.677" UserId="4750" />
  <row Id="14497" PostId="10998" Text="Thanks of the answer.. I will tell more detail about the game. I have to design PONG game in android.There are 2 mobiles and 1 game server.Application is installed in  mobile .In mobile1(M1) can see the movement of bat and ball of Mobile2(M2) an vice_versa.Suppose if M1 hits the ball,all the movements of the ball and bat of M1 can be seen in M2 Screen and vice versa. Now i want to know which protocol i should use and why. " CreationDate="2011-04-12T15:27:55.097" UserId="6678" />
  <row Id="14498" PostId="11011" Text="Thanks of the answer.. I will tell more detail about the game. I have to design PONG game in android.There are 2 mobiles and 1 game server.Application is installed in  mobile .In mobile1(M1) can see the movement of bat and ball of Mobile2(M2) an vice_versa.Suppose if M1 hits the ball,all the movements of the ball and bat of M1 can be seen in M2 Screen and viceversa. Now i want to know which protocol i should use and why. " CreationDate="2011-04-12T15:28:38.793" UserId="6678" />
  <row Id="14499" PostId="10996" Text="This could be a great question with even better answers, but its so poorly asked.  Someone please rescue it." CreationDate="2011-04-12T15:34:17.480" UserId="370" />
  <row Id="14500" PostId="10996" Text="Hi at least try to give the answer of poorly asked Question.." CreationDate="2011-04-12T15:38:03.640" UserId="6678" />
  <row Id="14501" PostId="11009" Text="@Ricket I disagree, being that the OP is specifically looking for a comparison vs XNA's vectors. If it were more generalized, sure..." CreationDate="2011-04-12T15:47:26.713" UserId="6569" />
  <row Id="14502" PostId="11006" Score="1" Text="As mentioned this is very company dependent but is more likely to happen in smaller companies than large. There are quite a few features in video games I have worked on (I am.. erm.. was a game programmer) that were from me and not the original design. Some of these were up-front design considerations, but a good number of them fall into the category of 'This is not doable as designed by the deadline, how about something like this instead?' hehe :)" CreationDate="2011-04-12T16:19:47.393" UserId="4443" />
  <row Id="14503" PostId="10990" Text="Hello, and welcome to the Game Development Stack Exchange. [Questions about making an entire game are not allowed here](http://meta.gamedev.stackexchange.com/questions/171/how-to-make-an-entire-game-x-off-topic). When asked they are usually from people who just need a bit more guidance, guidance that we will be happy to provide [in chat](http://chat.stackexchange.com/rooms/19)." CreationDate="2011-04-12T16:43:49.907" UserId="14" />
  <row Id="14504" PostId="11016" Text="Why more than 2 people?" CreationDate="2011-04-12T16:47:37.017" UserId="4443" />
  <row Id="14505" PostId="11016" Score="1" Text="Is this really just a rephrasing/clarification of your [other question](http://gamedev.stackexchange.com/questions/10996/tcp-vs-udp-on-mobile-platforms)? You should probably just edit that one if so. " CreationDate="2011-04-12T16:50:15.400" UserId="1430" />
  <row Id="14506" PostId="10898" Text="Thanks for offering help :-) Do you have something like skype where we could go through the shader together once?" CreationDate="2011-04-12T16:50:57.893" UserId="6440" />
  <row Id="14507" PostId="11016" Score="1" Text="@James spectators, obviously..." CreationDate="2011-04-12T17:25:45.610" UserId="6117" />
  <row Id="14508" PostId="11016" Text="@Zaky Pong is a simple game, you could easily have multiple paddles and not just two.. So yeah the question is are there N number of players or 2 players with 0+ spectators or what not. Sorry I wasn't clear in asking for clarification :)" CreationDate="2011-04-12T17:35:19.373" UserId="4443" />
  <row Id="14509" PostId="11006" Text="@James i believe most coders have participated in the second method of &quot;design process&quot; you mentioned ;)" CreationDate="2011-04-12T17:35:37.237" UserId="6117" />
  <row Id="14510" PostId="11016" Score="1" Text="@James i see, i was just being a smartass anyway, not sure how fun it would be to spectate over a pong game :) Might be a nice practice for a programmer though..." CreationDate="2011-04-12T17:45:37.600" UserId="6117" />
  <row Id="14511" PostId="11018" Text="+1 for the note about graphics APIs." CreationDate="2011-04-12T17:47:04.827" UserId="1430" />
  <row Id="14513" PostId="11016" Text="how can there be more then 2 paddles as pong is played by 2 players at a time.I want to know which protocol should i use for this and Why.. " CreationDate="2011-04-12T18:06:33.240" UserId="6678" />
  <row Id="14514" PostId="11019" Score="7" Text="A semantic quibble here: Flash is a platform. ActionScript 3 is an implementation of ECMAScript that can be easily compiled to the Flash platform, and can be used to script animations/apps in the Flash studio. ActionScript 2 was sort of like Javascript, but was definitely not a proper implementation of ECMAScript. AS3 arrived in 2006." CreationDate="2011-04-12T18:14:26.447" UserId="953" />
  <row Id="14515" PostId="11021" Text="Thanks for the answer.Tell me how http is used in mobile gaming, And is there any other protocol except TCP UDP for communication.Is there any document so that i can read How HTTP TCP UDP is related with gaming" CreationDate="2011-04-12T18:15:43.783" UserId="6678" />
  <row Id="14516" PostId="10999" Text="It's possible for a programmer to move into game design, though it might be rare.  If I remember right, Cliff Bleszinski was originally a programmer, but now he's involved with designing the Unreal and Gears of War Games. Ian Schreiber started out as a programmer, and has since written books about game design." CreationDate="2011-04-12T18:42:36.407" UserId="6558" />
  <row Id="14517" PostId="11009" Text="@octal9, when I see this question, I think it generalizes to something like &quot;If I rewrite this C# class with the same functionality, assuming my code is optimal C#, will it be somehow slower than the native class?&quot; I don't see how this would be an XNA-specific question, other than the class in question is a part of XNA, so I think the people in Stack Overflow with deep understanding of the inner workings of C# would be helpful regardless of their XNA experience. I don't feel strongly enough about this to move it to SO, though." CreationDate="2011-04-12T18:54:48.490" UserId="189" />
  <row Id="14518" PostId="10917" Text="Most likely. Have you tried my suggested solution?" CreationDate="2011-04-12T18:54:50.743" UserId="6637" />
  <row Id="14519" PostId="11021" Score="1" Text="HTTP is just an extra set of protocols over TCP. You would use it for web based games where real time isnt really a factor... even with HTML 5 and web sockets coming down the pipe though, ya may not need to use HTTP for much more than delivery of a client at the end of the day.." CreationDate="2011-04-12T19:05:54.770" UserId="4443" />
  <row Id="14520" PostId="11028" Score="1" Text="+1 for the two points I wanted to cover. First, use UDP, second, send the minimal amount of data as necessary! :)" CreationDate="2011-04-12T19:23:43.547" UserId="4443" />
  <row Id="14521" PostId="11028" Text="In C# if using the Binary Formatter, the data actually sent should be quite small, that said, I agree, small data transfer is better." CreationDate="2011-04-12T19:31:01.670" UserId="1198" />
  <row Id="14522" PostId="10993" Score="1" Text="That'll only work for simple convex shapes, like cubes. I'm glad it's currently working out for you, but it's not a general solution." CreationDate="2011-04-12T19:51:08.143" UserId="1742" />
  <row Id="14523" PostId="11028" Text="UDP... Layer 3 really isn't my realm.  I'll give it a go!  And yes, I am sending a little bit more data than I was anticipating.  Like 800 bytes more...  Also, what about sending the map object?  it's 2-4 mb, but only needs to be sent across once.  How should I handle that?" CreationDate="2011-04-12T20:04:10.907" UserId="6683" />
  <row Id="14524" PostId="11028" Score="2" Text="@joe_coolish i'd read more about the tcp vs udp before deciding. I read articles and on forums, from my impression it's the other way around - unless you're developing an online FPS there is no reason to use UDP. I've seen claims about MMO's that moved their infrastructure from udp to tcp and were seeing improvements in performance a a result, sorry that i don't have anything to link though, just saying it as a motivator to read more not to use this or that" CreationDate="2011-04-12T20:12:45.397" UserId="6117" />
  <row Id="14525" PostId="9503" Text="@Nate Bross sure, i understand that. However i believe that (unlike what seems to be the standard these days) users are not totally mentally challenged and will survive a short text explaining that hosting games should be done on wifi or with strong 3G reception and that doing so is far from a deal-breaker. If you do want to go for the lowest IQ common-denominator you can always force wi-fi programatically." CreationDate="2011-04-12T20:19:54.627" UserId="6117" />
  <row Id="14526" PostId="10969" Text="List the skills a game designer has, and you'll find out where else they can look for a job. (e.g. as mentioned, level design and architecture are a good match.)" CreationDate="2011-04-12T20:54:07.543" UserId="744" />
  <row Id="14527" PostId="11028" Text="UDP by it's very nature is &quot;unreliable&quot; in that it provides no guarantees the data will arrive at the other end. Under ideal local network conditions it'll work just fine (probably), but on the internet you'll probably experience packet loss. As such, if you just send changes you'll start to have the wrong state at the other end of the network connection. You'll need to either send some sort of resync packet now and again to ensure everything is in sync, or some manual reliable connection stuff (which is what TCP is doing) to ensure no packet loss. You also can't guarantee packet order arrival" CreationDate="2011-04-12T21:10:15.587" UserId="4410" />
  <row Id="14528" PostId="11009" Text="I just wonder how you end up using so many vectors that this makes a noticeable impact on memory consumption?" CreationDate="2011-04-12T21:15:10.643" UserId="3505" />
  <row Id="14529" PostId="11020" Score="1" Text="I would disagree that &quot;JavaScript really means HTML5&quot;. I think that is backwards. I believe that HTML5 really means the combination JavaScript, HTML, and CSS." CreationDate="2011-04-12T21:23:29.187" UserId="1163" />
  <row Id="14530" PostId="11020" Score="1" Text="Exactly. When someone compares Javascript to Flash, they are really comparing HTML5 to Flash (which as you say, is comparing {JS, HTML, CSS, maybe WebGL, etc.} to Flash)." CreationDate="2011-04-12T21:28:15.017" UserId="744" />
  <row Id="14531" PostId="6474" Text="Several times I've done precisely what you suggest with prototyping in text. If the game is turn-based then it just makes sense to build the logic of the game with console output instead of bothering with &quot;programmer art.&quot;" CreationDate="2011-04-12T22:13:16.510" UserId="6588" />
  <row Id="14532" PostId="10993" Text="If you're drawing only horizontal lines with a 2D drawing library, then instead of actually drawing the lines, you can queue up all the lines you wish to draw in memory. Once done, sort the lines by which scanline they're on. For each scanline of lines, &quot;clip&quot; them all against each other using linear algebra, or use a Z buffer for just that scanline. Similar ideas are used by the Quake1 engine and by Nintendo DS." CreationDate="2011-04-12T22:37:07.760" UserId="6042" />
  <row Id="14533" PostId="11028" Text="Well, since I'm sending the absolute positions and rotations of the objects, I don't have to worry about getting out of sync.  I changed my TCP over to UDP and also started sending and parsing a raw `byte[]` as opposed to object serialization.  This brought down message size from 800 bytes to 56 bytes.  It works pretty well.  Thanks for the suggestion!" CreationDate="2011-04-12T22:39:48.167" UserId="6683" />
  <row Id="14534" PostId="11021" Text="Hello James Plz explain increment packet Id so we can ignore outdated packets" CreationDate="2011-04-12T22:48:33.450" UserId="6678" />
  <row Id="14535" PostId="11021" Text="Had to put it in the answer as it will not fit in the comment." CreationDate="2011-04-12T23:14:36.283" UserId="4443" />
  <row Id="14536" PostId="11019" Text="So maybe the better question would be: Why is Flash + AS3 more prevalent than HTML + Javascript? That would make the answers below more valid.. the abilities of Flash + AS3 have just been more advanced and around longer.." CreationDate="2011-04-12T23:40:56.237" UserId="4443" />
  <row Id="14537" PostId="11028" Text="@joe_coolish If both games have to have the same World data on their system then sending an ID of which World data to load might stop you from sending the entire object over. That would help with removing that from the first thing yo must send :) Also, fool around with UDP long enough and you will end up implementing a ReliableSend() when you want to guarantee critical packets make it (Like Start Match, End Game, Etc) and its not that hard to do (just keep sending until you received acknowledgement.. but don't require validation of the acknowledgement or you end up in infinite loop time :))" CreationDate="2011-04-12T23:44:43.953" UserId="4443" />
  <row Id="14538" PostId="11035" Text="But how could my code be silently handling a critical failure? I commented out all the try/catch blocks." CreationDate="2011-04-13T00:31:45.030" UserId="6244" />
  <row Id="14539" PostId="11035" Text="Are you using any 3rd party libraries?" CreationDate="2011-04-13T00:48:58.007" UserId="3547" />
  <row Id="14540" PostId="11035" Text="Unfortunately with out more information I can not tell you how its doing it. If you can add in debugging output messages at key locations to see if it is hitting them on its way out it might help, but we really need more info to give you better answers... Sorry." CreationDate="2011-04-13T00:53:11.467" UserId="4443" />
  <row Id="14541" PostId="11035" Text="@Omnion I'm only using SharpZipLib. Everything else is .NET or XNA built-in. I tried commenting out everything related to SharpZipLib but the problem still occurs. So it must be something else..." CreationDate="2011-04-13T01:10:27.767" UserId="6244" />
  <row Id="14542" PostId="10974" Score="1" Text="@hal10001 There are 2D java game libraries that would make your job much easier than coding it your self. I mean it is possible, but why waste 1000s of man hours that have been put into proven, fast 2D renderers." CreationDate="2011-04-13T03:08:36.340" UserId="962" />
  <row Id="14543" PostId="11037" Score="1" Text="Do you mean inside a roguelike?" CreationDate="2011-04-13T05:14:40.537" UserId="51" />
  <row Id="14544" PostId="11037" Score="1" Text="I'm a game industry veteran. What's a FoV implementation? What is shadowcasting? Never heard of either." CreationDate="2011-04-13T03:29:41.080" UserId="6042" />
  <row Id="14545" PostId="11040" Score="2" Text="How did you fix it?" CreationDate="2011-04-13T05:15:51.487" UserId="1198" />
  <row Id="14546" PostId="11045" Text="If you needed performance, couldn't you use bitmap text?" CreationDate="2011-04-13T05:36:47.677" UserId="962" />
  <row Id="14547" PostId="11016" Text="I hope you are running this over wifi only, ping from cellular data will at least be 300-400 ms, 1000 is not uncommon and higher is possible." CreationDate="2011-04-13T05:40:50.483" UserId="962" />
  <row Id="14548" PostId="11045" Text="I am [using bitmap text]. My code does little more than look up char size and tex coord for each char in any given string. I'm not having a huge issue here, but this is the next biggest cpu hog on my list and I'd like to nip it in the bud, or at least make sure I'm programming to an interface that I can improve later." CreationDate="2011-04-13T05:51:54.657" UserId="6592" />
  <row Id="14549" PostId="11009" Text="We're working on a kinda voxel-engine, with 1,500,000 millions of voxels on view and so." CreationDate="2011-04-13T07:01:55.057" UserId="4750" />
  <row Id="14550" PostId="11047" Text="The OP is talking about 2D, mario-style landscapes, but still these are good links." CreationDate="2011-04-13T07:34:48.077" UserId="259" />
  <row Id="14551" PostId="11049" Text="Allow me to explain a bit, http://imm.io/4Xwy see that diagram lets assume the circles are sections of forces, and you gain a new force each &quot;time interval&quot; and lets say I want to take all my forces (I'm pink) the circle directly below me and capture it, well the AI would need look at all available circles and pick for example the big green on in the top right (since big would make more troops and its close to the &quot;main&quot;). I'm assuming what you said would still work? Weighted options?" CreationDate="2011-04-13T07:46:16.207" UserId="6691" />
  <row Id="14552" PostId="11048" Text="when you say &quot;each circle gains 1 every turn&quot; you mean gains one unit, right?" CreationDate="2011-04-13T07:48:41.497" UserId="259" />
  <row Id="14553" PostId="11049" Text="Good diagram. Think I follow now. Pop that into your question." CreationDate="2011-04-13T07:49:01.790" UserId="259" />
  <row Id="14554" PostId="11049" Text="Yes this technique would still apply. It's all in what behaviours you choose, and how you implement them. A &quot;weak target&quot; behaviour could actually involve a lot of computation." CreationDate="2011-04-13T07:50:12.507" UserId="259" />
  <row Id="14555" PostId="11026" Text="Are you by any chance using sockets synchronously? Because that's the main source of slowdown when using network, and no protocol changes will help you much in this case." CreationDate="2011-04-13T07:53:03.777" UserId="2710" />
  <row Id="14557" PostId="11051" Text="Are you by any chance storing multiple tile textures in one big texture? I remember having a similar problem, and it was caused by OpenGL rendering pixels from adjacent tile texture. How I solved it in the end was move each tile to their own texture. It's been a while though, I'm not sure if the problem happened with `GL_NEAREST`, or only with `GL_LINEAR`." CreationDate="2011-04-13T08:31:58.183" UserId="6694" />
  <row Id="14558" PostId="11048" Score="3" Text="This is similar to the Google AI challenge 2010: http://ai-contest.com/ There are AIs with source code available at the site." CreationDate="2011-04-13T08:43:06.660" UserId="6655" />
  <row Id="14559" PostId="11037" Score="1" Text="How about precomputing visibilty with BSP like the good old Quake did? Afterwards you just need to iterate your ray-/shadow-casting over all visible leafs." CreationDate="2011-04-13T08:45:46.627" UserId="6655" />
  <row Id="14560" PostId="11051" Text="I do, but none of the proposed solutions for this particular problem (GL_NEAREST) help the slightest.  Also the rounding errors for textures would mean I see neighboring pixels but what I see is the background of the sprite which leads me to the idea that this might be a general rasterization problem." CreationDate="2011-04-13T09:30:42.907" UserId="3361" />
  <row Id="14562" PostId="7348" Text="I can't see how this is a game development question." CreationDate="2011-04-13T09:53:09.113" UserId="1386" />
  <row Id="14563" PostId="11016" Text="hello AttackingHobo : as i am very new to this game technology and cellular data ,, so can u explain what are these numbers 300-400ms and what exactly u want to explain..." CreationDate="2011-04-13T10:28:45.533" UserId="6678" />
  <row Id="14564" PostId="11021" Text="Hello James.. thank you very much for such a valuable comments..If you have more information how UDP is Useful and about the packet Id,plz write it on the forum or mail me pratyush.sinha2511@gmail.com" CreationDate="2011-04-13T10:34:49.417" UserId="6678" />
  <row Id="14565" PostId="11009" Text="Hmm, special. In any case, a big point for voxels is that you can represent them as a 3D bitmap rather than use a vector for each voxel's position. For optimizing, you might want to be looking for a completely different representation." CreationDate="2011-04-13T11:45:17.257" UserId="3505" />
  <row Id="14566" PostId="11037" Score="1" Text="Is it a 2D or 3D world? Is it grid-aligned? Are there many different types of walls?" CreationDate="2011-04-13T13:04:30.437" UserId="5864" />
  <row Id="14567" PostId="6467" Text="Well Model Driven Design in general is a nice idea, but it never really took off.. now that different mobile platforms are establishing it might get a chance... But so far the best you can do to get a fast prototype is to use an engine." CreationDate="2011-04-13T13:14:56.830" UserId="6697" />
  <row Id="14568" PostId="10917" Text="If I know the maximum speed of the ball, I know how deep the ball can penetrate the corner, and if this is shorter than the ball's diameter, the collision detection,  as it is now, would still work. Then I need to find the ballX/ballY at the moment of collision and only then use your formula, so I would virtually move the ball back a bit. Not sure how to calculate the position of the ball at the theoretical moment of impact and how can time you mentioned help me here." CreationDate="2011-04-13T13:31:03.890" UserId="6616" />
  <row Id="14569" PostId="11056" Text="Thanks alot, that's exactly the kind of answer i was hoping to get. " CreationDate="2011-04-13T13:45:27.997" UserId="6117" />
  <row Id="14570" PostId="11055" Text="How does that work?  The projection matrix is just set up once as an orthographic project, no changes in the frames are applied to it." CreationDate="2011-04-13T14:18:57.890" UserId="3361" />
  <row Id="14571" PostId="11062" Score="3" Text="It would be quite funny to see the AI screw up though and use a Rocket Launcher in a confined space..." CreationDate="2011-04-13T14:25:40.087" UserId="1198" />
  <row Id="14572" PostId="11055" Text="Ah sorry, I realise I'm not being clear at all. I meant to say you should try to adjust the view and projection matrices so that they are clamped to the nearest pixel, but not save these clamped values into the camera parameters, or you will accumulate error and cause jitter. If this is already what you are doing and the camera still jitters, then we'll need to know more about your graphics: is it pixel art or shaded drawings? How large are your models?" CreationDate="2011-04-13T14:44:35.710" UserId="5864" />
  <row Id="14573" PostId="11052" Text="I'm already using the NDK, and my structure for character data (which is really just its width) is stored in an array, and indexed by the char itself. So the time is being spent calculating and building vertices and tex coords, and passing them to the GPU." CreationDate="2011-04-13T14:49:38.703" UserId="6592" />
  <row Id="14574" PostId="10908" Text="Done, added fix to the answer above" CreationDate="2011-04-13T14:52:04.553" UserId="1839" />
  <row Id="14575" PostId="10972" Text="They certainly are, thanks!" CreationDate="2011-04-13T14:52:24.083" UserId="6664" />
  <row Id="14576" PostId="11055" Text="It's a 2d platformer.  I am right now clamping the rendering to pixels which works well.  If I take the final image and use photoshop to move the image any sub pixel amount to the top of bottom I get exactly what I want -&gt; smooth movement.  I can do that in OGL if rendering to an FB and then translating that. If I do it with the modelview matrix, gaps between tiles appear." CreationDate="2011-04-13T14:59:48.977" UserId="3361" />
  <row Id="14577" PostId="11055" Text="Are you also rounding your world object coordinates before sending them to OGL, too? I do exactly that for an isometric game and it works fine." CreationDate="2011-04-13T15:07:59.473" UserId="5864" />
  <row Id="14578" PostId="11069" Score="7" Text="Speed is reason enough for me, especially since everyones' complaints about the language don't really make sense to me." CreationDate="2011-04-13T14:34:41.597" UserId="5604" />
  <row Id="14579" PostId="11069" Text="A quick guess: Most games are written for Windows. C and C++ languages have been heavily supported by Microsoft. And Finally C++ is preferred because of OOP and template metaprogramming." CreationDate="2011-04-13T14:36:17.967" />
  <row Id="14580" PostId="11069" Text="@ Matt Thanks, didn't know it existed. Can I move the topic there, or should I delete this one and recreate it over there?" CreationDate="2011-04-13T14:36:50.483" />
  <row Id="14581" PostId="11069" Text="This has already been asked several times." CreationDate="2011-04-13T14:36:52.603" UserId="2683" />
  <row Id="14582" PostId="11069" Text="@ Zan I looked and didn't find any answers. Would you direct me to one of them?" CreationDate="2011-04-13T14:42:42.693" />
  <row Id="14583" PostId="11062" Text="It'd be funny to see a player do that as well, but somehow they always come out fine, not even tinnitus :P" CreationDate="2011-04-13T15:29:24.803" UserId="4513" />
  <row Id="14584" PostId="11052" Text="How are you building them and passing them to the GPU?" CreationDate="2011-04-13T15:59:54.223" UserId="744" />
  <row Id="14585" PostId="11021" Score="1" Text="@GameBuilder see my edit for a pseudo code example of using UDP to ignore out of order packets." CreationDate="2011-04-13T16:15:13.513" UserId="1198" />
  <row Id="14586" PostId="11072" Text="Don't you mean low-level?" CreationDate="2011-04-13T16:25:10.903" UserId="6588" />
  <row Id="14587" PostId="11072" Score="5" Text="C++ is a `low-level` language; but a `high-level` assembler, IMO." CreationDate="2011-04-13T16:39:07.480" UserId="1198" />
  <row Id="14588" PostId="11072" Text="ah okay, I missed the distinction you were making." CreationDate="2011-04-13T16:40:01.957" UserId="6588" />
  <row Id="14589" PostId="11016" Score="2" Text="@GameBuilder that's latency, measured in milliseconds. It's how long it takes to receive acknowledgement of a sent packet. It's also known as lag." CreationDate="2011-04-13T16:47:55.263" UserId="6569" />
  <row Id="14590" PostId="11068" Text="Good point about the ego, definitely something a coder who's motivated towards design should keep in mind." CreationDate="2011-04-13T16:51:00.927" UserId="6117" />
  <row Id="14591" PostId="11052" Text="i create an array of GLfloats, then for each char, i look up the width (where the char itself is the index into an array of widths), then i populate the above arrays with the data corresponding to that char, then i pass the whole thing to the GPU via a call to glVertexPointer(), glTexCoordPointer(), and glDrawArrays. then i delete the arrays.&#xA;&#xA;I could avoid creating those arrays, and i bet that would make a huge improvement... Nice :)" CreationDate="2011-04-13T17:00:59.590" UserId="6592" />
  <row Id="14592" PostId="11052" Text="Yeah, dynamic memory allocation/deallocation is an enormous overhead on most platforms. If you can simply reuse the same array (say, by making it a static std::vector or growing realloced buffer), you should save a lot of time." CreationDate="2011-04-13T17:09:09.773" UserId="744" />
  <row Id="14593" PostId="11021" Text="@James: Thanks for such a beautiful explaination " CreationDate="2011-04-13T17:29:42.963" UserId="6678" />
  <row Id="14594" PostId="11069" Text="This might be an interesting read for you: http://altdevblogaday.org/2011/04/12/dont-fear-the-creaper/" CreationDate="2011-04-13T17:34:28.533" UserId="2469" />
  <row Id="14595" PostId="11040" Text="From the block of code he just handled attempting to read data from a closed socket. Good find Asmo!" CreationDate="2011-04-13T17:40:29.960" UserId="4443" />
  <row Id="14596" PostId="11034" Text="+1 and added the debugging tag as those kind of skills will pay of for any developer." CreationDate="2011-04-13T17:44:48.020" UserId="4443" />
  <row Id="14597" PostId="11075" Text="For sample images, just run a Google image search for &quot;RPG maker XP&quot; (without the quotation marks)." CreationDate="2011-04-13T18:00:08.797" UserId="1929" />
  <row Id="14598" PostId="11069" Text="Also don't forget that C++ is &quot;closer&quot; to the hardware. It allows you to integrate your C++ code and fast machine code. This can be really important for game development, especially if we are talking about graphics programming. " CreationDate="2011-04-13T18:42:08.917" UserId="6705" />
  <row Id="14599" PostId="11016" Text="@AttackingHobo : help me more about the latency.i tell the scenario " CreationDate="2011-04-13T18:56:03.983" UserId="6678" />
  <row Id="14600" PostId="11016" Text="Suppose there are 2 mobiles having and game server.The should be designed for 3G network.Please be more specific about the different protocols http / tcpip / udp.&#xA;Estimation of latency time, different elements of protocol, logic of the&#xA;communication, setup of the communication (client role, server role).&#xA;I am looking for a solution for Android AND iPhone." CreationDate="2011-04-13T19:07:41.263" UserId="6678" />
  <row Id="14601" PostId="11016" Text="How can server send messages to mobile phones?&#xA;How about &quot;push messages&quot; ? Do not forget that billing (who pays the&#xA;network use?) is an important element in this discussion.&#xA;We do not need that the server initiates the communication, this can be done by the mobile (client) at start of the game.&#xA;So how about initializing a bidirectional communication channel with TCP/IP from client side? Then, during the game client and server use this channel to send to each other UDP messages?" CreationDate="2011-04-13T19:08:00.653" UserId="6678" />
  <row Id="14602" PostId="10917" Text="See my edited answer." CreationDate="2011-04-13T19:14:23.183" UserId="6637" />
  <row Id="14603" PostId="11070" Text="Alright, thanks for your answers everyone, you've covered everything I needed I think. :-)" CreationDate="2011-04-13T19:30:01.763" UserId="6710" />
  <row Id="14604" PostId="11016" Score="1" Text="@GameBuilder You will have to make your game lag tolerant. Pong seems like a game that will literally be impossible to place nicely at over 300 ping. You have to allow each client have a delay of .3 seconds to 3 seconds for the opponents move, meaning fast games like pong where the ball could move back and forth multiple times per second wont work at all, or in order to make them work you will have to delay the game while the opponent receives the information and reacts to it, and resends it back." CreationDate="2011-04-13T19:41:36.557" UserId="962" />
  <row Id="14605" PostId="11072" Score="3" Text="I disagree. C++ is a high-level language, with the build-in facility to fall back on C (which is a low-level language)." CreationDate="2011-04-13T20:02:14.877" UserId="6713" />
  <row Id="14606" PostId="11081" Score="1" Text="Obj-C isn't managed code on iOS. For example (and in particular) Obj-C has a garbage collector when programming for OSX, but it doesn't have a garbage collector on iOS." CreationDate="2011-04-13T20:08:08.777" UserId="6588" />
  <row Id="14607" PostId="11081" Text="@jhocking i never said it was managed, isn't there still overhead when using obj-c as opposed to c++? I did mention c# vs c++ it was no where near obj-c vs c++" CreationDate="2011-04-13T20:11:20.633" UserId="6117" />
  <row Id="14608" PostId="11081" Text="When you post a link called &quot;Managed Code in Games&quot; while talking about Obj-C then I take that to mean you think Obj-C is managed code. Which it is on OSX, just not on iOS. Kind of goofy that, as if Java compiled to machine code on some platforms but ran in JVM on others." CreationDate="2011-04-13T20:14:03.860" UserId="6588" />
  <row Id="14609" PostId="11081" Text="oh and I don't know if Obj-C has any overhead compared to C++. That's why I'm not posting an answer myself." CreationDate="2011-04-13T20:14:45.417" UserId="6588" />
  <row Id="14610" PostId="11081" Text="@jhocking the way method calling works and memory management are 2 things that obviously include overhead in obj-c as opposed to c++. I've edited my answer to clarify according to your points :) Still don't you agree that the c# vs c++ logic in this article applies to obj-c vs c++ as well?" CreationDate="2011-04-13T20:18:40.300" UserId="6117" />
  <row Id="14611" PostId="10917" Score="1" Text="Love this answer, but it could use some $\LaTeX$ markup of the math." CreationDate="2011-04-13T20:44:01.947" UserId="2768" />
  <row Id="14612" PostId="11074" Text="As far as I know, `GL_GENERATE_MIPMAP_SGIS` was an extension and now is part of the OpenGL core as `GL_GENERATE_MIPMAP`, they have the same defines as I said above. You answer has little to do with my question... That's not what I asked." CreationDate="2011-04-13T20:45:32.470" UserId="6178" />
  <row Id="14613" PostId="11081" Text="Okay now I'm confused what you think the &quot;managed&quot; in &quot;managed code&quot; actually means. I mean, you say you know that Obj-C isn't managed code, but then you criticize the memory management in it. Similarly, I talked about garbage collection; if you think garbage collection and memory management are separate things, then what exactly do you think memory management is?" CreationDate="2011-04-13T20:54:17.333" UserId="6588" />
  <row Id="14614" PostId="11021" Text="@James: I need more help.I will tell u the scenario .&#xA;Suppose there are 2 mobiles having Pong game and game server.The should be designed for 3G network.Please be more specific about the different protocols http / tcpip / udp. Estimation of latency time, different elements of protocol, logic of the communication, setup of the communication (client role, server role). I am looking for a solution for Android AND iPhone.&#xA;How can server send messages to mobile phones? How about &quot;push messages&quot; ? Do not forget that billing (who pays the network use?)" CreationDate="2011-04-13T21:01:12.947" UserId="6678" />
  <row Id="14615" PostId="11021" Text="We do not need that the server initiates the communication, this can be done by the mobile (client) at start of the game. So how about initializing a bidirectional communication channel with TCP/IP from client side? Then, during the game client and server use this channel to send to each other UDP messages?" CreationDate="2011-04-13T21:01:44.663" UserId="6678" />
  <row Id="14616" PostId="11081" Text="@jhocking garbage collecting isn't the only type of memory management model, and while objective-c's retain and release model (not sure about the name) doesn't involve nearly as much overhead as reference counted garbage collection, it does involve some overhead when compared to c++ memory management, the difference might not be trivial when it comes to heavy operations such as physics or rendering related computations..." CreationDate="2011-04-13T21:02:42.320" UserId="6117" />
  <row Id="14617" PostId="11086" Score="2" Text="I disagree with the word &quot;easy.&quot; &quot;Possible&quot; may be a better choice. " CreationDate="2011-04-13T21:11:24.017" UserId="2306" />
  <row Id="14618" PostId="11087" Text="Thats actually what im doing. I queue them into groups of 10 cells per &quot;batch&quot;. The terrain data is always in memory." CreationDate="2011-04-13T21:14:05.290" UserId="6708" />
  <row Id="14619" PostId="11072" Score="6" Text="C++ is a high level language, as is C. Assembly is low level. Now, C++ is higher level than C is, just as C# is higher than C++ and Ruby/Python are higher than C#." CreationDate="2011-04-13T21:18:03.257" UserId="138" />
  <row Id="14620" PostId="11081" Text="And this is where we reach the end of my understanding of these matters. I thought retain and release in Obj-C was the same as alloc dealloc in C++." CreationDate="2011-04-13T21:26:56.537" UserId="6588" />
  <row Id="14621" PostId="11021" Text="I can not give you latency estimates over 3G network besides 'Depends on signal strength, clarity, carrier, etc'. I also can not architect a networking system for you, but here are my overall thoughts. Use TCP to connect to a server for match making. Once two clients have been put together then I would say definitely use UDP for game-play packets. Whether you want to support 3G and/or WIFI connections from the phone depends on the abilities of the targeted phones and what you want to develop. Hope this helps!" CreationDate="2011-04-13T21:31:42.677" UserId="4443" />
  <row Id="14622" PostId="11081" Text="@jhocking no sir :) &quot;The thing is, the retain/release model in Objective-C is roughly a middle ground from no memory management to a basic GC so you are already ahead of the curve.&quot; http://interfacelab.com/objective-c-memory-management-for-lazy-people/" CreationDate="2011-04-13T21:57:21.383" UserId="6117" />
  <row Id="14623" PostId="11086" Text="Yeah, for many smaller games (eg. most iPhone games) it's better to simply re-write everything from scratch for the new platform rather than attempting to adapt the code from one platform to work on another. A solid MVC architecture would minimize this pain, but who would bother with that for a match-3 game?" CreationDate="2011-04-13T22:01:35.320" UserId="6588" />
  <row Id="14624" PostId="11091" Score="1" Text="I very much concur with the advice to focus on finishing the project with whatever tools you are most productive with. Avoiding premature optimization doesn't only apply to writing code, it's a good way to approach life." CreationDate="2011-04-13T22:04:47.783" UserId="6588" />
  <row Id="14625" PostId="11021" Text="Is there any particular reason to use TCP while match making and UDP for game play packets? Plz Explain?" CreationDate="2011-04-13T22:12:29.183" UserId="6678" />
  <row Id="14626" PostId="11077" Score="1" Text="-1 (if I could) - local primitives are allocated on the stack in both Java and C#, and in C# you can create stack-allocated `structs`.  More to the point, the extremely *extremely* small increase in speed this nets you is not *nearly* enough to justify one language over the other.  The real reason is stated by @Graham Perks:  it's what game developers are expected to know, so it's what new game developers learn, and what new SDKs are targeted for.  There are plenty of languages (ex. Go) which are just as fast or faster, and not *nearly* as inconvenient to write for." CreationDate="2011-04-13T22:20:52.427" UserId="2061" />
  <row Id="14627" PostId="11021" Score="1" Text="Matchmaking requires guaranteed communication (Find Partner, Partner Found, Begin Match, etc) which TCP can do (UDP can as well, just takes a bit more work). Any sort of real time interactive game where actions over a second matter (like the position of the ball and paddles) need to be as real time as possible, which is what UDP is good for and TCP sucks at. So TCP for where real-time to the second doesnt matter (match making) and UDP when it does (Game play)." CreationDate="2011-04-13T22:21:23.177" UserId="4443" />
  <row Id="14628" PostId="11069" Score="1" Text="@Benjamin: Then I daresay you haven't written enough in C++, or you've never used a more expressive language like Python (or even C# with LINQ).  However, even if for some crazy reason you *prefer* writing 20 lines code for what many other languages can do in 1, C++'s extremely [poor](http://stackoverflow.com/questions/1172939) [grammar](http://stackoverflow.com/questions/794015) means that programs take [significantly longer to compile](http://stackoverflow.com/questions/318398) than they should, and proper IDE tools (refactoring, etc.) are more difficult, if not impossible, to create." CreationDate="2011-04-13T22:38:24.480" UserId="2061" />
  <row Id="14629" PostId="11087" Text="couple of other thoughts if you're not doing this already: 1. you could create a pool of vertex and index buffers and re-use them to avoid some resource creation overhead.  2.  Check the usage flags on your SetData calls to see if there's a faster way.  3.  is the view distance great enough that you could store your terrain in more than one level of detail?  Maybe tessellate as you get closer to each cell?" CreationDate="2011-04-13T22:47:54.927" UserId="5639" />
  <row Id="14630" PostId="10917" Text="@meriton, how do you define the initial value of 'ts' in ts = ts - t ? Or what 'ts' represents in a computer program?" CreationDate="2011-04-13T23:08:48.187" UserId="6616" />
  <row Id="14631" PostId="11082" Score="1" Text="&quot;There's no feature new to C++ that I think improves games.&quot; LOL? OOP? A class `human` with derivates `player` and `enemy`?" CreationDate="2011-04-13T23:10:12.293" UserId="4827" />
  <row Id="14632" PostId="11082" Score="2" Text="@nightcracker: Basic is-a inheritance works fine in C; the relationship you describe is better implemented using has-a for performance and cleanliness reasons anyway." CreationDate="2011-04-13T23:14:45.363" UserId="744" />
  <row Id="14633" PostId="10911" Text="Definitely, as things go, soon we may employ the theory of relativity to solve it – the problem is getting mass(ive)." CreationDate="2011-04-13T23:18:14.620" UserId="6616" />
  <row Id="14634" PostId="11077" Text="C++ is not very good at stack allocation; in fact, it's very hard to allocate STL-compatible objects on the stack. e.g. The last large engine I worked on was in C, and we had a string which you could start on the stack at some fixed size (usually 1K). If it grew past that it transparently moved to the heap. You can do some similar things with std::string custom allocators in C++, but the code is so much trickier to get right." CreationDate="2011-04-13T23:18:44.970" UserId="744" />
  <row Id="14635" PostId="11096" Text="The Wikipedia link is quite technical. Maybe you can explain more how this answer relates to my question; I'm not too sure." CreationDate="2011-04-13T23:30:18.317" UserId="1929" />
  <row Id="14636" PostId="11077" Score="1" Text="@Joe Wreschnig:  C++ is excellent at stack allocation, just dump an assembly language listing.  However, most compiler vendors do not allocate a huge amount of memory to the stack.  A common understanding of experienced C++ programmers is that Huge objects are dynamically allocated (heap) not local storage (stack).  Huge objects on the stack may overrun into the heap on some platforms as the stack and heap grow towards each other." CreationDate="2011-04-13T23:31:56.230" UserId="6707" />
  <row Id="14637" PostId="11021" Text="What is Push Message and how it can be used here.." CreationDate="2011-04-13T23:35:46.617" UserId="6678" />
  <row Id="14638" PostId="11077" Score="1" Text="@Thomas: A common understanding of more experienced C++ programmers, particularly those on game consoles, is that everything that won't overflow the stack is stack allocated or preallocated. C makes this easy because the allocator is not part of the object's structural type. This also makes it possible to free something incorrectly, but in my experience that is a rare problem compared to someone screwing up stdlib-compatible allocator implementations/compatibility. There are also some tricks with placement new, but again, that's more complicated than the equivalent in C." CreationDate="2011-04-13T23:38:41.593" UserId="744" />
  <row Id="14639" PostId="11021" Text="Its a notification system and it -might- be useful if you do not have too popular of a game to let someone look for a match over a long period of time and let them know when a second person has finally shown up. You will have to look at the respective APIs of your target devices to figure out how they are used however." CreationDate="2011-04-13T23:39:05.653" UserId="4443" />
  <row Id="14640" PostId="11082" Score="3" Text="There is a growing consensus that C++'s OOP features are not appropriate for games, because these features operate on assumptions that are hostile to cache performance." CreationDate="2011-04-13T23:43:08.907" UserId="6042" />
  <row Id="14641" PostId="11021" Text="Is it possible that server sends the push notification to client2 that client1 wants to play with client2?&#xA;" CreationDate="2011-04-13T23:50:21.743" UserId="6678" />
  <row Id="14642" PostId="11021" Score="1" Text="Yes, sorry. A Push Notification simply means that the server is pushing the notification to a client.. So Client 1 would tell the server it wants a game, it would have a list of people who want to be notified by Push when someone is around to play and then the server would send a notification of 'Person available' or something like that." CreationDate="2011-04-13T23:53:36.323" UserId="4443" />
  <row Id="14643" PostId="11021" Text="As u Already Mentioned that Latency depends upon signal strength clarity carrier.Suppose if all the above condition are perfectly fine. but I want to speed up the sending and receiving of game Play packets ,is there any method,or is there any thing i have to take care of??" CreationDate="2011-04-14T00:08:45.197" UserId="6678" />
  <row Id="14644" PostId="11021" Score="1" Text="While you do not want to delay sending packets, as you want them to send as often as they need to. Packaging multiple available updates of information together and sending them at once is the best way. it will take more time to send the position of a paddle then a ball then another paddle then it will to send all three of those pieces of information at once for instance. The smaller the size of the data to send the more small parts you can pack together and still send nice (4096byte) packets and the like." CreationDate="2011-04-14T00:21:35.913" UserId="4443" />
  <row Id="14645" PostId="11088" Text="Dynamic shadows are too tough. And colours is a hard question -- hence why I'm asking! :)" CreationDate="2011-04-14T00:45:16.960" UserId="1929" />
  <row Id="14646" PostId="11037" Text="Sorry about the delay, I'd posted just before an major interruption and was unable to get back to you all right away. @bmcnett, an FoV implementation is a field of view implementation. There's all sorts of information on the web if you Google it. @Tetrad yes. @LumpN how would I go about that? @Sam Hocevar it's a 2D word, grid aligned, one type of wall." CreationDate="2011-04-14T01:12:26.393" UserId="3403" />
  <row Id="14647" PostId="11072" Text="Legacy Code should be depreciated, as you point out, other c++ libraries have the interfaces. With swig any c++ code can be bound to another language similarly.  " CreationDate="2011-04-14T03:10:51.580" UserId="6723" />
  <row Id="14648" PostId="11099" Text="WoW is out of my reach, but I will try what you said -- that, or whip up an app to quickly load images and visually see how they look with various filters." CreationDate="2011-04-14T03:35:47.183" UserId="1929" />
  <row Id="14649" PostId="11006" Score="3" Text="&quot;I've not yet seen a good designer start out as a professional coder&quot; - Richard Garriott, Peter Molyneux, Sid Meier, Will Wright, Chris Crawford, David Braben, Doug Church, Jonathan Blow, Soren Johnson, John Romero, and a fair few others might take issue with that - for subjective values of 'good', obviously. :)" CreationDate="2011-04-14T03:43:07.823" UserId="1101" />
  <row Id="14653" PostId="10983" Text="sorry for my late response (too much work). Thanks for your code. I use Java a lot (not for this project though) and never used it to serialize objects into the db. Now I know (i am not a pro as you can see). But I need to ask how easy it is to add new attributes or remove others if needed, with this way." CreationDate="2011-04-14T06:58:55.037" UserId="6642" />
  <row Id="14655" PostId="10983" Text="Not so easy as if it would be a simple table, because you will have to convert all you data from old format to the new one. But we are talking about items - the most loaded part of database. 70% of operations involves items. You should do everything you can to optimize your database in this part." CreationDate="2011-04-14T07:06:33.410" UserId="3132" />
  <row Id="14656" PostId="11072" Score="2" Text="Why should legacy code be deprecated (not depreciated)? &quot;Legacy code&quot; just means it's old, not that it's bad." CreationDate="2011-04-14T07:12:05.390" UserId="744" />
  <row Id="14657" PostId="11097" Score="2" Text="As usual, Miguel pushes his favorite (usually marginal) technologies while ignoring the ways in which C# has actually become a big player in the industry, e.g. XNA." CreationDate="2011-04-14T07:13:52.563" UserId="744" />
  <row Id="14658" PostId="11077" Score="2" Text="No. The speed benefit of C++ is due to its ability to use your own custom-written memory manager for _heap_ allocations. Every sane language allocates locals on stack." CreationDate="2011-04-14T07:54:53.370" UserId="2710" />
  <row Id="14659" PostId="11054" Text="Could the down-voter at least explain his down-voting? My answer is informative and suggest a solution to OP's problem." CreationDate="2011-04-14T08:43:41.117" UserId="6210" />
  <row Id="14660" PostId="1402" Text="@jdeseno: what are the strengths of each frameworks? Which one is the simplest, the most robust and with the cleanest code? The word &quot;Functional&quot; in the Functional Javascript -term sounds interesting, what is it really about? Which framework would you suggest to pythonist?" CreationDate="2011-04-14T10:21:02.910" UserId="6365" />
  <row Id="14661" PostId="11080" Score="1" Text="Is your terrain to big the have one big-vertex buffer and a few smaller index buffers? This way you only have to change index buffers, which is a cheaper operation. How many triangles are we talking about for the entire terrain, and terrain cells anyway?" CreationDate="2011-04-14T10:23:26.920" UserId="5224" />
  <row Id="14662" PostId="11006" Text="@Kylotan, which is why I did specify that bedroom coders don't count. People who get started in games by designing them and coding them because they can (to my mind) are designers that can code, not the other way round. I think that Jonathan Blow might be the most obvious exception there." CreationDate="2011-04-14T11:32:42.287" UserId="1742" />
  <row Id="14663" PostId="10914" Text="Thank you for the comment. Infinite adaptive mario is quite an interesting concept. I think it should be included as an extra  ever-unique level of the game, but could not be a basis for a game on its own. Problem with the AI is that is mechanical in nature and a human being senses this quickly..." CreationDate="2011-04-14T11:40:05.560" UserId="6616" />
  <row Id="14664" PostId="11112" Score="4" Text="Did you try generating mipmaps?" CreationDate="2011-04-14T12:04:25.297" UserId="20" />
  <row Id="14665" PostId="10681" Text="+1; I love the way you can pin achievements on the screen in Team Fortress 2. Every time you work something for an achievement - _ding!_ Instant gratification." CreationDate="2011-04-14T13:15:40.427" UserId="938" />
  <row Id="14666" PostId="11116" Text="It could be done by simulating gravity which is fairly simple (add a force dependent on the mass * sqrt( distance ) and do simple physics)" CreationDate="2011-04-14T13:18:39.457" UserId="337" />
  <row Id="14667" PostId="11115" Text="@Sam Hocevar: Thanks. I'll apply this same idea of splitting methods to handling events also. If you have a better idea for the events situation I mentioned earlier please let me know. I can't believe that I spent a week to think of complex solutions. Really, thanks again." CreationDate="2011-04-14T13:36:38.900" UserId="6729" />
  <row Id="14668" PostId="11114" Score="1" Text="How do you intend on training the birds? That is probably the biggest point, there are plenty of intelligent systems you can input the data into; but the one that gives you what you want with the least trouble is what you want.&#xA;So, how do you intend on training them? How are separating, the good from the bad. How you answer this question will determine what library you'll probably end up using." CreationDate="2011-04-14T13:49:06.647" UserId="4513" />
  <row Id="14669" PostId="11006" Score="2" Text="I don't understand the distinction you're making. They were professional coders, who are now successful designers. They weren't professional designers who could code. The concept of a professional game designer didn't even exist for most of them when they started out." CreationDate="2011-04-14T14:07:07.977" UserId="1101" />
  <row Id="14670" PostId="10701" Text="Writing automated tests to test that the game is balanced is brilliant. Cheers." CreationDate="2011-04-14T14:17:56.930" UserId="1929" />
  <row Id="14671" PostId="11114" Text="For example, I could use a reward function based on speed and average distance to cause the flock to cluster together and stop moving (or move very slowly).  Then, alter the reward function again to make the cluster separate and begin to flock forward in formation." CreationDate="2011-04-14T14:30:06.893" UserId="3872" />
  <row Id="14672" PostId="11112" Score="1" Text="Might also help to provide some screenshots of what exactly you're talking about.  Could be a couple things, but as bummzack said, probably mipmaps." CreationDate="2011-04-14T14:33:49.837" UserId="4296" />
  <row Id="14673" PostId="11116" Score="3" Text="No don't do simple physics! Orbits are numerically unstable and everything will implode or explode." CreationDate="2011-04-14T14:46:46.990" UserId="6655" />
  <row Id="14674" PostId="11122" Score="1" Text="Screenshots would help." CreationDate="2011-04-14T14:58:18.027" UserId="51" />
  <row Id="14675" PostId="11112" Text="http://imgur.com/a/pdzdS theres zoomed in and zoomed out" CreationDate="2011-04-14T15:03:06.273" UserId="3995" />
  <row Id="14676" PostId="10537" Text="HTTP offers several advantages, though: it can use proxies, it's almost never firewalled, it offers near transparent encryption using HTTPS, has several authentication methods..." CreationDate="2011-04-14T15:41:26.407" UserId="5864" />
  <row Id="14677" PostId="11124" Score="2" Text="The post: http://gamedev.stackexchange.com/questions/10770/whats-the-difference-between-a-library-and-an-engine might help with this one, as commented on below what you are describing seems more of a Part of a game engine, rather than an entire game engine." CreationDate="2011-04-14T15:54:38.550" UserId="4443" />
  <row Id="14678" PostId="11113" Text="Can you add more of your code? For example Attribute initialization and setting. " CreationDate="2011-04-14T16:35:14.073" UserId="4947" />
  <row Id="14679" PostId="10917" Text="Oops, sorry. `ts` stands for time step, the time between two position updates of the ball." CreationDate="2011-04-14T17:32:35.887" UserId="6637" />
  <row Id="14681" PostId="11103" Score="1" Text="Oh, I dunno about it only being important for &quot;underpowered&quot; platforms. The other way to look at this is that gaming is always at the forefront of performance on any platform: any new power is immediately gobbled up. If we're talking professional game development, then performance is pretty much the primary concern: you don't write Unreal without maximizing every single last cycle the machine has to offer. Every; single; cycle. On every level, from the graphics engine and disk access up to your UI loop." CreationDate="2011-04-14T18:41:13.793" UserId="6690" />
  <row Id="14682" PostId="11129" Text="gluBuild2DMipmaps is a bad function to suggest. If you are targeting OpenGL 2, you should use GL_GENERATE_MIPMAP. If you are targeting OpenGL 3, you should use glGenerateMipmaps." CreationDate="2011-04-14T18:51:01.327" UserId="744" />
  <row Id="14683" PostId="11103" Text="@Chris: The best way I've found to describe it to non-game programmers is that games are a domain where speed is a competitive advantage. If your word processor starts in 5 seconds where MS Word takes 10, or reflows in 0.1 seconds where Word takes 0.2, that's worthless. But if your game can pump out even 10% more fragments or show even one more detailed character, that can be a huge competitive advantage." CreationDate="2011-04-14T18:56:47.467" UserId="744" />
  <row Id="14684" PostId="10211" Text="maybe I am not getting anything(or because I haven't tested yet) but assuming I have 75 by 75 sprites. &#xA;3 rows, 6 columns and 15 sprites in total (row 1:6 sprites row 2:6 row 3:3)&#xA;&#xA;I used your calculation above and my second sprite (row 0, column 1) my rectangle is 12,0,12,25...which doesnt seem to fit my 75x75 sprite" CreationDate="2011-04-14T18:57:01.913" UserId="4777" />
  <row Id="14685" PostId="11129" Score="1" Text="Also, for preference, don't even bother with online generation. You can generate mips offline pretty easily, which only adds around 30% to your texture sizes, but saves a ton of loading time. You can also experiment with alternate shrinking filters to achieve the look you want (sharper, softer, etc). As for filtering: if you're only doing 2D screens, don't bother with anything but linear: anisotropic filtering is for coping with changing mip levels across a single polygon, which can't happen if you're orthogonal to the camera." CreationDate="2011-04-14T19:03:20.980" UserId="6690" />
  <row Id="14686" PostId="11069" Text="@BlueRaja: You say that like the Python refactoring tools are grand. (They're garbage, as are refactoring tools for nearly every dynamically-typed language other than Smalltalk.) Honestly, VS tools support various renames for C and C++, which covers 99% of &quot;refactoring&quot;." CreationDate="2011-04-14T19:54:05.430" UserId="744" />
  <row Id="14687" PostId="11129" Text="Online generation is still useful if you're doing dynamic textures. Some 2D APIs I have worked with will automatically atlas as you load (under the premise a 2D game is more likely to load lots of small textures, and the artist burden of manually atlasing would be large), which requires online mipmap generation." CreationDate="2011-04-14T20:01:51.473" UserId="744" />
  <row Id="14688" PostId="11069" Text="@Joe Wreschnig: [PyDev](http://pydev.org/) is extremely good.  VS, however, does not contain refactoring support for C++ as you claim.  The main products for this are [Refactor!](http://www.devexpress.com/Products/Visual_Studio_Add-in/RefactorCPP/index.xml) and [Visual Assist](http://www.wholetomato.com/) *(I think Eclipse also has rudimentary C++ refactoring support)* - however, I have tried both and had problems with both of them refactoring things incorrectly.  Not because either of those products are bad, but because C++'s grammar makes it stupidly-hard to refactor." CreationDate="2011-04-14T20:16:56.790" UserId="2061" />
  <row Id="14689" PostId="11103" Text="Then wouldn't it be silly to ever code in anything but assembly?  It would certainly be at least 10% faster.  There is a point where you make a call to trade off performance for maintainability and speed of development.  Generally that point is C++ these days.  It'd be nice if the ability to go cross-platform like Minecraft had more of a weight." CreationDate="2011-04-14T20:33:35.833" UserId="3057" />
  <row Id="14690" PostId="11133" Text="I never said anything about typing. I want to know the time a key has been pressed down, the exact milliseconds." CreationDate="2011-04-14T20:35:27.767" UserId="962" />
  <row Id="14691" PostId="11129" Text="Made my answer a community wiki - haven't done openGl in years so others can suggest better resources in the answer if they want." CreationDate="2011-04-14T20:36:51.333" UserId="4296" />
  <row Id="14692" PostId="11133" Text="And actually a human can type at a rate of more than 30 keys per second but only in a burst of a few keys, not a sustained rate." CreationDate="2011-04-14T20:37:02.913" UserId="962" />
  <row Id="14693" PostId="11133" Text="If you update sixty times per second, you get accuracy to 16ms. What accuracy do you require, and why?" CreationDate="2011-04-14T20:37:27.560" UserId="6042" />
  <row Id="14694" PostId="11133" Text="For player movement, I want the user to be able to tap once quickly and have the player move less than 1 full press." CreationDate="2011-04-14T20:40:14.190" UserId="962" />
  <row Id="14695" PostId="11133" Text="@AttackingHobo Could you not make use of equations of motion for this? While it's held down apply an acceleration vector to a velocity vector? The longer it's held down, the higher the velocity?" CreationDate="2011-04-14T21:21:00.020" UserId="2332" />
  <row Id="14696" PostId="11113" Text="I added/changed the code a little" CreationDate="2011-04-14T21:24:33.803" UserId="6562" />
  <row Id="14698" PostId="11103" Text="Ah, but it's a fallacy that coding in assembly is faster: current chips are complex enough that it's difficult for a programmer to outperform a compiler consistently. Only in more constrained domains like SPUs on the PS3, inner physics loops and shaders on GPUs are there still clear advantages. C++ is indeed currently the sweet spot, with the caveat that OOP isn't always the best choice: the ongoing Struct of Arrays vs Array of Structs discussion isn't exactly a language discussion, but C++ clearly leads you to AoS naturally; Sometimes... you really just want C." CreationDate="2011-04-14T21:53:05.297" UserId="6690" />
  <row Id="14699" PostId="11133" Text="@Ray Dey , sure I could, but I need to know how long it has been held down, which is the my question.... And if you are talking about acceleration each frame, NO, shmups control really bad with physics for movement." CreationDate="2011-04-14T22:05:23.883" UserId="962" />
  <row Id="14700" PostId="11138" Text="I specifically asked for something that can give me a time that is less than the time for each update. Your answer will only give me time in increments of 16ms." CreationDate="2011-04-14T22:06:51.353" UserId="962" />
  <row Id="14701" PostId="11133" Text="I know it wasn't related to your question, was just trying to get a bit more context. Ahh ok, I have no experience of developing SHMUPs but can imagine that being the case. Good luck!" CreationDate="2011-04-14T22:15:07.217" UserId="2332" />
  <row Id="14702" PostId="11048" Text="Do you mean Position Evaluation? As in what some Chess AI's use?" CreationDate="2011-04-14T22:42:06.087" UserId="2332" />
  <row Id="14704" PostId="11130" Text="Based on your other comments, I have to ask, is getting ~16ms accuracy actually detrimental to your game?  Pretty much every game I've ever done has not bothered with input on the sub-frame scale.  Maybe there are some other things causing the game to feel bad (which I'm assuming it does, otherwise why are you asking?)" CreationDate="2011-04-14T22:50:00.190" UserId="51" />
  <row Id="14705" PostId="11122" Text="Added a screenshot :)" CreationDate="2011-04-15T01:29:14.487" UserId="6743" />
  <row Id="14707" PostId="11138" Score="1" Text="So run that in it's own thread. XNA doesn't have event handler for keyboard changes." CreationDate="2011-04-15T03:10:19.270" UserId="6302" />
  <row Id="14708" PostId="11138" Text="DateTime.Now has worse resolution than the update, though. Try Stopwatch." CreationDate="2011-04-15T03:36:51.300" UserId="1442" />
  <row Id="14709" PostId="11130" Score="1" Text="You know, Mario games didn't need sub-frame accuracy to pull off the &quot;quick tab for low jump, full press for high jump&quot; thing. Better add an acceleration vector for the first 2-3 frames of the jump." CreationDate="2011-04-15T03:39:05.620" UserId="1442" />
  <row Id="14710" PostId="10211" Text="@FreshJays The values of `width` and `height` in my above code are the size of the *sprite*, derived from the size of the *texture* that the sprites are packed in. If you know the pixel size of your sprite, you can use that value directly and ignore the size of the texture." CreationDate="2011-04-15T04:26:21.253" UserId="288" />
  <row Id="14711" PostId="11144" Text="Related http://gamedev.stackexchange.com/questions/2057/most-needed-open-source-project/2059#2059 but not very helpful." CreationDate="2011-04-15T06:06:31.103" UserId="395" />
  <row Id="14712" PostId="11136" Text="Actually, the animation is from Wikipedia." CreationDate="2011-04-15T06:42:37.130" UserId="5493" />
  <row Id="14713" PostId="11145" Text="Well, yes, this is a solution, but my program is not a physics simulation in real time. It is discrete, and I cannot update everything everywhere. This is why the position as a function of time is nice : doesn't need computation, always exact no matter how frequently the positions are updated." CreationDate="2011-04-15T06:52:09.383" UserId="5493" />
  <row Id="14714" PostId="11140" Text="Thanks. Looks like I'll have to use the Newton method to solve the second equation." CreationDate="2011-04-15T06:52:33.813" UserId="5493" />
  <row Id="14715" PostId="11133" Text="Still this is a non-problem you're trying to solve. I did a little test case, and if I try very hard I can hold a key for 16ms, but most of the time it takes me 32 (2 frames) to hold and release it. Humans brain-&gt;finger control doesn't really work with &lt;16ms time accuracy, and especially in a shmup it's not important, now if you're making a platform with mad jumps I can understand it, but for shump you basically just stafe a bit when under fire, you're not focussed on moving, you're focussed on shooting, so why would you really need that high time-accuracy?" CreationDate="2011-04-15T06:59:55.367" UserId="5224" />
  <row Id="14716" PostId="11121" Text="@LumpN Thank you so much for this, i'll try it out an get back to you." CreationDate="2011-04-15T07:47:14.190" UserId="6732" />
  <row Id="14717" PostId="11103" Text="The step in programmer efficiency between assembler and C/C++ is also an order of magnitude greater than the step in programmer efficiency between C and C++, or C++ and C#/Java. Fred Brooks pointed this out 25 years ago." CreationDate="2011-04-15T07:52:02.203" UserId="744" />
  <row Id="14719" PostId="11139" Text="Thank you all for your clarifications - I still haven't decided how to call our &quot;thing&quot;, but I understood that &quot;game engine&quot; would be quite misleading." CreationDate="2011-04-15T08:13:11.437" UserId="3853" />
  <row Id="14720" PostId="11125" Text="I find your definition &quot;a place to set up AI characters and play with the mechanics of the game&quot; correct; the only problem with &quot;Prototype Environment&quot; is that at least in the case of a browser game, the same engine that makes the prototype run is then used to make the real game run." CreationDate="2011-04-15T08:15:18.110" UserId="3853" />
  <row Id="14721" PostId="11126" Text="So I'll search a way to put together &quot;story engine&quot; with &quot;prototype environment&quot;. Hmmm." CreationDate="2011-04-15T08:16:24.787" UserId="3853" />
  <row Id="14722" PostId="11113" Text="You pass only one vertex with coordinates 0,0,0, so it have to draw just one point with these coordinates and also with black color. I don't think, it could give you any other color. Do I understand it wrong?" CreationDate="2011-04-15T08:23:48.000" UserId="4947" />
  <row Id="14723" PostId="11121" Text="@LumpN from these equations you provided, i'd like to get the current X &amp; Y for a give time (t), should i replace my Vo with V_x and Vo with v_y? Also if i need to add the initial KE with which  the ball was fired, will this `KE=0.5*m*(V*V)` be valid?" CreationDate="2011-04-15T08:28:26.060" UserId="6732" />
  <row Id="14725" PostId="11113" Text="if gl_PointCoord ranges from 0-1(as it should), the point's red value should range form 0-1 horizontally, and the green value from 0-1 vertically because of this line in the fragment shader: gl_FragColor = vec4(gl_PointCoord.st, 0, 1);, but I only get black." CreationDate="2011-04-15T09:40:32.950" UserId="6562" />
  <row Id="14726" PostId="11121" Text="@Smith I'll edit my answer to account for your questions" CreationDate="2011-04-15T10:00:49.820" UserId="6655" />
  <row Id="14727" PostId="11113" Text="When I look at your coordinates: float vertices[]={0.0f,0.0f,0.0f}; You pass just one point, and also draw just one point (glDrawArrays(GL_POINTS, 0, 1);). When you pass your coordinates (0,0,0) in VS, you draw just one pointSprite on screen and it's black colored (the same as your coordinates). I don't know, if pointCoords are somehow transfered over the whole pointSprite. I think, it's only passed from VS." CreationDate="2011-04-15T10:29:24.743" UserId="4947" />
  <row Id="14728" PostId="11113" Text="If you look at the shader, the attribute I pass is the position, and if I change the values it only changes the position of the point sprite. The position of the point sprite has nothing to do with gl_PointCoord, gl_PointCoord should normally be the position of the fragment on the point(from 0-1)" CreationDate="2011-04-15T10:42:01.220" UserId="6562" />
  <row Id="14729" PostId="11121" Text="@LumpN  this is exactly what i did, and x is always negative, why?" CreationDate="2011-04-15T11:29:23.963" UserId="6732" />
  <row Id="14730" PostId="11006" Text="@Richard, I would say the only distinction between &quot;bedroom coder&quot; and &quot;designer who started as professional coder&quot; is when they first started making games. A &quot;designer that can code&quot; today might still get their first game industry job as a coder, not a designer, because there are more entry-level coding jobs out there. FWIW, this was my career path (programmer -&gt; game programmer -&gt; game designer) and I know a few others who went this path as well." CreationDate="2011-04-15T12:55:04.003" UserId="458" />
  <row Id="14732" PostId="11155" Text="Fairly close to [Develop an MMO?](http://gamedev.stackexchange.com/questions/90/why-is-it-so-hard-to-develop-a-mmo), or at least some of the Answers there, apply to here." CreationDate="2011-04-15T13:38:35.150" UserId="165" />
  <row Id="14733" PostId="11139" Score="1" Text="I'm not sure I entirely agree. I can have an AI engine, a rendering engine, a scripting engine, a narrative engine, etc and bundle those up. I don't dispute the rest of the definition, I just don't see an engine as needing to comprise 'everything'" CreationDate="2011-04-15T13:39:05.810" UserId="1628" />
  <row Id="14734" PostId="11125" Score="1" Text="The difference between prototype and production is whether it has a release number or not ;)" CreationDate="2011-04-15T13:40:08.760" UserId="1628" />
  <row Id="14735" PostId="11155" Score="2" Text="-1, this isn't something that's easily answerable.  It heavily depends on the variables at play.  Like how many users, what tech the game is based off of, how many concurrent users per server your game can support, where in the world the servers and devs are located, that kind of thing." CreationDate="2011-04-15T14:29:56.250" UserId="51" />
  <row Id="14736" PostId="11159" Text="I think you mean SQLite?? Might want to update the spelling (though Google will find it right) so people are aware." CreationDate="2011-04-15T16:17:28.197" UserId="4443" />
  <row Id="14737" PostId="11159" Text="For sure using SQLite isn't a good choice when it comes to huge amounts of data: e.g. MMOs." CreationDate="2011-04-15T16:39:55.983" UserId="2063" />
  <row Id="14738" PostId="11155" Score="1" Text="It's a question worth answering, regardless of the &quot;ease'. Man up, tiny. ;)" CreationDate="2011-04-15T16:42:44.690" UserId="5259" />
  <row Id="14739" PostId="11155" Text="(I'm working on answering it now, no worries)" CreationDate="2011-04-15T16:49:46.077" UserId="5259" />
  <row Id="14740" PostId="11139" Text="@Rushyo good point. I didn't notice that I'd sloppily dropped to just &quot;engine&quot; when I meant to say &quot;game engine&quot;. I've fixed the two offending locations and added a clarification note. " CreationDate="2011-04-15T17:21:39.887" UserId="6690" />
  <row Id="14741" PostId="11155" Text="I do think we already have an answer to this question somewhere here, however." CreationDate="2011-04-15T17:46:13.867" UserId="1101" />
  <row Id="14742" PostId="11159" Score="1" Text="Now that I think about it, the appropriate answers are 'Yes', 'No but I used this' and 'No' Do we have a specific question to answer here???" CreationDate="2011-04-15T17:46:53.553" UserId="4443" />
  <row Id="14743" PostId="11168" Score="5" Text="The format currently used for level data is described at http://www.minecraftwiki.net/wiki/Beta_Level_Format." CreationDate="2011-04-15T18:59:27.267" UserId="3318" />
  <row Id="14744" PostId="11082" Text="Even if you believe that C++ offers no advantages over C you should surely recognize that a return to C offers no advantages over C++ either." CreationDate="2011-04-15T19:08:01.600" UserId="1443" />
  <row Id="14745" PostId="11169" Score="2" Text="Salary isn't a good metric for determining per-employee costs.  You also have to factor in payroll tax, health care costs, their percentage of shared resources (rent, non-project based support staff like IT), equipment and software costs, etc.  In my experience, standard rates in the US fall somewhere in the 10-15k per head per month range." CreationDate="2011-04-15T20:09:26.370" UserId="51" />
  <row Id="14746" PostId="11182" Text="Don't completely understand,Is this played against another playing? " CreationDate="2011-04-15T20:41:36.780" UserId="4777" />
  <row Id="14747" PostId="11169" Text="I know costs are nowhere near that high per person here in the UK, but then salaries are a bit lower too. My point was more that this is a lower bound - hopefully everybody will realise there are more costs than salary alone." CreationDate="2011-04-15T20:49:24.100" UserId="1101" />
  <row Id="14748" PostId="11172" Text="Most tower defense games I am aware of make the things crawl the Shortest path to the exit and block any moves that would invalidate from exiting... The hard part here would be making sure to recalculate the paths when the player changes the tower layouts" CreationDate="2011-04-15T20:58:45.857" UserId="4443" />
  <row Id="14749" PostId="11103" Text="I don't think Java existed 25 years ago, also I'm not convinced that a good Java programmer isn't an order of magnitude more efficient than a C programmer (if you include all refactoring and debugging time).  Someone should try to rewrite Minecraft in C and see if it can be done in a couple man-years (for all platforms).  I'd bet against it." CreationDate="2011-04-15T21:03:15.303" UserId="3057" />
  <row Id="14750" PostId="11168" Text="I love the &quot;should&quot; question. As if Notch is wrong. Hah. :-P" CreationDate="2011-04-15T21:22:29.443" UserId="189" />
  <row Id="14751" PostId="11159" Text="Just a comment: Most games are better off loading their data all into RAM in which case the file storage format doesn't matter too much." CreationDate="2011-04-15T21:41:57.080" UserId="2683" />
  <row Id="14752" PostId="11182" Text="Is the design so rigid that a &quot;tie removal&quot; additional round is impossible?" CreationDate="2011-04-15T21:49:17.603" UserId="51" />
  <row Id="14753" PostId="11159" Text="-1, because like @James says, there isn't a question here." CreationDate="2011-04-15T21:49:58.930" UserId="51" />
  <row Id="14754" PostId="11168" Text="Do you mean the database on the client, or the database on the server that's managing authentication, etc." CreationDate="2011-04-15T21:50:46.483" UserId="3830" />
  <row Id="14755" PostId="11172" Text="@James: Do you mean getting the shortest path, which is A*, or do you mean crawling through the waypoints to get valid directions for every tile. I also don't need to recalculate the path since my ways are fixed and the player can't place towers there. But in general you are right. &#xA;&#xA;" CreationDate="2011-04-15T22:12:11.013" UserId="6622" />
  <row Id="14756" PostId="11182" Score="1" Text="This is a common issue with voting, in a lot of cases `a &gt; b &gt; c` does not imply `a &gt; c`, especially not when `a &gt; b` is concluded because `a` was picked out of `{a,b,c,d,e}`." CreationDate="2011-04-15T22:14:51.883" UserId="4827" />
  <row Id="14757" PostId="11174" Text="That was my second thought. I have to think about the implementation of &quot;the way leads back now&quot; thing. Limiting the number of tiles to pass would not be dynamic and flexible. &#xA;" CreationDate="2011-04-15T22:18:06.907" UserId="6622" />
  <row Id="14758" PostId="11174" Text="You can solve this by building a directed graph and keeping track of the visited/unvisited tiles. Then just make sure you search unvisited tiles only. That should build you a graph that represent your paths. Now if you hit a tile where a note has several outgoing edges (in the graph that was previously built), just pick one randomly." CreationDate="2011-04-15T22:37:57.677" UserId="20" />
  <row Id="14759" PostId="11186" Text="I have no java experience, but I'm getting more and more interested in it. It seems to be a bit like a compiled Python (my favourite language) with fixed types. I like the batteries-included mentality of Python, and the same seems to go for Java too. Can java be compiled to native machine code (I don't like to force my end users to install a interpreter or VM, that's what I dislike about Python too)?" CreationDate="2011-04-15T22:42:49.593" UserId="4827" />
  <row Id="14760" PostId="11184" Text="@AttackingHobo: If you read this, I wasn't asking specifically for C++, just in general." CreationDate="2011-04-15T22:49:10.387" UserId="4827" />
  <row Id="14761" PostId="11186" Text="@nightcracker: Java runs in the vm. You can't run something without environment. Did you ever start a .exe on Linux? But I think it is worth the installation. Keep in mind: You can develop simultaneously for PC, mac and Linux. It isn't possible with c++ without code changes, I think. Minecraft is written in java and it has nearly 2 million users, so don't mind about the vm installation thing. ;) &#xA;" CreationDate="2011-04-15T22:49:26.313" UserId="6622" />
  <row Id="14762" PostId="11186" Text="@Marco: I know. Yet it still bugs me :) The Java code is compiled to machine code for the VM, can't be it compiled to native code, basicly moving the VM to compile time?" CreationDate="2011-04-15T22:51:22.430" UserId="4827" />
  <row Id="14763" PostId="11186" Text="@nightcracker: There are some programs who compile java into native code, but they compile also the vm which results in very very big files. In addition these 'compact' vms are unstable and so on. Compiling java into c is imo not possible, because of the different structures of the environments. &#xA;&#xA;" CreationDate="2011-04-15T22:57:44.173" UserId="6622" />
  <row Id="14764" PostId="11186" Text="@marco: Thanks, that answers my little OT question. So it's the same as with Python, you can make a frozen binary which includes the interpreter, but compiling to native machine code is impossible." CreationDate="2011-04-15T22:59:17.400" UserId="4827" />
  <row Id="14765" PostId="11168" Text="Managing authentication is not a database. It's a plain text file with account names, called Whitelist ;) &#xA;&#xA;" CreationDate="2011-04-15T23:03:58.070" UserId="6622" />
  <row Id="14766" PostId="11179" Score="2" Text="Notch uses a straight up binary format that's been compressed. His reason? Performance and space probably." CreationDate="2011-04-16T01:28:09.080" UserId="3547" />
  <row Id="14767" PostId="11174" Text="I meant to write &quot;node&quot; not &quot;note&quot; in my previous comment. Sorry." CreationDate="2011-04-16T07:53:06.443" UserId="20" />
  <row Id="14768" PostId="152" Text="Your C++ example might as well be C." CreationDate="2011-04-16T08:03:20.463" UserId="4513" />
  <row Id="14769" PostId="11112" Text="That texture is a bad example, no matter what, its tiled, it will always look strange zoomed out (esp since it has a distinct pattern)" CreationDate="2011-04-16T08:22:50.257" UserId="4513" />
  <row Id="14770" PostId="11191" Score="1" Text="-1 because using A* here is not efficient. A* finds the shortest path, while the OP needs all possible paths. Your proposition might fail with a map like this: http://i.imgur.com/I3ADH.png. Generally it will be very inefficient with maps that have a lot of junctions." CreationDate="2011-04-16T08:29:51.590" UserId="20" />
  <row Id="14772" PostId="11183" Text="Good points, but would you really want to write your `Vector3D` class in Obj-C? My gut feeling tells me that could lead to bad performance." CreationDate="2011-04-16T09:52:37.063" UserId="2768" />
  <row Id="14773" PostId="11174" Text="@bummzack: No, that wouldn't work. Imagine a map with 3 paths. If I search for unvisited nodes, I could also simply go to the beginning. I think about implementing a algorithm which crawls through the map and randomly chooses between the directions. When it realizes that it goes back to the beginning this part is unusable. I could do this with a counter. When the distance to the start gets smaller it goes back. This would be parsed once on map creation in development process, so there are no performance issues. &#xA;&#xA;" CreationDate="2011-04-16T10:05:07.690" UserId="6622" />
  <row Id="14774" PostId="11189" Text="Hm, I don't think lua or phyton are good for game development. Both are interpreted languages and performance simply sucks IMO. These languages are good for scripting, but not for continuous performance critical tasks as physics, collision or even rendering. &#xA;" CreationDate="2011-04-16T10:20:14.253" UserId="6622" />
  <row Id="14775" PostId="11197" Score="1" Text="You're more likely to find middleware for specific purposes rather than a general AI package. EG a pathfinding package, steering, behaviour tree implementation, etc. Could you be more specific about what needs you have?" CreationDate="2011-04-16T10:30:22.580" UserId="259" />
  <row Id="14776" PostId="11174" Text="@Marco Why wouldn't that work? If you implement a breadth first search from your start-node, you won't visit previous nodes again. You'll never return to beginning, because it's much like a flood-fill." CreationDate="2011-04-16T10:35:16.960" UserId="20" />
  <row Id="14777" PostId="11109" Text="Thanks, ill give it a try!" CreationDate="2011-04-16T11:00:13.323" UserId="6708" />
  <row Id="14780" PostId="11168" Text="@Marco i think he means when you log in to the authentication server when you first start up the game, not server whitelists" CreationDate="2011-04-16T11:41:48.730" UserId="5423" />
  <row Id="14781" PostId="11168" Text="@Mike Lentini: Ah, right. Got the wrong idea. ;)" CreationDate="2011-04-16T11:44:31.037" UserId="6622" />
  <row Id="14782" PostId="11193" Score="1" Text="I did not say i'm not asnwering. And yes XNA is free and it works with VS 2010 very well. " CreationDate="2011-04-16T11:44:44.010" UserId="3794" />
  <row Id="14783" PostId="11174" Text="@bummzack: Hmm, I will try everything mentioned here out and see, what´s best. Thanks for your help so far." CreationDate="2011-04-16T11:46:53.923" UserId="6622" />
  <row Id="14784" PostId="11193" Text="What about deployment? Can I just copy the framework dlls to the hosting server to run under the application folder or does this framework need to be installed on the server box? I don't have full admin control over the hosting server." CreationDate="2011-04-16T11:47:57.807" UserId="6756" />
  <row Id="14785" PostId="11189" Text="I agree that you shouldn't use an interpreted language for low-level stuff, but that's what the game engine's for. You wouldn't be writing rendering code because the engine already does that. You say those languages are good for scripting; well that's precisely what you're doing when working with a game engine." CreationDate="2011-04-16T11:51:13.983" UserId="6588" />
  <row Id="14786" PostId="11199" Text="That's helpful so have an upvote - I would like this to be run over a webserver. So, that the application runs in any popular browsers. XNA sounds has a lot of client-side dependencies and may not be suitable unless it can work server-side... What about deployment? Can I just copy the framework dlls to the hosting server to run under the application folder or does this framework need to be installed on the server box? I don't have full admin control over the hosting server. " CreationDate="2011-04-16T11:53:24.997" UserId="6756" />
  <row Id="14787" PostId="11193" Text="Hope i understand well. If you are asking about unity, you compile it for the web and users with installed unity player can play it by opening link to the file. XNA cannot run on web. " CreationDate="2011-04-16T11:54:03.763" UserId="3794" />
  <row Id="14788" PostId="11193" Text="So unity developed games can run in a browser if it has a unity player plug-in / add-on?" CreationDate="2011-04-16T11:56:18.893" UserId="6756" />
  <row Id="14789" PostId="11174" Text="&quot;If you did this, it would be impossible to go backwards because going back is not an option.&quot; It might also be impossible to move at all, for instance in case of a dead end, or a loop that ends on a previously visited node." CreationDate="2011-04-16T11:56:31.780" UserId="6637" />
  <row Id="14790" PostId="11199" Score="1" Text="XNA is not browser based and it truly has dependencies, but you can create installer which connects to the server and install what is needed to the client PC with your game. The installer is created via menu in visual studio." CreationDate="2011-04-16T11:57:11.777" UserId="3794" />
  <row Id="14791" PostId="11193" Text="Yes. It may sound like problem, but lots of people who likes to play games online allready has it intalled." CreationDate="2011-04-16T11:59:07.983" UserId="3794" />
  <row Id="14792" PostId="11193" Text="XNA is free, but it's purely client side, you can't run it in a browser.  Unity games can be played in a browser, but are geared towards 3d games.  Silverlight is an option, but the well known &quot;browser game portals&quot; (Kongragate, Newgrounds, etc) don't accept silverlight games." CreationDate="2011-04-16T12:00:58.310" UserId="6558" />
  <row Id="14793" PostId="11193" Text="Ok, so Unity won't have any deployment issues... Is it free and I can I use it with Visual Studio?" CreationDate="2011-04-16T12:01:30.497" UserId="6756" />
  <row Id="14794" PostId="11193" Text="@thedaian: I can distribute the game from one of my high traffic websites as its theme is already related to the website. So, I would not need to use a 60 carat game portal for distribution if I opt for Silverlight." CreationDate="2011-04-16T12:04:10.290" UserId="6756" />
  <row Id="14795" PostId="11193" Text="Unity is free, but does not work with Visual Studio (it has it's own development environment)" CreationDate="2011-04-16T12:04:52.453" UserId="6558" />
  <row Id="14796" PostId="11193" Text="I only have a BizSpark package and I doubt it covers Unity. I wonder if it's expensive." CreationDate="2011-04-16T12:21:02.913" UserId="6756" />
  <row Id="14797" PostId="11193" Text="Would the anonymous cowards care to explain the downvotes or don't they care to help people with genuine requirements?" CreationDate="2011-04-16T12:22:41.163" UserId="6756" />
  <row Id="14798" PostId="11199" Text="I'm still tempted to use Silverlight as it is supported in all major browsers... Can Unity or XNA run on Android?" CreationDate="2011-04-16T12:36:16.567" UserId="6756" />
  <row Id="14799" PostId="11193" Score="1" Text="@Carnotaurus: the original question had a long and mostly pointless rant about your life as a software developer, and you haven't really been clear with your requirements.  The short, short answer to your question: If you're making a game for the browser, and you have to use visual studio, then you can use Silverlight or HTML5/Javascript." CreationDate="2011-04-16T12:37:16.190" UserId="6558" />
  <row Id="14800" PostId="11199" Score="1" Text="Unity can. XNA don't. Please don't take me answer as full overview, i propably forgotten something and i don't know anything about silverlight, thats the reason why i did not mention it." CreationDate="2011-04-16T12:47:00.047" UserId="3794" />
  <row Id="14801" PostId="11167" Score="1" Text="Good answer, except for the PirateBay parts ;P ." CreationDate="2011-04-16T14:41:46.413" UserId="5423" />
  <row Id="14802" PostId="11201" Text="Not quite sure what the question is exactly, but a 'Surface of Revolution' is also known as 3D Lathe. Here is an interactive demo - http://www.fisme.uu.nl/toepassingen/00182/toepassing_wisweb.en.html" CreationDate="2011-04-16T15:04:32.700" UserId="360" />
  <row Id="14803" PostId="11204" Score="3" Text="They wont move any more because they 'hit' the platform, so you're moving them back to their previous position. You need to check their new position against the old position. If they moved down into the platform from the top (as with gravity), you just need to use their old Y position, not the X." CreationDate="2011-04-16T15:06:26.317" UserId="360" />
  <row Id="14804" PostId="11204" Text="Aw man, I knew it was something simple. Fixed everything up. Only problem now is that if you keep moving towards a platform when you hit the side of it, you can just stick to it until you let go of the arrow key. I'll have to figure that out next, thanks for the help! If you post the comment as an answer, I'll mark it as such." CreationDate="2011-04-16T15:20:30.513" UserId="5423" />
  <row Id="14805" PostId="11167" Text="The estimate of servers might be rather high, depending on the game. I was surprised to see 2000. RuneScape, due to its click-to-move nature, has much less traffic than a &quot;realtime&quot; WASD-movement game like many MMOs, so each &quot;world&quot; is really just one main server; plus the web server, update server, and friends server which are shared across all worlds. Each world holds 2,000 simultaneous users. So it started off with just a handful of worlds, thus a handful of servers, and grew as needed. Bottom line though, is it depends on the game design. FPS-style generates tons more network traffic." CreationDate="2011-04-16T15:26:03.423" UserId="189" />
  <row Id="14806" PostId="11167" Score="2" Text="Speaking of network traffic, this estimate didn't even account for a place to put those 2,000 servers and the bandwidth required - it would be through the roof." CreationDate="2011-04-16T15:28:18.133" UserId="189" />
  <row Id="14807" PostId="11201" Text="Its a 2D curve rotated around the X axis.&#xA;But this function is not a 2D curve." CreationDate="2011-04-16T15:55:54.303" UserId="5584" />
  <row Id="14808" PostId="11168" Text="@Ricket What are you suggesting? Notch is a god amongst men! ;)" CreationDate="2011-04-16T16:23:28.600" UserId="1156" />
  <row Id="14809" PostId="11179" Text="I am pretty sure the `.dat` is used in singleplayer too, for player positions and data." CreationDate="2011-04-16T16:24:14.293" UserId="1156" />
  <row Id="14810" PostId="11179" Text="@The Communist Duck: I looked into my savegames and could only find a &#xA;`.mcr`. A `.dat` would make more sense, but maybe it is bundled with the `.mcr`." CreationDate="2011-04-16T16:47:17.320" UserId="6622" />
  <row Id="14811" PostId="11189" Text="@jhocking: It depends. My game engine (libGDX) let´s me do low level stuff. A famous example is **collision detection**. But also this depends on the genre of the game. A 2D shooter would need more collision detection than a 2D rpg. Tasks like pathfinding with A* might also get slow with an interpreted language." CreationDate="2011-04-16T17:00:23.290" UserId="6622" />
  <row Id="14812" PostId="11179" Text="There is a level.dat for every level; I use it with the level tools site (URL forgotten) to find seeds and do the random-teleport thing." CreationDate="2011-04-16T17:27:35.423" UserId="1156" />
  <row Id="14813" PostId="11168" Text="@TheCommunistDuck That's what I was suggesting, jokingly. The &quot;should he be doing it that way&quot; questions whether he is correct/optimal. :)" CreationDate="2011-04-16T18:10:31.037" UserId="189" />
  <row Id="14814" PostId="152" Score="1" Text="The example might as well be in assembler for all the structure it has. It's not even A*, how is this the accepted answer?" CreationDate="2011-04-16T18:49:50.490" UserId="744" />
  <row Id="14815" PostId="202" Text="This is not really an accurate description of the difference between A* and Dijkstra. It's true that Dijkstra solves single-source to all points, but when used in games it's usually cut off as soon as you find a path to the goal. The real difference between the two is that A* is informed by heuristic and can find that goal with fewer branches." CreationDate="2011-04-16T18:53:34.047" UserId="744" />
  <row Id="14816" PostId="11184" Text="-1, this isn't really an answerable question.  All 3rd party frameworks have their plusses and minuses, and it's up to you to do the research on 1) what you want to accomplish and 2) how quickly you want to get it done.  The tools to quickly get a grip on programming to make pong are not going to be the same tools to make a 3D action game.  Also, there are a lot of &quot;getting started&quot; questions.  " CreationDate="2011-04-16T19:23:26.650" UserId="51" />
  <row Id="14817" PostId="11211" Text="can you suggest the graphics cards that support pixel shading?" CreationDate="2011-04-16T20:00:23.300" UserId="6732" />
  <row Id="14819" PostId="11211" Text="Men! I said that first, not fair :)" CreationDate="2011-04-16T20:12:06.083" UserId="3794" />
  <row Id="14821" PostId="11211" Score="1" Text="Pretty much any card you can buy would work. " CreationDate="2011-04-16T20:27:16.593" UserId="51" />
  <row Id="14822" PostId="11183" Text="That's just it.  Obj-C *is* C.  Not a performance issue.  If you go to the standard header files with XCode, you will find the underlying types are just C structs." CreationDate="2011-04-16T20:46:18.733" UserId="6198" />
  <row Id="14823" PostId="11203" Text="I wonder why I has been downvoted. This numbers - are absolutely true and it is not a joke. " CreationDate="2011-04-16T20:53:51.253" UserId="3132" />
  <row Id="14824" PostId="11214" Text="Yeah, I have X, Y, Y; But I still don't understand what to do.&#xA;The mentioned function is not a curve. Its a shader used on a plane's vertices. No idai, where to do a rotation." CreationDate="2011-04-16T22:07:17.380" UserId="5584" />
  <row Id="14825" PostId="11215" Text="Yeah, don't move back to the original position, or when holding a button down to continually run into a wall, the character will &quot;vibrate&quot; as it gets its position set to when it was not colliding." CreationDate="2011-04-16T22:29:14.147" UserId="962" />
  <row Id="14826" PostId="11184" Text="@Tetrad: True dat, but usually when I ask something on stackexchange is because the rest of the internet didn't answer my question. I'm sorry for this (ab)use of the system, but I don't doubt it will happen a few times more :)" CreationDate="2011-04-16T22:29:40.973" UserId="4827" />
  <row Id="14827" PostId="11208" Text="You can make Photoshop Accurate if you turn on rulers and use guides." CreationDate="2011-04-16T22:30:21.213" UserId="962" />
  <row Id="14828" PostId="11215" Text="@AttackingHobo, the &quot;vibrating&quot; does not happen because the player's sprite doesn't actually show a position change until the collision and everything is sorted out.&#xA;&#xA;Also, I fixed my original problems using DrDeth's suggestion so I would give him credit for the answer, but alas he only posted a comment. I'll give it to eBusiness because he/she sparked the idea that if the player hits the side of the platform, I can just reset his x-position, then call a method I have called fall(), which... make's the character fall.&#xA;&#xA;Everything works now, thanks guys!" CreationDate="2011-04-16T22:33:21.173" UserId="5423" />
  <row Id="14829" PostId="11043" Text="http://www.raywenderlich.com/457/intro-to-box2d-with-cocos2d-tutorial-bouncing-balls" CreationDate="2011-04-16T23:39:05.337" UserId="6117" />
  <row Id="14830" PostId="11215" Score="1" Text="You could see the character floating a little and registering as airborne a few frames after having fallen on a surface, especially if the fall was high. Basically because it's repositioned to a point in the air, and then has to fall again. Worst thing that could come of this is sluggish controls at those moments. You decide if it's worth doing something about." CreationDate="2011-04-16T23:52:33.920" UserId="3505" />
  <row Id="14831" PostId="11203" Text="I dont get that too. Maybe add resource or at least from where your experience is. It might be helpful. (Well those informations are in your profile ...)" CreationDate="2011-04-16T23:58:53.423" UserId="3794" />
  <row Id="14832" PostId="11215" Text="Exactly that @eBusiness. Lets say a char is at x 100, and the wall is at x 105, lets say a frame of movement sets the character to 106, the character would teleport back to 100. That would happen over and over again." CreationDate="2011-04-17T00:08:09.740" UserId="962" />
  <row Id="14833" PostId="11193" Text="@thedaian - it's funny how I don't get this kind of response of on other Stack Exchange formus when trying to give detail - nice one!!!" CreationDate="2011-04-17T00:14:17.100" UserId="6756" />
  <row Id="14834" PostId="11199" Text="@notabene: You have answered my initial question despite Silverlight - I'll award this because of your attempts to help. This seems to be pretty much a one man forum though. It's difficult to believe how destructive certain other users have been. I would close this question if I could." CreationDate="2011-04-17T00:17:56.160" UserId="6756" />
  <row Id="14835" PostId="11199" Text="@Carnotaurus GDSE is not one man forum, users propably saw my answer and did not want to answer, because it covers what almost what you asked (i think it truly does). Also we are not very happy for another &quot;How do i start&quot; questions, because we have tons of it. I was about vote to close this answer as exact duplicate, but it is not too EXACT... This is thin ice. But as show up it is about games in browser and that is exact dupe. Feel free to delete this question. " CreationDate="2011-04-17T00:36:42.473" UserId="3794" />
  <row Id="14836" PostId="11199" Text="@Carnotaurus This site contains indie and also lots of proffesional developers, try to ask for something more specific (and more fun than how do i start ;)) and see how great answer you can get..." CreationDate="2011-04-17T00:38:44.327" UserId="3794" />
  <row Id="14837" PostId="11193" Text="possible duplicate of [Best technology for online games?](http://gamedev.stackexchange.com/questions/3003/best-technology-for-online-games)" CreationDate="2011-04-17T00:40:21.330" UserId="3794" />
  <row Id="14838" PostId="11199" Text="@notabene: I think your answers were fine. I was shocked by the downvoting, even after extensive editing though. My question was very specific to my coding experience and I could not find a previously posted question that would have reproduced these answered. In seriousness, I am more than happy with your answered. I am just not happy about the downvoting. When I start the project, I think everyone could be happier." CreationDate="2011-04-17T00:44:46.027" UserId="6756" />
  <row Id="14839" PostId="11193" Text="How it is a duplicate if I've specifically asked for a C# based technology?" CreationDate="2011-04-17T00:53:26.707" UserId="6756" />
  <row Id="14840" PostId="11199" Score="1" Text="@Carnotaurus This is really the thing i dont like here too. I downvote only the bad answers, thats what i hate... Questions are not bad, even if they are bad. Our moderators here are trying to keep it &quot;proffesional&quot; and it seems to be agressive for a user from a more friendly stackoverflow. But it just works here like this. Downvotes are not attack, only tries to show you the way. It is mostly not insult. So i wish you happy development with you child, neat project you have ;). Once you get stucked you can try it again here, wish you beter experience..." CreationDate="2011-04-17T01:00:06.860" UserId="3794" />
  <row Id="14841" PostId="11199" Text="Ok chap, nothing personal - take an upvote. I'll start working on it within the month - good will to you and thanks again for the help." CreationDate="2011-04-17T01:06:17.710" UserId="6756" />
  <row Id="14842" PostId="11218" Score="1" Text="This is the general approach I'd take, you use the uniform distribution of the RNG but transform it. You could also use the output of the RNG as an input to your own custom distribution that re-adjusts itself based on recent history, i.e. to force variance in the outputs, so that it looks &quot;more random&quot; in human perception terms." CreationDate="2011-04-17T02:42:22.067" UserId="1213" />
  <row Id="14843" PostId="11218" Score="1" Text="I actually know of an MMO that does something like this, but the chance of a crit actually increases each time you get one until you _don't_ get one, then it resets to a very low value. This leads to rare streaks of crits which are very satisfying to the player." CreationDate="2011-04-17T02:46:00.120" UserId="395" />
  <row Id="14844" PostId="11197" Text="Not really an answer to your question, just remember that anything written in standard C or C++ should work on iOS, it does not have to be Objective-C" CreationDate="2011-04-17T02:48:41.383" UserId="3449" />
  <row Id="14845" PostId="11218" Text="Sounds like a good alg, long dry spells have always been frustrating, but it doesn't lead to crazy streaks of crits." CreationDate="2011-04-17T02:53:16.483" UserId="1213" />
  <row Id="14846" PostId="11203" Text="Possibly from a lack of citations? " CreationDate="2011-04-17T05:31:04.527" UserId="14" />
  <row Id="14847" PostId="11223" Score="1" Text="For the love of modern compilers, please stop using macro-based include guards. #pragma once is The One True Way." CreationDate="2011-04-17T06:54:15.167" UserId="395" />
  <row Id="14848" PostId="11203" Text="if it so important and not clear from my profile.... source added" CreationDate="2011-04-17T07:14:36.133" UserId="3132" />
  <row Id="14849" PostId="11167" Text="@Mike: Warned about that--was optimizing for cheapness of development, not ethical constraints (see the suggested &quot;pay&quot; for the developers if you don't believe me :) ). | @Ricket: I used a smaller number than the cited and linked SecondLife server farm, and expected to use a large number of cheap servers. A few racks of blades could be sufficient. I had to leave for lunch, and so didn't finish the analysis for things like rent, power, cooling, etc. By that point I feel that the point had been made." CreationDate="2011-04-17T07:14:59.260" UserId="5259" />
  <row Id="14850" PostId="11167" Score="3" Text="This has got to the single most &quot;optimistic&quot; budget I've ever seen. The going rate for good programmers in the Bay Area is 3-4x that for salary alone, even without health coverage (which is questionably legal in some states) there is a still a hefty overhead for the company (ex. payroll taxes). It is also not unheard of to drop $20k on a single server for things like databases, normal game machines are more generally around $5k, but it depends on the perf characteristics of the game. The schedule is way off, 24 months for a AAA title is insane (I say having done it before)." CreationDate="2011-04-17T07:22:30.107" UserId="395" />
  <row Id="14851" PostId="11167" Text="@coderanger: Agreed. I'm being *exceedingly* optimistic here, mostly to show how expensive it is even if you are wearing rosy glasses." CreationDate="2011-04-17T07:47:19.203" UserId="5259" />
  <row Id="14852" PostId="11225" Score="1" Text="**No. 1:** Interesting solution, I'll consider it. :) | **No. 2:** You got me wrong, I never said the sprite should notify the entity. I'll edit my post to include some code to show how the entity and its sprite interact." CreationDate="2011-04-17T07:58:18.170" UserId="6188" />
  <row Id="14853" PostId="11217" Text="I don't see how this works. Of course you're going to get a sequence of x1, x2, x3, x4.. where all x are large. Isn't that just random though?" CreationDate="2011-04-17T07:59:09.697" UserId="1156" />
  <row Id="14854" PostId="11221" Text="-1, I am voting to close. You have written code and just asking us 'Is this ok?'." CreationDate="2011-04-17T08:00:24.050" UserId="1156" />
  <row Id="14855" PostId="11219" Text="Reseeding won't help jSepia's concern, which is really about runs rather than repetition. Pure randomness does lead to unfun gameplay, so it's a real concern and plenty of games have addressed it." CreationDate="2011-04-17T08:49:16.630" UserId="744" />
  <row Id="14856" PostId="11218" Score="1" Text="Fixing this doesn't require a nonlinear distribution, it just requires that short time-sequential subsets of the distribution have the same properties as the distribution itself." CreationDate="2011-04-17T08:53:23.520" UserId="744" />
  <row Id="14857" PostId="11203" Text="-1. Knowing what one WoW clone costs to make in one country is not a valuable answer, especially without any cost breakdowns." CreationDate="2011-04-17T08:58:04.560" UserId="744" />
  <row Id="14858" PostId="11226" Score="1" Text="FWIW, `Player(void)` is not always a sign of VS-autogenerated code (though it probably is in this case). Sometimes it's the sign of an old C programmer, where a function declaration like `Player()` meant &quot;I'll define the arguments later&quot;, and `Player(void)` meant &quot;this takes no arguments&quot;. I still do `(void)` reflexively, even in C++." CreationDate="2011-04-17T09:04:32.320" UserId="744" />
  <row Id="14859" PostId="11226" Score="1" Text="Also, `#pragma once` is not just newer - it is also non-standard, and can mean trouble if you #include via symbolic links. (That said, I still use it - the compile time gains are significant on VS, albeit not GCC.)" CreationDate="2011-04-17T09:06:43.440" UserId="744" />
  <row Id="14860" PostId="11223" Text="I would be a lot happier with #pragma once if it was in C1x/C++0x, with a clear definition of how to handle symlinks." CreationDate="2011-04-17T09:07:32.893" UserId="744" />
  <row Id="14861" PostId="11221" Text="Test and find out? Relevance to GameDev other than the variable names? None." CreationDate="2011-04-17T09:38:21.297" UserId="4513" />
  <row Id="14862" PostId="11226" Text="const int WALK, RUN, CROUCH? Surely you mean enum MoveType {WALK, RUN, CROUCH} and SetMovementState(MoveType mt)" CreationDate="2011-04-17T09:42:23.380" UserId="4513" />
  <row Id="14863" PostId="11223" Text="#pragma once is implementation defined... so if you want to be truly portable, then it is not the one true way. It is the works in 99% of cases way." CreationDate="2011-04-17T09:44:20.600" UserId="4513" />
  <row Id="14864" PostId="11225" Text="Ah, okay. We might want to drill a little further down into the EntityRepresenation bit here, because I'm not entirely sure I understand your problem. I'm also not sure that you want to have the entity representation have any sort of self behavior--rather, would you consider having the representation maintain the state of the entity only, and having a sprite or behavior object take that state as a parameter?" CreationDate="2011-04-17T09:57:01.693" UserId="5259" />
  <row Id="14865" PostId="11226" Score="1" Text="Lastly, this person is missing a semicolon after the class declaration (last curly needs a semicolon). *that*'ll be fun to catch for them." CreationDate="2011-04-17T09:59:14.483" UserId="5259" />
  <row Id="14866" PostId="11221" Text="Missing a semicolon at the end after the declaration. Also, -1. Go to www.ideone.com and test it there." CreationDate="2011-04-17T09:59:50.597" UserId="5259" />
  <row Id="14867" PostId="11230" Text="Your deserializing code would be useful here." CreationDate="2011-04-17T10:27:27.417" UserId="51" />
  <row Id="14868" PostId="11230" Score="1" Text="I have no deserializing code. Maybe this is where my problem starts?" CreationDate="2011-04-17T10:28:45.823" UserId="2954" />
  <row Id="14869" PostId="11227" Score="3" Text="To make it a bit more random you could always have half the list as random numbers, and the other half calculated as (2-x) to get the average correct." CreationDate="2011-04-17T10:56:51.043" UserId="5824" />
  <row Id="14870" PostId="11226" Text="@Daniel I prefer ints over enums, personally. Not sure why, since they do the same thing. In fact, they are the same thing (basically)." CreationDate="2011-04-17T11:19:37.200" UserId="1156" />
  <row Id="14871" PostId="11231" Text=".egg files are models? I thought they were something to do with python module installing." CreationDate="2011-04-17T11:20:27.277" UserId="1156" />
  <row Id="14872" PostId="11227" Score="2" Text="@Adam: That method really only works for this particular example; if you are dealing out Tetris pieces rather than damage multipliers, what's 2 - S block?" CreationDate="2011-04-17T11:21:54.957" UserId="744" />
  <row Id="14873" PostId="11226" Text="No they're not, you have no type safety, you must be careful on where those constants are declared, readability, sensibility. They may be stored similarly in terms of memory (as an int) at run time, and even have the ability for integer operators, but their purpose is very different. Thats like comparing ints with bools; they may be stored as ints when it comes down to the memory, but their purpose is very different.&#xA;I suggest you read : http://stackoverflow.com/questions/4963031/is-it-a-good-practice-to-use-enum-as-int" CreationDate="2011-04-17T11:37:11.710" UserId="4513" />
  <row Id="14874" PostId="11228" Score="2" Text="You might want to check out http://gamedev.stackexchange.com/questions/3076/keyboard-input-system-handling and also accept previous answers." CreationDate="2011-04-17T12:42:11.950" UserId="1156" />
  <row Id="14875" PostId="11230" Score="2" Text="To answer Tetrad's question: presumably eflles is using the [`XmlImporter`](http://msdn.microsoft.com/en-us/library/microsoft.xna.framework.content.pipeline.xmlimporter.aspx), part of the XNA Content Pipeline. The pipeline deserializes the XML in order to convert it to an XNB file (which will then be loaded by `ContentManager` at runtime)." CreationDate="2011-04-17T13:40:43.707" UserId="288" />
  <row Id="14876" PostId="11239" Text="...I can't believe I didn't notice that :/" CreationDate="2011-04-17T13:59:48.763" UserId="5275" />
  <row Id="14877" PostId="11238" Text="Thanks for the information and code will definitely take note of it and work into into my game :)  " CreationDate="2011-04-17T14:03:20.650" UserId="5275" />
  <row Id="14878" PostId="11130" Score="2" Text="I've [answered a similar question on Stack Overflow](http://stackoverflow.com/questions/5324378/how-is-userinput-kept-independent-of-fps-when-using-for-example-java-slick-2d-or/5326445#5326445)" CreationDate="2011-04-17T14:18:08.243" UserId="288" />
  <row Id="14879" PostId="11215" Text="I haven't experienced this yet, so as of now it's not something I'm going to try to fix. The characters never move fast enough to make that happen, from what I've seen so far. I'll have to keep that in mind for future games though, thanks guys." CreationDate="2011-04-17T14:41:53.173" UserId="5423" />
  <row Id="14883" PostId="11214" Text="Oh I got it. I don't have to rotate to begin with. " CreationDate="2011-04-17T15:22:37.147" UserId="5584" />
  <row Id="14885" PostId="3621" Text="I'd say that you've lumped a bunch of things together that don't belong--mobile devices, consoles, PCs, *and* web-based games? Consoles and PCs, sure, should be able to share a codebase with some tweaking. Mobile devices are vastly different in capability from dedicated computing hardware (in terms of raw graphical power, storage, threadedness, etc.), and so you wouldn't really even be able to use the same solutions. And web games are, you know, *web pages*. What do you want? The fragmentation here is across device paradigms, not mere computation architectures." CreationDate="2011-04-17T16:04:37.883" UserId="5259" />
  <row Id="14886" PostId="11227" Score="3" Text="The usual term for this is sort of system is &quot;random without replacement&quot;. It's just analogous to using a deck of cards instead of dice, really." CreationDate="2011-04-17T16:15:59.200" UserId="1101" />
  <row Id="14888" PostId="11219" Score="1" Text="Given that for a decent PRNG the value of the seed is largely irrelevant (as long as it's not exactly identical each time), reseeding it serves no purpose." CreationDate="2011-04-17T16:17:20.227" UserId="1101" />
  <row Id="14890" PostId="11237" Score="2" Text="This is definitely a very interesting question. +1." CreationDate="2011-04-17T16:28:08.800" UserId="1156" />
  <row Id="14891" PostId="11249" Text="Language? Your mention of panda3D suggests Python. Also, I think very few engines will support .max. You may want a converter." CreationDate="2011-04-17T16:28:41.793" UserId="1156" />
  <row Id="14893" PostId="11249" Text="@The Communist Duck  When I googled many models that came were in .max format. If there are ample resources in other formats it wont be a problem. (as I said I am pretty new to this). Panda3D needs .egg or .bam. I hardly found any models in these formats. I am not that concerned with the language, as long as there are enough resources to learn. (I started learning python since Panda3D uses it). I'd prefer a high level scripting language, since they are easy to learn. I'm familiar with Java and learning C++." CreationDate="2011-04-17T16:46:31.537" UserId="6786" />
  <row Id="14894" PostId="11243" Score="2" Text="You can also use this to your advantage, to create the sense that the player is lost, you could put the player in an environment without these landmarks, and the world may feel larger than it is. " CreationDate="2011-04-17T17:03:07.717" UserId="4513" />
  <row Id="14895" PostId="11249" Text="3D and Python aren't the best of languages to go together. It will work, but you may find it easier to use Java. I'm surprised at Panda's lack of model support." CreationDate="2011-04-17T17:03:57.053" UserId="1156" />
  <row Id="14897" PostId="11227" Text="Even better, you could do half the numbers *really* random, and only half of them subject to this rule." CreationDate="2011-04-17T17:21:44.297" UserId="2188" />
  <row Id="14898" PostId="11249" Text="I just found a pthon script for converting obj to .egg format. Is JMonkey a good engine when it comes to Java? " CreationDate="2011-04-17T17:29:28.740" UserId="6786" />
  <row Id="14899" PostId="11249" Text="Panda3D supports bam egg flt lwo dxf wrl x dae formats (for the sake of accuracy)" CreationDate="2011-04-17T17:32:17.380" UserId="6786" />
  <row Id="14900" PostId="11219" Text="I guess I am failing to understand the issue with repetition. I assumed he was asking how to calculate &quot;damage = base_damage * random_range(0.8,1.2)&quot; without repetition.  Real games with real physical dice are FULL of lucky streaks, but they aren't fair or unfair, they are (in the minds of the players), luck.  I won 5 games of solitare in a row on my phone a while back, but didn't consider it a flaw, more like incredible luck." CreationDate="2011-04-17T17:52:55.673" UserId="3830" />
  <row Id="14901" PostId="11243" Text="Hi, why we need three points of references is because we intuitively do **Triangulation!**. Basically, we three points of references we only need to know the position of two of them to determine where is the third. Here is the wikipedia link of the formal notion, it is well explained: http://en.wikipedia.org/wiki/Triangulation" CreationDate="2011-04-17T18:15:43.560" UserId="6793" />
  <row Id="14902" PostId="11249" Text="A very common format is the OBJ format. It is accepted by many 3D-engines and exported by most 3D-editors. However, it is not animatable, so only appropriate for static objects (like cars for instance). Besides JMonkey, there are other engines in java: ardor3D and Xith3D for instance." CreationDate="2011-04-17T18:34:45.943" UserId="5250" />
  <row Id="14903" PostId="11243" Text="No, it's not triangulation. The distance does not matter, you don't need to have been to them before, and there's no evidence that we can subconsciously measure the angles like that. I think it's more likely that it's because it fits nicely into our ~4 chunk working memory but that's still a hotly-debated area of cognitive science." CreationDate="2011-04-17T18:52:48.953" UserId="744" />
  <row Id="14904" PostId="11243" Text="That's very helpful, but not exactly what I had in mind. I added a clarification to the question." CreationDate="2011-04-17T18:53:20.167" UserId="2710" />
  <row Id="14905" PostId="11253" Score="3" Text="This doesn't help, it just changes the question to &quot;How can I make the minimap recognizable and easy to orient in?&quot;" CreationDate="2011-04-17T18:53:51.527" UserId="744" />
  <row Id="14906" PostId="11250" Text="While those are great examples of how to decorate space, it's important to note they are all artificially colored. And because most galaxies are somewhat symmetrical, aiming for that level of realism when choosing landmarks doesn't help much." CreationDate="2011-04-17T18:54:52.883" UserId="744" />
  <row Id="14907" PostId="3621" Text="Actually I said nothing about web games. I think it's reasonable to want to run some of the same code on all devices - input mapping, or an abstracted graphics API, or an entity system, file parsing, networking - these are all the same basic paradigms regardless of platform. But the question is also 8 months old, and was borne out of concerns that don't apply much since NDK gathered more support on Android and Apple stopped their stupid policies." CreationDate="2011-04-17T18:57:16.983" UserId="744" />
  <row Id="14908" PostId="11227" Text="@Lo'oris: I can't see how that's in any way better." CreationDate="2011-04-17T18:59:39.087" UserId="744" />
  <row Id="14909" PostId="11219" Text="Honestly, &quot;luck&quot; is a word that has no place in game design unless you're describing a character attribute. Let's talk about real statistical properties. Runs that do not resemble the overall distribution are _frustrating_, because sequences are very often short enough that you can _never_ benefit from the overall distribution." CreationDate="2011-04-17T19:02:28.253" UserId="744" />
  <row Id="14910" PostId="11227" Text="@Joe: because it is more &quot;really random&quot;, but still avoids too long streaks (which was what the OP wanted)." CreationDate="2011-04-17T19:04:51.797" UserId="2188" />
  <row Id="14911" PostId="11227" Text="It can still result in the local distribution not resembling the global distribution, which is exactly what the question doesn't want. Terms like &quot;really random&quot; are vague pseudomathematics; the more you define what statistical properties you want, the clearer your intent and game design will be." CreationDate="2011-04-17T19:07:40.510" UserId="744" />
  <row Id="14912" PostId="11243" Text="I now think this is two very different questions - one about the practical aspects of orienteering in games, and one about creating a nice feel via different flavoring. Both are good questions, but I don't think they're related." CreationDate="2011-04-17T19:10:08.790" UserId="744" />
  <row Id="14914" PostId="11255" Text="I replied to your answer in my original question because I figure other people will have similar thoughts." CreationDate="2011-04-17T19:23:57.293" UserId="4817" />
  <row Id="14915" PostId="11243" Text="Well, they *are* somewhat related - only recognizable places can serve as reference points for orienteering, for example. I think I crammed them both into one, because they both deal with the *concept* of place, with that feeling of &quot;locatedness&quot;, where one can define one's own location and sense many other possible locations... I'm not sure how to describe it better - my English seems to be failing me (-8" CreationDate="2011-04-17T19:28:58.433" UserId="2710" />
  <row Id="14916" PostId="11255" Score="1" Text="I thought of that, but it seems like it could be a moot point. Like I said, you may want to check the small print for any mention of what you can and can't do with the source code." CreationDate="2011-04-17T19:29:46.850" UserId="1156" />
  <row Id="14917" PostId="11243" Score="1" Text="Probably it's failing because the English phrase you're looking for is actually Latin. :) It's &quot;genius loci&quot;. The reason I think it's two different issues is because I view it as two different player interactions. One is _finding a place_ and the other is _remembering a place_." CreationDate="2011-04-17T19:39:22.343" UserId="744" />
  <row Id="14918" PostId="11219" Text="Luck has a huge place in design.  It's what players PERCEIVE as luck I'm talking about.  If they get a streak, they chalk it up to luck, not detailed numerical analysis of a random number generator." CreationDate="2011-04-17T19:40:43.370" UserId="3830" />
  <row Id="14919" PostId="11243" Text="Ooh, *finding* vs *remembering* seems to be a good way to think about it! Thanks." CreationDate="2011-04-17T19:46:09.500" UserId="2710" />
  <row Id="14920" PostId="11219" Score="1" Text="The frustration or elation the player has as a result of perceived luck has a huge place in design. Talk about those and how to deal with them - which means, detailed analysis of RNGs. &quot;Luck&quot; is an abstraction with no value." CreationDate="2011-04-17T20:13:43.970" UserId="744" />
  <row Id="14921" PostId="11255" Score="3" Text="As an example, Amazon's new (horrible) App Store terms can be easily interpreted as banning you from selling on their store if your program is available from GitHub." CreationDate="2011-04-17T20:21:39.373" UserId="744" />
  <row Id="14922" PostId="11254" Score="1" Text="*&quot;but they get nothing if everyone just goes and downloads the free version.&quot;* - I think games like Angry Birds have shown us that's not true." CreationDate="2011-04-17T20:21:46.430" UserId="2061" />
  <row Id="14923" PostId="11254" Text="I'm not sure about the exact terms, but to improve your chances, don't distribute the assets. In other words, give away the source code but not all the assets which really 'make up your game'." CreationDate="2011-04-17T20:21:47.380" UserId="2946" />
  <row Id="14924" PostId="11231" Text="Panda re-used the term, it is one of their packed model formats. Nothing to do with Python eggs." CreationDate="2011-04-17T20:27:03.640" UserId="395" />
  <row Id="14925" PostId="3621" Text="I mean, you did mention HTML5...that's kind of intended for web games, right?" CreationDate="2011-04-17T21:16:18.630" UserId="5259" />
  <row Id="14926" PostId="11259" Score="1" Text="Except for food architecture, these are all a bit info-dumpy - boring unless you're the person writing them. I mean, how many of these can you answer about your home city, let alone the entire planet? How many would you care to? How many planets in Star Trek bothered to explain any of these? Play me some music, show me a painting, let me hang out in the local park for an hour." CreationDate="2011-04-17T22:19:45.967" UserId="744" />
  <row Id="14928" PostId="11241" Score="1" Text="+1 Shawn Hargreaves' series of posts about this is great. Easiest way to generate your XML is to have a &quot;LevelEditor&quot; project that has all the same code, but references the Content Pipeline assemblies so you can create your objects with defaults attributes in code, and then serialize them to XML for loading in your actual game project." CreationDate="2011-04-18T01:35:17.863" UserId="3656" />
  <row Id="14929" PostId="11264" Text="www.lazyfoo.net Absolute best tutorial for SDL. As far as game programming goes, I would say the best tutorial is practice. Get ideas and test them out, try some simple physics stuff then move on to full games. (at least that's what I did, but I'm crazy) I started with tictactoe, moved to a space-shooter, than a sidescroller, then chess, back tosidescrollers, and on to physics games. " CreationDate="2011-04-18T04:07:54.400" UserId="5932" />
  <row Id="14930" PostId="11259" Text="That's a really great list.. for a tabletop RPG. For a videogame, not so much. Implementing all this list by hand requires LOTS of resources, even when it all boils down to a wall of text (which is not really interesting). And I'm not sure how to approach procedural generation of all this info, to say nothing of presentation. The basic approach of differentiating through _culture, not physics_, seems sound, though, I'll think about it." CreationDate="2011-04-18T04:15:33.680" UserId="2710" />
  <row Id="14931" PostId="11247" Text="I wanted to know whether .max files can be loaded to Panda3D directly. By closing this question I think you are suggesting .max files cannot be be loaded to Panda3D directly." CreationDate="2011-04-18T04:37:07.743" UserId="6786" />
  <row Id="14932" PostId="11243" Text="@Joe Wreschnig, There's actually a good deal of evidence of our innate geometrical knowledge.  Mostly from scientists going out and finding some tribe of people who have never been exposed to geometry, and seeing what they know intuitively.  Like if they know that when two lines intersect the opposite angles must be equal to one another, shape recognition, etc.  Even the tribe that only has 3 numbers (one, few, many) could do it.  Makes sense when you think about it, being omnivores and hunters," CreationDate="2011-04-18T05:31:22.513" UserId="6807" />
  <row Id="14933" PostId="11243" Text=" we need to be able to easily and quickly extrapolate the likely path of prey animals given their last known vector and where we are likely to intersect with it, even when we can't clearly see the prey.  It also makes sense given that our far flung ancestors were quite adept in the trees, and would need to be able to calculate a proper jump trajectory from one branch or tree to the next. " CreationDate="2011-04-18T05:33:44.960" UserId="6807" />
  <row Id="14934" PostId="11271" Score="2" Text="I guess that the 'curve' is purely a visual, in terms of physics, it appears to be 2D. The only trick would be converting it to GFX space, or converting it to physics space." CreationDate="2011-04-18T05:48:00.247" UserId="4513" />
  <row Id="14935" PostId="11266" Score="2" Text="possible duplicate of [How to colorize certain parts of a model - like RTS games have those team colors?](http://gamedev.stackexchange.com/questions/9976/how-to-colorize-certain-parts-of-a-model-like-rts-games-have-those-team-colors)" CreationDate="2011-04-18T05:55:09.640" UserId="20" />
  <row Id="14936" PostId="11266" Text="Are you doing this in fixed-function OpenGL or in shaders?" CreationDate="2011-04-18T06:23:54.960" UserId="5259" />
  <row Id="14937" PostId="11253" Text="Well I feel a bit mis-down-voted." CreationDate="2011-04-18T06:26:51.307" UserId="4129" />
  <row Id="14938" PostId="11243" Text="@Phoenix: Right. But there's no evidence that relates the rule I mentioned to triangulation. (Also, any conclusions drawn from Pirahã are extremely tenuous.)" CreationDate="2011-04-18T07:23:07.430" UserId="744" />
  <row Id="14939" PostId="11243" Text="Except that almost all animals use triangulation based off of landmarks.  Even certain ants, usually loners who can't rely on chemical trails, have been shown to triangulate their location and the direction back to their home and previously located food based off of known visible locations (as they don't actually have to go to each landmark like a patrol route, only see them). Change the location of the landmarks and they make a bee line off in the wrong direction.  Take the landmarks away and they start wandering aimlessly.  It also requires at least 3 visible landmarks for them to this." CreationDate="2011-04-18T07:44:04.250" UserId="6807" />
  <row Id="14940" PostId="11263" Text="Looks like a great answer, but you may want to format it a bit." CreationDate="2011-04-18T08:38:13.153" UserId="1156" />
  <row Id="14941" PostId="11243" Text="I just thought of another, more obvious way that we (and other animals with forward facing eyes) use triangulation automatically every day.  It's part of distance gauging.  The brain takes the distance between the eyes (which forms the base of the triangle) and the angles which the eyes are turned towards and uses that data to get a pretty good estimate of the distance between your face and the object.  This is also part of why we aren't that great at gauging overly long distances by sight, as looking over a certain distance, the angle of the eyes becomes practically parallel." CreationDate="2011-04-18T09:10:41.373" UserId="6807" />
  <row Id="14942" PostId="11263" Text="Thanks for the feedback.I agree that I won't be able to make a competitive engine, but my main goal with this is the learning part." CreationDate="2011-04-18T09:14:13.193" UserId="6803" />
  <row Id="14943" PostId="11263" Score="1" Text="@The Communist Duck thanks for the hint, I was new to the side and I admit I was too lazy to check out the format options, fixed it :)" CreationDate="2011-04-18T09:19:31.673" UserId="1839" />
  <row Id="14945" PostId="11276" Text="I'm asking how to best technically handle screen resolutions and aspect ratios, not which is better from a design perspective..." CreationDate="2011-04-18T10:30:14.003" UserId="2933" />
  <row Id="14946" PostId="11276" Text="Ah, I see. Ignore me. :)" CreationDate="2011-04-18T10:35:54.957" UserId="1156" />
  <row Id="14947" PostId="11273" Text="This doesn't really answer the question." CreationDate="2011-04-18T12:35:40.657" UserId="2698" />
  <row Id="14949" PostId="11276" Text="Is your question regarding 2D/HUD stuff only?" CreationDate="2011-04-18T12:36:07.757" UserId="6655" />
  <row Id="14950" PostId="3630" Text="stupid apple, who restrict programming languages! WHO?!?!" CreationDate="2011-04-18T12:44:52.693" UserId="4777" />
  <row Id="14951" PostId="11263" Text="Added the link to Kacic's paper, hopefully it's the right one :)" CreationDate="2011-04-18T12:52:49.523" UserId="2332" />
  <row Id="14952" PostId="11250" Text="I don't think the colour is important - just the fact that there's a strip in the sky that circles your position is enough, I think. It certainly helped me when playing Elite 2: Frontier! As your answer notes, I don't think it's sufficent to be able to pin down your orientation, but it significantly reduces the number of possible ways you could be facing." CreationDate="2011-04-18T13:00:13.647" UserId="1101" />
  <row Id="14953" PostId="4887" Text="Re-added vector tag to this - if list is a valid tag, then vector is too." CreationDate="2011-04-18T13:04:02.613" UserId="1101" />
  <row Id="14954" PostId="11247" Text="That seems to be the case, seeing as one of the answers to your other question directly links to the official Panda3D wiki which explains using 3dsmax to do the conversion. You got two very good answers." CreationDate="2011-04-18T13:16:07.393" UserId="189" />
  <row Id="14955" PostId="11203" Text="Good answer, Andrew, even if you omitted the hosting and bandwidth cost (probably peanuts compared to the support cost, so can be contained in that). Let's say it stays up 5 years, giving 3 million a year to recover investment, total cost is just under $8m a year. Income $20m a year, not a bad turnover (didn't realise Allods is that big)." CreationDate="2011-04-18T13:22:43.923" UserId="6169" />
  <row Id="14956" PostId="11167" Text="you've also forgotten the license fees for database servers. Using even mySQL commercially requires you purchase a license. -1 for recommending the use of pirated software, +1 for bursting the bubble that mmos are cheap to create :)" CreationDate="2011-04-18T13:25:13.003" UserId="6169" />
  <row Id="14957" PostId="11263" Text="Thanks Ray, yes that's the one I meant :)  " CreationDate="2011-04-18T13:33:39.517" UserId="1839" />
  <row Id="14958" PostId="4887" Text="Presumably vector was removed because it's used to mean mathematical vector, not std::vector." CreationDate="2011-04-18T13:34:59.797" UserId="744" />
  <row Id="14959" PostId="11281" Text="@LumpN you're absolutely right, that's another great resource that must be mentioned, +1 for Chris Hecker's paper" CreationDate="2011-04-18T13:40:38.853" UserId="1839" />
  <row Id="14961" PostId="4887" Score="1" Text="how about nix them both and put `container`." CreationDate="2011-04-18T14:32:13.080" UserId="370" />
  <row Id="14962" PostId="11284" Score="4" Text="Wouldn't you just assume its value is zero anyway?" CreationDate="2011-04-18T14:38:47.953" UserId="288" />
  <row Id="14963" PostId="11277" Text="Sounds pretty conclusive to me. That's good news." CreationDate="2011-04-18T14:41:07.577" UserId="4817" />
  <row Id="14964" PostId="11284" Score="2" Text="I'm curious as to what is your purpose there, if you wish to share." CreationDate="2011-04-18T14:52:04.427" UserId="6210" />
  <row Id="14965" PostId="11259" Text="Show, don't tell.  Use these questions to build correlations between elements in your procedural generator, rather than an even distribution of every possible variable.  If the identity is self consistent, and the presentation is deep enough (no just the same menu overlaying a backdrop), the user will infer some of the backstory without reading anything.  As a trading game, some of this can be communicated via the local supply and demand.  What do they offer and what do they need, and is there correlation with their culture and environment?" CreationDate="2011-04-18T15:23:18.877" UserId="6797" />
  <row Id="14966" PostId="11285" Text="Are you just interested in the case of a square? So your question could be simplified to: &quot;How can I draw a rasterized circle?&quot;. Or am I missing something here?" CreationDate="2011-04-18T15:40:44.747" UserId="20" />
  <row Id="14967" PostId="11287" Text="and sorry if the question gets closed, but I'll put the link in the wiki, that's like the #1 thing I think is important to progammers when thinking about maths." CreationDate="2011-04-18T15:53:43.213" UserId="1829" />
  <row Id="14968" PostId="11284" Text="I need to pass it to another static class that manages game time as well as other time related things that are specific to the project.  At the moment the first opportunity I have to do this is on the first Update loop, every loop after that the line is redundant.  I was wondering if there was a cleaner way to do it." CreationDate="2011-04-18T16:27:47.620" UserId="5874" />
  <row Id="14972" PostId="11082" Text="@Dan A return to C offers the advantage that &quot;best practices&quot; like not using templates or OOP are enforced by compile-time errors rather than chasing junior programmers around with a stick. Also since the language is simpler presumably compiler and debugger maintenance is cheaper, too." CreationDate="2011-04-18T17:37:02.280" UserId="6042" />
  <row Id="14973" PostId="11284" Text="It's not that big of a deal... It's certainly not going to cause massive frame loss or anything." CreationDate="2011-04-18T17:44:08.220" UserId="3547" />
  <row Id="14974" PostId="11284" Text="I realise that, but it's not very elegant." CreationDate="2011-04-18T17:49:57.530" UserId="5874" />
  <row Id="14975" PostId="11082" Text="@Dan Also, consider C++'s static_cast&lt;&gt;() - it's visually ugly because it's semantically ugly, right? Well, same reasoning should apply to C++ classes. You can do them in C, but they're visually ugly. This is good, because we don't want people to equate the idea of OOP with the weaknesses of C++ OOP." CreationDate="2011-04-18T17:50:12.363" UserId="6042" />
  <row Id="14976" PostId="11167" Text="	&#xA;@jwenting: I didn't suggest the use of pirated software as the correct thing to do--far from it. As the cheapest thing, it is undeniable that not paying for something is less expensive than paying for it, but I did point out that this was a very bad idea. Thanks otherwise. :)" CreationDate="2011-04-18T17:52:00.973" UserId="5259" />
  <row Id="14977" PostId="11109" Text="Having doubled my buffer capacity the performance has improved and memory consumption gone down. Really nice. However, ive noticed that the actual bottleneck is when the newly created cells are to be added to the list of cells being rendered each render cycle. Adding too many at once will cause more lag (obviously). Is it common to add the newly created cells in smaller batches during several update cycles with a short pause between each batch or do you have a better idea?" CreationDate="2011-04-18T17:53:04.797" UserId="6708" />
  <row Id="14978" PostId="11295" Text="Based on this, the main game Update method could probably update the static time manager class mentioned before any subsequent game components needed it, ie before calling base.Update." CreationDate="2011-04-18T19:01:43.540" UserId="360" />
  <row Id="14979" PostId="11295" Text="Yes, that is likely, but it still doesn't remove having a line in the Update method which passes gameTime somewhere else." CreationDate="2011-04-18T19:12:18.240" UserId="1198" />
  <row Id="14980" PostId="11268" Text="Wow, thanks! I'm still having an issue with the ship not pointing towards the mouse though. Only when the ship is in the middle of the screen the aiming works fine, but as soon as I start moving it around the aiming becomes incorrect." CreationDate="2011-04-18T19:35:32.580" UserId="6743" />
  <row Id="14981" PostId="11268" Text="Yeah, I noticed that too. It seems to be an problem going from screen coordinates to game coordinates. Similar issue, but not quite what the question was asking, so I left it for now. If I get a bit of time later, I might look into it and update the question (so long as I find a solution)." CreationDate="2011-04-18T20:06:55.187" UserId="376" />
  <row Id="14982" PostId="11268" Text="I've fixed the mouse issue, I just had to make a crosshair Texture2D and hid the mouse pointer. Again, thanks for the help :)" CreationDate="2011-04-18T20:23:30.833" UserId="6743" />
  <row Id="14983" PostId="11268" Text="Of course! I'm glad it was of use - and that the solution didn't require many changes :)" CreationDate="2011-04-18T21:35:16.737" UserId="376" />
  <row Id="14984" PostId="11298" Score="1" Text="I'm not an expert in 3D math unfortunately so I can't give an exact answer, but I think the solution will involve something like creating vectors out of lines connecting those points and using the cross product of those vectors to determine the orientation of the plane. Refer here: http://blog.wolfire.com/2009/07/linear-algebra-for-game-developers-part-2/" CreationDate="2011-04-18T21:37:26.190" UserId="6588" />
  <row Id="14985" PostId="11306" Score="1" Text="What data would you not want the user to change? This sounds like you should be using the content pipeline." CreationDate="2011-04-18T23:59:39.723" UserId="3547" />
  <row Id="14986" PostId="551" Text="+1 The content pipeline can be your friend sometimes. Use it to your advantage." CreationDate="2011-04-19T00:02:04.387" UserId="3547" />
  <row Id="14987" PostId="11288" Text="While this is useful, I think jokoon was looking for a specific page, and I do not think that this is the page he was looking for." CreationDate="2011-04-19T00:07:17.043" UserId="962" />
  <row Id="14988" PostId="11276" Text="It's a 2D game engine, so both HUD and game side." CreationDate="2011-04-19T00:15:34.990" UserId="2933" />
  <row Id="14989" PostId="11289" Text="I'm going to get around the aspect ratio issue by taking either the height or width of the target screen and getting the factored difference between that and the 800x480 screen width/height for both the width and height, i.e. I'd do: Width *= Target_Width / 800.0f, Height *= Target_Width / 800.0f&#xA;&#xA;I've re-written all the UI stuff so that it uses normalized values, I don't think it will hurt UI design taht much, I just have to think in floats and proportions rather than absolute pixel sizes, however I'm not sure if that's worth pursuing for in-game sprites (such as characters)" CreationDate="2011-04-19T00:18:10.807" UserId="2933" />
  <row Id="14990" PostId="11303" Text="Won't the vectors LL,UL and LL,LR need to be perpendicular to each other( 90 degree angle ) in order for the cross product to give the normal to the plane? In 3D space they are, but in 2D space they are not. I could be wrong though. " CreationDate="2011-04-19T00:18:16.273" UserId="853" />
  <row Id="14991" PostId="11303" Text="They don't need to be perpendicular but your real problem is that getting the vectors for the edges (3D vectors that is) is not addressed at all by Chris' answer and that task will probably be tricky." CreationDate="2011-04-19T00:56:31.827" UserId="6588" />
  <row Id="14992" PostId="11303" Text="@Joey: Gah, absolutely correct--looks like my brain shut off. I was answering this as I left work; mea culpa. Updated answer to reflect this." CreationDate="2011-04-19T01:03:26.553" UserId="5259" />
  <row Id="14993" PostId="11309" Text="Sounds great.  By &quot;content processor&quot; do you mean content pipeline? Can the XNB be reversed engineered?" CreationDate="2011-04-19T02:53:34.523" UserId="6302" />
  <row Id="14994" PostId="11309" Score="1" Text="Yes, content processor/pipeline. If someone cares enough about your game to reverse engineer it, consider yourself flattered... and know that you've got what it takes to be a game dev superstar." CreationDate="2011-04-19T03:22:28.557" UserId="1923" />
  <row Id="14995" PostId="11309" Text="Ha...you get a check." CreationDate="2011-04-19T03:23:40.413" UserId="6302" />
  <row Id="14996" PostId="11309" Text="I've been around XNA since day one and am not aware of anybody reverse engineering an xnb... I suppose theoretically it can be done but probably isn't a real threat." CreationDate="2011-04-19T03:24:28.637" UserId="1923" />
  <row Id="14997" PostId="11299" Text="You're missing a close-bracket!" CreationDate="2011-04-19T04:00:05.453" UserId="2698" />
  <row Id="14999" PostId="11109" Text="@CodeSpeaker I am not sure I understand what you are doing. What you should probably have is a pool of vertex/index buffers of the appropriate size. When you need a new &quot;chunk&quot;, have your worker thread fill a pair of pre-created buffers with data and then hand them over to your main/rendering thread once they're ready. And once they go out of view, return them back to the pool for re-use. Does this help?" CreationDate="2011-04-19T05:47:42.307" UserId="288" />
  <row Id="15000" PostId="11309" Score="1" Text="@Spencer You don't need to reverse engineer the XNB format to be able to read the file - because you can just use XNA itself to read it! You can only rely on XNB for very basic obfuscation (it basically converts your data to a binary file and compresses it). It is not at all secure." CreationDate="2011-04-19T05:58:13.730" UserId="288" />
  <row Id="15001" PostId="11288" Text="It's not that one but it has the equations, so that's good :)" CreationDate="2011-04-19T06:21:35.540" UserId="1829" />
  <row Id="15002" PostId="11309" Text="Sometimes asset protection sounds like an artist trying to prevent people from scraping paint chips off of replicas of their paintings." CreationDate="2011-04-19T06:32:05.403" UserId="3656" />
  <row Id="15003" PostId="11152" Text="Correct, thank you for clearing this up!" CreationDate="2011-04-19T06:53:16.350" UserId="6601" />
  <row Id="15004" PostId="11287" Text="Since that link is actually an answer to your question, you should post it as an answer to your own question." CreationDate="2011-04-19T06:59:08.763" UserId="2698" />
  <row Id="15005" PostId="3614" Text="+1 for the domain knowledge. Also don't discount the business case: Weeks of programmer time to create and tune and maintain a racing line NN could be less cost effective than a simple max tool to lay a spline and a few days of designer time." CreationDate="2011-04-19T07:34:42.867" UserId="259" />
  <row Id="15006" PostId="876" Text="Acutally, booleans in C++ *are* guarenteed to be 0 or 1, so as long as you're only doing this with bools you're safe. More: http://altdevblogaday.org/2011/04/18/understanding-your-bool-type/" CreationDate="2011-04-19T10:06:59.070" UserId="259" />
  <row Id="15007" PostId="11308" Text="I'm thinking more along the line of a vertical cross section of the universe like this http://i.imgur.com/gpCTc.jpg&#xA;&#xA;land, sea, air, void. etc.." CreationDate="2011-04-19T11:15:01.570" UserId="6267" />
  <row Id="15008" PostId="8121" Text="+1 for play your game in your head. Make sure you cover every scenario" CreationDate="2011-04-19T12:26:53.167" UserId="4777" />
  <row Id="15010" PostId="4887" Text="@Kylotan: It's as Joe said. This question was definitely about vectors, but it didn't belong with the vector tag." CreationDate="2011-04-19T13:19:50.127" UserId="2698" />
  <row Id="15012" PostId="11295" Text="Thanks, I'll play around with these workarounds and see what works." CreationDate="2011-04-19T13:59:03.977" UserId="5874" />
  <row Id="15013" PostId="11326" Text="I don't think that XML structure fits the List&lt;string&gt; type. The XmlSerializer is probably having trouble with that." CreationDate="2011-04-19T14:03:27.937" UserId="3547" />
  <row Id="15014" PostId="11334" Score="1" Text="The 30 day trial is only for Unity Pro. The free version of Unity is yours forever." CreationDate="2011-04-19T14:17:24.673" UserId="6838" />
  <row Id="15015" PostId="11334" Text="Yeah thats what I found as well.  I guess the real question is dropping $800 on unity or dropping $800 on monoTouch and monoDroid and getting the free XNA addition (so I can develop games for droid and iphone) or getting unity IOS and droid.... hmmm... I usually do 2d work, so this is a tough choice" CreationDate="2011-04-19T14:20:51.990" UserId="4777" />
  <row Id="15016" PostId="4887" Score="1" Text="So do we remove any ambiguous tag? That sounds like the wrong decision to me - better that your search turns up too much information than not enough. Skipping unwanted results is easier than brainstorming to find synonyms." CreationDate="2011-04-19T14:22:03.223" UserId="1101" />
  <row Id="15018" PostId="11342" Score="1" Text="Are you referring to the background bending about? As it's *Geometry Wars*, there's a lot of chaos in the screenshot, which has made me scratch my head for a while to try and tell what you were referring to." CreationDate="2011-04-19T14:51:08.330" UserId="3588" />
  <row Id="15019" PostId="11320" Text="A while back I read that each WoW server contains 5+ blades - 1 for each continent and the database.  Used to also be the dungeons and battlegrounds although I'm assuming that now those reside on their own clusters to allow cross-realm connections.  In short though, continents are held on one server - there isn't a point where you're transitioned off to another server unless you change continents.  " CreationDate="2011-04-19T15:08:14.673" UserId="4296" />
  <row Id="15020" PostId="11331" Score="2" Text="You are also going to need to pay Apple $99 for the iOS Developer Program. And of course, you'll need a Mac." CreationDate="2011-04-19T15:13:13.530" UserId="14" />
  <row Id="15021" PostId="11342" Text="Yes the background bending about." CreationDate="2011-04-19T15:41:27.307" UserId="853" />
  <row Id="15022" PostId="11352" Text="Thanks for the reply. I'm a real beginner in terms of programming. &#xA;&#xA;I knew the XML document had to have a certain layout, I've missed some of the coding you have put. &#xA;&#xA;I tried to make it so that text was output just as a test, which worked when making just &quot;&lt;Items&gt;&quot; but wouldnt work the extra elements.&#xA;&#xA;Would I need a class for read and write to complete this XML?&#xA;&#xA;Thanks again." CreationDate="2011-04-19T16:28:37.710" UserId="6836" />
  <row Id="15024" PostId="11352" Text="Also, your example above is for one question. My game will have multiple questions. How would that be implemented?" CreationDate="2011-04-19T16:50:48.837" UserId="6836" />
  <row Id="15025" PostId="11308" Text="That's a reasonable way to partition space into types, but it will be a challenge to make it look like spherical planets." CreationDate="2011-04-19T18:03:03.693" UserId="6042" />
  <row Id="15026" PostId="11130" Text="@Andrew Russel: that should be the answer." CreationDate="2011-04-19T18:03:19.320" UserId="3547" />
  <row Id="15027" PostId="11352" Score="1" Text="Use a list of questions. The Type would be &quot;System.Collections.Generic.List[YourNamespace.Question]&quot;" CreationDate="2011-04-19T18:04:42.643" UserId="3547" />
  <row Id="15028" PostId="2524" Text="is that not a monopoly of some sort? I have to use a mac to develop, even though there are ways around it. This is why I hate apple to death!" CreationDate="2011-04-19T18:05:17.157" UserId="2301" />
  <row Id="15029" PostId="11308" Text="theres no requirement to make it look too much like a planet. just enough random land, water, air in the right proportion and all on a hex grid along with other planets on that grid." CreationDate="2011-04-19T18:38:38.453" UserId="6267" />
  <row Id="15032" PostId="11358" Text="If they blocked something like MonoTouch, could they block things like Unity as well? " CreationDate="2011-04-19T19:05:47.377" UserId="2301" />
  <row Id="15033" PostId="11308" Text="Ah then you will want to generate a lot of hexagonal texture tiles, with the constraint that the edge between land/air etc. show up in a predictable place between adjacent tiles?" CreationDate="2011-04-19T19:20:39.693" UserId="6042" />
  <row Id="15034" PostId="11358" Text="I think so, but I do not know enough about how Unity works on iOS to say for sure. All that said, that is why I point out that even as such, I wouldn't avoid MonoTouch if I needed to develop commercial iOS apps and Objective-C still didn't look appealing to me." CreationDate="2011-04-19T19:39:07.437" UserId="1198" />
  <row Id="15035" PostId="11299" Text="Not any more! ;) Thanks." CreationDate="2011-04-19T19:42:19.373" UserId="360" />
  <row Id="15036" PostId="11353" Text="Cool thanks I'll try this out. Is the algorithm you describe basically a spring effect?" CreationDate="2011-04-19T20:01:17.957" UserId="853" />
  <row Id="15037" PostId="11368" Text="I don't believe RPGmaker is capable of this sort of simulation. Thanks for the suggestion though." CreationDate="2011-04-19T22:19:12.067" UserId="6842" />
  <row Id="15038" PostId="11368" Text="Yeah, it would be a stretch at best. I think you are just going to have to write something yourself. You could also go the other direction, mock it up with index cards and dice or similar." CreationDate="2011-04-19T23:28:17.447" UserId="395" />
  <row Id="15039" PostId="11371" Score="3" Text="&quot;Quickly&quot; is very relative though." CreationDate="2011-04-20T00:00:58.490" UserId="189" />
  <row Id="15044" PostId="11021" Text="hello James . How HTTP protocol can be used in this Game.?" CreationDate="2011-04-20T01:05:30.503" UserId="6678" />
  <row Id="15045" PostId="8619" Text="Did you find a fixed-point 3D physics engine yet? I'm looking for one too." CreationDate="2011-04-20T02:56:30.233" UserId="6846" />
  <row Id="15046" PostId="11375" Text="Yes this worked.  Thanks!" CreationDate="2011-04-20T04:24:26.953" UserId="1021" />
  <row Id="15047" PostId="11352" Text="@Tom: What Omnion said. Remember to use `IntermediateSerializer.Serialize` to check these things." CreationDate="2011-04-20T04:25:58.323" UserId="288" />
  <row Id="15048" PostId="11378" Text="You're breaking my heart! What about the HTC Evo? Wouldn't the Adreno 200 at least be able to handle that? Even for a weak GPU, that seems unreasonably pathetic." CreationDate="2011-04-20T05:49:21.450" UserId="5876" />
  <row Id="15049" PostId="11355" Text="+1 for pointing out both a straightforward geometry-based and pixel sampling solution" CreationDate="2011-04-20T05:50:19.290" UserId="5508" />
  <row Id="15050" PostId="11378" Text="My goal is 30fps at least for the Droid and EVO. I vaguely remember games like Backbreaker that SEEM to look quite nice (been a while since I've seen it, I might be wrong). What's the secret here? I have no overdraw, I barely use alpha blending, and this shader is primitive. Do you have any idea? (Btw, will accept answer in a few hours, don't worry :) )" CreationDate="2011-04-20T05:53:55.437" UserId="5876" />
  <row Id="15051" PostId="11378" Text="30 FPS for Droid or EVO is very difficult. These GPU have very low fillrate." CreationDate="2011-04-20T06:01:09.587" UserId="721" />
  <row Id="15052" PostId="11357" Score="1" Text="@bmcnett &quot;[] .. but std::vector requires you to store everything for each object in a contiguous chunk of memory&quot; - that's not a question of the container, its a question of your data-layout, you can have all position in a continuous chunk of memory with a std::vector: `struct point{float x, y, z, w}; std::vector&lt;point&gt; positions;`" CreationDate="2011-04-20T07:14:41.347" UserId="1839" />
  <row Id="15053" PostId="11378" Text="I don't know anything about mobile graphics chipsets, but I can't help noticing that you didn't explain the most interesting part. Why a single line drops performance so dramatically? Is it really slow mix operation?" CreationDate="2011-04-20T07:17:36.557" UserId="2710" />
  <row Id="15054" PostId="11378" Text="This is one of the cases where I wish I could upvote an answer twice." CreationDate="2011-04-20T07:18:15.350" UserId="5876" />
  <row Id="15055" PostId="11378" Text="@Nevermind: I should let Ellis answer, but in general, everything becomes a bottleneck. Each instruction needs to be executed for each pixel, and since mix will probably translate into at least two pixel shader instructions, this adds up quickly if your GPU is slow. Then, of course, there COULD be bottlenecks if you use too many GPRs, which stall out your shader unit because it can't parallelize as well." CreationDate="2011-04-20T07:20:05.660" UserId="5876" />
  <row Id="15056" PostId="11378" Text="@Ellis: Is there a way to see the actual compiled shader fragment code? I'm writing GLSL code, but I'd love to see what the compiler makes out of it." CreationDate="2011-04-20T07:20:52.900" UserId="5876" />
  <row Id="15057" PostId="11378" Score="2" Text="I haven't tried it but you can look &quot;PVRUniSCo Editor&quot; for GLSL instruction cycles." CreationDate="2011-04-20T07:34:03.180" UserId="721" />
  <row Id="15058" PostId="11378" Text="The editor is fantastic. I wish I could upvote your answer three times..." CreationDate="2011-04-20T07:48:28.107" UserId="5876" />
  <row Id="15059" PostId="11378" Text="According to the editor, that mix() brings the shader from 4 cycles to 12 cycles, and twice as many GPRs. Wow." CreationDate="2011-04-20T07:51:37.323" UserId="5876" />
  <row Id="15060" PostId="11378" Text="@Ellis: This tool is absolutely brilliant. See the edit to my original question, I got it back to 29fps by simply changing the mix() to something else. Does mix() internally saturate, or why is it so ridiculously slow?" CreationDate="2011-04-20T08:28:58.837" UserId="5876" />
  <row Id="15061" PostId="11378" Text="@EboMike mix() is not very used on mobile platform, so i think there is no optimization done (driver or software)." CreationDate="2011-04-20T08:35:12.040" UserId="721" />
  <row Id="15062" PostId="11378" Text="I would have thought even the most primitive compiler would convert `d=mix(a,b,c)` into `d+=(b-a)*c`. Oh well, you know what they say - if you want to get the job done right, you have to do it yourself. Thanks again for all your help." CreationDate="2011-04-20T08:38:48.060" UserId="5876" />
  <row Id="15063" PostId="11378" Text="Btw, since you're Mr. Unity, feel free to double-check my findings. I may have missed something. Also, I suspect that the problem could be that mix() will internally always use mediump (or worse) for the computations. If I use a mediump for `fogDiff` in the above example, I get back to the same performance numbers I had with `mix()`." CreationDate="2011-04-20T09:04:26.343" UserId="5876" />
  <row Id="15064" PostId="11357" Text="my school are going to love this :)" CreationDate="2011-04-20T09:51:25.187" UserId="1829" />
  <row Id="15065" PostId="11371" Score="1" Text="Also, although the original poster said he could write scripts in Python, Ruby, or Lua, Unity offers C#, Boo, or Javascript!" CreationDate="2011-04-20T11:05:33.010" UserId="1101" />
  <row Id="15066" PostId="11109" Text="Thats actually a great idea. Thanks for the advice, ill give it a shot :)" CreationDate="2011-04-20T11:17:49.810" UserId="6708" />
  <row Id="15067" PostId="11377" Text="Do you know that fog is not linear with depth? If you are not afraid of adding pow function to the shader, i think you should try to make it more realistic ;)" CreationDate="2011-04-20T12:23:02.743" UserId="3794" />
  <row Id="15068" PostId="11370" Text="'bullet physics' are also called 'external ballistics' http://en.wikipedia.org/wiki/External_ballistics" CreationDate="2011-04-20T13:21:24.637" UserId="6854" />
  <row Id="15069" PostId="11320" Text="Interesting, do you remember where you read that? Like I said, I never player WoW and don't know how big the continents are, but I can't imagine that each continent is hosted on one separate server." CreationDate="2011-04-20T13:56:47.880" UserId="6831" />
  <row Id="15070" PostId="4887" Text="Even without the tag, this is still the third result when searching for vector. Tags are more for browsing and ignoring/highlighting than searching - ambiguity makes tags bad to use for those." CreationDate="2011-04-20T14:15:34.830" UserId="744" />
  <row Id="15071" PostId="11357" Text="-1 because this answer doesn't add anything to the list vs. vector discussion already here, and its claim about vector polluting the cache is wrong, as Maik says." CreationDate="2011-04-20T14:18:54.640" UserId="744" />
  <row Id="15072" PostId="11388" Text="I can't address your main question, but the first question's answer is &quot;yes&quot; - in Pokémon specifically the stats it had during the battle match the stats that specific Pokémon will have once you've caught it. The differences between trained and wild of the same species is based on other factors, which are [addressed in the middle of this Gaming answer under Natures, IVs, and EVs](http://gaming.stackexchange.com/questions/12601/pokemon-generation-iv-platinum-pearl-diamond-whats-new-since-gameboy-versio/12604#12604), which includes links to more in-depth explanation of each." CreationDate="2011-04-20T14:27:22.570" UserId="3588" />
  <row Id="15073" PostId="11371" Text="@Ricket I completely agree. But there is a steeper learning curve to the OP's original thoughts with Unreal and Source. @Kylotan I did notice that, but again with Unreal using UnrealScript and Source using C++ (?) I made the assumption that the poster wanted to learn. To be completely honest, this was a lazy answer since I'm getting a little flustered with the amount of &quot;What engine...?&quot; questions on the site. Yeah, they may be for different intents and purposes, but essentially most are answered with Unity, it's just a matter of who answers it first." CreationDate="2011-04-20T14:38:00.293" UserId="2332" />
  <row Id="15074" PostId="11388" Text="I don't get your question." CreationDate="2011-04-20T14:45:25.807" UserId="1156" />
  <row Id="15075" PostId="11370" Text="Heh. I think he's referring to the Bullet Physics engine http://bulletphysics.org/wordpress/" CreationDate="2011-04-20T15:06:43.220" UserId="4513" />
  <row Id="15076" PostId="11388" Text="@The Communist Duck sometimes when you catch a pokemon it seems weaker than when you fought it. I want to know if this is a difficulty mechanism or player perception." CreationDate="2011-04-20T15:14:22.910" UserId="6469" />
  <row Id="15077" PostId="11397" Text="@eBusiness pokemon games have only one difficulty." CreationDate="2011-04-20T15:15:35.313" UserId="6469" />
  <row Id="15078" PostId="11398" Text="This question has some good info on that: http://gamedev.stackexchange.com/questions/2029/what-math-should-all-game-programmers-know" CreationDate="2011-04-20T15:24:23.017" UserId="3656" />
  <row Id="15079" PostId="2281" Text="It's easy to google &quot;a reckless disregard for gravity&quot;, and google does autocomplete that for me." CreationDate="2011-04-20T15:27:06.070" UserId="5021" />
  <row Id="15080" PostId="11377" Text="@notabene: I'm aware of that, but since this post is about how a simple `mix()` killed the framerate, I wasn't too inclined to throw in a `pow` to finish it off." CreationDate="2011-04-20T15:34:31.273" UserId="5876" />
  <row Id="15081" PostId="2279" Text="Because Dragon Age 2 is selling terribly?&#xA;&#xA;I don't see any reason why any of the words you listed should be avoided." CreationDate="2011-04-20T15:40:52.330" UserId="5021" />
  <row Id="15082" PostId="11320" Score="2" Text="WoW server stats: 13,250 total server blades, 75,000 total CPU cores, 112.5 terabytes of RAM (as of GDC Austin 09). See [here](http://www.gamasutra.com/php-bin/news_index.php?story=25307); not necessarily all devoted to WoW, but reasonably close enough." CreationDate="2011-04-20T15:44:41.670" UserId="1430" />
  <row Id="15083" PostId="11397" Text="@Skeith You'd still need some tuning tools to get that difficulty just right. All the more important actually to find some middle ground where most people think it's fun." CreationDate="2011-04-20T15:51:51.307" UserId="3505" />
  <row Id="15084" PostId="11320" Text="@Josh Petrie: Thank you, found this article earlier this day. But I'm still looking for stuff about seamless or continuous server architecture." CreationDate="2011-04-20T15:57:46.140" UserId="6831" />
  <row Id="15085" PostId="11308" Text="yes, in a spherical manner. so the size of each layer (land, water..) is randomly picked and then in that land mass random land tiles will be placed for the planet, and the same for each layer." CreationDate="2011-04-20T17:00:24.783" UserId="6267" />
  <row Id="15086" PostId="11357" Text="you misunderstood my claim. i never said that *among all the containers* std::vector is particularly guilty of polluting the cache. all the containers, and in fact even arrays, are about equally guilty of that. std::vector is falling out of favor *because C++ objects themselves* are falling out of favor. C++ mandates that each object's data be contiguous in memory. you can get around that by avoiding C++ objects, for example by using std::vector&lt;position&gt; as mentioned above." CreationDate="2011-04-20T17:13:50.847" UserId="6042" />
  <row Id="15087" PostId="11382" Text="Wow @_@. I had no idea that Ryzom went open source!! That could be an excellent place to muck around as a proving ground." CreationDate="2011-04-20T17:42:03.690" UserId="6842" />
  <row Id="15088" PostId="11380" Text="That was also my reasoning behind Source and Unreal. I probably would start as a HL2 mod or something, as opposed to a from-scratch project just for mock purposes. Thanks for the suggestion! Diablo does have a fair bit of interesting features that are conducive to this project." CreationDate="2011-04-20T17:44:02.067" UserId="6842" />
  <row Id="15089" PostId="11357" Text="Except `point` is a C++ object (as is `std::vector`, as is something as simple as `float`). I know the distinction you're trying to draw, but you're doing a bad job of explaining it." CreationDate="2011-04-20T18:40:57.103" UserId="744" />
  <row Id="15090" PostId="11405" Score="3" Text="You need to explain in greater depth. What does &quot;show the cube being filled&quot; mean? Being filled with water? Being filled with smaller cubes? Be really specific. Also I don't think that this is game-dev material." CreationDate="2011-04-20T18:44:55.903" UserId="962" />
  <row Id="15091" PostId="11388" Text="I never notice that." CreationDate="2011-04-20T18:55:47.107" UserId="1156" />
  <row Id="15092" PostId="11021" Text="Is there some reason you would want to? I can not think of any particularly useful application to do it." CreationDate="2011-04-20T18:56:06.963" UserId="4443" />
  <row Id="15093" PostId="11380" Text="If you are thinking of using Source you should take a look at garry's mod." CreationDate="2011-04-20T19:02:20.203" UserId="303" />
  <row Id="15094" PostId="11398" Text="@beardcp I might go as far as duplicate." CreationDate="2011-04-20T19:29:25.177" UserId="1156" />
  <row Id="15095" PostId="11383" Text="Thanks, I'll take a look at these projects. This example project also cover most of my question http://create.msdn.com/en-US/education/catalog/sample/custom_model_rigid_and_skinned" CreationDate="2011-04-20T19:38:08.783" UserId="6835" />
  <row Id="15096" PostId="11320" Score="1" Text="Related [How is load balancing achieved in MMOs?](http://gamedev.stackexchange.com/q/5956/450)" CreationDate="2011-04-20T19:47:56.010" UserId="450" />
  <row Id="15097" PostId="11358" Text="They could, but let's put it this way: When they were making a big deal about forbidding applications generated by the Adobe iOS Flash packager they were simultaneously accepting and allowing Unity apps in spite of the &quot;letter of the law&quot; forbidding Unity as well.  If you want to be 'safe' then you simply stick with Objective C.  Otherwise, it's really a matter of which entity or framework they decide to make an example of.  Maybe it will be the one you want to use, maybe not.  That's the price you pay for entry into their 'game'." CreationDate="2011-04-20T20:22:38.123" UserId="6799" />
  <row Id="15098" PostId="11334" Text="One other thing to consider is how the tooling is for each.  I know that when you're talking about Unity there's a sweet built in profiler that is ONLY available in Pro (meaning you'd be paying $4000 instead of 800).  Does Mono* offer the same type of tooling for the $800 you'd pay for unity &quot;basic&quot;?" CreationDate="2011-04-20T20:26:08.183" UserId="6799" />
  <row Id="15099" PostId="11333" Text="Note: That's just the basic version of Unity.  There are a number of other really helpful features that you'll *really* want that are only available in pro.  The Profiler comes to mind immediately.  In that case you're looking at $4000, not $800." CreationDate="2011-04-20T20:27:20.600" UserId="6799" />
  <row Id="15100" PostId="11392" Text="so theres a bug in the bullet physics library? odd...." CreationDate="2011-04-20T20:31:17.820" UserId="6275" />
  <row Id="15101" PostId="11370" Text="oh sorry, i forgot that part, its the Bullet Physics engine" CreationDate="2011-04-20T20:32:00.923" UserId="6275" />
  <row Id="15102" PostId="2372" Text="Today: Chrome 10.0.648.205... 288 points and 13 bonus." CreationDate="2011-04-20T20:51:12.157" UserId="3115" />
  <row Id="15103" PostId="11392" Text="Based on what you've said there's a bug in the bullet physics engine. It's possible that one of us is misinterpreting something and the bug is actually in the model loading library. Either way, something is segfaulting rather than detecting an error and handling it gracefully. Not good in release mode (although I'm sure some game devs would argue that speed is more important); unacceptable in debug mode." CreationDate="2011-04-20T20:59:55.063" UserId="5020" />
  <row Id="15104" PostId="11353" Text="Nope, I didn't describe how it would vary over time, so not a spring. I just described how to get the distortion shape you're after. Animating it in the GW style would require adding another factor up there, modulating i over time. Try implementing the whole thing and it should become clear to you that you can scale i to relax or intensify your effect. Pass a sine wave through that modulating value, or bounce it like a 1D spring and you'll effectively bounce the whole thing. Again, once you have a harness with a bunch of variables floating around, experimentation will be your friend." CreationDate="2011-04-20T21:00:19.310" UserId="6690" />
  <row Id="15105" PostId="11392" Text="alright, hmm...i guess ill try another way.. but about the .bullet export thing, is that possible? also my current Blender version is 2.57(im not ultimately used to the interface, yet)" CreationDate="2011-04-20T22:17:24.430" UserId="6275" />
  <row Id="15106" PostId="11392" Text="I never got the hang of the Blender interface. Sorry, can't help there." CreationDate="2011-04-20T22:40:52.067" UserId="5020" />
  <row Id="15107" PostId="6171" Text="It is questionable whether IE6 is mature enough to be used in a production environment.  If you have read the latest press releases from Microsoft, you would have doubts. Historically, in the web browser arena, older often means less stable/reliable than new. Design/QA/testing of web browsers was immature in the 1990s compared to now. Adherence to web standards was pot luck too, depending on what web browser was being used." CreationDate="2011-04-20T22:50:22.420" UserId="4804" />
  <row Id="15108" PostId="11405" Text="My apologies. I mean being filled with smaller cubes, and using this idea I am supposed to create a smartphone game." CreationDate="2011-04-20T23:06:01.897" UserId="6857" />
  <row Id="15109" PostId="11392" Text="alright, well i got the .bullet file exported, now im wondering how i would use it in my c++ game via bullet?" CreationDate="2011-04-21T00:08:06.437" UserId="6275" />
  <row Id="15111" PostId="11154" Text="Great point... I am going to have to look into systems analysts, but don't you have to be a good programmer to do that?" CreationDate="2011-04-21T01:15:09.360" UserId="6666" />
  <row Id="15112" PostId="7956" Text="I'm sure its not ironic then that Minecraft is an incredible performance hog?" CreationDate="2011-04-21T02:17:10.077" UserId="4513" />
  <row Id="15113" PostId="11419" Score="2" Text="Is this a duplicate of this question? http://gamedev.stackexchange.com/questions/9810/what-is-the-difference-between-a-level-designer-and-an-environment-artist" CreationDate="2011-04-21T03:34:20.940" UserId="6588" />
  <row Id="15114" PostId="11243" Text="I've been thinking about this, and I decided that this answer is actually relevant to _both_ of my questions. Orienteering requires 3-5 visible features. I remember reading that fleshing-out an NPC requires 3-5 features too... And most probably, making a location recognizable and rememberable (is that even a word?) requires 3-5 distinct feeatures. " CreationDate="2011-04-21T06:55:34.060" UserId="2710" />
  <row Id="15115" PostId="11383" Text="The samples are nice, but too limited for real games, ie, you have to expand on them a lot to support everything. Which might be what you want, or not :)" CreationDate="2011-04-21T08:45:44.433" UserId="6210" />
  <row Id="15116" PostId="11382" Text="It was the aim from the start of the Ryzom project, it took a lot longer than hoped for, but here it is now. The FSF is rightly delighted with this ;)" CreationDate="2011-04-21T08:47:09.190" UserId="6210" />
  <row Id="15117" PostId="11389" Text="Thanks Roger, I'll contact them directly." CreationDate="2011-04-21T08:53:26.887" UserId="6427" />
  <row Id="15118" PostId="11428" Text="Nice answer. Also i dont think that using geometry shaders in a way you say will have problems with tex coords ;)" CreationDate="2011-04-21T09:14:29.053" UserId="3794" />
  <row Id="15119" PostId="11428" Text="So where can I find more information about these shader types?" CreationDate="2011-04-21T11:13:24.900" UserId="6867" />
  <row Id="15120" PostId="6590" Text="In the message it says &quot;use the command-line sxstrace.exe tool for more detail&quot; - I have done this in the past and found it to be quite useful." CreationDate="2011-04-21T13:19:11.210" UserId="1101" />
  <row Id="15121" PostId="11143" Text="I ended up implementing an EditBox manually to deal with text input.  It wasn't too difficult although not as full featured as I'd like." CreationDate="2011-04-21T13:23:38.747" UserId="6605" />
  <row Id="15122" PostId="11433" Text="3dMax 2010 does support exporting to Collada format. I've analyzed exported xml and do not see anything that would indicate Opacity setting in animations is exported (only standard positions, rotations, scale for meshes). Is does surprises me that there is almost nothing on web covering this conceptually simple requirement... " CreationDate="2011-04-21T14:00:31.307" UserId="6835" />
  <row Id="15123" PostId="9810" Text="Yes that is a good practical example of the difference. Most people seem to think the word &quot;design&quot; implies visual design, but it actually pretty much just means &quot;making decisions about X.&quot;" CreationDate="2011-04-21T14:28:01.940" UserId="6588" />
  <row Id="15124" PostId="9813" Text="That's what he said, I think you mis-read his comment." CreationDate="2011-04-21T14:49:28.670" UserId="6588" />
  <row Id="15125" PostId="9813" Text="He said Env. Artist did models, I said 3D artist would do models; and Env. Artist. does *see above*." CreationDate="2011-04-21T15:52:12.540" UserId="4513" />
  <row Id="15126" PostId="9813" Text="Your distinction between &quot;3D artist&quot; and &quot;environment artist&quot; is non-sensical to me, because an environment artist is a kind of 3D artist. Character artists are the other main kind of 3D artist. That is, a 3D artist can specialize in environment or characters. What you described is more of a concept artist (ie. person who paints pictures to define the aesthetic of the game.)" CreationDate="2011-04-21T16:14:16.850" UserId="6588" />
  <row Id="15127" PostId="11021" Text="This is not a forum.  If you have questions, just ask a new question.  Comments aren't for a long back and forth." CreationDate="2011-04-21T16:43:37.797" UserId="51" />
  <row Id="15128" PostId="9813" Text="In summary:&#xA;&#xA;Environment Artist: World Object Placer, Sunset tweaker |&#xA;3D Artist: Model maker/Texturer |&#xA;&#xA;Level Designer: Objective A must be completed b4 Objective B, put AI behind building x, and inside building y. " CreationDate="2011-04-21T17:00:43.473" UserId="4513" />
  <row Id="15129" PostId="9813" Text="http://en.wikipedia.org/wiki/Environment_artist" CreationDate="2011-04-21T17:03:40.837" UserId="6588" />
  <row Id="15130" PostId="9813" Text="We've already learnt that the differences in definitions change from person to person, I'd take that wiki page with a grain of salt." CreationDate="2011-04-21T17:20:55.850" UserId="4513" />
  <row Id="15132" PostId="9812" Text="I like your term &quot;dallas-style&quot; so I will probably adopt it. I teach classes in level design and on the first day usually open with an explanation about how the early FPS companies in Texas (id, 3D Realms, Ritual, etc) temporarily derailed the definition of &quot;level design.&quot;" CreationDate="2011-04-21T17:41:27.400" UserId="6588" />
  <row Id="15133" PostId="9813" Text="Although the definition of &quot;level designer&quot; varies between studios, I have literally never seen the term &quot;environment artist&quot; mean something separate from 3D artist. For what it's worth, I know both level designers and environment artists at a number of game development studios." CreationDate="2011-04-21T17:56:17.893" UserId="6588" />
  <row Id="15134" PostId="11357" Text="The problem is not so much objects per se, but object members (which float does not have.) It is cache-hostile for the members of a single object to be contiguous in memory, as required in C++ for a[i] to be equivalent to *(a+i). What is better is for the first members of N objects to be adjacent, followed by the second members of N, where N relates to cache size. Games are slowly moving toward this goal in an ad hoc manner." CreationDate="2011-04-21T18:36:32.510" UserId="6042" />
  <row Id="15135" PostId="11447" Score="2" Text="This would work for showing a question for a given length of time, but I suspect the question should remain visible until the player chooses an answer." CreationDate="2011-04-21T19:20:53.543" UserId="1198" />
  <row Id="15136" PostId="11459" Text="I've updated both cards drivers and the mipmapping pixelization is no longer visible. The NVIDIA card seems to have better mipmapping quality though." CreationDate="2011-04-21T19:43:28.460" UserId="6178" />
  <row Id="15137" PostId="11459" Text="I should add; and I upvoted the answer from 5ound because it's broadly what he's getting at- hardware (for some loose definition of 'hardware', that includes a reasonably up to date software driver) that doesn't support GL 1.4 has got to be pretty rare at this point. So your second approach should also be fine. But like I said, super-safe and so forth." CreationDate="2011-04-21T20:01:17.123" UserId="6873" />
  <row Id="15138" PostId="11433" Text="Game engines often do this by providing a custom plugin. I am not surprised, remember my mates coders having to implement stuff even for just environmental maps in other engines... I am not aware if is there a native max format loader for XNA, o r a hot link with  the engine, something..." CreationDate="2011-04-21T21:01:16.960" UserId="3599" />
  <row Id="15139" PostId="11428" Score="2" Text="@Mathias Don't care about it. By using XNA you are stucked with shader model 3.0 which hase only vertex and pixel shader..." CreationDate="2011-04-21T21:06:39.427" UserId="3794" />
  <row Id="15140" PostId="539" Text="His statement applies to learning a new 3D tool after you've already mastered a different one, but not to learning 3D modeling in the first place." CreationDate="2011-04-21T21:19:44.843" UserId="6588" />
  <row Id="15141" PostId="11460" Text="+1 This. A question and answer game shouldn't worry about timing unless they're timed questions, but the primary sentinel value should be checking whether a user has answered in the first place." CreationDate="2011-04-21T21:42:52.523" UserId="2332" />
  <row Id="15142" PostId="11414" Text="If you carefully watch the video in your link, it's clear that the &quot;rope&quot; being simulated is actually a chain, i.e. a large number of inflexible segments connected in a line, rather than a continuously flexible primitive. This is most obvious when the rope wraps around the small round obstacle; you can see the corners spin around it. A chain is much, much easier to simulate than a continuous rope; each link is just a collision primitive and they're permanently attached to each other. For more convincing behavior, make each link a very stiff spring rather than totally inflexible." CreationDate="2011-04-21T21:52:51.830" UserId="6825" />
  <row Id="15143" PostId="11021" Text="@Tetrad : Hello Moderator,I understand ,But these question are interrelated with each other as they belong to same Project.If Every time i will add a new question on different Page then every time i have to explain why i am asking this question,Where i have to use the solution." CreationDate="2011-04-21T22:38:41.637" UserId="6678" />
  <row Id="15144" PostId="6587" Text="Synapse, reminds me of Anti-Trust ;)" CreationDate="2011-04-21T23:36:35.467" UserId="4455" />
  <row Id="15145" PostId="993" Text="I hate this too, but I'm not sure why the answer was downvoted, as it is a valid method for balancing. Thus it gets +1 from me. It could also be used purely during the testing stage alongside good metrics to automatically find the correct level to pitch levels at." CreationDate="2011-04-21T23:54:02.023" UserId="1101" />
  <row Id="15146" PostId="1831" Text="Noise is definitely the way to go, if you even picture the effect your after, its short changes of random motion in different directions. But it can't be a spasm, so you need brief sections of uniformity. Sounds like a perfect use for Perlin noise." CreationDate="2011-04-22T00:18:56.833" UserId="4513" />
  <row Id="15147" PostId="11456" Text="Based on your questions, and for such a small amount of vertices, I have a sneaking suspicion you may be better off with `DrawUserPrimitives`." CreationDate="2011-04-22T02:02:23.990" UserId="288" />
  <row Id="15148" PostId="11390" Text="Thanks Roger very much for the detail explanation. This info really helps me on making the city in game with those copyright issues in mind." CreationDate="2011-04-22T04:04:26.460" UserId="6850" />
  <row Id="15149" PostId="11385" Text="Thanks Will, OpenStreetMap.org is a nice source to get the city data to create racing track." CreationDate="2011-04-22T04:06:59.487" UserId="6850" />
  <row Id="15150" PostId="11463" Text="Fascinating! Thank you very much. Sadly, I'm having a lot of trouble loading the paper you linked to. Maybe it's hosted on Amazon's EC2? ;)" CreationDate="2011-04-22T04:37:05.023" UserId="6882" />
  <row Id="15151" PostId="11464" Text="I recommend trying it both ways for your data set and see which performs better." CreationDate="2011-04-22T04:40:05.377" UserId="1198" />
  <row Id="15152" PostId="11467" Text="@Bas Although this is off-topic, Yes. I believe this is due to the fact that the objects/enemies each are associated with a &quot;screen&quot; number. When transitioning from one screen to another the objects from the current screen are unloaded and once the transition finishes the objects from the &quot;new&quot; screen are loaded. This is the way I will be implementing it in my project as well." CreationDate="2011-04-22T04:52:32.650" UserId="974" />
  <row Id="15153" PostId="11444" Text="The card on this machine is a nVidia Corporation GT218 [ION]. I understand it's going to be a little slow before I optimise but not this slow. I'm binding 1 texture and using it to draw a simple heightfield admittedly of 1 triangle at a time. So a pretty awful way to do things but even so, slower than expected." CreationDate="2011-04-22T06:56:36.890" UserId="6870" />
  <row Id="15154" PostId="11086" Text="*Relatively* easy! If the alternative is impossible, then &quot;extremely difficult&quot; is relatively easy ;)" CreationDate="2011-04-22T06:57:21.507" UserId="323" />
  <row Id="15155" PostId="11444" Text="Just taken the glBegin()/glEnd() calls outside the loop and tweaked the draw routine accordingly and framerate is up to 30fps. So I've leant what a drastic effect those calls make when used unwisely :) Thanks!" CreationDate="2011-04-22T07:17:57.300" UserId="6870" />
  <row Id="15156" PostId="11460" Text="I think your answer is better than mine :). Small addendum A lot of newbies have problems with detecting a keypress (because its hard to hold a button for less than 15ms. So here is the code that to detect a key press: KeyBoardState oldState;   if(Keyboard.GetState.IsKeyDown(Keys.A) &amp;&amp; !oldState.IsKeyDown(Keys.A)){ userChoseAnswer = true; }  oldState = Keyboard.GetState(); " CreationDate="2011-04-22T07:51:14.527" UserId="5224" />
  <row Id="15157" PostId="11447" Text="Ah yes, that is probably what Tom meant he was a bit unclear in his wording though.  +1 for you sir :)" CreationDate="2011-04-22T07:53:05.990" UserId="5224" />
  <row Id="15158" PostId="11082" Text="-1 because making wrong claims: **&quot;There is a movement towards avoiding pointers whenever possible&quot;** That is nonsense, pointers or more precisely dereferencing an address is the only way a CPU can access (read and write) any data in memory. Using a pointer does not lead to more or less cache misses, that's nonsense too, bad data-design leads to cache misses. Pointers have nothing to do with that. I know where you are trying to get at, but you are using wrong arguments to get there!" CreationDate="2011-04-22T08:03:33.190" UserId="1839" />
  <row Id="15160" PostId="11475" Text="Thanks. However, the blue vector can be about 30 degrees raised from the XZ plane, in which case lerping wont work (unless I'm missing something?). I recognize your picture btw, you wrote an A* search example for XNA." CreationDate="2011-04-22T08:11:26.787" UserId="5021" />
  <row Id="15162" PostId="11475" Text="Hey yes that's me :).  About your question, I do think lerping will still work, you might have to renormalize the vector though. If it doesn't work, can you provide a small test case (doesn't have to be in HLSL, XNA's Vector also has Lerp) with two vectors, an expected result and a return result then I might be able to tell you more." CreationDate="2011-04-22T08:14:36.643" UserId="5224" />
  <row Id="15164" PostId="11082" Text="**&quot;OOP features are not appropriate for games, because these features operate on assumptions that are hostile to cache performance&quot;** That general claim is also wrong, again: bad data-layout leads to cache misses, that's got nothing to do with OOP features nor pointers. You can make perfectly cache friendly data-structures using OOP and vice versa bad data-structures in c or assembler. That's got nothing to do with the question at hand, plus its wrong." CreationDate="2011-04-22T08:20:14.750" UserId="1839" />
  <row Id="15165" PostId="11465" Text="1. Vertices are only transformed once - It doesn't have to be always right. Your transformed (and lighted) vertices are stored in post T&amp;L cache. If you have a lot of indeces (millions) and you use the same index at the begining and at the end of the batch, cache doesn't have to be big enough to store all transformed vertices. But in most cases, you will use the same index near to it's other usages. ..... And also - when he draws non-shared vertices (he draws linelist, not linestrip), all vertices will be transformed just once :)" CreationDate="2011-04-22T08:21:21.043" UserId="4947" />
  <row Id="15168" PostId="11475" Text="I've added a second image to illustrate why lerping doesn't work. The orange normal map normal has to be rotated so that it applies to the surface. For example, if you have a surface normal that is equal to the orange normal map normal, but they are both rotated, then lerping in any amount will just give you the same vector, and no rotation will happen at all." CreationDate="2011-04-22T08:47:34.820" UserId="5021" />
  <row Id="15169" PostId="11476" Text="I wouldn't call OGRE a wrapper for OpenGL, sure thats a small part of it, but it also includes resource loading and management, a scene graph for rendering and culling away unseen models and lots more. Its an entire 3D engine, that happens to be able to use OpenGL for its output." CreationDate="2011-04-22T08:59:03.137" UserId="337" />
  <row Id="15170" PostId="11479" Text="Hi, models has bones, bones control vertices, animators controls only bones = simplified model. Your question is looks like duplicate of this one: http://gamedev.stackexchange.com/questions/1183/character-animation-architecture - So i vote for closing it." CreationDate="2011-04-22T09:31:32.217" UserId="3794" />
  <row Id="15172" PostId="11474" Text="Your question does not make sense. You cannot rotate a vector *by* a vector (you can rotate *around* a vector, and in fact you *must* specify an axis of rotation in 3-space). You can find the angle a vector forms with a plane. But in the case of a surface normal it is *defined* as 90 degrees. Additionally, rotating a vector by 90 degrees makes no sense unless you specify, as I mentioned, the axis of rotation." CreationDate="2011-04-22T09:45:12.763" UserId="288" />
  <row Id="15174" PostId="11454" Text="I did see this solution on the wiki and tried to use it but it didn't work and I was in a hurry, so I did use the less flexible but instantly working choice ATL block statement instead." CreationDate="2011-04-22T09:51:37.730" UserId="364" />
  <row Id="15175" PostId="11474" Text="The surface normal is 90 degrees from the surface, and some other angle from the XZ plane (with Y being up and Z being toward the screen, as in Direct X). I want to rotate the vector by the angle that the normal forms with the XZ plane." CreationDate="2011-04-22T09:57:20.267" UserId="5021" />
  <row Id="15176" PostId="11474" Text="What I'm trying to do, is apply a normal map to a terrain surface. I guess one way is to find the tangent and bitangent vector, and then use those with the surface normal to form a matrix, which I multiply by the orange normal map normal, to obtain the green result normal. I'm not sure how to find the bitangent and tangent, or if there is an easier way. I have updated my question to show how I am getting the normal from the terrain." CreationDate="2011-04-22T09:59:47.643" UserId="5021" />
  <row Id="15177" PostId="11476" Score="6" Text="PLEASE PLEASE PLEASE stop sending people to NeHe. The tutorials are good, but incredibly outdated. The days of OpenGL 1.x are long gone, let's try not to cripple the next generation of graphics programmers right out of the gate!" CreationDate="2011-04-22T10:38:37.410" UserId="678" />
  <row Id="15178" PostId="11473" Text="If you are a completely new to 3D graphics programming, I'd try to get a feel for the way the low level APIs operate first (OpenGL or D3D, it does not really matter) and then switch to a ready-made graphics engine such as OGRE so that you can concentrate on your application/game instead of on rendering engine design/development." CreationDate="2011-04-22T10:40:51.103" UserId="678" />
  <row Id="15179" PostId="11476" Score="2" Text="See &quot;An Intro to Modern OpenGL&quot;: http://duriansoftware.com/joe/An-intro-to-modern-OpenGL.-Table-of-Contents.html" CreationDate="2011-04-22T10:44:11.537" UserId="678" />
  <row Id="15180" PostId="11310" Text="A question this significant surely has more answers - or we game developers have failed to make a real contribution to our community. Take note, those of you who can do something about this: if this question ends up with no good answers, it's your job to do something about it and create a site which would make a spectacular answer. We do what we must because we can." CreationDate="2011-04-22T11:41:17.573" UserId="2698" />
  <row Id="15181" PostId="11483" Text="The sites you ask for are already being answered [in a different question](http://gamedev.stackexchange.com/questions/11310/) (thankyou for reminding me of it). Perhaps you can ask something different, or your question is already being answered!" CreationDate="2011-04-22T11:43:34.623" UserId="2698" />
  <row Id="15182" PostId="11485" Text="I fully intend on lurk on  many gaming development sites as possible, before opening my mouth! I fully understand that it will take time and effort on my part before I create the next big thing! Thank you for answering - and I will be aware of the appropriate netiquette required when I really start digging into it. I just took the opportunity to add more content to stack exchange sites :)" CreationDate="2011-04-22T12:04:08.463" UserId="6892" />
  <row Id="15183" PostId="11484" Text="What you describe might work, but I'm weary of doing all that in a shader, 920000 times per frame (i.e. once per pixel). Can I just form a matrix from the normal, cross(normal, float3(1,0,0)) and cross(normal, float3(0,0,1))? I'm trying that now, although it doesn't seem to work." CreationDate="2011-04-22T12:05:35.757" UserId="5021" />
  <row Id="15184" PostId="11484" Text="I added an image to my question to make it more clear what I'm trying to do. Nothing really fancy, just normal mapping." CreationDate="2011-04-22T12:06:06.333" UserId="5021" />
  <row Id="15185" PostId="11310" Text="What are you implying, Jonathan? That the links posted are too few in quantity, or not of the right quality, or that you feel the industry is lacking in good game concepts, or... what?" CreationDate="2011-04-22T12:07:04.647" UserId="1101" />
  <row Id="15186" PostId="11474" Text="I added another image to my question to make it more clear what I'm trying to do. Nothing really fancy, just normal mapping." CreationDate="2011-04-22T12:12:39.933" UserId="5021" />
  <row Id="15187" PostId="11484" Text="You can compute that matrix once per plane in the vertex shader and pass it to the pixel-shader, or compute it on the CPU per plane and pass that matrix to the shader. But this is optimizing, first make it run and understand how to do it, then optimize it ;)" CreationDate="2011-04-22T12:13:31.100" UserId="1839" />
  <row Id="15188" PostId="11484" Text="Ok, trying it now." CreationDate="2011-04-22T12:14:50.570" UserId="5021" />
  <row Id="15189" PostId="11310" Text="I'm suggesting that the quantity of discussion is lacking, or this is an important question not receiving enough attention. At the time of posting the bounty, the answers amounted to two subforums and a chat room." CreationDate="2011-04-22T12:15:08.603" UserId="2698" />
  <row Id="15190" PostId="11310" Text="I don't entirely agree, but I've elaborated on this in an answer below." CreationDate="2011-04-22T12:36:45.453" UserId="1101" />
  <row Id="15191" PostId="11465" Text="@zacharmarz if you pass in two copies of the &quot;same&quot; vertex, they each get processed separately by the vertex shader (the shader gets called once for each vertex in the buffer), which is necessary since the shader may return different results. This is useful when, say, exploding a face off of a solid. With indexed vertices, since each vertex appears only once in the buffer, it is only passed to the vertex shader once." CreationDate="2011-04-22T12:46:36.987" UserId="2306" />
  <row Id="15192" PostId="11490" Text="+1 Thanks, that was a very compelling response." CreationDate="2011-04-22T12:56:21.260" UserId="2698" />
  <row Id="15193" PostId="11484" Text="This works, +1. Thanks. However it's a little slow. I'm trying to figure out how I might store a quaternion for this rotation matrix instead of storing the blue normal, and then construct the normal from that quaternion. Do you know how I might do that? " CreationDate="2011-04-22T13:22:45.607" UserId="5021" />
  <row Id="15194" PostId="11484" Text="Store where? In the output of the vertex-shader? In the vertex-buffer?" CreationDate="2011-04-22T13:28:04.790" UserId="1839" />
  <row Id="15195" PostId="11484" Text="An easier question is: can I construct the normal given only the axis vector? (I can store the axis vector and angle in a texture, if I can reconstruct the normal from just the axis vector)." CreationDate="2011-04-22T13:29:48.190" UserId="5021" />
  <row Id="15196" PostId="11484" Text="To answer the question &quot;store where&quot;: I would store the quaternion in a texture. Currently I am storing the blue normal in a texure, but if I could store the quaternion instead, then this would be much faster." CreationDate="2011-04-22T13:31:17.220" UserId="5021" />
  <row Id="15197" PostId="11484" Text="Sure, there is a lot to optimize, I leave that part to you ;)" CreationDate="2011-04-22T13:37:32.473" UserId="1839" />
  <row Id="15198" PostId="11464" Score="2" Text="@Nate it's suprising (well, not really) how much you learn with the old TIAS (try-it-and-see) method." CreationDate="2011-04-22T13:44:14.973" UserId="2306" />
  <row Id="15199" PostId="11474" Text="Your latest diagram makes *much* more sense." CreationDate="2011-04-22T14:15:06.513" UserId="288" />
  <row Id="15200" PostId="11474" Text="Sorry, I was trying to make things simple and failed :)" CreationDate="2011-04-22T14:16:19.303" UserId="5021" />
  <row Id="15201" PostId="11474" Text="I'm still trying to figure out how to do this efficiently, although Maik's answer technically solves the problem. I think I can store a quaternion (representing the rotation matrix) instead of storing the normal (and finding the rotation matrix from the normal). However, I don't know how to find the normal from the quaternion. A green checkmark for someone who does..." CreationDate="2011-04-22T14:19:45.480" UserId="5021" />
  <row Id="15202" PostId="11492" Text="I assume you mean language (Java, C#, Flash) as opposed to platform (Windows, Linux, Mac) and I edited accordingly." CreationDate="2011-04-22T14:28:43.720" UserId="1156" />
  <row Id="15203" PostId="11489" Text="Great explanation of the difference between whether or not ideas are worthless and whether or not others will see them as worthless." CreationDate="2011-04-22T14:35:55.790" UserId="6588" />
  <row Id="15204" PostId="11474" Text="I'm using 577 instruction slots in a PS3.0 shader. The limit is 512, so I need to find another way to do this :/" CreationDate="2011-04-22T14:52:35.420" UserId="5021" />
  <row Id="15205" PostId="11474" Text="Did you try to calculate the matrix in the vertex-shader (3 times per triangle) and pass it to the pixel-shader, so the pixel-shader only needs to multiply the matrix with the normal-map-vector per pixel? That doesn't sound too expensive to me, its just a matrix-vector multiplication more per pixel." CreationDate="2011-04-22T15:07:28.107" UserId="1839" />
  <row Id="15206" PostId="11444" Text="No problem. Glad I could help." CreationDate="2011-04-22T15:31:26.263" UserId="5259" />
  <row Id="15207" PostId="11492" Score="2" Text="-1, mainly since you seem to have a fundamental misunderstanding of the issues.  What language you pick to make a game is pretty irrelevant in the grand scheme of things.  And you didn't give us any real constraints that language choice would really matter, like desired platform(s), graphic API, middleware you'd like to use, etc." CreationDate="2011-04-22T15:53:20.417" UserId="51" />
  <row Id="15208" PostId="11465" Text="I understand you. I'm just saying: If he has linelist (not linestrip), each line can have unique vertices. So indexed geometry can be useless and can even slow down drawing. If there is a lot of same vertices, indexed geometry is of course better." CreationDate="2011-04-22T16:02:08.650" UserId="4947" />
  <row Id="15209" PostId="11465" Text="I think we're on the same page. " CreationDate="2011-04-22T16:13:40.033" UserId="2306" />
  <row Id="15210" PostId="11495" Text="My problem with this was that the bullet would keep hitting the same object because it would take a bit to pass through it. The hit test function is in my game loop. Each frame, I would have to loop through the array of enemies and see if it hits, but somehow have it so it's not hitting the same enemy multiple times." CreationDate="2011-04-22T16:59:25.480" UserId="6894" />
  <row Id="15211" PostId="11495" Text="I haven't worked much with flash, but couldn't you store some kind of &quot;hit cooldown&quot; on the enemy?  Then it won't matter that the bullet hit more than once because only the first counts.  If you could somehow store a reference to what you hit instead all the better, as then being hit by one source wouldn't prevent being hit by another at the exact same time." CreationDate="2011-04-22T17:26:16.803" UserId="4496" />
  <row Id="15212" PostId="11495" Text="Just create a Dictionary to store whether an enemy has already been hit by that bullet. When looping through all the enemies first check if they are in the dictionary before doing the hitTest. If you've never used Dictionaries before, they are awesome: http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/utils/Dictionary.html" CreationDate="2011-04-22T17:26:33.447" UserId="6588" />
  <row Id="15213" PostId="11484" Text="This isn't quite the answer I was looking for, but it is technically correct, and led me to an efficient solution, so here's a checkmark :) Thanks very much for the help." CreationDate="2011-04-22T17:34:46.480" UserId="5021" />
  <row Id="15214" PostId="11460" Text="@Roy a good point on keypress." CreationDate="2011-04-22T17:35:12.710" UserId="1198" />
  <row Id="15215" PostId="6852" Text="Assuming you still need help with this, post some code so we can see what you tried to do that didn't work." CreationDate="2011-04-22T17:48:04.670" UserId="6588" />
  <row Id="15216" PostId="11499" Text="I don't see any evidence that supports double precision." CreationDate="2011-04-22T18:50:12.113" UserId="744" />
  <row Id="15217" PostId="217" Text="I also heard there are several ways to manage state machines" CreationDate="2011-04-22T19:02:15.257" UserId="1829" />
  <row Id="15218" PostId="11499" Text="I'll bug the project maintainer about that... had thought it was. :(" CreationDate="2011-04-22T19:43:48.257" UserId="5259" />
  <row Id="15219" PostId="11499" Score="1" Text="Thanks, unfortunately no DP. It's actually really difficult to find, the closest was http://eigen.tuxfamily.org/index.php?title=Main_Page but this library looks a bit unfocused for games performance." CreationDate="2011-04-22T22:01:04.833" UserId="831" />
  <row Id="15220" PostId="11506" Text="Why? They have similar requirements on the frame-rate like any other game, &quot;serious&quot; or not. What is the advantage of saying my heart beat is **3600 beats per hour** over **60 beats per minute**?" CreationDate="2011-04-22T22:16:08.923" UserId="1839" />
  <row Id="15221" PostId="11503" Score="3" Text="-1 because there doesn't seem to be a specific problem to solve here, it's just a discussion starting question." CreationDate="2011-04-22T22:22:28.810" UserId="51" />
  <row Id="15222" PostId="11510" Text="Sudoku is just one case I can think of easily to illustrate my question. Chess puzzles (as printed in newspapers or in books) vs playing the game of chess - either against a human or a computer - might be a more elegant illustration. What I'm wondering about is what makes one thing clearly a puzzle and the other clearly a game (or is it clear at all). Many computer games feel very puzzlelike - but some seem gamelike as well - often but not always due to repeatability or some other features. " CreationDate="2011-04-22T22:31:41.183" UserId="6900" />
  <row Id="15224" PostId="11510" Text="I'm not entirely sure I agree that all puzzles are games (what makes a jigsaw puzzle a &quot;game&quot;?)" CreationDate="2011-04-22T22:35:15.253" UserId="6900" />
  <row Id="15225" PostId="11511" Text="I heard you need to own a Mac for that. Not an option I'm gung-ho about." CreationDate="2011-04-22T22:36:25.800" UserId="1929" />
  <row Id="15226" PostId="11504" Text="FPH is definitely artificial, just looking to see if anyone has ever dealt with it or any longer-term measuring of framerate in any form. Given ms/frame is more precise, but I deal with avg fps over a few minutes pretty often to calibrate throughput." CreationDate="2011-04-22T22:36:44.897" UserId="5554" />
  <row Id="15227" PostId="11505" Text="Pretty much in agreement but it is scratching at my mind to find a use for it anyway :) tyvm for input." CreationDate="2011-04-22T22:37:49.453" UserId="5554" />
  <row Id="15228" PostId="11506" Text="Can you expand on this at all? Would be very interested to understand the applications for flight simulators." CreationDate="2011-04-22T22:38:28.483" UserId="5554" />
  <row Id="15229" PostId="11506" Text="@Maik: still holding that it doesn't seem particularly relevant to go for an hour but when reading different amounts of time (say 60 fps vs 3600 fps) it can be useful to see the differences in the distribution. i,e.. which seconds have + or - 60fps during that minute can be indicative of places you can get a little extra performance or bottlenecks that need to be avoided." CreationDate="2011-04-22T22:41:48.387" UserId="5554" />
  <row Id="15230" PostId="11503" Text="The problem would be 'can I stretch my mind to think of new ways to optimize' especially in areas like this which I would generally ignore." CreationDate="2011-04-22T22:46:09.507" UserId="5554" />
  <row Id="15231" PostId="11509" Text="Good point, this is really what I'm talking about - will reword it somewhat." CreationDate="2011-04-22T22:47:18.820" UserId="5554" />
  <row Id="15232" PostId="11506" Score="2" Text="If you measure the frame-rate for an hour or for a day or for a minute, it makes no difference if you measure it in frames/sec or frames/hour. It's just the frequency, it says nothing about the resolution or the sample-rate or the duration, you just multiply both sides of the equation with a scalar, the underlying data remains the same.&#xA;&#xA;Maybe this makes it clearer:&#xA;**When you say my car drives 100km/hour, it doesn't mean you are driving for 1 hour. It says nothing about the total time you traveled, its just the speed.**" CreationDate="2011-04-22T22:50:07.180" UserId="1839" />
  <row Id="15233" PostId="11506" Text="@Maik: yes i botched the phrasing up fairly well in this question, trying to rectify that. apologies. I'm really saying that in general measuring framerate over a given, continuous execution tends to become irrelevant after a short time. Are there times I really need to keep the longer run in mind?" CreationDate="2011-04-22T22:53:22.183" UserId="5554" />
  <row Id="15235" PostId="11511" Text="I am 99% sure that you will need a Mac to use MonoTouch for iOS: http://monotouch.net/IPad" CreationDate="2011-04-22T23:01:47.887" UserId="3115" />
  <row Id="15236" PostId="11511" Score="2" Text="If you're serious about iPhone dev, you need a mac.  Any other path is unsupported and subject to the whim of whatever hacker is maintaining whatever project it is that you're using to get around it.  The only real exception that I would even go near trusting is what the UDK is doing." CreationDate="2011-04-22T23:01:52.427" UserId="51" />
  <row Id="15237" PostId="11510" Score="1" Text="What makes it not a game?  Or more specifically, what are you trying to get out of your definition of &quot;game&quot;?  " CreationDate="2011-04-22T23:03:56.247" UserId="51" />
  <row Id="15238" PostId="11506" Text="@Garet: I'm not sure I can follow you there. Usually the contract with the publisher says that the game must have a frame-rate of X Frames per second at all times. So you must measure it at all times, long or short run doesn't matter. Are you thinking about tools how to observe your frame-rate better than the usual average-frame-rate? Is the question about that? If yes, then use min/max and more importantly [Standard-Deviation](http://en.wikipedia.org/wiki/Standard_deviation), that gives you more precise information about the distribution of your frame-rate than a simple average." CreationDate="2011-04-22T23:05:19.757" UserId="1839" />
  <row Id="15239" PostId="11503" Text="Still &quot;no&quot; because you have a presupposed answer in search of a question.  " CreationDate="2011-04-22T23:05:25.963" UserId="51" />
  <row Id="15240" PostId="11503" Text="No idea what you mean. What answer? I still have no idea if anyone has run across a use for this." CreationDate="2011-04-22T23:14:56.143" UserId="5554" />
  <row Id="15241" PostId="11506" Text="Alright, well currently I can run a helper that will fairly accurately keep track of framerate per second without (hardly) altering the results at all. If desired, I could have the time of each frame within a one hour period graphed by distance (in time) between frames. I'm just unsure if I can get anything more useful from this than the same data over at most 10 minutes. I may just go ahead and see if I notice anything." CreationDate="2011-04-22T23:18:44.300" UserId="5554" />
  <row Id="15242" PostId="11506" Text="Did you have a look at the [Standard Deviation](http://en.wikipedia.org/wiki/Standard_deviation)? It gives you much more information than the Average. You can visualize a graph then showing how many percent of the frames are in +/- 1ms, how many percent in +/- 5ms etc. The normal average tends to _hide_ frame-glitches as long as they are equally distributed, they equalize each other, i.e. {20ms, 30ms, 40ms} gives an average frame-time of 30ms, you don't see the problem cases, the Standard-Deviation helps you find them anyway." CreationDate="2011-04-22T23:27:07.320" UserId="1839" />
  <row Id="15243" PostId="11502" Score="1" Text="&quot;State&quot; just means the data that represents an object at that point. The &quot;State Pattern&quot; is a way to represent this state data in certain programming languages. And a &quot;state machine&quot; is a way to handle changes of behaviour based on an aspect of the object's state. This question should really be split into several because you're asking a few things that aren't very related." CreationDate="2011-04-23T00:11:48.373" UserId="1101" />
  <row Id="15244" PostId="11508" Score="2" Text="This question seems very subjective." CreationDate="2011-04-23T01:34:36.557" UserId="1929" />
  <row Id="15245" PostId="11505" Score="2" Text="Actually, there is a difference. I can run my car at 120mph, but I can't run it at 2880 miles/day. I have to stop to rest, fuel my car, eat, etc." CreationDate="2011-04-23T01:52:56.377" UserId="5678" />
  <row Id="15246" PostId="11523" Score="1" Text="That being said, you mentioned &quot;the only use is for benchmarking.&quot; Well, in a sense yes. The only use for metrics on your frame-rate (no matter the unit) is for analysis on the performance of the program." CreationDate="2011-04-23T01:56:55.780" UserId="5678" />
  <row Id="15247" PostId="11503" Score="2" Text="I see a legit question: &quot;Are there any real situtaions, however niche, where developers ... make use of ... frames per hour?&quot; So it had a little fluff in it, and it wasn't the best-phrased question. I wouldn't consider it -1 material." CreationDate="2011-04-23T01:58:04.470" UserId="5678" />
  <row Id="15248" PostId="11520" Text="I'd normalize the normal, if you're using a similar method for lighting calculations." CreationDate="2011-04-23T02:18:00.607" UserId="2332" />
  <row Id="15249" PostId="11522" Text="@jhocking Thanks!" CreationDate="2011-04-23T02:29:41.903" UserId="6875" />
  <row Id="15250" PostId="11506" Text="I do use standard deviation where applicable, or at least I think so :) I'm not quite sure how it comes into play here, since I'm not talking averages either. I'm talking about 216,000 straight measures of time difference. Zoomed out to the whole hour sure, I can't really notice the smaller differences but I tweaked the report to color code the line where there's any *actual* deviation of 20% or more within a given 5 second interval. I did find something slightly useful at least." CreationDate="2011-04-23T04:01:26.083" UserId="5554" />
  <row Id="15251" PostId="11503" Text="As per my conversation with Maik, and having more trouble with this question than I ever anticipated, I went ahead and ran some tests to see what was up. I'm sure the case would be different for different games in different stages but I did actually find a few long-term dips from ~72 to ~55 fps that seemed to be working fine running those stages one at a time. Apparently there's an issue where some resources weren't getting released when I thought they were &gt;_&gt;;; So that's at least one scenario. My engine is still pretty young, probably something that would've been caught with simple testing." CreationDate="2011-04-23T04:04:37.097" UserId="5554" />
  <row Id="15254" PostId="11508" Text="The Sims is a game; just a very open ended, sandbox type game. If the sims is not a game, then I doubt something like Minecraft is at all." CreationDate="2011-04-23T08:30:29.837" UserId="1156" />
  <row Id="15256" PostId="11515" Text="Except it's 120 frames/minute, not 120 frames/hour. In this case I'd want seconds/frame anyway." CreationDate="2011-04-23T08:46:47.820" UserId="744" />
  <row Id="15257" PostId="11499" Text="If that was an answer, I'd vote it up. I don't think you will find any libraries focused on games supporting doubles, because you never really need vectorized doubles in games." CreationDate="2011-04-23T08:48:50.673" UserId="744" />
  <row Id="15258" PostId="11505" Score="2" Text="@glowcoder: it doesn't say anything about the duration of your trip. You can drive 2880 miles/day for 10 seconds as well as 120 mph for 2 days. The time you traveled has nothing to do with it, its just the speed." CreationDate="2011-04-23T08:49:04.737" UserId="1839" />
  <row Id="15259" PostId="11503" Score="1" Text="Tetrad's point is that you have an answer - &quot;frames per hour&quot; - and are looking for the X in question &quot;What's the best units to measure X?&quot;. Stack Exchange sites are not good for discussion questions like this, and frankly I think it's a dumb question anyway." CreationDate="2011-04-23T08:51:07.597" UserId="744" />
  <row Id="15260" PostId="11523" Text="This doesn't work anyway - graphing FPH gives the same results without losing sudden drops in the FPS. And if you want variance, just graph variance. (Or its more well-known square root, standard deviation.)" CreationDate="2011-04-23T08:52:16.300" UserId="744" />
  <row Id="15261" PostId="11505" Text="Or in other words: you have to rest and fuel your car too if you drive 120 mph for one day, there is no difference, its just a scalar multiplied with both sides of the equation, the underlying information remains the same. 1 mph == 24 mpday, its the same speed." CreationDate="2011-04-23T08:59:39.100" UserId="1839" />
  <row Id="15263" PostId="11518" Score="1" Text="I think you almost nailed it, but see my answer - I think _failure_ and not _competition_ is what separates a game and a puzzle. Competition just happens to be a good way to build failure into systems." CreationDate="2011-04-23T09:06:25.220" UserId="744" />
  <row Id="15265" PostId="11526" Text="I want to implement a multi-player functionality for LANs, will Flash allow that? Additionally, I will either have to buy that Adobe package or have to finish it withinn the trial period, right?" CreationDate="2011-04-21T14:22:15.340" />
  <row Id="15266" PostId="11526" Score="1" Text="@soc You do not need to buy any adobe package to create swf files or write actionscript.  Flex compiler : free.  FlashDevelop : free.  This is all you need.  As for multiplayer over a lan, I haven't done that variety of multiplayer before.  I've used Flash Media Server to act as a thin server that refereed between two clients before, but there are other options for servers that are free.  You have me curious now..." CreationDate="2011-04-21T15:08:15.193" UserId="6799" />
  <row Id="15267" PostId="11526" Score="2" Text="Multiplayer functionality just needs to be coded in.  Not a problem.  There are certain servers specially made for it though like [SmartFoxServer](http://www.smartfoxserver.com/).  You don't have to buy the adobe tools, if you're on Windows there's a free Actionscript IDE called [FlashDevelop](http://www.flashdevelop.org/wikidocs/index.php?title=Main_Page)" CreationDate="2011-04-21T15:09:46.267" />
  <row Id="15268" PostId="11526" Text="Mhh, running Linux only here :-/" CreationDate="2011-04-21T15:47:51.013" />
  <row Id="15269" PostId="11527" Score="1" Text="Oh, and don't use Flex.  It's for RIA, not games." CreationDate="2011-04-21T14:36:52.410" />
  <row Id="15270" PostId="11527" Text="&quot;Flex&quot; is a vague term that Adobe made purposely inexact. You could mean the Flex Builder, in which case yeah don't bother with that. You could also mean an application designed through MXML, in which case yeah that's mostly for rich internet applications. However I tend to use Flex to refer to the free compiler that doesn't require the Flash IDE, in which case that's a great way to develop web games." CreationDate="2011-04-21T15:28:59.777" UserId="6588" />
  <row Id="15271" PostId="11527" Score="1" Text="@jhocking, Adobe has rectified that with Flash Builder which came out Mar. 2010.  Flex now only refers to the framework sdk." CreationDate="2011-04-21T15:51:04.680" />
  <row Id="15272" PostId="11527" Text="thanks, that eliminates the first of the three possibilities I listed. That still leaves the other two, so it's still not exactly correct to say &quot;don't use Flex for games.&quot;" CreationDate="2011-04-21T16:09:00.257" UserId="6588" />
  <row Id="15273" PostId="11527" Score="1" Text="what other two?  Flex is only the framework.  Nobody references 'Flex' for the 'free compiler'.  " CreationDate="2011-04-21T16:16:38.870" />
  <row Id="15274" PostId="11527" Text="The free compiler is the Flex SDK. And yeah &quot;Flex SDK&quot; is a more specific term than just Flex, but that's why I said &quot;Flex&quot; is a confusing term. When discussing the framework specifically I say that because just saying Flex can confuse people." CreationDate="2011-04-21T16:18:19.760" UserId="6588" />
  <row Id="15275" PostId="11527" Text="I'd agree with you, but then we'd both be wrong.  There is a compiler in the Flex SDK *called* mxmlc; saying that a compiler IS Flex is not even close the the definition." CreationDate="2011-04-21T16:22:03.473" />
  <row Id="15276" PostId="11527" Text="Well the point I'm getting at is that your comment &quot;don't use flex&quot; could be misleading to poor soc here. If you instead said &quot;don't use the flex framework because that's for RIA, but do download the Flex SDK for developing your game&quot; then I'll happily go through deleting all my comments regarding Flex." CreationDate="2011-04-21T16:27:38.810" UserId="6588" />
  <row Id="15277" PostId="11523" Score="1" Text="@Joe I've used it as a metric in the past for games (and other simulators) and it's been quite effective. I actually used the metric of 10 minutes instead of an hour, but the philosophy is the same. I didn't need anything fancy - just noticing that the &quot;average fps&quot; was only 18-20 indicated there was an issue in the general case, not the specific case. We did some refactoring and increased it to about 30. We never would have had that without the fph-stype metric." CreationDate="2011-04-23T09:10:14.307" UserId="5678" />
  <row Id="15278" PostId="11508" Text="I agree that this is subjective, but I think it fits the six subjective question guidelines. Formal studies of forms of play go back over 70 years and the question of what makes a game are central to discussions of serious games / gamification / gameful design. I would like to see it made CW though." CreationDate="2011-04-23T09:11:44.420" UserId="744" />
  <row Id="15279" PostId="11505" Score="2" Text="@Maik I get your point, but the intent here is not to simply scale fps into fph - the point is to run the simulation/game for an extended period of time to get a view of the long term stability of the frame rate (in exactly the same manner as I described my car. I should note that it doesn't go 120mph anymore, now that I have a wife and kids... :-O  )" CreationDate="2011-04-23T09:11:57.143" UserId="5678" />
  <row Id="15280" PostId="11505" Text="@glowcoder: As Kylotan pointed out, it's impossible to get more information by taking averages over longer periods. A long-term view of framerate stability doesn't benefit from frames-per-hour measurement - I'm not even sure what &quot;a long-term view of framerate stability&quot; means, but I'm pretty sure you're just talking about sampling at two points separated by many hours, which is not at all the same as sampling times between many hours." CreationDate="2011-04-23T09:15:57.160" UserId="744" />
  <row Id="15281" PostId="11509" Text="FPS looks bad on a graph because it's an inverse of what we actually optimize, which is ms/frame." CreationDate="2011-04-23T09:18:22.507" UserId="744" />
  <row Id="15282" PostId="11505" Text="@Joe I'm sorry, but Kylotan is simply mistaken. If every second you count the number of frames since the last time you counted and store that data in an array (which for fph is only 3600 ints/size_of_choice) you can get a view of the frames per hour with a moving window. I am not talking about sampling two points separated by many hours: I'm talking about sampling every second for many hours and graphing the result, bearing in mind you won't get meaningful results until you've gone at least a significant portion (say 5 or 10 minutes)" CreationDate="2011-04-23T09:22:48.090" UserId="5678" />
  <row Id="15283" PostId="11509" Score="1" Text="@Joe I don't know about you, but I optimize for user experience. I'd rather have a slower framerate that doesn't get noticed by the user (which you can do with blurs and other tricks) than a faster framerate but still not fast enough to be missed by most users' eyes." CreationDate="2011-04-23T09:25:22.240" UserId="5678" />
  <row Id="15284" PostId="11509" Text="@glowcoder: I have no idea how that's relevant to your poor choice of units." CreationDate="2011-04-23T09:29:10.763" UserId="744" />
  <row Id="15285" PostId="11509" Text="@Joe I don't know how to say this without sounding rude, so please don't take it as such. You don't see the relevance of the metric. I get that. I **do** see the relevance of the metric, and have used it effectively in the past. I'm sorry that you don't understand how I was able to do so, even though I've attempted to explain it. I take the blame for apparently not explaining it clearly enough to be understood. Now, the above comment was only in direct response to your claim of &quot;what we actually optimize&quot;. That's all. It wasn't directly related to any other aspect of this post/thread." CreationDate="2011-04-23T09:32:10.240" UserId="5678" />
  <row Id="15286" PostId="11509" Text="No, I don't see the relevance of your claim that &quot;optimizing for user experience&quot; is bettered by FPH. Regardless of the units, one can use tricks like motion blur or locking framerates for stability to get a better experience at low framerates. But your measurement methodology is garbage, and if you don't understand what I mean when i saw &quot;ms/frame is what we actual optimize&quot;, I don't think you're on the road to fixing it either." CreationDate="2011-04-23T09:33:50.727" UserId="744" />
  <row Id="15287" PostId="11523" Score="3" Text="-1 because FPH == 3600 * FPS, its simply the same information, only scaled by a higher number. The implication that it has anything to do with a long run or not or that it shows any additional information is simply a wrong understanding of what frequency means." CreationDate="2011-04-23T09:48:06.940" UserId="1839" />
  <row Id="15289" PostId="11529" Text="As it stands the question doesn't make sense. Are the nodes connected by joints or springs? Do you use a physics engine? When you say &quot;force its position to the new mouse position&quot; then you set its position directly bypassing the physics system? Then you need some sorts of springs that apply forces to the other nodes to make them follow." CreationDate="2011-04-23T12:06:31.320" UserId="1839" />
  <row Id="15290" PostId="11529" Text="Yes, the nodes will be connected with springs." CreationDate="2011-04-23T12:16:15.017" UserId="5998" />
  <row Id="15291" PostId="11529" Text="And what is your question exactly? How to write the source for those springs? Do you have them already? What do you have so far? Any Physics-Engine? It helps us help you if you answer those questions." CreationDate="2011-04-23T12:29:50.077" UserId="1839" />
  <row Id="15292" PostId="11530" Text="How do you call this function? Are you using some timer callback or displayfunc callback?" CreationDate="2011-04-23T12:38:01.477" UserId="4947" />
  <row Id="15293" PostId="11529" Text="I've coded ( in Java ) the static part of the graph-layout. Nodes and lines between nodes. I can't code the physics because i don't understand what i have to code." CreationDate="2011-04-23T13:28:52.397" UserId="5998" />
  <row Id="15294" PostId="11529" Text="Ok then you should use a Physics Engine, here is a popular one for 2D: Box2D [Home](http://www.box2d.org), [Manual](http://www.box2d.org) and another popular one for 3D: Bullet Physics [Home](http://www.bulletphysics.com), [Manual](http://www.bulletphysics.com/ftp/pub/test/physics/Bullet_User_Manual.pdf)" CreationDate="2011-04-23T13:46:33.177" UserId="1839" />
  <row Id="15295" PostId="11529" Text="Here is a [related question](http://gamedev.stackexchange.com/questions/11262/advice-needed-for-a-physics-engine/11263#11263). If you are really interested in making your own physics engine, you should check the links there, so you get an idea how to go about it." CreationDate="2011-04-23T13:49:46.513" UserId="1839" />
  <row Id="15296" PostId="11510" Text="@shannon: Well a jigsaw puzzle has rules for how it operates, a defined end goal, and people solve them for entertainment. Perhaps your definition of &quot;game&quot; includes multiple players? Would you classify Solitaire as a game?" CreationDate="2011-04-23T14:44:12.287" UserId="6588" />
  <row Id="15297" PostId="11524" Text="This notion of the possibility to lose being a defining feature of games is interesting, I wouldn't have thought of that." CreationDate="2011-04-23T14:46:39.960" UserId="6588" />
  <row Id="15298" PostId="11536" Text="I'd estimate it slows down to about 3-5fps. My reasoning was, if it had to slow that much, then either CPU or GPU usage should be going through the roof. All four cores on my CPU jumped to 30+% - which I figured was the NVidea OpenGL fallback. It only really slowed once the quad took up a really large part of the screen." CreationDate="2011-04-23T15:14:24.683" UserId="6908" />
  <row Id="15299" PostId="1655" Text="Although he is probably asking this in order to shape his own plans, he didn't ask about his own game, he asked about the existing games that copy each other (which is the vast majority of games.)" CreationDate="2011-04-23T15:18:38.593" UserId="6588" />
  <row Id="15300" PostId="11536" Text="Just pushed it a reasonable amount longer, CPU usage grew to about 60% for each core" CreationDate="2011-04-23T15:24:08.870" UserId="6908" />
  <row Id="15301" PostId="11536" Text="Try removing the SDL_PollEvent while loop" CreationDate="2011-04-23T15:30:25.100" UserId="5753" />
  <row Id="15302" PostId="11536" Text="No improvement at all" CreationDate="2011-04-23T15:37:49.063" UserId="6908" />
  <row Id="15303" PostId="11537" Text="It returns 3.3.0. I've got almost latest NVidia drivers installed... hmmmmm" CreationDate="2011-04-23T15:54:57.480" UserId="6908" />
  <row Id="15304" PostId="11532" Text="Hey good point! That would be a fairly helpful debugging technique in some cases" CreationDate="2011-04-23T16:20:30.863" UserId="5932" />
  <row Id="15305" PostId="11489" Text="Good answer! I like the prototyping explination." CreationDate="2011-04-23T16:28:22.167" UserId="5932" />
  <row Id="15306" PostId="11508" Score="1" Text="I agree that this might be best as a wiki - but I can't set it as such myself. Glad to see it has sparked a smart discussion - and the distinctions between toys, puzzles and games that people have written is what I was looking to get at" CreationDate="2011-04-23T16:44:28.830" UserId="6900" />
  <row Id="15307" PostId="11532" Score="2" Text="I really want to -1 this because it's not an answer to the question at all, but that says volumes more about the question than it does about the quality of the answer." CreationDate="2011-04-23T17:25:19.770" UserId="744" />
  <row Id="15308" PostId="6434" Text="+1 On a related note, have an [iOS twin stick shooter usability feature](http://www.gamasutra.com/view/feature/6323/a_guide_to_ios_twin_stick_shooter_.php). The author has a preference for doing it a certain way, but good considerations are brought up regardless." CreationDate="2011-04-23T18:06:11.320" UserId="2698" />
  <row Id="15310" PostId="11523" Score="2" Text="@Maik not only do you not understand this, you don't understand algebra. It is NOT simply fps*3600. Why? Because the fps changes over time. It is (average fps) * 3600. Yes, that's correct. But that's the main point - AVERAGE fps over time. But to simply say FPH = FPS * 3600 is entirely missing the point of FPH." CreationDate="2011-04-23T18:15:17.623" UserId="5678" />
  <row Id="15311" PostId="11509" Score="1" Text="The two claims are completely independent of each other. My claim of &quot;I optimize for user experience&quot; and &quot;fph can be valid&quot; are two entirely separate comments." CreationDate="2011-04-23T18:16:19.150" UserId="5678" />
  <row Id="15312" PostId="11508" Text="Wiki should really only be used for questions where the answers have no intrinsic value in relation to the person giving them,  namely questions that basically ask for a list of things that exist.  Subjective questions that require a bit of expertise in the subject matter should have reputation awarded appropriately.  Subjective questions that are &quot;bad subjective&quot; should be closed.  I'd argue this question is the &quot;good subjective&quot; kind." CreationDate="2011-04-23T18:29:19.567" UserId="51" />
  <row Id="15314" PostId="11508" Text="ah gotcha - then I agree this is a good, subjective question. :) I'll watch the answers accordingly" CreationDate="2011-04-23T18:46:37.040" UserId="6900" />
  <row Id="15315" PostId="11532" Text="While it is not an answer to the title of the question, I am confident that it addresses the first paragraph and the &quot;edit&quot; one of the question posting." CreationDate="2011-04-23T21:29:40.650" UserId="450" />
  <row Id="15316" PostId="11548" Score="2" Text="The first book you linked to is extremely disappointing in my opinion. You're off much better reading the specification (which is free, too). Though 15 years ago it was probably a great book, and today for someone who would like to start with historic OpenGL 1.x and maybe look into modern OpenGL later, it will be ok. However, the title &quot;3.0 and 3.1&quot; is entirely misleading. The entire book has about 60-80 pages that deal with modern OpenGL, the rest is deprecated or entirely antiquated functionality, and the book does not make it easy to tell what's deprecated and what is not." CreationDate="2011-04-22T10:42:04.137" UserId="5704" />
  <row Id="15317" PostId="11548" Text="what about the second book?" CreationDate="2011-04-22T11:57:48.900" />
  <row Id="15318" PostId="11548" Text="Have not read the second one, sorry." CreationDate="2011-04-22T12:03:31.117" UserId="5704" />
  <row Id="15319" PostId="11548" Text="I've read the second one - it's a good book and deals with a lot of GLUT examples alongwith basic opengl. A good book, but not great. To get your game programming right you may want to get an game programming book with opengl. What's not clear from the question is what do you want to learn - game programming concepts or just a graphic library like opengl or graphic concepts too? There are books for each of the topics..." CreationDate="2011-04-22T19:45:08.143" />
  <row Id="15320" PostId="11548" Text="I wanna study openGL in general, but my main goal is game programming. which book would u describe as a great book?" CreationDate="2011-04-23T07:09:58.887" />
  <row Id="15321" PostId="11549" Text="did u read all of these?" CreationDate="2011-04-22T08:43:40.360" />
  <row Id="15322" PostId="11536" Text="What your drawing it's so simple, that even with software rendering you shouldn't have a problem." CreationDate="2011-04-23T23:03:16.230" UserId="5753" />
  <row Id="15323" PostId="11546" Text="I thought so too - my texture is 1024x1024. I also tried lowering it to 256x256 with no effect" CreationDate="2011-04-23T23:09:02.277" UserId="6908" />
  <row Id="15324" PostId="11540" Text="glFlush made no difference - but thank you for the idea" CreationDate="2011-04-23T23:45:14.427" UserId="6908" />
  <row Id="15325" PostId="11539" Text="FPS Log is: 29 26 23 21 16 16 15 14 13 12 11 11 11 10 10 9 9 9 7 7 7 7 7 7 7 6 6 6 6 6 5 5 5 5 5 5 4 4 4 4 4 4 4 4 3 - it slows down as the one quad stretches. I'm (intending on) making a 2D game - hence why I had glOrtho set what it was. It made no real change to the FPS. Disabling texturing (after the textures were supposedly bound and loaded) increased substantially - 55 47 45 43 40 40 37 35 33 32 30 29 ... 9 10 9 9 9 9 9 9 9 9 9 9 9 8 9 - but 9FPS is still ridiculously slow for one quad taking up much of the screen. Removing glBegin bounced it up to averaging 100+" CreationDate="2011-04-23T23:57:16.320" UserId="6908" />
  <row Id="15326" PostId="11430" Text="Yea the issue is fractional points....and perhaps lines that are less than one pixel long.  There is a rounding error so when the next line is drawn in certain cases it draws it one off from the the last endpoint.  I am working on it." CreationDate="2011-04-24T00:25:55.690" UserId="6763" />
  <row Id="15327" PostId="11533" Text="Have you tried using a profiler such as gDEBugger to see if any of the OpenGL calls are taking a silly amount of time?" CreationDate="2011-04-24T00:46:47.500" UserId="2332" />
  <row Id="15328" PostId="11499" Text="Its not strictly for a games dev project - but I usually get better answers on stuff like this here than stackoverflow - over there you just get &quot;premature optimization&quot; answers." CreationDate="2011-04-24T02:35:01.620" UserId="831" />
  <row Id="15329" PostId="11533" Text="I just did. I've never used it so I don't know what to look for - but I did note that it says 78% of my calls are depreciated - mostly because of 'Fixed Pipeline Vertex Processing' being depreciated. These include my calls to glTexCoord2f, glVertex2f, glLoadIdentity, glBegin, glEnd, glRotatef, glScalef, glTranslatef, glMatrixMode and glOtho! That's almost every OpenGL call! Will this alone dump me down to super slow speed?" CreationDate="2011-04-24T02:54:04.687" UserId="6908" />
  <row Id="15330" PostId="11503" Text="@Joe: starting to see where the miscommunication may lie. My question though, is not about what I am measuring but rather about the useful of comparing frame render speed over long(er) spans of time." CreationDate="2011-04-24T06:00:13.077" UserId="5554" />
  <row Id="15331" PostId="11532" Text="@nhnb: This graph looks somewhat similar to the test case where I had a drop after zoning to more than 3 areas. Thanks much for the added input and especially +1 for added visual." CreationDate="2011-04-24T06:03:45.960" UserId="5554" />
  <row Id="15332" PostId="11476" Text="Thanks alot guys." CreationDate="2011-04-24T06:07:15.787" UserId="6890" />
  <row Id="15333" PostId="11505" Text="&quot;1 mph == 24 mpday, its the same speed&quot; This is true of the average speed, but not the actual speed. I realize I confused the point by originally expressing thoughts about 216,000 fph. That's just the goal I am aiming for the combined fps without every dropping below 42.. Again, the question is actually meant to be about the **exact time difference over an hour**. Not the average." CreationDate="2011-04-24T06:20:22.403" UserId="5554" />
  <row Id="15334" PostId="11516" Text="In response to &quot;(why?!)&quot;: because there was an FMV coming up that had alot of dynamic parts to it. We usually had advanced notice through the scripting and quest engines that there would be some heavy rendering coming up while, at the same time, the player is about to go through a fair number of dialog-driven changes to said FMV during which we prerendered parts of the video." CreationDate="2011-04-24T06:25:30.310" UserId="5554" />
  <row Id="15335" PostId="11533" Text="@lochok: It may well do. Those calls simply don't exist anymore, and your OGL implementation may be being forced to emulate them in software." CreationDate="2011-04-24T06:26:06.050" UserId="4662" />
  <row Id="15336" PostId="11518" Text="nice job with that" CreationDate="2011-04-24T06:34:04.747" UserId="5554" />
  <row Id="15337" PostId="11543" Text="Thanks AmitP. Sounds like some sage wisdom there. You are right that the level of interaction is low (social friends, alliances and attacking with units that can take hours to arrive)" CreationDate="2011-04-24T06:54:39.000" UserId="6906" />
  <row Id="15338" PostId="11544" Text="Thanks cellis. This sounds fairly similar to the problem I am trying to solve. My updates may be a little slower simply because I have an build time for every item. Are your batches stored on the client until a trigger to send, or are you batching on the server before writing to data store?" CreationDate="2011-04-24T06:59:09.153" UserId="6906" />
  <row Id="15339" PostId="11515" Text="You are right, it would be 7200 frames hour.  Mea culpa. (Someone should downvote my answer... it's that stupid!)" CreationDate="2011-04-24T07:59:57.420" UserId="6040" />
  <row Id="15340" PostId="11503" Text="Great, then it's about exactly what glowcoder told me it's not about, below. You really should just make a new question, because none of the answers address your (apparently) actual question." CreationDate="2011-04-24T08:19:19.947" UserId="744" />
  <row Id="15341" PostId="4602" Text="That's good. But how components know about GameSubsystems? Are all subsystems singletons? That's not ugly?... I'm thinking about another solution like dependency injection... but when and who passes the subsystem instance to each component?" CreationDate="2011-04-24T08:52:22.023" UserId="3020" />
  <row Id="15342" PostId="11539" Score="2" Text="Maybe you can try something else then SDL. It's really weird :)" CreationDate="2011-04-24T09:40:49.580" UserId="4947" />
  <row Id="15343" PostId="11518" Text="@Paul Z but when playing with toys you often DO have conditions for winning or losing even if they're not as formal as having a &quot;game over&quot; screen - when playing the sims some want to have the best career or family or whatever, IRL little girls will sometimes tell others that they're &quot;cheating&quot; when playing tea party and such which is as &quot;toy play&quot; as it gets. You always play by strict defined rules and goals even if they're just in your head! Maybe a toy is a bunch of mechanics that allow you to create a game with your own set of rules within it?" CreationDate="2011-04-24T11:05:20.673" UserId="6117" />
  <row Id="15344" PostId="11533" Text="I now suspect this to be the case. I just ran the program on a ancient card (GeForce 4 MX420 - I think probably about 2003ish) on another computer, and was maintaining about 60FPS. So is the only thing I can do learn to write fragment programs and kill back compatibility with older computers? This seems absurd - I don't want to force users to have the latest version of a graphics card to be able to run a 2D Space Invaders clone!" CreationDate="2011-04-24T11:08:24.100" UserId="6908" />
  <row Id="15345" PostId="11533" Text="@lochok: You don't use OpenGL to do that anymore, you use the OS rendering API, like GDI+ on Windows. OpenGL is intended for hardware, and yes, there's a certain intent there for it to be relatively recent hardware. Fragment programs aren't exactly the newest thing in the world- DirectX has supported shaders since about 2005 cards. It's really, really not unreasonable to ask people to have a card like that." CreationDate="2011-04-24T11:36:31.480" UserId="4662" />
  <row Id="15346" PostId="11533" Text="Then again, Nvidia is always bragging how they are not dropping GL's compatibility mode, so I'd by very surprised if using compatibility features would slow it down (considerably)." CreationDate="2011-04-24T12:20:47.380" UserId="3884" />
  <row Id="15347" PostId="11533" Text="You don't need to do glFlush() at the end of your update loop, also, in your example it is missing parentheses. &#xA;There is also a 7 at the end of the 3rd line... are you sure you copied this?" CreationDate="2011-04-24T12:57:21.257" UserId="4513" />
  <row Id="15348" PostId="11532" Score="1" Text="@Joe: I think it's a useful illustration of why a large sampling period is less useful than a small one. If you were measuring over a larger window this same graph would have a much smaller dip in the middle and a slower decline at the end, potentially hiding useful information." CreationDate="2011-04-24T12:59:10.590" UserId="1101" />
  <row Id="15349" PostId="11539" Text="So you isolated the problem code to the glBegin()? Are you actually seeing that image? Maybe your SDL isn't flushing your context. Try the latest repository of SDL (1.3?)" CreationDate="2011-04-24T13:03:28.537" UserId="4513" />
  <row Id="15350" PostId="11544" Text="Definitely stored on the client model. As I said, trusting memcache to be consistent with your writes is a very bad thing, even for a game." CreationDate="2011-04-24T13:19:10.090" UserId="6884" />
  <row Id="15351" PostId="11539" Text="The glBegin segment was if I commented out the entire section - so, there is no image to speak of. A very fast render of a plain black screen" CreationDate="2011-04-24T13:35:07.600" UserId="6908" />
  <row Id="15353" PostId="11551" Text="I'd like to help because I am using Corona for my current project, but you need to fix the formatting of your code in order for it to be readable. Off the top of my head I would guess the issue is function scope from all the locals you are throwing around, but I can't tell where blocks of code begin and end because of the screwy formatting." CreationDate="2011-04-24T13:55:04.647" UserId="6588" />
  <row Id="15357" PostId="11555" Text="Setting window captions and writing to files are both very expensive." CreationDate="2011-04-24T15:45:25.720" UserId="744" />
  <row Id="15359" PostId="11565" Text="Is that the best option though? What is the advantage of this over sending dummy packets to the server?" CreationDate="2011-04-24T16:12:27.527" UserId="2971" />
  <row Id="15360" PostId="11567" Score="3" Text="-1 because you didn't really elaborate on any of your points.  &quot;unknow [sic] problems&quot;: what kind?  &quot;can cll [sic]&quot;: how?" CreationDate="2011-04-24T16:39:06.970" UserId="51" />
  <row Id="15362" PostId="11557" Text="I guess that make sense. I didn't think of it at al. Thanks :).Ok but is there a way around this problem. Such that the object continue to translate and change color on tap but it all appears in the same layer (with the spawn object)" CreationDate="2011-04-24T17:58:08.117" UserId="6916" />
  <row Id="15364" PostId="11557" Text="Insert all objects into the same group. So instead of calling &quot;local group = display.newGroup()&quot; for every object, you do that just once at the top. Alternatively you could just not insert them in any group, but it is handy to be able to transition screens and such by manipulating an entire layer." CreationDate="2011-04-24T18:14:14.090" UserId="6588" />
  <row Id="15366" PostId="10896" Text="@Sam - You can leave the files in place in your repository, but create a pre-compile step in your build framework (apparent an Ant build.xml file) to copy the files to the places necessary for your Android project.  This is common practice when share assets in a multi-platform game.  See the Ant copy task: http://ant.apache.org/manual/Tasks/copy.html" CreationDate="2011-04-24T20:06:52.240" UserId="6797" />
  <row Id="15367" PostId="11572" Text="Should your title begin with the word 'what' rather than 'why'?" CreationDate="2011-04-24T20:06:58.980" UserId="1101" />
  <row Id="15368" PostId="11572" Text="Good point - I'll edit" CreationDate="2011-04-24T20:07:52.770" UserId="6756" />
  <row Id="15370" PostId="11572" Text="Actually, why isn't a bad thing to ask either :)  Don't fall into the trap of thinking you need to learn a lot before you do something - you'll learn a lot doing along the way.  A lot of people don't do anything, just think about it.  Be a doer.  Doer's get more games completed!" CreationDate="2011-04-24T22:07:15.280" UserId="3830" />
  <row Id="15371" PostId="11579" Text="I am of course using the same image 'picSlice' which I draw 6 times, it is canvas that rotates. As you can see 90' angles work fine but not 60'. Yes it looks good, bacause I am using a pretty fractal image for the effect ;)" CreationDate="2011-04-24T23:12:18.867" UserId="6616" />
  <row Id="15372" PostId="11572" Text="This is now a pretty confusing question.  The title asks one question, the body asks another one..." CreationDate="2011-04-24T23:58:42.527" UserId="3830" />
  <row Id="15373" PostId="11499" Text="Talked to the maintainer... no dice. Sorry my friend. :(" CreationDate="2011-04-25T00:20:04.923" UserId="5259" />
  <row Id="15374" PostId="11545" Text="Yip, scrollfactor still works. I found that I had to set the scrollfactors on some objects in a nested group to get the effect that I needed. thanks." CreationDate="2011-04-25T01:34:15.077" UserId="1163" />
  <row Id="15376" PostId="11587" Text="Excellent, this is the kind of response I was after. I have not given a lot of thought to the game engine. Would you advise one written open source in C# as well as any useful jQuery libraries? What is &quot;core gameplay mechanic&quot;? Is this needed by the controller?" CreationDate="2011-04-25T06:12:26.827" UserId="6756" />
  <row Id="15377" PostId="11572" Text="-1, &quot;a game&quot; is too broad.  There are lots of aspects to all of those engines/frameworks you have listed, and you have given us no detail to go on.  You don't have any goals, you haven't listed any requirements, and I'm not sure what exactly you're looking for.  From the faq: you should ask `practical, answerable questions based on actual problems that you face`." CreationDate="2011-04-25T06:14:27.853" UserId="51" />
  <row Id="15378" PostId="11587" Text="Take an upvote for restoring my faith in SE outside the programmers forum" CreationDate="2011-04-25T06:24:48.967" UserId="6756" />
  <row Id="15379" PostId="11584" Score="1" Text="Usually you want to avoid splitting up textures - generally you will want to combine textures as much as possible for performance reasons. bearcdp's answer has you covered." CreationDate="2011-04-25T07:14:03.800" UserId="288" />
  <row Id="15380" PostId="11590" Text="Actually, I suspect reading the data directly out of the texture that is already CPU-side will be faster than pulling it back off the GPU from a render target. Because you'd do this at load-time, rather than per-frame, you can afford to be a little bit more relaxed about performance anyway. Additionally `Texture2D.GetData` has an overload where you can specify a source rectangle - this is probably preferable to to the additional copy required to perform the crop yourself." CreationDate="2011-04-25T07:20:56.427" UserId="288" />
  <row Id="15381" PostId="11572" Text="@Tetrad - I have edited the post" CreationDate="2011-04-25T07:21:46.953" UserId="6756" />
  <row Id="15385" PostId="11569" Text="Thank you for this, learing about rotation issues helped me find android's own bitmap interpolation. " CreationDate="2011-04-25T09:55:01.587" UserId="6616" />
  <row Id="15386" PostId="11587" Text="I would recommend (being a Silverlight gamedev myself) Flat Red Ball. It's a great 2D and physics-based engine, and it's very quick to startup. ...unless you're more into 3D, which I would advise you to avoid initially, because it takes an order of magnitude (read: 10-100x) more work than 2D. Dunno about jQuery, I just use THE jQuery." CreationDate="2011-04-25T10:47:28.167" UserId="1929" />
  <row Id="15387" PostId="11587" Text="@ashes999: Is that the same as FlatSilverBall in this context? Yeppers, I only want to develop a 2D game." CreationDate="2011-04-25T10:53:32.090" UserId="6756" />
  <row Id="15388" PostId="11587" Text="Oh, I probably cannot use it as it has XNA and therefore DirectX dependencies?" CreationDate="2011-04-25T10:58:01.883" UserId="6756" />
  <row Id="15389" PostId="7630" Text="This is becoming one of my favourite gamedev blogs too - a variety of knowledgeable authors posting from all kinds of perspectives about all sorts of things." CreationDate="2011-04-25T11:02:35.623" UserId="1101" />
  <row Id="15390" PostId="11598" Text="So, a game design would probably look nothing like the design of a high performance website? Now I am confused. I'm not asking you to design the layers for me but typically what would these look like?" CreationDate="2011-04-25T11:08:21.580" UserId="6756" />
  <row Id="15391" PostId="11587" Score="1" Text="@Carnotaurus yep, FlatSilverBall in this context. Don't worry about the dependencies, you just need 2 (I think 3 now) DLLs (bundled with the sample app): FlatRedBall.DLL, and two related to SilverSprite." CreationDate="2011-04-25T11:12:08.527" UserId="1929" />
  <row Id="15392" PostId="11598" Text="I'll be using MVC 3 .Net but I agree that the diagram looks more like a WPF implementation (except for the use of &quot;controller&quot; instead of &quot;presenter&quot;)." CreationDate="2011-04-25T11:14:51.590" UserId="6756" />
  <row Id="15393" PostId="11587" Text="Sounds excellent as long as there are no client-side dependencies except to install a silverlight plugin into the browser (with slight platform variations, of course) :D" CreationDate="2011-04-25T11:17:01.197" UserId="6756" />
  <row Id="15394" PostId="11587" Score="1" Text="@Carnotaurus, that's correct. .NET will generate a single XAP file for you with all the dependencies inside; you just deploy it." CreationDate="2011-04-25T11:29:06.163" UserId="1929" />
  <row Id="15395" PostId="11587" Text="You are magical - take several upvotes" CreationDate="2011-04-25T11:34:02.790" UserId="6756" />
  <row Id="15396" PostId="11587" Text="@Carnotaurus glad I could help :) I had a similar question to yours ages ago, and this is what I, too, decided to embark on." CreationDate="2011-04-25T11:35:41.367" UserId="1929" />
  <row Id="15397" PostId="11587" Text="I'll install Expression along with my VS2010 and hopefully everything should be ok - thanks again" CreationDate="2011-04-25T11:40:39.633" UserId="6756" />
  <row Id="15398" PostId="11587" Score="1" Text="@Carnotaurus you don't need Expression; just VS2010 (Express works for me), and Silverlight Tools (in addition to FSB)" CreationDate="2011-04-25T11:41:35.183" UserId="1929" />
  <row Id="15399" PostId="11587" Text="That's even better news because Expression Blend looked awkward but I still have a license just in case" CreationDate="2011-04-25T11:53:30.947" UserId="6756" />
  <row Id="15400" PostId="11587" Text="What do your layers look like and how do they differ from mine?" CreationDate="2011-04-25T11:58:32.020" UserId="6756" />
  <row Id="15401" PostId="11587" Text="@Carnotaurus what do you mean by layers?" CreationDate="2011-04-25T11:59:29.123" UserId="1929" />
  <row Id="15402" PostId="11587" Text="Architectural layers (tiers) - for example, a simple architecture for a business application could a UI layer, a business layer, and a data layer. What would a game architecture look like?" CreationDate="2011-04-25T12:03:20.173" UserId="6756" />
  <row Id="15403" PostId="11597" Text="Welcome to the GD.SE. We like to ask that if you reference resources that are your own you disclose your relationship to them." CreationDate="2011-04-25T12:04:34.070" UserId="14" />
  <row Id="15404" PostId="11587" Text="@Carnotaurus mine is a bit complicated since I use MVC and automated testing; anyway, you probably will have a bunch of Screen classes that each have logic, and use the ScreenManager to transition between them. A Screen has concepts like sprite, text, etc." CreationDate="2011-04-25T12:06:57.490" UserId="1929" />
  <row Id="15405" PostId="11557" Text="I inserted it on top but its working fine.Firtsly its displaying only one object that is translating at a very high speed(much faster than what an individual object was translating). Secondly I want to play sound files that would be unique to each bubble. This is the main need for the game. Kind of like a jigsaw but using voice as well. Finally I would like to say thanks for trying to help me, as I this is for my semester project(individual project) and so a novice like me could really use some good help :)." CreationDate="2011-04-25T12:09:20.463" UserId="6916" />
  <row Id="15406" PostId="11587" Text="I'll be using MVC3. Sounds like you put specialised model managers under your controllers. It doesn't sound so different to what I envisaged." CreationDate="2011-04-25T12:09:48.640" UserId="6756" />
  <row Id="15407" PostId="11587" Text="@Carnotaurus I don't use ASP.NET MVC3; I just do my best to separate views from the model, and use a controller. I don't know if ASP.NET MVC applies to Silverlight games." CreationDate="2011-04-25T12:14:51.910" UserId="1929" />
  <row Id="15408" PostId="11538" Text="I wouldn't need to draw the line if I am checking for a hit every frame. I could just check if the bullet hit a target with the hitTestObject method. My main problem was that the bullet would hit the enemy each frame until it moved all the way passed. I just need a good way to store whether the enemies are hit. I am going to try and use an array to store hit enemies or look up more information about dictionaries." CreationDate="2011-04-25T12:20:01.843" UserId="6894" />
  <row Id="15409" PostId="11587" Text="So which project type do you use for your application to run under IIS?" CreationDate="2011-04-25T12:23:05.477" UserId="6756" />
  <row Id="15410" PostId="11587" Text="ASP.NET web application, I think; I use the project template that comes with FSB." CreationDate="2011-04-25T12:26:40.023" UserId="1929" />
  <row Id="15411" PostId="11447" Text="I apologize if my wording was not clear, yes the answers to the questions signify an object within a game. Each question answer (three different fruit) need to be assigned for the answers" CreationDate="2011-04-25T12:27:52.363" UserId="6836" />
  <row Id="15412" PostId="11587" Text="I've got it. It's the XAP file that matters." CreationDate="2011-04-25T12:29:32.320" UserId="6756" />
  <row Id="15413" PostId="11460" Text="I've tried using this but I've got problems with the keyboardstate method that Roy T has given. Its giving an error for the line &quot;GetState&quot; saying its a method used incorrectly. &#xA;&#xA;I tried making a variable for the Update method for currentState but that hasnt worked either... :( " CreationDate="2011-04-25T13:01:10.683" UserId="6836" />
  <row Id="15414" PostId="11545" Score="1" Text="When you add an object to a group, there should be an optional second parameter that makes its scrollfactor match the group's." CreationDate="2011-04-25T13:02:20.933" UserId="953" />
  <row Id="15415" PostId="11460" Text="Edit: I got it working, I made a local variable within the Update method but I forgot to put &quot;= new KeyBoardState&quot; which has made it work. &#xA;&#xA;Now when the game runs, it still displays all the questions one after another and doesnt stop.. " CreationDate="2011-04-25T13:06:00.350" UserId="6836" />
  <row Id="15416" PostId="10930" Text="@stephelton Ah, I finally understand what you were saying in the comment above.  I moved the call to my native texture loading code to onSurfaceCreated and all works fine now!  Thanks for your help!" CreationDate="2011-04-25T13:10:34.510" UserId="6605" />
  <row Id="15418" PostId="11460" Text="EDIT: I didn't realise that the Draw method had been changed which I've done now. It seems to work now apart from one issue - the questions and answers have stopped cycling through, but it showing the &quot;|orange: 9&quot; which is the way I've set up the XML file. " CreationDate="2011-04-25T13:24:10.300" UserId="6836" />
  <row Id="15419" PostId="11585" Text="I have got GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT error. What could that mean?" CreationDate="2011-04-25T13:25:28.510" UserId="5459" />
  <row Id="15421" PostId="11585" Text="The problem is on the Mac not on iOS." CreationDate="2011-04-25T13:32:33.853" UserId="5459" />
  <row Id="15422" PostId="11552" Text="hi, just bought the fifth edition, I heard its not as good as the fourth but thats what i found. i hope its worth its price :)" CreationDate="2011-04-25T13:33:04.230" UserId="6934" />
  <row Id="15423" PostId="11585" Text="and glGetRenderbufferParameteriv return width of framebuffer 0 and height 1072693248. This could be problem" CreationDate="2011-04-25T13:38:21.003" UserId="5459" />
  <row Id="15424" PostId="11601" Score="2" Text="What environment are you developing for that collision masks take too much memory? That's really not a concern for most modern systems, and collision masks really do sound like what you're looking for." CreationDate="2011-04-25T13:57:15.487" UserId="953" />
  <row Id="15425" PostId="11551" Text="(hint hint you've posted other comments but still not fixed your code)" CreationDate="2011-04-25T14:06:25.830" UserId="6588" />
  <row Id="15428" PostId="11608" Text="So I just had a look at the downloadable source code and it seems that Simulate is a method thats being called. &#xA;&#xA;Is there a way to code &quot;continue game like normal&quot; instead of this simulate?" CreationDate="2011-04-25T14:32:18.520" UserId="6836" />
  <row Id="15429" PostId="11598" Score="1" Text="A game 'design' usually looks like no other design, because it's about the game rules - the software is secondary. It certainly has little to do with software architecture, UML diagrams, or any of that. I don't understand where MVC 3 .NET would factor into this but that is just because hardly anybody would choose to make a game that way, not because it's impossible. Typically if you make a game in Silverlight (or Flash, or whatever), you make it -all- in that, as if it's a standalone program, not as a web application." CreationDate="2011-04-25T14:41:06.963" UserId="1101" />
  <row Id="15430" PostId="11610" Text="+1, great answer, nicely explained" CreationDate="2011-04-25T14:47:03.177" UserId="2111" />
  <row Id="15432" PostId="11601" Text="I am developping on PC most of the time with XNA, but recently I've been thinking to start a project on WP7. The problem I had with collision masks was that using a small resolution it acted exactly like pixel perfect would do, by making my character stuck in a corner for example. So unless you use Bézier curve for smooth movement  you need to be very carefull on how you create the mask.  " CreationDate="2011-04-25T15:15:24.920" UserId="3037" />
  <row Id="15433" PostId="11610" Text="&quot;By lots of code!&quot; do you mean other code thats in the update method or pausing code? " CreationDate="2011-04-25T15:17:10.913" UserId="6836" />
  <row Id="15434" PostId="11613" Text="My game has three gamestates and different methods for updating the game. I'm guessing from &quot;lots of code&quot; Andrew means all the code that the game runs to update the game?" CreationDate="2011-04-25T15:28:40.070" UserId="6836" />
  <row Id="15435" PostId="11610" Text="Ok I understand what you mean now, but because my game has different gamestates and various methods to update the game, then I think the example in the tutorial I was using is a bit basic perhaps?&#xA;&#xA;To be honest I only want a simple method that evaluates whether a button is pressed to allow the game to puse so I would appreciate it if someone could write me one so I know what to do in future :)" CreationDate="2011-04-25T15:34:50.750" UserId="6836" />
  <row Id="15436" PostId="11613" Text="Yup, that's what I understand it to be. It's the non-pause related part of the game (i.e. everything else :) )" CreationDate="2011-04-25T15:40:11.023" UserId="1587" />
  <row Id="15437" PostId="11585" Text="You are retrieveing the render buffer width and height before you create it." CreationDate="2011-04-25T15:40:13.723" UserId="5753" />
  <row Id="15438" PostId="11610" Score="1" Text="Just dont skip the code that checks for leaving paused state..." CreationDate="2011-04-25T15:48:05.377" UserId="1198" />
  <row Id="15439" PostId="11610" Score="1" Text="@Tom If you are using `GameComponent`s, you want to set `GameComponent.Enabled = false` on each of them when your game pauses. You may also get away with simply skipping the call to `base.Update()`, which is what calls `Update` on each `GameComponent`. Having a &quot;Pause Button&quot; is already described in the tutorial you linked." CreationDate="2011-04-25T15:50:22.587" UserId="288" />
  <row Id="15440" PostId="11612" Text="Are you fine with/are you currently using any middleware for sound?  What sound API are you currently using?" CreationDate="2011-04-25T15:59:42.403" UserId="51" />
  <row Id="15441" PostId="11610" Text="Ok, so I just did it all over again but the games doesnt actually pause :S. I havent got any gamecomponents so I couldnt do your first suggestion so I tried calling the base.Update within the if(!paused) but its not working... :(" CreationDate="2011-04-25T16:08:43.610" UserId="6836" />
  <row Id="15442" PostId="11612" Text="I'm using Flash. All I have control over is the volume of the left and right channels." CreationDate="2011-04-25T16:19:55.780" UserId="312" />
  <row Id="15445" PostId="11613" Text="+1 I was going to link this too. The idea is that components belong to a screen, and it's the screen's responsibility to update those objects. Pausing just means pulling up a screen that blocks all those behind it from being updated. There is no need to fiddle with each component's individual on/off state, and there's no danger of locking yourself out if you know your pause screen has a resume button." CreationDate="2011-04-25T16:28:10.707" UserId="2698" />
  <row Id="15446" PostId="11618" Score="4" Text="Why does it have to be in Obj-C?  What was wrong with the C++ engines?" CreationDate="2011-04-25T16:32:35.157" UserId="51" />
  <row Id="15447" PostId="11619" Text="Just realized you want this multichannel. To do that, you can use what I've said to get the main volume, then for the individual volume, you can take the rotation that would be looking straight at the audio source, then subtract that from your actual look rotation. You can then take the Y value of this resulting vector and say -90 degrees is completely in the right channel, 90 degrees is completely in the left channel. I cant answer you in the case of flash so this answer is probably useless if you don't understand vectors well." CreationDate="2011-04-25T16:37:43.887" UserId="6937" />
  <row Id="15448" PostId="11621" Text="That would also qualify any C++ engine then.." CreationDate="2011-04-25T16:40:53.620" UserId="20" />
  <row Id="15449" PostId="11619" Text="You'd need to split that volume appropriately for the left and right channels depending on the angle between the listener and the source too." CreationDate="2011-04-25T16:41:08.067" UserId="2332" />
  <row Id="15450" PostId="11619" Text="Lol beat me to it :P" CreationDate="2011-04-25T16:41:34.807" UserId="2332" />
  <row Id="15451" PostId="11621" Text="True.  I listed Unreal and Unity as they are both top notch professional engines that are well supported and accepted.  " CreationDate="2011-04-25T16:42:51.450" UserId="3830" />
  <row Id="15452" PostId="11610" Text="@Tom: (As I say at the end of my answer) you need to find the code that is updating/modifying/advancing your game's state and wrap it in an `if(!paused)` block. In other words: &quot;*if not paused, run lots-and-lots-of-code*&quot;." CreationDate="2011-04-25T16:44:50.850" UserId="288" />
  <row Id="15453" PostId="11610" Text="@Tom If you are having trouble understanding the flow of your code, try setting a break-point (for example: at the start of your `Update` method), and stepping through it in the debugger. If you have never done this before - experiment with &quot;step into&quot; and &quot;step over&quot; buttons. Note that by default you cannot step into the framework code - you can only step into your own code. You will also be able to mouse-over variables and inspect their values." CreationDate="2011-04-25T16:47:07.430" UserId="288" />
  <row Id="15454" PostId="11613" Text="I just entered some update code (My snake character which moves on its own) into the &quot;if(!paused)&quot; method which is supposed just allow the game to continue as long as the pause button isnt pressed - When I played the game it turned out that the pause button altered the speed of the snake and didnt actually pause it which has confused me. Has anyone gopt any suggestions?" CreationDate="2011-04-25T16:52:49.407" UserId="6836" />
  <row Id="15455" PostId="11585" Text="My bad... But this does not cause the error" CreationDate="2011-04-25T16:54:12.833" UserId="5459" />
  <row Id="15456" PostId="11506" Score="1" Text="Due to the down-votes, I won't be participating in this community, which could be a shame, since I actually know of what I speak." CreationDate="2011-04-25T17:07:42.110" UserId="6843" />
  <row Id="15457" PostId="11613" Score="1" Text="@Tom: Are you in fact toggling pause on and off constantly?" CreationDate="2011-04-25T17:16:50.557" UserId="2698" />
  <row Id="15458" PostId="11570" Text="He is already using blocking IO with one thread per client." CreationDate="2011-04-25T17:36:12.833" UserId="189" />
  <row Id="15459" PostId="11576" Text="A client not sending data will only block that client's thread, not in any way cause the server to run improperly. He is already using threads." CreationDate="2011-04-25T17:37:27.980" UserId="189" />
  <row Id="15460" PostId="11590" Text="@Andrew Whether the GPU or the CPU is faster depends on the computer. On mine, the GPU is much faster than the CPU, so using rendertargets would be much faster. With a faster CPU, though, you're absolutely right. As for rendering at load-time, I've hit problems trying to access the graphics device outside of the game's Draw method (using older hardware and Reach profile), so this varies per computer. Correct me if I'm wrong, but I thought that overload threw exceptions if the clip is out of the texture's bounds. My sample fills the overlap areas with black, which I thought would be preferable." CreationDate="2011-04-25T17:37:42.330" UserId="6930" />
  <row Id="15461" PostId="11570" Text="@Ricket, added the word &quot;reading&quot; before &quot;thread per client&quot;." CreationDate="2011-04-25T17:40:01.830" UserId="450" />
  <row Id="15462" PostId="11565" Text="Yes, NIO is the best option for a server handling many clients. One thread per client has a huge overhead for context switching. And as a solution to your current code, dummy packets would be very wasteful (a lot more incoming bandwidth that the server has to handle) and inconsistent. Each client's connection would then run at different rates depending on the client's connection speed and quality. Terrible idea. The read call should not block, whether you use the old non-blocking ways or restructure your server for NIO." CreationDate="2011-04-25T17:40:02.610" UserId="189" />
  <row Id="15463" PostId="11620" Text="This looks to be the best answer to the question, but I'm wondering the same thing as tetrad; why not c++?" CreationDate="2011-04-25T17:45:35.603" UserId="6588" />
  <row Id="15464" PostId="11619" Text="Other than linear, what options do I have? What is the relationship between volume and distance in real life? Also, I just realized that something will sound the same from in front of you as behind you. What do games do to distinguish this?" CreationDate="2011-04-25T17:48:29.040" UserId="312" />
  <row Id="15465" PostId="11625" Text="The AI Game Programming Wisdom book series came to an end last year =/ no further books will be published in the series sadly." CreationDate="2011-04-25T18:34:35.730" UserId="891" />
  <row Id="15466" PostId="11625" Text="No way! I thought they were working on number 5? :(" CreationDate="2011-04-25T18:40:04.453" UserId="2332" />
  <row Id="15467" PostId="11625" Text="http://aigamedev.com/open/editorial/2009-retrospective/ publisher canceled the series unfortunately." CreationDate="2011-04-25T18:45:23.023" UserId="891" />
  <row Id="15468" PostId="11625" Text="Wow thanks for the heads up. Such a shame. Had some real gems in there." CreationDate="2011-04-25T18:47:34.293" UserId="2332" />
  <row Id="15469" PostId="11625" Text="very good list, I didn't realize GDC covered research and not just software companies and their ventures. I also just realized IGDA has tons of research linked from their site. http://www.igda.org/papers-and-reports" CreationDate="2011-04-25T18:57:07.300" UserId="6937" />
  <row Id="15470" PostId="11625" Text="It's obvious now, but your suggestion of looking at game dev gems links brought me to tons of resources. Thanks!" CreationDate="2011-04-25T18:58:11.807" UserId="6937" />
  <row Id="15471" PostId="11576" Text="So, someone can log in lots of clients and leave them all dormant, eating up memory. You must never leave your system at the mercy of clients because that's how denial of service attacks happen." CreationDate="2011-04-25T18:58:50.873" UserId="1101" />
  <row Id="15472" PostId="11618" Text="My guess is he wants to program his app in Objective-C, and thus the actual engine language doesn't matter." CreationDate="2011-04-25T18:58:57.517" UserId="3830" />
  <row Id="15473" PostId="11625" Text="IGDA completely slipped my mind! Thanks for the reminder! :)" CreationDate="2011-04-25T18:59:35.130" UserId="2332" />
  <row Id="15474" PostId="11617" Text="I think you're talking about http://en.wikipedia.org/wiki/Killer_heuristic" CreationDate="2011-04-25T19:40:48.310" UserId="5824" />
  <row Id="15475" PostId="11617" Text="Looks like it. I tried to give a less specific answer to help with future problems since the approach is all the same. The real problem wasn't that risa doesn't know alpha-beta optimization, it's that they need to see the common approach of optimizations, especially in AI as this is a very search related field." CreationDate="2011-04-25T19:47:20.780" UserId="6937" />
  <row Id="15476" PostId="11627" Text="So basically the only way to achieve this is to not have non-uniform scaling, or to hardware instance both the world matrix and the world inverse transpose." CreationDate="2011-04-25T20:07:02.680" UserId="4662" />
  <row Id="15477" PostId="11627" Score="2" Text="Or to calculate your inverse transpose matrix on the CPU with D3DXMatrixInverse() and send it to the shader" CreationDate="2011-04-25T20:09:22.687" UserId="6938" />
  <row Id="15478" PostId="11628" Score="4" Text="Ogre3D is a rendering engine, not a complete game engine. As such, it's more likely to have the graphics capability that you are looking for at the expense of development time. --&#xA;&#xA;Turbosquid is such a model repository. There is also the Unity Asset Store. &#xA;--&#xA;IIRC to link to C++ libraries in Unity you would need to purchase pro licenses. " CreationDate="2011-04-25T20:39:39.293" UserId="14" />
  <row Id="15479" PostId="11628" Score="2" Text="If you haven't had a history of successful games you've developed in the last few months, I would suggest wetting your feet with 2D. 3D is an order of magnitude harder (10-100x harder than 2D)." CreationDate="2011-04-25T20:39:49.403" UserId="1929" />
  <row Id="15480" PostId="11518" Text="@Zaky This is exactly my point; by imposing objectives and termination conditions (or artificially reducing the time scope) you have converted your toy into a puzzle or game. See my Minecraft example; although Minecraft as a whole is a toy, if you impose the goal of creating a monster-proof shelter it becomes a puzzle." CreationDate="2011-04-25T20:57:36.540" UserId="6825" />
  <row Id="15481" PostId="11545" Text="@Gregory Weir: Thanks for the tip. That is great." CreationDate="2011-04-25T21:25:46.783" UserId="1163" />
  <row Id="15482" PostId="11620" Text="@Dvole, I knew about it, I hardly wait for the May release which is said to have touch controls on the models :D.&#xA;&#xA;@Jhocking, check out my edit" CreationDate="2011-04-25T21:28:23.140" UserId="6395" />
  <row Id="15483" PostId="11618" Text="Its nothing wrong with C++. But I like more Objective-C, and if I can have an engine which at least has a good objective-c api wrapper than I will go with it." CreationDate="2011-04-25T21:31:58.210" UserId="6395" />
  <row Id="15484" PostId="11622" Text="How would I use the generated graphics in flixel, when the loadGraphic method takes a Class, not any form of Bitmap?" CreationDate="2011-04-25T21:37:38.867" UserId="1163" />
  <row Id="15485" PostId="11619" Score="1" Text="It's known as sound attenuation. There are (fairly advanced) equations for it. In a simple case you can use linear falloff (as described in the answer), exponential or exponential squared falloff (1/d or 1/d^2, respectively." CreationDate="2011-04-25T21:46:16.063" UserId="2332" />
  <row Id="15486" PostId="11622" Score="1" Text="@TandemAdam by setting the `pixels` property of your FlxSprite. You can even use the `loadGraphic` method and then perform the steps I mentioned in my answer on the `pixels` property." CreationDate="2011-04-25T21:51:53.940" UserId="20" />
  <row Id="15487" PostId="11622" Text="btw. `pixels` is the whole graphic as `BitmapData` object." CreationDate="2011-04-25T21:54:16.903" UserId="20" />
  <row Id="15488" PostId="11590" Text="@Hoffmann : You can use render targets just fine in the reach profile. Also, you can access the graphics device inside LoadContent (You need to have a graphics device to load textures, after all.) @Andrew : With Hoffmann's rendertarget approach the texture data never has to leave VRAM, so it should be at least as fast." CreationDate="2011-04-25T22:44:52.843" UserId="3990" />
  <row Id="15489" PostId="11590" Text="@Blecki : Yes, you can _technically_ use render targets in Reach profile, but that doesn't mean each individual graphics device behaves the way it should. For example, with my computer's GPU, the targets aren't drawn on until the draw frame after they're set via `GraphicsDevice.SetRenderTarget` for whatever reason. When I tried using render targets for the sample I provided, this required the splitting to be done per-frame, which, as @Andrew said, is expensive compared to pixel copying at load-time." CreationDate="2011-04-25T23:34:44.157" UserId="6930" />
  <row Id="15490" PostId="11630" Text="Thank you. BTW: Is accessing the Unity Asset Store requires the Unity Editor, or there is a web interface?" CreationDate="2011-04-26T02:12:02.173" UserId="2734" />
  <row Id="15491" PostId="11630" Text="It requires the editor, click window then asset store" CreationDate="2011-04-26T02:12:44.660" UserId="6937" />
  <row Id="15492" PostId="11634" Text="I don't know if you are going to find anything else as good as the article you posted. Maybe you somehow messed up in your implementation?" CreationDate="2011-04-26T02:56:02.127" UserId="962" />
  <row Id="15493" PostId="11576" Text="Would that not be the case for any server?" CreationDate="2011-04-26T03:57:46.800" UserId="189" />
  <row Id="15494" PostId="11554" Text="The main takeaway from the below answers is that you should steer away from one (or more) thread per client, for scaleability reasons. Even today's most powerful quad core processors can only technically handle 8 simultaneous threads (four cores, two threads per core via hyperthreading); any more than that and there is an overhead for [context switching](http://en.wikipedia.org/wiki/Context_switching) between threads; essentially the processor juggling more threads than it can physically handle. Instead, look into non-blocking IO e.g. via Java's NIO library, or a 3rd party library." CreationDate="2011-04-26T04:03:38.917" UserId="189" />
  <row Id="15495" PostId="11641" Text="This could work and probably wouldn't be too hard. One issue I foresee is making the grass show up behind or in front of the player, since it would be pre-drawn in chunks the size of tiles." CreationDate="2011-04-26T04:05:43.190" UserId="1263" />
  <row Id="15496" PostId="11642" Score="2" Text="How much C++ experience do you have? This sounds like you're having basic problems with the language (pointers, scope). If you're eager to start game programming, you might want to start with a higher-level language, or otherwise practice/learn C++ a bit more. You have to crawl before you can walk, eh?" CreationDate="2011-04-26T04:07:01.630" UserId="189" />
  <row Id="15497" PostId="11642" Text="I'm used to C in that you malloc whatever dynamic memory you need, but C++ has confused me a bit in that I'm not completely sure when I should be using new.  Even if I do use new when constructing ObjectA's, would it be better to use new for every object I instantiate?" CreationDate="2011-04-26T04:09:07.543" UserId="6952" />
  <row Id="15498" PostId="11641" Text="just add an alpha layer to the tiles. if you want it in front of the player give it a higher z index. if you want it lower, give it a lower index. the rendering order of this should not be related to this approach. since it's an animated sprite, treat each frame of the animation as one entity and set it's z-order to be the same in every frame unless explicitly told to change. Most engines handle this anyway." CreationDate="2011-04-26T04:12:27.350" UserId="6937" />
  <row Id="15499" PostId="11641" Text="What I mean is that the grass won't be able to smoothly transition from being in front of to behind the player or vice versa. When standing on a tile, either all the grass is in front or it's all behind, whereas ideally some blades would be in front and others would be behind, and the individual blades would get pushed to the side as the player moves up or down, allowing them to smoothly slide between sides." CreationDate="2011-04-26T04:20:33.443" UserId="1263" />
  <row Id="15500" PostId="11641" Text="you can do little tricks like having a very sparse version of the grass that fades in only when the player is standing on the tile. This is a common problem of transitioning tiles in any 2d game. Less of a technical challenge, more of a how can I work with these logical constraints and make it look good. Fading in a sparse version of the sprite is probably the most known way I know of. To the player it may be obvious that it faded in after they walked on it. But if they notice that, they will notice the logical constraint posed by having multi layer sprites" CreationDate="2011-04-26T04:26:07.963" UserId="6937" />
  <row Id="15501" PostId="11590" Text="@Blecki: True - if you keep them as `RenderTarget2D` then leaving them on the GPU will be faster. There are advantages to having them as plain ol' `Texture2D`, though - see [this question](http://stackoverflow.com/q/5509265/165500). @Hoffmann The point I was getting at was that the CPU-GPU transfer dominates the performance of both the CPU and the GPU themselves. Both can perform a crop operation extremely quickly. Although, by copying each pixel with a bounds check, your method is a lot slower than what is possible." CreationDate="2011-04-26T04:52:57.957" UserId="288" />
  <row Id="15502" PostId="11644" Text="I thought a linked list would be better than a vector since because each GameObject holds a reference to the vector/list, I wouldn't want it moving around.  This way I can just hold the address to the front of the list which remains stationary." CreationDate="2011-04-26T05:00:38.710" UserId="6952" />
  <row Id="15503" PostId="11644" Text="The vector isn't going to &quot;move around&quot;.  The address of the 0th element will move as the vector gets resized, but the vector object itself isn't going anywhere.  `&amp;myVec != &amp;myVec[0]`.  Besides, you'd probably want a reference to the world class or whatever you're calling it that actually contains the vector and is calling `update` and `draw`." CreationDate="2011-04-26T06:53:33.717" UserId="51" />
  <row Id="15504" PostId="10231" Text="They are both very similar; the problem you are going to have is porting the Python side. (if you get to that; but don't put it in the way)" CreationDate="2011-04-26T08:15:21.757" UserId="1156" />
  <row Id="15505" PostId="11648" Text="I'm sorry that my original answer leaded you into dead end ... Hope you did not end waste too much time with that ..." CreationDate="2011-04-26T10:18:35.463" UserId="3794" />
  <row Id="15506" PostId="11648" Text="Your original answer was very nice and showed us the goal what we want to achieve :-) We are very thankful for your answer there! The question which remains is how to improve efficiency of the method when shadows can be stripped from the volumetric part." CreationDate="2011-04-26T10:21:36.490" UserId="6440" />
  <row Id="15507" PostId="11650" Text="We need more information to give a good answer (more...)" CreationDate="2011-04-26T11:48:10.560" UserId="1386" />
  <row Id="15508" PostId="11650" Text="For example, will you be adding tiles to the structure? Will you be removing tiles from the structure?" CreationDate="2011-04-26T11:48:46.627" UserId="1386" />
  <row Id="15509" PostId="11642" Text="@oisin: `new` is the same as `malloc`, just properly typed." CreationDate="2011-04-26T11:58:09.970" UserId="4662" />
  <row Id="15510" PostId="11653" Text="u mean , creating 3dbuildings are more easier in cinema4d than max . For first step i want to create flag with **my name :)** on it and put it infront of any ready made model in max , any other soft. which software should i use :)" CreationDate="2011-04-26T14:06:14.980" UserId="6961" />
  <row Id="15512" PostId="11652" Text="Does this question actually belong here in its current form - or at all?" CreationDate="2011-04-26T14:30:59.577" UserId="2698" />
  <row Id="15513" PostId="11653" Text="Any will do that. :) Cinema is very very easy and does nice renders without much knowledge needed. With Max is bit harder but you might have more flexibility. Blender's learning curve might be different as is basicly a different GUI to all the rest.&#xA;Doing a flag is attaching a strecthed prism with a plane attached as well, textured with a 2 sided material. Very easy. making it wave with the wind is quite harder ;). But pretty doable, also in Blender." CreationDate="2011-04-26T14:52:38.887" UserId="3599" />
  <row Id="15514" PostId="11579" Text="Yes, so you're drawing the image at 0', rotating the canvas 60', and repeating that 6 times?  So the first image you drew is rotated 5 times?  If that's right, that image will be more distorted than the others.  90' rotation is lossless because you're essentially just swapping x and y of each pixel.  If you can (I don't know the Android's API - I have an Android, but haven't started developing for it yet), you need to draw the image at 0', then at 60', then at 120', and so on.  Have you tried specifying the rotation using createBitmap instead of doing it to the canvas?" CreationDate="2011-04-26T14:54:26.657" UserId="5748" />
  <row Id="15515" PostId="11483" Text="What's the basics of the idea ? fps, rpg, amount of levels/worlds, expected quality. " CreationDate="2011-04-26T15:32:07.717" UserId="6469" />
  <row Id="15516" PostId="1141" Score="1" Text="This should be the accepted answer." CreationDate="2011-04-26T15:51:12.920" UserId="5818" />
  <row Id="15517" PostId="11652" Score="1" Text="-1, I don't think this is an answerable question.  We have no idea of your experience or skill level.  And besides, couldn't you just find tutorials on what you want to do and just follow those?" CreationDate="2011-04-26T16:07:07.737" UserId="51" />
  <row Id="15518" PostId="11656" Score="1" Text="I don't know what you mean when you say &quot;free-running&quot;. Probably because I never played Assassin's Creed. Could you specify what you mean by that? Maybe post a link to a video?" CreationDate="2011-04-26T16:13:34.997" UserId="20" />
  <row Id="15519" PostId="11634" Text="It could be that there are better ways of doing that implementation. It did help us out in the worst case, but hurt us in the average case, and ultimately wasn't a big enough win to justify putting it it.&#xA;&#xA;I have heard of hardware specific tricks that require only one pass, taking advantage of MSAA to render downsampled translucency while using a full res depth buffer. But I haven't found any info about that online, it may be NDA information." CreationDate="2011-04-26T16:27:36.150" UserId="3056" />
  <row Id="15520" PostId="11656" Score="3" Text="@bummzack Assassins Creed uses Parkour, free running is more stylistic. It's the new fun thing for games. See Infamous, Prototype (Kinda), Mirrors Edge. It's pretty fun in real life also. http://www.youtube.com/watch?v=1fouvwilGWc" CreationDate="2011-04-26T16:37:54.057" UserId="14" />
  <row Id="15521" PostId="1411" Text="-1 good platform or not it's a very widely used platform which makes the question relevant" CreationDate="2011-04-26T16:46:19.917" UserId="5846" />
  <row Id="15522" PostId="11579" Text="I don't think cavas is really rotating. The only thing rotated is the matrix of the bitmap at the moment of drawing. You can see that all distorsions are the same in the first image. createBitmap would do the same thing - translate matrix. I am using canvas rotate because it is fast it can do 60fps. I have found a solution which is in the edit of my question. The trick is in interpolation. Anyway, thanks for your comments." CreationDate="2011-04-26T17:24:36.180" UserId="6616" />
  <row Id="15523" PostId="11655" Text="This was answered nearly a year ago, and was only bumped because of Grace's editing work. (It had nothing to do with too many characters.)" CreationDate="2011-04-26T17:26:28.593" UserId="744" />
  <row Id="15524" PostId="11656" Text="Might be worth looking at canabalt: http://www.adamatomic.com/canabalt/ and trying to find out how they did free running.  Or N: http://www.thewayoftheninja.org/n.html" CreationDate="2011-04-26T17:37:49.160" UserId="6558" />
  <row Id="15525" PostId="11655" Text="Thanks for letting me know. I didn't notice the dates." CreationDate="2011-04-26T17:51:16.383" UserId="6588" />
  <row Id="15526" PostId="11082" Text="C++ OOP has bad data layout, therefore it is cache-hostile. C++ OOP guarantees that all data for one object is contiguous in memory, when most of the time in a game, you care only about one member at a time (e.g. position.) Therefore C++ OOP pollutes the cache. Pointers pollute the cache, because they point to things that are outside the cache, and so reading the thing they point to will pollute the cache. Also, a pointer is 32 bits which means it selects among 4 billion choices, when for example a game has far fewer &quot;actors&quot; to address." CreationDate="2011-04-26T18:03:28.563" UserId="6042" />
  <row Id="15527" PostId="11656" Score="1" Text="Isn't free running kinda not so free at all when it's 2D? =D" CreationDate="2011-04-26T18:41:36.860" UserId="1352" />
  <row Id="15528" PostId="11656" Score="4" Text="What is your specific difficulty? The parkour system in Assassin's Creed combines a broad range of technologies. Are you asking about the automatic targeting of jumps? The animation system that lets the character's hands find handholds? The physics of momentum? Something else?" CreationDate="2011-04-26T19:04:10.847" UserId="953" />
  <row Id="15529" PostId="11476" Text="@Ranieri I absolutely, very strongly agree. The site has remained the same for years and years, and now that OpenGL has changed quite drastically over the past couple years, it really needs to be discouraged. @Songbreaker please make note of this and consider avoiding NeHe's tutorials, or at least taking them with a grain of salt. The fixed pipeline is long gone." CreationDate="2011-04-26T19:17:53.270" UserId="189" />
  <row Id="15530" PostId="11579" Score="1" Text="In which case applying the matrix on the canvas itself would be exactly the same thing (except more efficient as new bitmaps are not required).  Glad you found your solution!" CreationDate="2011-04-26T19:20:17.090" UserId="5748" />
  <row Id="15531" PostId="10133" Text="One of the best answers I've gotten on the Stack sites, and that's saying something because they're always good. Appreciate it!" CreationDate="2011-04-26T19:32:46.837" UserId="6249" />
  <row Id="15532" PostId="11665" Text="@Tetrad: +1 for great comment. Hi and thanks. I will try it. I will keep this thread open, to see if any other alternatives are going to be suggested. Thanks." CreationDate="2011-04-26T19:34:18.233" UserId="2229" />
  <row Id="15533" PostId="11473" Score="1" Text="I would go for 2D first, rather than 3D." CreationDate="2011-04-26T19:43:59.657" UserId="1156" />
  <row Id="15534" PostId="11476" Text="@Ranieri,@Ricket I absolutely, very strongly disagree. Consider the learning curve for OpenGL 4.x for a beginner who's completely unfamiliar with graphics programming and is picking the SDK up on the side in their free time, with no instruction. How's the documentation for OpenGL 4.x? See my post for more details." CreationDate="2011-04-26T19:49:06.923" UserId="6965" />
  <row Id="15535" PostId="11618" Text="@Andrei T. Ursan you might want to select an answer to encourage people answer your questions in future" CreationDate="2011-04-26T20:02:17.103" UserId="5014" />
  <row Id="15536" PostId="11656" Text="I'm trying to find out specifically about the auto-targeting of jumps and how the game animates the character despite arbitrary positioning of handholds." CreationDate="2011-04-26T20:19:50.190" UserId="6963" />
  <row Id="15537" PostId="11642" Text="(And calls a constructor. And requires different forms of delete. And may be overloaded.)" CreationDate="2011-04-26T20:43:47.157" UserId="744" />
  <row Id="15538" PostId="11576" Score="1" Text="Depends what kind of server it is, but the general theme is that the content of the server's response may depend on the client but the actual response must not - if the client doesn't submit the request in time, or submits an invalid request, the connection is dropped. Servers have to assume clients are malicious and malformed and not base their own control flow around the client." CreationDate="2011-04-26T22:10:53.870" UserId="1101" />
  <row Id="15543" PostId="11573" Text="Although they may not be normalized after transformation into world space, what is N_a? The normal in the normal map before transformation into world space? I don't think that could make sense, because then their formula wouldn't take into account the normal after transformation into world space, right?" CreationDate="2011-04-26T23:25:31.910" UserId="5021" />
  <row Id="15544" PostId="11660" Text="Doesn't Windows 7 come with a virtual XP? http://www.microsoft.com/windows/virtual-pc/download.aspx  " CreationDate="2011-04-27T00:16:36.943" UserId="982" />
  <row Id="15545" PostId="11573" Text="It turns out that you were on the right track (and this was a helpful contribution!), but actually they are not always normalized when looking up the normals from the normal map, due to linear filtering and mipmapping." CreationDate="2011-04-27T00:23:00.963" UserId="5021" />
  <row Id="15546" PostId="11667" Text="+1 thanks, I forgot about the results of linear filtering. I construct my own normal maps. It didn't occur to me to store the normals in tangent space. Perhaps I can avoid transforming all of my normals by storing them in tangent space." CreationDate="2011-04-27T00:45:31.310" UserId="5021" />
  <row Id="15547" PostId="11667" Text="SE won't let me award the bounty until tomorrow. I'll think about your answer, but I believe this answers my question. I'm not 100% clear about why having H (and N_a) in tangent space works, or how to transform it into tangent space -- but I guess that is a separate question. " CreationDate="2011-04-27T00:48:16.020" UserId="5021" />
  <row Id="15548" PostId="11661" Text="Agreed RE: testing.  Has it actually been tested?  " CreationDate="2011-04-27T02:51:45.020" UserId="3830" />
  <row Id="15549" PostId="11660" Score="2" Text="Can you fill us in on whether you've done any actual testing, or know of any specific issues that you know will not be compatible?  I'm not clear on how you are concluding &quot;we expect to run into compatibility issues that could be expensive to resolve.&quot;" CreationDate="2011-04-27T03:09:25.603" UserId="3830" />
  <row Id="15550" PostId="11668" Text="+1 for the Prince of Persia reference.  There are several articles online which discuss its gameplay mechanics and animation." CreationDate="2011-04-27T03:41:44.577" UserId="3081" />
  <row Id="15551" PostId="11657" Text="This is great advice, thank you!" CreationDate="2011-04-27T04:49:17.780" UserId="6952" />
  <row Id="15552" PostId="11656" Text="@thedaian I don't think canabalt is a good example for this. It looks like parkour, but you can't steer the player in any direction, climb stuff etc. The only thing you do in canabalt is triggering when to jump." CreationDate="2011-04-27T06:36:35.723" UserId="20" />
  <row Id="15554" PostId="11670" Score="1" Text="There are a ton of questions on the site about getting started. Just look at the &quot;related&quot; questions off on the right. " CreationDate="2011-04-27T07:24:37.317" UserId="51" />
  <row Id="15555" PostId="10133" Text="Hey, you're welcome! :)" CreationDate="2011-04-27T08:50:40.487" UserId="3599" />
  <row Id="15556" PostId="11620" Text="Even thought I knew about Cocos3d, until now, it seems to be the only framework to do what I want, but still I have to wait for the May release... that's why I chose this answer :)" CreationDate="2011-04-27T08:53:52.933" UserId="6395" />
  <row Id="15557" PostId="11633" Text="Galaxy Looks nice, but I didn't manage to compile it, watched the youtube video on how to do it, it failed and I didn't bother to go further, I will give it another try this weekend." CreationDate="2011-04-27T08:55:02.370" UserId="6395" />
  <row Id="15558" PostId="658" Text="accepted since I wanted to learn python anyway :)" CreationDate="2011-04-27T10:03:22.880" UserId="252" />
  <row Id="15559" PostId="1773" Text="@Joe, so long as there are at least a few barriers in the map I don't think this would be more inefficient than calling A*.  That is, I believe only for a wide-open, nearly barrier free map with few units might it be worse." CreationDate="2011-04-27T10:43:38.443" UserId="6848" />
  <row Id="15560" PostId="1773" Text="@edA: By definition a flood-fill must eventually touch every accessible point on the map; A* provides proven upper-bounds to how many points it must touch, which is _at most_ every accessible point on the map and usually far less. The flood fill is a simpler algorithm to optimize things like memory layout for, but like I said, in Flash that probably doesn't matter." CreationDate="2011-04-27T10:57:35.357" UserId="744" />
  <row Id="15561" PostId="1773" Text="@Joe, that's what I'm arguing is that even with just a handful of towers the A* will likely touch nearly all of the spaces. But for N monsters it need only exceed total_squares/N to be less efficient than the flood fill." CreationDate="2011-04-27T11:04:22.387" UserId="6848" />
  <row Id="15562" PostId="11663" Text="@Tetrad: Thanks for little adjustments to my question." CreationDate="2011-04-27T12:01:36.160" UserId="2229" />
  <row Id="15563" PostId="11629" Text="So I should hardware instance the world matrix and the world inverse transpose?" CreationDate="2011-04-27T12:35:47.190" UserId="4662" />
  <row Id="15564" PostId="11681" Text="+1 many thanks for the advice" CreationDate="2011-04-27T13:49:43.040" UserId="2592" />
  <row Id="15565" PostId="11682" Text="+1 thanks for the useful info" CreationDate="2011-04-27T13:49:51.887" UserId="2592" />
  <row Id="15566" PostId="11682" Text="I would also recommend calculating delta time (ie. the time elapsed since last cycle) so using setInterval or setTimeout to do the looping amounts to the same thing. Don't assume setInterval is giving you a consistent framerate; it's more of a target framerate than the actual framerate." CreationDate="2011-04-27T14:16:04.540" UserId="6588" />
  <row Id="15567" PostId="11682" Text="Exactly. setInterval wont be linear and anything else wont every be perfectly linear so delta time calculation is required. I handle it in the 1st step of the main loop above." CreationDate="2011-04-27T14:20:25.460" UserId="6932" />
  <row Id="15568" PostId="1773" Text="@edA: If each monster does not need special pathfinding information, they can share A* data as easily as the floodfilled grid. If each monster does need special pathfinding information, you need multiple floodfilled grids." CreationDate="2011-04-27T14:20:25.647" UserId="744" />
  <row Id="15569" PostId="1454" Text="This is a great solution I wouldn't have thought of, thanks!" CreationDate="2011-04-27T14:24:18.997" UserId="6588" />
  <row Id="15570" PostId="11200" Text="I'm not sure what exactly the OP means by &quot;random pathfinding&quot; but your solution for picking randomly among all shortest paths is what I would assume he meant, and your &quot;alternatively etc&quot; is a great solution for that problem." CreationDate="2011-04-27T14:29:29.120" UserId="6588" />
  <row Id="15571" PostId="1454" Text="Just a note: Giving the tower nodes a huge movement costs without also increasing the estimate used for the A* algorithm when the path is obviously blocked will mean that your agents will check every node on their part of the obstacle before deciding on a break-through point. Depending on the amount of nodes and agents, this might make the algorithm prohibitively slow." CreationDate="2011-04-27T14:35:15.130" UserId="1141" />
  <row Id="15572" PostId="1773" Text="@Joe, to reuse A* it'd need to have an absolute value for each square. This means you'd have to start at the target point and find your way to each monster.  This would essentially be a flood-fill with an optimization that when you've covered all monsters you can stop filling. It's hard to say if this is faster than just filling everything -- there's the added costs of tracking &quot;covered monsters&quot; which the flood-fill does not have." CreationDate="2011-04-27T14:36:02.690" UserId="6848" />
  <row Id="15573" PostId="11683" Score="4" Text="Your link to &quot;this page&quot; is pointing to an image and not a page.  Also, I'm just guessing here, but it might be easier to solve that problem in 3D and just project the camera iosmetrically." CreationDate="2011-04-27T15:08:32.920" UserId="51" />
  <row Id="15574" PostId="11674" Score="1" Text="Can you clarify what you mean by the phrase &quot;open the camera?&quot;" CreationDate="2011-04-27T15:18:47.003" UserId="1430" />
  <row Id="15575" PostId="11476" Text="@Ricket @Ranieri, I didn't realize that Nehe's tutorials are that old. Does anybody know any other sites that have such extensive OpenGL tutorials?" CreationDate="2011-04-27T15:50:43.217" UserId="5224" />
  <row Id="15576" PostId="11152" Text="@BallzOfSteel, if you are satisfied with an answer, please click the accept answer button." CreationDate="2011-04-27T16:57:14.063" UserId="962" />
  <row Id="15577" PostId="11476" Text="@arasmussen Good counter-question, and indeed I don't know of any good documentation. Even the redbook version 7 doesn't restructure for the deprecated features but just has margin notes each time a deprecated feature is mentioned. In any case, I still consider NeHe not a great quality resource, but unfortunately it is probably still the best thing out there. See @Ranieri's link though, it looks decent though short." CreationDate="2011-04-27T17:04:14.167" UserId="189" />
  <row Id="15578" PostId="11686" Score="3" Text="So tl;dr is how can I organize my game world architecture?" CreationDate="2011-04-27T17:05:17.330" UserId="1156" />
  <row Id="15579" PostId="11476" Text="Best thing I know of for 3.x stuff is Swiftless' tutorials. He's got some 3.x stuff, but he's only gotten as far as coloring a square. I agree that NeHe's stuff is outdated. But I think going in with that mindset, and knowing that you're starting out learning the old, easy stuff is still a good way to get off the ground. Until we get the equivalent of NeHe's tutorials for OpenGL 4.x to really help people get off the ground with a decent learning curve, I think it's best to start with the old stuff." CreationDate="2011-04-27T17:10:17.373" UserId="6965" />
  <row Id="15580" PostId="11476" Text="NeHe's concepts are excellent... just everything else is outdated. If somebody could take what he has and update it..." CreationDate="2011-04-27T18:15:57.043" UserId="3468" />
  <row Id="15581" PostId="1058" Text="+1 for recommending PEOPLE and not stock music sites. If I could I'd +1 again for Jake (Virt). His track at the GDC demo derby this year kicked serious ass." CreationDate="2011-04-27T18:26:27.700" UserId="3656" />
  <row Id="15582" PostId="11675" Text="Unfortunately, ImageMagick will only pack sprites if they are all the same size..." CreationDate="2011-04-27T19:00:27.850" UserId="5661" />
  <row Id="15583" PostId="11660" Text="We haven't done any testing yet." CreationDate="2011-04-27T19:16:04.453" UserId="6964" />
  <row Id="15584" PostId="11683" Text="Oups, you are right, I fixed the link. It would certainly be easier with a 3D projection but 2D has its advantages too and I'm sure there is solutions to implement this in 2D." CreationDate="2011-04-27T19:34:22.623" UserId="6932" />
  <row Id="15585" PostId="11689" Score="3" Text="Unicorn as enemies? What, do you hate happiness?" CreationDate="2011-04-27T20:13:50.767" UserId="6569" />
  <row Id="15586" PostId="11691" Score="3" Text="It's a misleading recommend Unity in place of the iOS SDK for cost reasons. You can do iOS development with the free SDK, you just can't deploy outside the simulator. I don't believe you can do any iOS development with Unity without the basic license, simulator or device." CreationDate="2011-04-27T20:15:17.363" UserId="744" />
  <row Id="15587" PostId="11691" Text="agreed, I was just more saying you can develop your entire game in a platform independent(ish) engine like Unity. If the concept works, move it to IOS when you get the money. Either way you have no way to use sensors unless you pay so testing the game concept in a real platform and not just the simulator has been the best approach from when I was in that situation" CreationDate="2011-04-27T20:33:10.467" UserId="6937" />
  <row Id="15588" PostId="11675" Score="1" Text="I should have clarified and mentioned that I intended ImageMagick to be a pre- and post- packer tool. The idea would be to do any per-sprite pre-scaling with ImageMagick, run Sprite Sheet Packer, and then run ImageMagick again on teh final results to shrink the output to your desired size if necessary." CreationDate="2011-04-27T20:47:35.613" UserId="3656" />
  <row Id="15589" PostId="11692" Score="6" Text="Android is not free to deploy to the Google Market; a developer account is a one-time fee of $25. You can deploy to a phone by sending the apk file to the phone and installing it on the phone, but an app in the market will need to be published by someone who has paid that $25." CreationDate="2011-04-27T20:49:34.860" UserId="189" />
  <row Id="15590" PostId="11695" Score="3" Text="This is a really broad question. For starters, what kind of games is this tool for?" CreationDate="2011-04-27T20:49:47.247" UserId="6588" />
  <row Id="15591" PostId="11665" Text="I checked AssImp, and it looks quite well. It is always complex decision whether to program own 3d file format, or to use import library like AssImp." CreationDate="2011-04-27T21:04:30.193" UserId="2229" />
  <row Id="15592" PostId="11692" Score="1" Text="+1 for HTML5 web game" CreationDate="2011-04-27T21:09:40.733" UserId="1849" />
  <row Id="15593" PostId="11692" Score="2" Text="Re HTML5 web game. Not sure if &quot;no cost to you&quot; is accurate, as it will probably take at least twice as long to develop an HTML5 (JavaScript) game, and time is money. Also there is currently no &quot;good&quot; way to monetize an HTML5 based game." CreationDate="2011-04-27T22:25:15.803" UserId="1163" />
  <row Id="15594" PostId="11696" Text="Electronic Arts used GWT to port a game to a web version in &quot;less than 48 hours&quot;: http://www.youtube.com/watch?v=k0WDNisAMeY#t=11m30s" CreationDate="2011-04-27T22:35:16.090" UserId="2472" />
  <row Id="15596" PostId="11696" Text="impressive. Very impressive" CreationDate="2011-04-27T23:12:16.527" UserId="982" />
  <row Id="15597" PostId="11629" Text="@DeadMG: No. See my answer for the typical way to avoid these transforms." CreationDate="2011-04-27T23:21:13.947" UserId="5021" />
  <row Id="15598" PostId="11627" Text="Or don't perform any transform on the normal map normal at all, store it in tangent space, and transform the (very few) lights and camera into tangent space instead." CreationDate="2011-04-27T23:22:07.800" UserId="5021" />
  <row Id="15599" PostId="11697" Text="You left out the most important part of your question, is it single or multiplayer?" CreationDate="2011-04-27T23:57:04.007" UserId="5540" />
  <row Id="15600" PostId="11697" Score="2" Text="@Kort, I'm assuming that when the phrase &quot;each player&quot; is thrown about that it's intended to be a multiplayer game. " CreationDate="2011-04-28T00:08:23.227" UserId="51" />
  <row Id="15601" PostId="11692" Text="@TandemAdam While the whole &quot;time is money&quot; is probably true, if you go with that route, then no one can make any game for &quot;free&quot;, since it'll cost them time, thus money.  It's true there's no &quot;good&quot; way to monetize any HTML5 app yet, and you can't get it on the app store, either, so it'd be nearly impossible to get noticed as an app (the good news is that HTML5 is portable to just about any modern mobile device these days)" CreationDate="2011-04-28T00:09:33.007" UserId="6558" />
  <row Id="15602" PostId="11695" Score="1" Text="Right. The tool is for relatively small 2d games." CreationDate="2011-04-28T00:28:28.303" UserId="6887" />
  <row Id="15603" PostId="11693" Score="1" Text="But that isn't 3d shadow casting like in the question. Any wall completely blocks line of sight in that direction, you can't have objects of variable height." CreationDate="2011-04-28T00:53:53.803" UserId="5337" />
  <row Id="15604" PostId="11699" Text="Thank you for the good advice ! If may be able to optimize this second pass by checking which walls should be computed using the dot product of their segment compared to shadows segments ones. I will try that and post back if it works." CreationDate="2011-04-28T00:54:33.993" UserId="6932" />
  <row Id="15605" PostId="11506" Text="@Andy: unfortunate to hear, I would still be very interested to know how you used this in flight simulations." CreationDate="2011-04-28T02:40:08.563" UserId="5554" />
  <row Id="15606" PostId="11503" Text="I'm a bit wary of trying this one again! Dangerous waters.. x_x;" CreationDate="2011-04-28T02:41:32.400" UserId="5554" />
  <row Id="15607" PostId="11707" Text="Nice answer! +1" CreationDate="2011-04-28T03:13:45.100" UserId="962" />
  <row Id="15608" PostId="11707" Text="Thanks for your input :)! Would you happen to know any sites that would show me how to implement this kind of code? I've never done games with external sources like that. Although I definitely want them to code in XNA in the club, so I will probably do something more along the lines of classes and objects they could easily inherit in their own classes. But I will definitely look into this," CreationDate="2011-04-28T03:56:34.687" UserId="6383" />
  <row Id="15609" PostId="11703" Score="1" Text="Have a look at [this answer](http://stackoverflow.com/questions/5458760/game-logic-question/5459955#5459955) over on Stack Overflow." CreationDate="2011-04-28T05:07:20.107" UserId="288" />
  <row Id="15610" PostId="11696" Text="@amitp You should turn that comment into an answer..." CreationDate="2011-04-28T05:25:52.117" UserId="1028" />
  <row Id="15611" PostId="11006" Text="I think the distinction might be that some of those coders only started coding because they wanted to write a game. It was never their intention to be a programmer, they just wanted to make a game, and that's all they ever did.  Though again, some of the examples appear to contradict that as well. *Personally I don't like the distinction.*" CreationDate="2011-04-28T08:26:48.990" UserId="6848" />
  <row Id="15612" PostId="11706" Text="Which GL version?" CreationDate="2011-04-28T09:05:20.760" UserId="3884" />
  <row Id="15613" PostId="11715" Text="please can u guide me i am in android game for the  first time" CreationDate="2011-04-28T09:09:36.207" UserId="7001" />
  <row Id="15614" PostId="11715" Text="Another main reason for not using the tiled grid is because if i use tile i can use only that fixed place for the placing of the farm field.Which will not give the look and feel of a good farm game." CreationDate="2011-04-28T09:19:44.883" UserId="7001" />
  <row Id="15615" PostId="11715" Text="i dont know much about tiled grid if u can help me in this it would be very kind of u... " CreationDate="2011-04-28T09:21:47.050" UserId="7001" />
  <row Id="15616" PostId="11674" Text="i want to get the camera input as the sprite in my application so here i want to take photo from the camera   &#xA;thank you for answering" CreationDate="2011-04-28T09:24:39.340" UserId="5073" />
  <row Id="15617" PostId="11707" Text="A great way to do this requires your own config parser, to allow for very simple data driven structures to be loaded in.&#xA;Essentially the key to any tutorial, is teaching in chunks, so abstraction is absolutely key. A good exercise could then be, design a simple GUI that allows a user to define and create new weapon types." CreationDate="2011-04-28T09:27:23.783" UserId="4513" />
  <row Id="15618" PostId="11715" Text="@Arun I updated my answer with some more information" CreationDate="2011-04-28T09:57:00.717" UserId="20" />
  <row Id="15619" PostId="11689" Text="ever played overlord?... unicorns are evil man" CreationDate="2011-04-28T10:38:15.093" UserId="6983" />
  <row Id="15620" PostId="11614" Text="The problem is I want to compile everything with a C compiler." CreationDate="2011-04-28T11:02:57.613" UserId="2905" />
  <row Id="15622" PostId="11021" Text="@james:As i am playing this game on 3G network ,will the IP address of the mobile changes,as we may change our position, Base station will also change." CreationDate="2011-04-28T12:54:37.437" UserId="6678" />
  <row Id="15623" PostId="436" Score="1" Text="I did use lua heavily on NDS (that is far less powerful than an IPhone) and it worked quite fast. Fast enough for us to make more than half the logic of one game directly in lua." CreationDate="2011-04-28T14:06:40.507" UserId="364" />
  <row Id="15624" PostId="11722" Text="Thanks for stating that there is only one line that two boxes share. I didn't come up with that idea." CreationDate="2011-04-28T14:09:53.890" UserId="6341" />
  <row Id="15626" PostId="11723" Text="Related: http://gaming.stackexchange.com/questions/21167/how-to-press-a-key-repeatedly-without-really-typing-it-in-lord-of-ultima-javascr" CreationDate="2011-04-28T14:26:08.047" UserId="6748" />
  <row Id="15628" PostId="11723" Text="@hhh - It's basically the same question, just worded differently, so as to circumvent the rules that prevented gaming.SE from answering the question. Personally, I have no problem with the question here, it does not break any rules, it's just that it's similar (in, how can I put this... meaning? I think, but that might not be the correct term) to the previous one. They are related insofar that they refer to the same basic functionality of the program you want to build and use (pressing the same key or sequence of keys every minute or so). They are similar questions, no matter how you put it." CreationDate="2011-04-28T14:33:00.747" UserId="6748" />
  <row Id="15629" PostId="11724" Text="blah, just read the other post, you're hacking a game, oh well. just use workspace macro" CreationDate="2011-04-28T14:33:06.557" UserId="6937" />
  <row Id="15630" PostId="11723" Score="1" Text="That's a related question, but useless answer in this context. The answer given there was that it violates the rules of the game, which is a helpful answer for a player but useless for a developer. Now, since he asked both questions it seems likely this is a veiled attempt to con us into helping him cheat, but that's a separate issue." CreationDate="2011-04-28T14:34:14.103" UserId="6588" />
  <row Id="15631" PostId="11723" Text="@jhocking - I linked to the question, not an answer..." CreationDate="2011-04-28T14:36:07.720" UserId="6748" />
  <row Id="15633" PostId="1994" Text="Online beta testers are pretty much only useful for answering specific questions like &quot;does the game crash when you attempt to use feature X?&quot; You must do in-person playtesting to judge overall reactions. I repeat: you must have live observations of people other than the developers playing the game. Even just handing the controls to occasional visitors is better than nothing." CreationDate="2011-04-28T14:47:09.933" UserId="6588" />
  <row Id="15634" PostId="11709" Text="Are you talking about 2d games such as the typical flash game (client based) or web games such as tribal wars etc...?" CreationDate="2011-04-28T15:34:50.867" UserId="6117" />
  <row Id="15635" PostId="11610" Text="Thanks for the responses, I've fixed it now.. I was calling my snakes update code twice which is why it didnt work. Now I've only got it once in the !pause method which works perfectly. The &quot;lots and lots of code&quot; only needed to be one line which was the snake moving :)" CreationDate="2011-04-28T15:42:04.773" UserId="6836" />
  <row Id="15636" PostId="11021" Text="I am sorry man but while there may be some good information here Tetrad is correct, the original question has been answered and this is not the chat rooms. Please ask a full new question if you need more answers as no one is likely to read this far for all of the information." CreationDate="2011-04-28T16:10:18.857" UserId="4443" />
  <row Id="15637" PostId="11728" Text="great clarification. I can see how that would be the case now" CreationDate="2011-04-28T17:06:28.733" UserId="6937" />
  <row Id="15638" PostId="11732" Score="2" Text="This would probably better fit in stackoverflow.com. Although there are many here who could help" CreationDate="2011-04-28T17:08:33.753" UserId="6937" />
  <row Id="15639" PostId="11732" Text="I am voting to close as off-topic..since we do need a 'migrate to stackoverflow' choice. This is related to gamedev in context, but the actual problem is all programming." CreationDate="2011-04-28T17:19:29.207" UserId="1156" />
  <row Id="15640" PostId="11717" Text="nice link, thanks" CreationDate="2011-04-28T17:29:09.070" UserId="6383" />
  <row Id="15641" PostId="11732" Text="@Duck while I agree its a programming question, I think that long-polling is quite common in turn-based multiplayer games... and by extension its gamedev enough to warrent staying. We don't turn away questions about moving sprites on a screen because thats a programming problem." CreationDate="2011-04-28T17:34:18.963" UserId="1198" />
  <row Id="15642" PostId="11732" Text="@Nate Bross I know. The question I can see, however, applies to gamedev but would probably do better on SO..the close thing is democratic, so me alone does nothing :P" CreationDate="2011-04-28T17:55:01.343" UserId="1156" />
  <row Id="15643" PostId="11722" Text="@pimvdb that's the key, I think; after that, it's just like implementing any shared-relationship structure (like a tree/graph)." CreationDate="2011-04-28T18:57:15.420" UserId="1929" />
  <row Id="15644" PostId="11729" Text="I didn't know at all that a complete book has been written about this game. I see it's available at Google Books for free, so that's great. Thanks." CreationDate="2011-04-28T20:00:46.460" UserId="6341" />
  <row Id="15645" PostId="11722" Text="@ashes999: After some trial-and-error, I actually prefer your first idea - that's a little easier to implement I guess. It seems it's not that complicated to create a function that automatically updates the line data of the neighbour box as well." CreationDate="2011-04-28T20:02:18.723" UserId="6341" />
  <row Id="15646" PostId="11730" Text="Wow, these are *really* good. I'll look them over tonight!" CreationDate="2011-04-28T20:23:18.417" UserId="6941" />
  <row Id="15647" PostId="11709" Text="Primarily 2d. I want to use them here for work(animated charts and such), and I have a few open source concepts for home." CreationDate="2011-04-28T20:24:48.163" UserId="6941" />
  <row Id="15649" PostId="11703" Text="Thanks, very good examples in that post!" CreationDate="2011-04-29T00:57:29.690" UserId="6383" />
  <row Id="15650" PostId="2361" Text="May I know what names you have come up with? I would have no idea what kind of names could be created *without* using these words." CreationDate="2011-04-29T03:34:29.537" UserId="1705" />
  <row Id="15651" PostId="10043" Text="Yes, that's correct. A mutex protecting the all calls to std::list." CreationDate="2011-04-29T04:34:49.330" UserId="5904" />
  <row Id="15652" PostId="10043" Text="Thanks for replying! I have been making a lot of progress with my threading routines so far. It's such a great feeling, having my own game engine!" CreationDate="2011-04-29T06:05:39.097" UserId="6215" />
  <row Id="15653" PostId="11738" Score="1" Text="This really depends on the carrier, but usually the IP survives the handover between two 3G cells (otherwise your IP would change pretty often because 3G cells are really small, nothing compared to a GSM cell)" CreationDate="2011-04-29T08:06:40.850" UserId="4395" />
  <row Id="15654" PostId="11707" Text="The most common data-driven aspects in games are levels. Even if everything else is hard-coded, the level designs (ie. where the scenery is placed, where the enemies are placed, etc.) are almost always defined in data files that the game loads. His second bonus point describes a level editing tool." CreationDate="2011-04-29T11:05:53.870" UserId="6588" />
  <row Id="15655" PostId="11716" Text="is this link work for cocoas2d 0.99.5 version because it shown me  many of the error    thank you for your reply" CreationDate="2011-04-29T11:31:30.233" UserId="5073" />
  <row Id="15656" PostId="11575" Text="Placing the assets in the same directory (be it `res` or `assets`) is precisely what I do not want to do. As I said in the question, both `engine` and `game` provide assets that I want to ship." CreationDate="2011-04-29T11:32:40.573" UserId="5864" />
  <row Id="15657" PostId="11747" Score="1" Text="what you need to learn depends on what you're trying to do. explain that please" CreationDate="2011-04-29T11:49:25.267" UserId="6588" />
  <row Id="15658" PostId="11751" Score="1" Text="3ds Max Design is a spin on 3ds Max specifically intended for architects actually. Although AutoCAD is more useful for exact blueprints, 3ds Max is commonly used for architectural renderings. heck that is the entire point of this blog http://3dsmaxrendering.blogspot.com/" CreationDate="2011-04-29T11:53:07.383" UserId="6588" />
  <row Id="15659" PostId="11738" Text="Suppose that IP is used in another Cell then How switching of IP to new will take Place.As i have to send the new IP to server n replce the old IP." CreationDate="2011-04-29T12:27:04.153" UserId="6678" />
  <row Id="15660" PostId="11697" Text="I provided more context, hope it helps! If not, do not hesitate to ask for more ;)" CreationDate="2011-04-29T13:00:31.417" UserId="5044" />
  <row Id="15661" PostId="11753" Text="And what about the Touch Table Games copyright, the oldest listed in my previous." CreationDate="2011-04-29T13:37:54.543" UserId="7025" />
  <row Id="15662" PostId="11752" Text="Do you mean legally possible?" CreationDate="2011-04-29T13:39:05.587" UserId="1156" />
  <row Id="15663" PostId="11747" Score="1" Text="-1, too vague and too many questions." CreationDate="2011-04-29T13:39:56.290" UserId="1156" />
  <row Id="15664" PostId="11747" Text="I edited your question to try and make it easier to read. I can't tell what you meant in the second paragraph." CreationDate="2011-04-29T13:42:47.660" UserId="1156" />
  <row Id="15665" PostId="11753" Text="Unless they were made before &quot;Steamboat Willie&quot;, they are for all intents and purposes under unlimited protection. " CreationDate="2011-04-29T13:44:07.103" UserId="678" />
  <row Id="15666" PostId="11752" Text="Yes, can I then sell it" CreationDate="2011-04-29T13:44:23.900" UserId="7025" />
  <row Id="15667" PostId="11697" Text="You've just asked for hints on creating a working economy which you jointly just said was completely made up by the players themselves. If your worried about finding a standard, chances are if you have players, they will find an item that is being used the most; don't leave so little faith in the bartering system. It works." CreationDate="2011-04-29T13:44:24.960" UserId="4513" />
  <row Id="15668" PostId="11738" Text="@GameBuilder: The IP can't be used in the other cell, unless it belongs to a complete different operator." CreationDate="2011-04-29T13:52:31.353" UserId="4395" />
  <row Id="15669" PostId="1393" Text="@MrCranky, I agree, but I think the essence of the answer still remains: stop handing out so much stuff and try to have a balance. The trouble of course is that RPG's by nature tend to focus on endless level-up/improve, thus having a closed economic system would be a great diversion from a typical RPG. But hey, somebody should at least try!" CreationDate="2011-04-29T14:16:41.917" UserId="6848" />
  <row Id="15670" PostId="11738" Text="@GameBuilder: The IP has **nothing** to do with the radio cell! IP assignment is something that your carrier does. The radio towers are connected to a &quot;Node B&quot;. In a cellular network there are many &quot;Node B&quot;s. These are then connected to your carriers network. Whithin that network there might be a DHCP or some other &quot;IP-Address distribution&quot;. Really, 3G is the physical and the media access control layer!" CreationDate="2011-04-29T14:21:44.707" UserId="6831" />
  <row Id="15671" PostId="11752" Score="2" Text="Related http://gamedev.stackexchange.com/questions/1653/how-closely-can-a-game-resemble-another-game-without-legal-problems" CreationDate="2011-04-29T14:32:31.360" UserId="51" />
  <row Id="15672" PostId="11752" Text="@Saulius, it may be a good idea to mention for which country you are asking." CreationDate="2011-04-29T14:33:17.930" UserId="450" />
  <row Id="15674" PostId="11751" Score="1" Text="thanks arvin that was the answer i was looking for , " CreationDate="2011-04-29T14:43:22.073" UserId="6961" />
  <row Id="15675" PostId="11747" Text="i can't understand why more experienced people can't answer newbies vague question properly while newbie answer them perfectly, just like Arvin" CreationDate="2011-04-29T14:43:57.083" UserId="6961" />
  <row Id="15676" PostId="11747" Text="Answering a bad question well doesn't change the fact that it was a bad question. There's even a badge called Reversal specifically because of that." CreationDate="2011-04-29T15:05:28.990" UserId="6588" />
  <row Id="15679" PostId="11700" Text="I also came to this conclusion- that it would be easier to transform the lighting parameters into object space on the CPU, and then into tangent space on the GPU. After all, the object space is the same for each instance." CreationDate="2011-04-29T15:20:55.987" UserId="4662" />
  <row Id="15680" PostId="11747" Text="In fact now that I looked at your profile I see multiple vague questions about 3ds Max. If you want us to stop voting down your questions then you should learn to ask better questions.  Read the site's FAQ for more information about that." CreationDate="2011-04-29T15:21:39.030" UserId="6588" />
  <row Id="15681" PostId="11750" Text="Sorry about the tetrahedron, i kind of got confused with the code :)" CreationDate="2011-04-29T15:53:14.193" UserId="6875" />
  <row Id="15682" PostId="11756" Text="While thats true, bypassing the web server means you must write your own server, the main advantage of using the web server is that its already written and preformance/stress tested and proven to be reliable. " CreationDate="2011-04-29T16:38:05.170" UserId="1198" />
  <row Id="15683" PostId="11751" Text="ah, I wasn't aware of the Design version." CreationDate="2011-04-29T16:38:18.293" UserId="7023" />
  <row Id="15684" PostId="11752" Text="I'm from Lithuania" CreationDate="2011-04-29T17:10:22.053" UserId="7025" />
  <row Id="15685" PostId="11738" Text="That means OPERATOR gives Fixed IP address to smart phones.IP doesnt changes even we are changing the BST." CreationDate="2011-04-29T17:44:23.050" UserId="6678" />
  <row Id="15686" PostId="11753" Text="It's true you cannot trademark or copyright gameplay/rules (although technically the rules themselves are indeed under copyright, so just don't copy them verbatim), you *can* patent gameplay elements as a specific &quot;process&quot;. I don't know how common this is, though, but it is something to be aware of." CreationDate="2011-04-29T17:55:55.457" UserId="6429" />
  <row Id="15687" PostId="11738" Text="@GameBuilder I wouldn't say fixed IP. The Operator assigns an IP to the phone. But when you log off and on, i.e. turn the phone off and on again, you might get a different IP. But when you are roaming around with your phone turned on and logged in, the IP will not change." CreationDate="2011-04-29T18:23:47.227" UserId="6831" />
  <row Id="15688" PostId="11765" Text="Personally it seems like you're going in the reverse order.  Figure out what your *engine* needs (and how it's organized), and then just put that data in a file format." CreationDate="2011-04-29T20:32:30.180" UserId="51" />
  <row Id="15689" PostId="11765" Text="@Tetrad: Thanks for your comment. I have already created the core of my game, so it is basically up to me, how I decide to format the data. I will have to write file importer in my game as well." CreationDate="2011-04-29T20:35:14.057" UserId="2229" />
  <row Id="15690" PostId="10043" Text="That feeling will wear off. The big brass ones you gain, though, stay with you." CreationDate="2011-04-29T20:55:39.123" UserId="5259" />
  <row Id="15691" PostId="11765" Text="What sort of animation are you doing? Keyframed mesh interpolation (one new mesh per animation frame), or keyframed skeletal animation (mesh with vertex weights, bones, etc.)?" CreationDate="2011-04-29T20:58:40.833" UserId="5259" />
  <row Id="15692" PostId="11765" Text="What sort of collision meshes do you need? Actual meshes, or can you fake it with a cylinder, or what?" CreationDate="2011-04-29T20:59:37.697" UserId="5259" />
  <row Id="15693" PostId="11765" Score="2" Text="I don't mean to be mean--I'm just trying to figure out the bare minimum subset you need for what you are doing. I've done a (pretty fast) binary static mesh format, and some of these questions let us simplify your problem space. Also, you don't mind writing a tool to handle import to your format, do you? If you don't, that also significantly simplifies your issue--you can just use AssImp to digest whatever Softimage puts out, and convert to your own file format (would suggest this, in fact)." CreationDate="2011-04-29T21:01:37.820" UserId="5259" />
  <row Id="15694" PostId="11765" Text="@ChrisE: Hi Chris, thanks for your attention. I will need both types of **animation** (interpolated meshes and keyframed skeletal animation). I wish to create a format, that will suit all my needs in the whole game. Regarding **collision meshes**, I will have to define my own real meshes. The objects are irregular, and at some points I will need precise collison detection. Where possible, i will use cubes, cylinders, spheres, of course." CreationDate="2011-04-29T21:05:41.597" UserId="2229" />
  <row Id="15695" PostId="11766" Text="Fixed the spurious openg tag for you. :)" CreationDate="2011-04-29T21:10:30.400" UserId="5259" />
  <row Id="15696" PostId="11764" Text="Out of curiosity, what about things like names, terms, locations, etc.? Provided that I produce all my own original art assets, may I still use names of something from a game?" CreationDate="2011-04-29T21:16:15.010" UserId="5259" />
  <row Id="15697" PostId="11765" Text="@ChrisE: Yes, AssImp is good recommendation. However, I have already created my set of plug-ins within Softimage. I have analyzed AssImp, and because it does not support Softimage, I would need to export it into non-native format, which would be converted via AssImp. Besides that, I would need to keep collision mesh in separate files. For thsese and other reasons, I would like to write my own exporter, another plug-in within Softimage. I could simply add anytihing I need, plus a set of game properties/values defined within Softimage." CreationDate="2011-04-29T21:17:04.847" UserId="2229" />
  <row Id="15698" PostId="11766" Text="@ChrisE: thanks for that little adjustment. :-)" CreationDate="2011-04-29T21:19:59.337" UserId="2229" />
  <row Id="15699" PostId="11767" Score="1" Text="@ChrisE: +1 for good answer. I think, the question was clearly answerred, giving me solid information to start experimenting on my own. I am marking this as the *Accepted Answer*." CreationDate="2011-04-29T21:21:40.693" UserId="2229" />
  <row Id="15700" PostId="11765" Text="Ah, okay, that's cool. One thing to note is that, as AssImp supports groups in various formats, you could have a group named &quot;_collision&quot; or somesuch, and have your tool pick up on it. I haven't done Softimage plugins, so I don't know what properties they expose. Was just talking about what I know. I'll try to put together an answer for you sometime tonight." CreationDate="2011-04-29T21:23:45.563" UserId="5259" />
  <row Id="15701" PostId="11765" Text="@ChrisE: If you are so kind, it would be helpful. I am just thinking about some good way of representing data within my files. So far, the best approach I can think of is Wavefront .obj file format. But maybe, there is something better and more efficient. Maybe collada format., but it seem a bit complex and can be limiting (animations, collision meshes). Any advice will be helpful. Thanks in advance, Chris." CreationDate="2011-04-29T21:32:23.867" UserId="2229" />
  <row Id="15702" PostId="7842" Text="Check out http://cocos2d-x.org for a true cross-platform (C++) implementation of Cocos2D.  It's a little rough around the edges, but I'm porting a Cocos2D-iPhone game I wrote to Cocos2D-x right now, and it seems more or less production ready.  The momentum with which it's being developed is amazing, too." CreationDate="2011-04-29T22:06:18.667" UserId="5311" />
  <row Id="15703" PostId="11764" Text="@ChrisE - Obviously a real location's name cannot be copyrighted so that if it shows up in one game, it won't appear in another. However, using the same place names is risky if you are trying to make your game look less like a clone. If it's a made up place, yes, you could, if they don't have any claim on it, but once again, will probably provoke their lawyers if they wanted to say you ripped off their game." CreationDate="2011-04-29T22:08:17.347" UserId="2946" />
  <row Id="15704" PostId="11697" Text="@Daniel a refreshing thought. So just bartering would be ok for you, to the point I could rely on it as a main feature of the application? Would you not be willing to provide some tools for it, like a former transactions reviewer or similar? " CreationDate="2011-04-29T22:25:25.647" UserId="5044" />
  <row Id="15705" PostId="11698" Text="thanks for your answer. However, it made me realize my initial post wasn't detailed enough. I've now updated it and, actually, I feel like it doesn't really match WoW, since I don't know if or how to handle a common currency and, on top of that, the economy is purely player managed." CreationDate="2011-04-29T22:27:58.077" UserId="5044" />
  <row Id="15706" PostId="11704" Text="Very nice and exhaustive answer, thanks a lot. Since I've updated my initial post, and I put there how I add issue with the common currency point. Any hint on it? Furthermore, I really plan for trade to be a way of getting at the required resources for building others elements. As such, I feel like players should be able to aim at buying specific resources. I wonder if it would do any good that they could set the prices/goods they're willing to pay for it (which contradicts a bit your automatized view of trade)... Any more hint?" CreationDate="2011-04-29T22:37:30.633" UserId="5044" />
  <row Id="15707" PostId="1099" Text="since &quot;items&quot; are infinite and are often sold, those are not blocking inflation, they are the main drive of mmo inflation, since the player gets money from a NPC for items, which did not exist before.&#xA;Like digging for gold in real world, that respawns instantly after you put it into your bag." CreationDate="2011-04-29T23:41:22.240" UserId="2063" />
  <row Id="15708" PostId="11697" Text="If you wanted (as a developer) to monitor transactions, you could just monitor trades between players. Filtering out trades that appear to be 'gifts' (1 way trade), you should have an accurate idea of what the market worth of items are respective to others. Even building a value tree from that.&#xA;&#xA;1X = 2Y, 2Y = 1Z, therefore X == Z. Later you could build a currency based off these margins or some such." CreationDate="2011-04-30T01:06:55.070" UserId="4513" />
  <row Id="15709" PostId="1980" Score="2" Text="@Kaz Dragon, maybe so, but that is if the change in prices/drops is averaged across all 'tiers' of drops. If for example, higher tier drops were penalized, but not lower tier, you may actually help equalize the entire system." CreationDate="2011-04-30T02:33:51.770" UserId="4513" />
  <row Id="15710" PostId="11764" Score="3" Text="This is my understanding of the laws (not a lawyer), but this doesn't stop some companies from pursuing legal action. The Tetris Company has a fairly bloody history of killing Tetris clones; I remember when Tris was pulled from the App Store. Usually devs don't have the legal resources to fight back, even if they are in the right. http://en.wikipedia.org/wiki/The_Tetris_Company" CreationDate="2011-04-30T02:36:18.053" UserId="4697" />
  <row Id="15711" PostId="1754" Text="Wouldn't players who just stop playing simulate this accurately enough?" CreationDate="2011-04-30T02:42:32.773" UserId="4513" />
  <row Id="15712" PostId="11747" Text="Its really irony for me that in order to ask better questions i first need to get answer of my vague questions , which can clear my wrong concepts , so that i can ask better questions" CreationDate="2011-04-30T03:38:33.653" UserId="6961" />
  <row Id="15713" PostId="11762" Text="suppose i made a moving ball animation in 3ds max , is it possible to add some mouse click function on that ball" CreationDate="2011-04-30T03:42:02.670" UserId="6961" />
  <row Id="15714" PostId="11764" Score="2" Text="@Ian Henry Well with tetris it is very difficult to separate assets and gameplay. For example the plaing field is almost the same in all games, the tetrominos will look exactly the same, no matter how you texture or portray them. And generally there is a fear factor - most people don't know law details and issues and will just give up when they get any notice from copyright holder even if their claims are not following the law. " CreationDate="2011-04-30T05:32:02.600" UserId="5014" />
  <row Id="15715" PostId="11773" Text="There newest version doesn't require that, yet it says it is recording the stats of all players.  Unless I read that wrong..." CreationDate="2011-04-30T05:44:05.993" UserId="7042" />
  <row Id="15716" PostId="11774" Score="1" Text="Isn't this helpful? http://gamedev.stackexchange.com/questions/11766/opengl-es-2-0-mixing-2d-with-3d" CreationDate="2011-04-30T06:18:18.473" UserId="4947" />
  <row Id="15717" PostId="11774" Text="omg I guess I have to learn how to use that search box right up there. Thanks that helps and is easier than I thought." CreationDate="2011-04-30T06:23:50.720" UserId="5844" />
  <row Id="15718" PostId="11773" Text="It might be possible that only one player needs to run the program and it will update for all players in the current game session. Other than that, I am pretty sure there is no way to make connections to servers using scripting in SC2. I didn't see it says all players are tracked on that page. Does it say that somewhere else?" CreationDate="2011-04-30T06:35:14.777" UserId="2187" />
  <row Id="15719" PostId="11764" Text="@Dvole you're SO right about 'fear factor'. FUD is all it's about most of the time." CreationDate="2011-04-30T07:24:20.570" UserId="6210" />
  <row Id="15720" PostId="11755" Score="1" Text="@jhocking, patents have limited lifetimes. Monopoly is unchanged for far longer than patents last, so it's certainly patent-free." CreationDate="2011-04-30T08:29:31.513" UserId="5020" />
  <row Id="15721" PostId="11775" Text="So a 2D Minecraft, except with cloud storage? ;-)" CreationDate="2011-04-30T08:37:35.087" UserId="1156" />
  <row Id="15722" PostId="11775" Score="1" Text="How much would the client and server talk ? Whenever the player does anything, or only at some relatively rare checkpoints ?" CreationDate="2011-04-30T09:26:11.947" UserId="747" />
  <row Id="15723" PostId="11755" Text="Good point, I'll strike out that part of my answer." CreationDate="2011-04-30T11:39:27.443" UserId="6588" />
  <row Id="15724" PostId="11772" Text="Yeah, a lot of people obsess over fine points of legalities but really if you are just in the ballpark of a hit game by a company with deep pockets you may be creating problems for yourself. Pay attention to history to see if other people doing similar games have been sued, because it really varies from game to game." CreationDate="2011-04-30T11:44:38.030" UserId="6588" />
  <row Id="15725" PostId="2852" Text="Regarding OGG, it's still considered too CPU-heavy for use in resource-starved environments like mobile. FMOD's Designer tool dropped support to export soundbanks in OGG Vorbis format, and now instead uses the new CELT codec." CreationDate="2011-04-30T13:39:01.717" UserId="3656" />
  <row Id="15726" PostId="11775" Text="@The Communist Duck: No, not really. The world is not made of blocks at all. The &quot;basic construction aspects&quot; come in the form of city planning. If it's similar to another game, it's similar to Animal Crossing, not Minecraft. @phtrivier: It seems to me like it would work for data to be saved only every five minutes or so with no interaction between client and server between those saves." CreationDate="2011-04-30T13:47:59.320" UserId="1263" />
  <row Id="15727" PostId="11775" Text="@Zach Conn the fact it has basic construction, a large procedural world, and combat made me think of it. Apologies." CreationDate="2011-04-30T14:05:50.467" UserId="1156" />
  <row Id="15728" PostId="11777" Text="Do you mean some kind of karma system; if you kill lots of people, the storyline will turn more into you evading the law..whereas if you're a good guy, you'll try and bring justice to the world?" CreationDate="2011-04-30T14:55:17.867" UserId="1156" />
  <row Id="15729" PostId="11777" Text="@the-communist-duck That would be a slight aspect but I mean the ENTIRE Storyline is procedurally generated. The only thing that will be the same is the start but as the play progresses, the story will change and new aspects will come into action e.g. the dilemma for one game is different to another." CreationDate="2011-04-30T14:59:17.977" UserId="6978" />
  <row Id="15730" PostId="11777" Text="@Ginger Bill to tag with multiple words, just type them as they show. I didn't get notified ;-). And I see what you mean. The only issue you are probably going to get is creating a good storyline, procedurally." CreationDate="2011-04-30T15:22:31.163" UserId="1156" />
  <row Id="15731" PostId="11777" Text="@The Communist Duck I might just go with the multiple ending idea instead just because then I can actually write the storyline." CreationDate="2011-04-30T15:25:10.320" UserId="6978" />
  <row Id="15732" PostId="11752" Text="Example: RoM = World of Warcraft Clone" CreationDate="2011-04-30T15:26:53.737" UserId="2063" />
  <row Id="15733" PostId="11777" Text="@Ginger Bill - Maintain some control, or the consequences of the player's actions might lead to that edge case where all the factions kill each other. Whilst I'm sure the playerbase will find that _hilarious_ if it's just an edge case, it'll stop being funny if that sort of thing happens regularly. If you do make a procedurally generated storyline, it must be simple enough you can understand what could be going on at any time. Having a mostly-fixed storyline makes that really, really easy, especially when games like Dragon Age have only some isolated consequences." CreationDate="2011-04-30T16:34:42.897" UserId="2698" />
  <row Id="15734" PostId="11781" Score="1" Text="Also see this (I am limited in the number of links I can post): http://ijcai.org/Past%20Proceedings/IJCAI-81-VOL%201/PDF/004.pdf" CreationDate="2011-04-30T17:35:16.137" UserId="5473" />
  <row Id="15735" PostId="10863" Score="2" Text="&quot;because there will be no gravity force, the objects will be &quot;lighter&quot; than normal, when pushing them&quot;: Why? Their mass hasn't changed just because gravity is missing." CreationDate="2011-04-30T17:56:40.627" UserId="7035" />
  <row Id="15736" PostId="11784" Score="1" Text="The [Vector tag](http://gamedev.stackexchange.com/tags/vector/info) links to a good tutorial on vectors. If you're working with positions, directions or velocity, vectors are going to come in handy." CreationDate="2011-04-30T18:09:44.343" UserId="2698" />
  <row Id="15737" PostId="11784" Text="How do I add something to that tag? A great tutorial about vectors that I refer to often is http://blog.wolfire.com/2009/07/linear-algebra-for-game-developers-part-1/" CreationDate="2011-04-30T18:14:58.380" UserId="6588" />
  <row Id="15738" PostId="8013" Text="You also don't define up in your view matrix (or any other matrix from what I can see). That could be a problem?" CreationDate="2011-04-30T18:43:30.963" UserId="3547" />
  <row Id="15739" PostId="11784" Text="@jhocking That's precisely the one it links to already! ;) But there is an _Edit Tag Wiki_ button on the tag info page below the entry." CreationDate="2011-04-30T18:50:10.923" UserId="2698" />
  <row Id="15740" PostId="11784" Text="@Jonathan Hobbs Huge, huge thanks for pointing me to Vectors tag! You made my day!" CreationDate="2011-04-30T19:34:02.663" UserId="7048" />
  <row Id="15741" PostId="11786" Text="Two points: this question, as it is, is too broad.  What features do you want, what platform(s) do you want to support, what paradigms do you want to explore, how much responsibility you want to put in a scripting language (if any), and a whole host of other things I'm not going to bother continue listing out." CreationDate="2011-04-30T20:50:38.017" UserId="51" />
  <row Id="15742" PostId="11786" Score="5" Text="Two: There's a common prevailing wisdom that other people will spout that you shouldn't focus on making an engine without a game.  An engine without a game means you can't prove your engine is *useful*.  Good engines require people to eat their own dog food, as it were.  A commonly-linked-to blog going into more of this argument is here: http://scientificninja.com/blog/write-games-not-engines" CreationDate="2011-04-30T20:52:48.470" UserId="51" />
  <row Id="15743" PostId="11786" Score="1" Text="^ Not only that, but writing an engine without a game to motivate feature requirements results in feature creep and bad API design. Until you know what you need, hinted at by game requirements, you may not put useful things into your engine. By the same token, if you haven't had to use the engine to program with, you might find some of your decisions to be really clunky." CreationDate="2011-04-30T21:12:59.230" UserId="5259" />
  <row Id="15744" PostId="11789" Text="&quot;Don't use C&quot;. Nope. It doesn't matter which language you use, and in fact writing things in C can make it much easier to call them from other languages later. Tell me more about cross-language C++ linking support. Also, the big thing to learn is how to properly structure your code, and if there is one thing C will teach you in a hurry is how to accomplish this. As for C++ having a lot of features, this is true--but it can be hard to just &quot;use what you need&quot;. Pretty soon you start needing to drag in more and more of the language, and can be troublesome even for experienced programmers." CreationDate="2011-04-30T21:16:30.457" UserId="5259" />
  <row Id="15745" PostId="11789" Score="2" Text="&quot;OpenGL vs. DX&quot;. The fact that DirectX is more OO isn't really important. As far as being more understandable... OpenGL (prior to 3) exposes a fairly straightforward interface, and one which is easy to scan as it is all in a C-style imperative methodology. &quot;Set the projection matrix to this. Start triangles. Here is a vert. Here is a vert. Here is a vert. End triangles.&quot; The 1.x series of OpenGL APIs is good for getting your feet wet in graphics programming, and combined with SDL (or even GLUT... urg) lets you get an app up in like 30-50 lines of code." CreationDate="2011-04-30T21:23:40.807" UserId="5259" />
  <row Id="15746" PostId="11789" Text="&quot;GDB vs. VS&quot; Agree with you here, though there are some new frontends that make GDB less annoying." CreationDate="2011-04-30T21:24:24.783" UserId="5259" />
  <row Id="15747" PostId="11779" Text="@jhocking This idea maybe what I am looking, thanks. However, I might have to string elements of everything together to achieve the &quot;perfect&quot; product. The idea of a _power matrix_ is new to me and I might try experimenting with this first." CreationDate="2011-04-30T21:33:02.757" UserId="6978" />
  <row Id="15748" PostId="11789" Score="2" Text="@ChrisE: Sure thing. There's something called `extern &quot;C&quot;`, and it's appropriate use makes writing a C interface rather trivial- especially for Python, where a converter exists within Boost that makes binding to it easy. How about C++ language features? They're *great*. More use of C++'s language features increases the reliability of a project and ease of coding massively for a more than acceptable very minor performance trade-off. C's language features are pathetic in comparison. For example, correct use of a modern C++ compiler can *guarantee* no memory leaks. Do that in C." CreationDate="2011-04-30T22:01:00.387" UserId="4662" />
  <row Id="15749" PostId="11789" Text="@ChrisE: OOP is extremely important. There's a reason why it's basically *the* programming paradigm currently, and it's because it's vastly superior to the methodologies that preceeded it. DirectX has that interface too. Set the shader to this. Set the vertex buffer to this. Go render. Oh, and nice strong typing, instead of that very, very crappy `GLUint` stuff, and how about the abysmal GL matrix stack? Oh, I forgot a `GLpop()`, which affects some variable I can't see in my program, therefore now it doesn't work. When you use matrices in DX, that never happens." CreationDate="2011-04-30T22:04:31.883" UserId="4662" />
  <row Id="15750" PostId="11698" Text="Unluckily even EVE struggles hardly with inflation.... due to infinite item &quot;generation&quot;" CreationDate="2011-04-30T22:31:42.750" UserId="2063" />
  <row Id="15751" PostId="11789" Text="The C/C++ debate has been covered pretty extensively [here](http://gamedev.stackexchange.com/questions/371/is-it-reasonable-to-write-a-game-engine-in-c), so I wouldn't bother hashing it out too much more here." CreationDate="2011-04-30T23:40:52.277" UserId="51" />
  <row Id="15752" PostId="11792" Score="1" Text="Is this different than [Graphics for non-Graphics Designers](http://gamedev.stackexchange.com/questions/2326/graphics-for-non-graphics-designers) or [How to improve or replace my programmer art](http://gamedev.stackexchange.com/questions/2391/how-to-improve-or-replace-my-programmer-art)?" CreationDate="2011-04-30T23:47:54.657" UserId="51" />
  <row Id="15753" PostId="11792" Text="@Tetrad Those kind of side tracked to getting someone to draw for you or downloading / buying from resource sites. Far from satisfying, specifically on the topic of learning how to draw game assets :)" CreationDate="2011-05-01T00:03:36.843" UserId="6117" />
  <row Id="15754" PostId="11792" Text="Too late, you can't teach an old dog new tricks, and all that! Most graphic artists would have been drawing and creating graphics there whole lives, then probably gone to art/design school etc. So there is a lot for you to catch up on. You might be surprised at the results of getting a professional graphic artist." CreationDate="2011-05-01T00:29:19.893" UserId="1163" />
  <row Id="15755" PostId="11781" Text="For more information about how long people have been working on this problem, take a look at Chris Crawford's essays at http://www.erasmatazz.com/" CreationDate="2011-05-01T00:50:48.503" UserId="6588" />
  <row Id="15756" PostId="11789" Text="@Tetrad--fair enough. @DeadMG: OOP is important, in many cases, and not in all. Ditto C++ language features; the tech I'm working with makes extensive use of templates in some places to greatly simplify life. DirectX does have some nice features (and good documentation!), and OpenGL does in fact have an increasingly crusty API until you hit 3 or so, at which point they started fixing things. For a beginner, though, C is a lot simpler than C++, and the issues you run into programming with it help motivate you to use the things C++ does later." CreationDate="2011-05-01T01:21:19.183" UserId="5259" />
  <row Id="15757" PostId="11789" Score="1" Text="@DeadMG: If OOP was really a big deal, also, the answer here is Java or C#, and not C++. The thing I disagree with is that the use of C++ features doesn't magically make your code better, faster, or even more reliable; you have to *know* how to use those features, and is learning a language in addition to architecting an engine really a good use of one's time? No. Not for somebody doing this for the first time. You can learn all of C in a day or two, comfortably, and never wonder what the language is doing. OpenGL, the useful basic call set at any rate, offers the same transparency." CreationDate="2011-05-01T01:26:22.953" UserId="5259" />
  <row Id="15758" PostId="11765" Text="Oh, do you need a binary file format, or do you want text?" CreationDate="2011-05-01T01:51:58.630" UserId="5259" />
  <row Id="15759" PostId="11775" Text="Oh there's no need to apologize. I can understand how you might get that impression from the brief description I had. You were right about the cloud storage, though, of course." CreationDate="2011-05-01T02:20:55.693" UserId="1263" />
  <row Id="15760" PostId="11795" Text="Thanks .  (My post on two sites gets the same great answer from same great person :D)" CreationDate="2011-05-01T02:21:24.493" UserId="7053" />
  <row Id="15761" PostId="11784" Text="@daGrevis You're welcome!" CreationDate="2011-05-01T02:23:00.140" UserId="2698" />
  <row Id="15762" PostId="11775" Score="1" Text="I've not personally used GAE and I have no idea how suitable it is from the specific perspective of game development.  However, I've heard some pretty bad things about GAE in general.  You should give this a read: http://www.carlosble.com/2010/11/goodbye-google-app-engine-gae/ Of course, that's only one perspective and I'm sure lots of people love GAE.  But you should be aware of the downsides going in.  Good luck!" CreationDate="2011-05-01T04:42:16.493" UserId="5311" />
  <row Id="15763" PostId="2358" Text="Great (and fun :P) example" CreationDate="2011-05-01T09:22:21.233" UserId="4513" />
  <row Id="15764" PostId="11801" Text="I think http://superuser.com is a better place to ask." CreationDate="2011-05-01T09:58:39.933" UserId="1156" />
  <row Id="15765" PostId="11788" Score="1" Text="Couldn't you just keep it as one texture and render parts?" CreationDate="2011-05-01T10:30:06.283" UserId="1156" />
  <row Id="15766" PostId="11802" Score="2" Text="http://gamedev.stackexchange.com/questions/20/where-can-i-find-free-sprites-and-images Might help." CreationDate="2011-05-01T10:33:52.100" UserId="1156" />
  <row Id="15767" PostId="11773" Text="@Chewy Gumball: They may well be just storing that data in the data file they can create for each player." CreationDate="2011-05-01T11:04:26.393" UserId="4662" />
  <row Id="15768" PostId="11721" Score="1" Text="for debian/ubuntu users, just `sudo apt-get install gimp-resynthesizer`" CreationDate="2011-05-01T11:13:42.033" UserId="252" />
  <row Id="15769" PostId="11762" Text="Not that I know of.. I'm not a 3DS user myself (I'm a maya user). You might be able to get some kind of interactivity happening if you were to delve into Max scripting, which is basically programming - and if you were gonna do that then you may as well leave 3dsmax for something that actually offers interactivity as a focus. If you for some reason MUST do it in 3dsmax then maybe this could help http://www.eonreality.com/raptor/ " CreationDate="2011-05-01T11:27:38.893" UserId="7023" />
  <row Id="15770" PostId="11765" Text="@ChrisE: At the beginning, I consider writing text format. This will bring me readability advantage, which is essential for debugging. Later, during optimization phase, plan to switch to binary format. When the text file format is defined and tweaked, it sould not be that difficult to modify it into binary." CreationDate="2011-05-01T12:05:44.673" UserId="2229" />
  <row Id="15771" PostId="11801" Text="I'll give it a try, PVR just doesn't get much use outside of games :)" CreationDate="2011-05-01T15:50:25.237" UserId="6882" />
  <row Id="15772" PostId="11810" Text="Agreed, maybe note that there are a ton of engines built on XNA since that could be the first choice given this type of question" CreationDate="2011-05-01T16:12:21.560" UserId="6937" />
  <row Id="15773" PostId="11773" Text="Indeed, but it would just be sitting on their computer without being transmitted to the stats tracking server." CreationDate="2011-05-01T16:20:43.627" UserId="2187" />
  <row Id="15774" PostId="11811" Score="1" Text="It seems like that may be semantically correct, but also wrong in my opinion. There are no events when you get down to looking at a thread and what the current state during each loop is. This is why we create our own events and write their corresponding handlers. I'de say using flow control to branch to every instance of mouse down would become crazy in a big project. Instead, register an event and write handlers wherever needed. Events were thought up in the first place for this reason." CreationDate="2011-05-01T16:25:57.133" UserId="6937" />
  <row Id="15776" PostId="11800" Score="1" Text="It's pretty important to know which physics engine you are using or if you are making your own. The latter would require a much more advanced answer." CreationDate="2011-05-01T16:32:35.800" UserId="6937" />
  <row Id="15777" PostId="11810" Text="if your requirement is to run in a browser, then Phykocyber's answer of unity is the best choice for 3d. silverlight for 2d" CreationDate="2011-05-01T16:44:43.107" UserId="6937" />
  <row Id="15778" PostId="11800" Text="It is the latter. I don't really have much of a physics engine, it's just has velocity. No friction or anything advanced. Velocity is set to 0 as soon as you stop pressing buttons as well, so it's not too hard." CreationDate="2011-05-01T17:00:52.300" UserId="7058" />
  <row Id="15779" PostId="11814" Score="2" Text="Are you allowed to use external libraries as part of your project?" CreationDate="2011-05-01T17:21:28.873" UserId="2332" />
  <row Id="15782" PostId="11814" Text="Start small, make a tetris or a puzzle bubble clone to begin." CreationDate="2011-05-01T17:39:52.700" UserId="656" />
  <row Id="15783" PostId="11814" Text="@ Ray Dey - Yeah we can, theres no restrictions to that." CreationDate="2011-05-01T18:01:35.793" UserId="6970" />
  <row Id="15784" PostId="11818" Text="Thanks for your answer it has definitely given me points to think about!" CreationDate="2011-05-01T18:41:42.360" UserId="6970" />
  <row Id="15785" PostId="11818" Text="Unity isn't possible here since it's scripting uses C#, Javascript or Boo and the OP is creating something for a C++ class and Ogre is just a graphics engine, not a complete games engine." CreationDate="2011-05-01T18:50:39.160" UserId="2332" />
  <row Id="15786" PostId="11818" Text="@Ray Dey: I was giving examples. I also provided a link to another question that supplied better alternatives. You are right that those examples could be better though..." CreationDate="2011-05-01T18:54:04.653" UserId="3547" />
  <row Id="15787" PostId="11818" Text="@Omnion: That's fair enough, but the examples you've got in now are a lot better :)" CreationDate="2011-05-01T19:10:56.530" UserId="2332" />
  <row Id="15788" PostId="11814" Text="Here's a semi-related question over on Programmers.SE:  http://programmers.stackexchange.com/questions/71861/is-developing-games-the-best-way-to-learn-programming " CreationDate="2011-05-01T19:29:18.660" UserId="51" />
  <row Id="15789" PostId="11810" Text="You can write all your Unity scripts using VS2010 just fine." CreationDate="2011-05-01T19:32:26.130" UserId="51" />
  <row Id="15790" PostId="11820" Text="Do any of the answers in this question help: http://gamedev.stackexchange.com/questions/7562/preferred-way-to-render-text-in-opengl" CreationDate="2011-05-01T19:35:36.190" UserId="51" />
  <row Id="15791" PostId="11822" Text="I fixed that, and still just get the white square. If that had been the problem, wouldn't I have not seen a square?" CreationDate="2011-05-01T20:33:21.403" UserId="4183" />
  <row Id="15792" PostId="11817" Text="That's my problem, finding out which face is colliding, as in the point of entry." CreationDate="2011-05-01T20:46:22.257" UserId="7058" />
  <row Id="15793" PostId="11820" Text="I don't think so. " CreationDate="2011-05-01T20:53:17.493" UserId="3128" />
  <row Id="15795" PostId="11800" Text="Is your player modelled with an AABB box?" CreationDate="2011-05-01T20:59:04.607" UserId="2332" />
  <row Id="15796" PostId="11800" Text="Well the player never gets rotated but yeah they do have a bounding box." CreationDate="2011-05-01T21:01:49.660" UserId="7058" />
  <row Id="15797" PostId="11827" Text="Thanks a bunch!" CreationDate="2011-05-01T17:34:18.950" UserId="4362" />
  <row Id="15798" PostId="11775" Text="Thanks for the heads up. I haven't decided to use it yet, so I'll keep this in mind." CreationDate="2011-05-01T22:29:54.610" UserId="1263" />
  <row Id="15799" PostId="11817" Text="To further this question, everything is a square so just querying every block the player can be touching in it's bounding box is easy. The problem I am facing is seeing if it is a vertical collision or a horizontal collision. I don't want to do the whole move the x axis, then move the y axis first, because that leaves weird traces when moving both left and down. As in you would probably stop moving on a wall that you would normally overcome." CreationDate="2011-05-01T23:27:34.270" UserId="7058" />
  <row Id="15800" PostId="11814" Score="1" Text="Basic C++ without classes? Sorry, but if you didn't get to classes, you haven't even touched basic C++." CreationDate="2011-05-01T23:57:54.520" UserId="5678" />
  <row Id="15801" PostId="11809" Text="It's not really clear from your question exactly what you're trying to do. You might want to add an edit to your question so that we might understand better what you want to happen." CreationDate="2011-05-02T02:10:33.627" UserId="5021" />
  <row Id="15802" PostId="11811" Score="3" Text="Brandon: You don't &quot;use flow control to branch to every instance of mouse down&quot;. You record the current and previous mouse state once at the beginning of each frame, and then in every place that your code responds to a mousedown press you simply do `if(MouseLeftPress()){ DoSomething(); }`, where `MouseLeftPress()` is a method you write to compare the current and previous left button mouse states. I find this easier than implementing events most of the time." CreationDate="2011-05-02T02:14:46.213" UserId="5021" />
  <row Id="15803" PostId="11834" Text="I already have collision detection, lines, score, level - all done. I'm just doubting on where to put the time-management code in the program." CreationDate="2011-05-02T02:59:04.133" UserId="4827" />
  <row Id="15804" PostId="11834" Text="By time management, do you mean updating the current shape's position every few seconds or more than that?" CreationDate="2011-05-02T03:01:55.443" UserId="2111" />
  <row Id="15805" PostId="11834" Text="Yeah, updating shape, and controlling the time when the block has bumped the bottom and you are allowed to nudge it." CreationDate="2011-05-02T03:03:51.230" UserId="4827" />
  <row Id="15807" PostId="11834" Text="@Jesse Emond: If you are interested in my code, you can download it here: http://nclabs.org/downloads/tetris.zip" CreationDate="2011-05-02T03:07:52.773" UserId="4827" />
  <row Id="15808" PostId="11834" Text="I just took a quick look and indeed it looks clean! :) But for the part where you update the shape's position (if (fastfall &amp;&amp; ...), you could simply make a function within your game class called updateShape which would take the time of the last update as a parameter and would be in charge of updating the shape's position based on the time. Maybe that's just me, but I think the way you implement timing is more related to the game itself than the overall program and such details should be hidden from the main() function and only the game class should manage them." CreationDate="2011-05-02T03:21:17.960" UserId="2111" />
  <row Id="15809" PostId="11834" Text="Again, that's just a proposition. You may find it more appropriate to stay within the main() function, but I would still make a separate function updateShape() only to hide the implementation details." CreationDate="2011-05-02T03:22:23.670" UserId="2111" />
  <row Id="15811" PostId="11840" Score="2" Text="Related, probable dupe: http://gamedev.stackexchange.com/questions/6721/implementing-a-2d-destructible-landscape-like-worms" CreationDate="2011-05-02T06:18:25.093" UserId="51" />
  <row Id="15812" PostId="11838" Text="The answer to [your other question](http://gamedev.stackexchange.com/questions/11813/shuffle-a-sprite-group) seems like it answers this one as well." CreationDate="2011-05-02T06:19:39.820" UserId="51" />
  <row Id="15813" PostId="11840" Text="Thanks, will look into it." CreationDate="2011-05-02T06:38:14.903" UserId="4559" />
  <row Id="15814" PostId="11555" Text="Same Code, and it's slowing to a crawl again. Grrrrrr" CreationDate="2011-05-02T06:55:39.530" UserId="6908" />
  <row Id="15815" PostId="11840" Text="It seems that is the way I want. I should probably use a single large texture for the terrain, I was planning to do it with quads or maybe triangles." CreationDate="2011-05-02T07:24:07.127" UserId="4559" />
  <row Id="15817" PostId="11555" Text="OK - there seems to be something about how long it has been since the program was last run. Queerer, and queerer. After a little while, runs fast. Straight away, it (mostly) runs slow" CreationDate="2011-05-02T07:34:01.557" UserId="6908" />
  <row Id="15818" PostId="11555" Text="And finally, there are no issues at all if I run in Fullscreen" CreationDate="2011-05-02T07:47:09.140" UserId="6908" />
  <row Id="15819" PostId="11843" Text="I would agree this is the right approach. Trying to use one format for everything is going to give you all sorts of inefficiencies in odd places, and I've gone through this coding my own engine before, and the benchmarks were breathtaking (and not in a good way) when dealing with external format loading. Optimize your models for your code on the backend, use a standard format for the contributors on the frontend, and if you ever need to change formats... well, you have all the source data in a standard format.  Hard to argue with." CreationDate="2011-05-02T07:59:00.623" UserId="7081" />
  <row Id="15820" PostId="11831" Text="2010 version is done and works, they've released a game with XNA4. However, the content processors aren't ported yet so only file-based content loading works in XNA4/VS2010 with FRB (though they state this is on the way)." CreationDate="2011-05-02T08:20:31.327" UserId="2239" />
  <row Id="15821" PostId="11764" Text="This answer is not correct, or at least not internationally. In my answer I indicate some possibilities where it is not legally fine. Additionally I know that as rules can be copyright, an exact rule-for-rule copy of a game *may* not be allowable." CreationDate="2011-05-02T08:30:42.157" UserId="6848" />
  <row Id="15823" PostId="11831" Text="No idea what you're talking about, FlatRedBall XNA4 only works in Visual Studio 2010 by design and FlatRedBall XNA3.1 only works in Visual Studio 2008 - just add the right version DLLs. I have no problem developing with FlatRedBall XNA4 in Visual Studio 2010 Ultimate - it works just fine. FlatSilverBall is a different beast altogether but as it has no dependency on XNA the 2008 template should convert just fine to 2010. My guess is you need to start a FlatSilverBall project from their tempaltes - not a Silverlight Navigation Application?" CreationDate="2011-05-02T09:07:32.660" UserId="2239" />
  <row Id="15825" PostId="11803" Text="Please update the question with more details like the fact that you're specifically looking for a Silverlight or other browser engine." CreationDate="2011-05-02T09:11:40.737" UserId="2239" />
  <row Id="15826" PostId="11803" Text="It's already mentioned twice in there that I'm looking for a silverlight compatiable solution" CreationDate="2011-05-02T09:13:36.640" UserId="6756" />
  <row Id="15827" PostId="11841" Text="Thanks, I will keep the sprite group though. Your first sentence is correct, each time I create/empty/create the group it comes back in a different order, which is just what I need." CreationDate="2011-05-02T09:31:42.883" UserId="3956" />
  <row Id="15828" PostId="11838" Text="Actually not anymore. I'm keeping the sprite group as I don't need to shuffle it anymore." CreationDate="2011-05-02T09:32:25.863" UserId="3956" />
  <row Id="15829" PostId="11803" Text="Three times silverlight is mentioned now" CreationDate="2011-05-02T09:38:18.813" UserId="6756" />
  <row Id="15831" PostId="11847" Text="Neither Maya nor 3DSMAX is beginner-friendly in my opinion (convoluted workflows and UIs) and if you're not looking to enter the industry my question is: are you really limited to just those two?" CreationDate="2011-05-02T10:09:41.613" UserId="2239" />
  <row Id="15832" PostId="568" Score="1" Text="Your book looks really good, thanks for sharing it. I hope you will finish it!" CreationDate="2011-05-02T11:27:31.290" UserId="3686" />
  <row Id="15833" PostId="11854" Text="thats what i wanted to hear. i have joined a couse of 3ds max , some student told me that maya was better because everything is inside one software but in max , i have to use plugins . he was saying things are easily done in maya . so i was confused if maya is better then i can chnage my course. its just 1 day. i am not biased , if max can make the building model in 10 hours and for maya its 7hr . i would like to prefer maya providing person knows both" CreationDate="2011-05-02T11:54:21.340" UserId="6961" />
  <row Id="15834" PostId="11851" Score="3" Text="thanks for answering my questions. i have always learned so much in my life by just asking questions. Even though i look like fool to someone but i don't care. As long as i am not harming anyone i am satisfied. You won't beleive it in all forums  so many times i got -ve votes , but i leanred so much from those questions. They made by base. because there are always people like you ,who answer and i get knowledge. my teacher always told me to ask question no matter what other think of you. if someone don't like , they have option not to answer and give -ve vote. i asked what i wanted to know" CreationDate="2011-05-02T12:03:53.967" UserId="6961" />
  <row Id="15835" PostId="11811" Text="Simple polling gets really ugly beyond your basic arcade controls. I have an input manager class that captures the gamepad state as FlagAttributes and allows you to map delegates to different combinations of buttons. Next step up is to implement timing. All this debate just reinforces Steve H's point though, you're giving a polling system, and you are free to build upon it to support whatever paradigm you prefer." CreationDate="2011-05-02T13:01:23.333" UserId="3656" />
  <row Id="15836" PostId="11716" Text="Maybe this example just works with 1.0, but it should be easy to modify it to work with prior versions" CreationDate="2011-05-02T13:04:45.387" UserId="5494" />
  <row Id="15837" PostId="11841" Text="-1. If you desperately need the _group_ to shuffle you can simply subclass `Group`, you don't need to avoid it. But you probably don't want the group per se to be shuffled; you just want a shuffled copy of the sprites in the group." CreationDate="2011-05-02T13:34:42.293" UserId="744" />
  <row Id="15838" PostId="11838" Text="If you continue down this path of madness, at least update `getSpriteByPosition` to return None instead of False - False is equal to integer 0, which is a valid index." CreationDate="2011-05-02T13:47:54.523" UserId="744" />
  <row Id="15839" PostId="11850" Text="Do you mean you want to do this in code, or in the editor?" CreationDate="2011-05-02T13:49:03.397" UserId="744" />
  <row Id="15840" PostId="11859" Text="I'm not trying to index sprites inside a group. I just want to get the first or second sprite in the group, whatever it is and whenever it has been added to the group. (thanks for return None)" CreationDate="2011-05-02T13:58:09.547" UserId="3956" />
  <row Id="15841" PostId="11858" Text="oh, great, thanks" CreationDate="2011-05-02T14:01:34.833" UserId="3956" />
  <row Id="15842" PostId="11847" Text="-1, very subjective." CreationDate="2011-05-02T14:02:17.050" UserId="1156" />
  <row Id="15843" PostId="11859" Text="Groups are not ordered so &quot;the first sprite in the group&quot; is a useless designator. What you probably actually want is &quot;the player sprite&quot; or &quot;the enemy ship&quot; or something. Store those when you make them, don't rely on being able to pull them back out of a group by the weakest handle imaginable." CreationDate="2011-05-02T14:03:18.030" UserId="744" />
  <row Id="15844" PostId="11859" Text="hmm, it looks very well ordered to me. As a test I tried removing a sprite from its group (and printing the sprites names in the group before and after removing it) the sprites order is kept and I can get any sprite inside the group by &quot;position&quot; with the code above... but I understand a sprite group is here to keep all the &quot;similar&quot; sprites together for easier update and not to index them." CreationDate="2011-05-02T14:18:29.507" UserId="3956" />
  <row Id="15845" PostId="11859" Text="Removing a sprite is guaranteed, at the very least, to shift all the objects past it down by one. Removing many elements may make the dictionary shrink, rehashing. Adding elements is guaranteed to make the dictionary grow, rehashing. Indices into the key view/list - which are what you get when you make indices into the sprite group - are _not_ reliable." CreationDate="2011-05-02T14:25:26.380" UserId="744" />
  <row Id="15847" PostId="11854" Text="Ultimately it's whichever one best allows you to express yourself artistically.  The behind-the-scenes theory (lighting, texturing, animating, etc) is much the same in both programs - just a different interface.  Ultimately it comes down to your own vision and skill at constructing that vision.  Both programs are large, convoluted and will get in your way.  Pick whichever gets in your way the least." CreationDate="2011-05-02T15:02:16.800" UserId="4296" />
  <row Id="15849" PostId="11828" Text="Assuming he is even using GLUT" CreationDate="2011-05-02T15:15:55.817" UserId="4513" />
  <row Id="15850" PostId="11864" Text="I am just learning max , but my main project is to build a coomplete viallge like 50 buildings , hospitals , parks . i would also like to go inside few buildings . i just wanted to know whether i will be able to do it on my PC or not. There are ready made mx files for buildings , hospitals but they are 50MB each . Can import 100s of those in one file" CreationDate="2011-05-02T15:19:02.413" UserId="6961" />
  <row Id="15851" PostId="11859" Text="Understood and agreed. Note that what I want to do is take any single sprite from the group. The code above does that and is not an aberration. If there's a better solution to achieve this, I will accept it. (in the question I mention a &quot;position&quot; or index but it's not important actually, getting any single sprite from the group is enough) I'm wondering if your answer to the linked question (shuffle group) would not work for this purpose as well..." CreationDate="2011-05-02T15:53:58.870" UserId="3956" />
  <row Id="15852" PostId="11864" Score="1" Text="Within 3ds Max, yes... Sort of. I've done some very, very large modeling with xrefs (Externally referenced files). When loading back into a game though this will get problematic.  To use xref (been ages, from memory), you model individual pieces in separate files.  In your master scene, you can load that file as an XRef - it loads a low-poly representation of the larger to keep the scene fast to work in.  Again though, this is ONLY in max - not your game.  The real question of being able to load the whole Max scene into your game is very, very different." CreationDate="2011-05-02T15:59:49.460" UserId="4296" />
  <row Id="15853" PostId="11864" Score="1" Text="Info on XRef: whole scene: http://www.3dmax-tutorials.com/XRef_Scenes.html Object: http://www.3dmax-tutorials.com/XRef_Objects.html  I still argue that you'll have better luck assembling the scene from individual components in game rather than trying to take a huge Max scene into the game." CreationDate="2011-05-02T16:08:03.130" UserId="4296" />
  <row Id="15854" PostId="11864" Score="1" Text="Final note: You can also stick particular pieces together in layers and turn them on/off as needed to keep performance in Max high (layer for terrain details, one for trees, one for signs, etc..)" CreationDate="2011-05-02T16:19:59.777" UserId="4296" />
  <row Id="15855" PostId="11859" Text="if all you need is a single arbitrary sprite from the group, you can use `iter(grp).next()` and be ready to catch StopIteration if it's empty. But I honestly can't think of a use case for grabbing an arbitrary sprite from a group." CreationDate="2011-05-02T16:39:18.910" UserId="744" />
  <row Id="15856" PostId="11860" Score="1" Text="`FindObjectsOfType` doesn't have a generic version, as far as I can tell.  So you have to do `FindObjectsOfType( typeof( GameObject ) ) as GameObject[]`." CreationDate="2011-05-02T16:54:12.513" UserId="51" />
  <row Id="15857" PostId="11864" Text="@Leniency thanks for the info buddy , but i am not into games . i just want to create walk throughs and animation " CreationDate="2011-05-02T17:24:56.483" UserId="6961" />
  <row Id="15858" PostId="11860" Text="Good to know; I'm not at a computer with Unity to test it." CreationDate="2011-05-02T17:45:52.107" UserId="189" />
  <row Id="15859" PostId="11788" Text="although not specifically what I was asking, this is the correct answer.  The library I am using supports 'atlas' images.  Make your comment an answer and  will accept it." CreationDate="2011-05-02T19:44:42.353" UserId="7041" />
  <row Id="15860" PostId="11790" Text="imagemagick does the job, but the comment above is 'more correct' in that I should be using an atlas and taking textures from there.  thanks." CreationDate="2011-05-02T19:45:12.650" UserId="7041" />
  <row Id="15863" PostId="3887" Text="But p2p IS quite popular in multiplayer games! Who said is wasn't? Even some big MMOs use p2p" CreationDate="2011-05-02T21:43:22.717" UserId="1163" />
  <row Id="15864" PostId="11828" Text="GLUT isn't available for WebGL." CreationDate="2011-05-02T22:44:55.823" UserId="3128" />
  <row Id="15866" PostId="11873" Text="Thanks, that works. I think I tried that before, but once I removed the Normalization, it worked." CreationDate="2011-05-02T23:23:16.470" UserId="5929" />
  <row Id="15867" PostId="11873" Score="1" Text="It's tempting to normalize every vector you come across, but it's not always a good idea. You want to make sure to keep clear the difference between a position and a direction; directions can be safely normalized, but positions should never be. In this case objVec and playerVec are clearly the positions of the respective entities, and should never be normalized." CreationDate="2011-05-02T23:26:42.873" UserId="6825" />
  <row Id="15868" PostId="11875" Text="No, the whole point is to have carters included in the formula as well, because carters take labor and there are other things you probably needed that labor for (like, farming). It's supposed to be a balancing act." CreationDate="2011-05-03T00:11:12.587" UserId="6825" />
  <row Id="15869" PostId="11875" Text="@Paul Z: Check my edit. Your problem is that you have coupled the balance of resource-distance with the balance of carters. Once you separate these two problems, you should find it easier to obtain a suitable balance." CreationDate="2011-05-03T00:16:45.470" UserId="4662" />
  <row Id="15870" PostId="11875" Text="Ok, I think I see what you're getting at. I'm not sure I agree that separating the two concerns can give me the behavior I want, but if you can give a concrete example I'm prepared to be convinced. I've added more explanation in the question in order to describe at a higher level the behavior I'm looking for." CreationDate="2011-05-03T00:47:02.163" UserId="6825" />
  <row Id="15871" PostId="11831" Score="1" Text="@Carnotaurus: I don't think that you fully understand the spirit of this site or how to use it best to serve you. I'm trying to help you answer your question, and I don't know if you mean to, but to me it seems like you're a little rude for someone seeking free help from professionals. I don't have extensive experience with Flat Red Ball, but building games in XNA (with VS2010) is my primary source of income, and I've been programming for 15 years. I like to think that at least I have &quot;a clue&quot;. You should consider why users have downvoted your question to -6 and your answer to -2!" CreationDate="2011-05-03T01:09:01.097" UserId="5021" />
  <row Id="15872" PostId="11842" Text="Thanks for the pointer. I've done some small experiments and was surprised by how straightforward it is to use. I will be seriously considering it." CreationDate="2011-05-03T01:55:32.997" UserId="5390" />
  <row Id="15873" PostId="11843" Text="I've discussed this approach with the development team and we're in agreement that its probably the right approach. Thanks for the insight!" CreationDate="2011-05-03T01:56:16.337" UserId="5390" />
  <row Id="15874" PostId="11830" Text="Your right, your code works great. It turns out my Shader was messed up, and then I edited my XNA code, then fixed the shader, but didn't know for a while because my XNA code was all over the place. I've got it fixed now. Thanks." CreationDate="2011-05-03T02:09:29.507" UserId="4183" />
  <row Id="15875" PostId="11868" Text="Gave more context to the &quot;related question&quot;.  I didn't mention morph targets; it's definitely about the customization.  If morph targets are in the solution space, then I'd like to know more about them; but my concern is implementing the bodies with animations and matching models (for example, clothing models) consistently.  I'm not predisposed to any part of the solution space." CreationDate="2011-05-03T02:25:18.823" UserId="7052" />
  <row Id="15876" PostId="11715" Text="can u help me i dont have any experience " CreationDate="2011-05-03T05:23:27.507" UserId="7001" />
  <row Id="15877" PostId="11715" Text="and i want to know how to place different pocture in that tile is it like 2D array" CreationDate="2011-05-03T05:29:17.780" UserId="7001" />
  <row Id="15878" PostId="11715" Text="means How to get the each tile. Should we consider it as 2D array operation 2. How to fill that tile with images as u may know i have to change images in the tile to show the growth of the plants and all. so plz tel me how to do this .I am alone in this project too" CreationDate="2011-05-03T05:32:36.997" UserId="7001" />
  <row Id="15879" PostId="11861" Text="Voxels in 2D?.. You know what, they're called pixels." CreationDate="2011-05-03T05:59:03.193" UserId="2710" />
  <row Id="15880" PostId="11873" Score="5" Text="Who are these *hysterical raisins* you speak of? Are they delicious?" CreationDate="2011-05-03T06:09:11.520" UserId="5021" />
  <row Id="15881" PostId="11789" Score="1" Text="OOP is not that big of a deal, not in high performance game engines. Sure it is useful, but it is often the wrong abstraction. Having good data flow, locality and memory layout of is usually better. While a lot of teams are using C++, they don't use most of C++ features. No exceptions, as few virtuals as possible, no RTTI, no STL/Boost. Why? Predicable and fast execution and small code on multiple platforms. I code in C and there are only two areas in which I would rather use C++: scoped locks and generic arrays. Not worth the hassle IMHO." CreationDate="2011-05-03T06:30:47.733" UserId="2792" />
  <row Id="15882" PostId="11789" Score="3" Text="On GL vs. D3D: There is no matrix stack in GL3/4 core, and no attrib stack. Both GL and D3D maps to the same hardware architecture, but a lot of time GL feels thinner. Sure the GL state machine is a bit of a hassle, but so is actual hardware ;) Learning any of them is fine, and as long as you understand what is actually happening you can easily switch to the other (or a console API)." CreationDate="2011-05-03T06:35:06.870" UserId="2792" />
  <row Id="15883" PostId="11863" Text="Like eBusiness says, an array is your best bet, but you might want to consider dividing your map in smaller chunks (for example one chunk per screen) and only load each chunk when that area needs to be drawn onto the screen. This is more memory friendly when dealing with large maps and loads of attributes per tile." CreationDate="2011-05-03T12:01:15.297" UserId="5508" />
  <row Id="15884" PostId="11861" Text="Yes I know, but I wanted to desribe the graphical style I want to achieve and when you look on that video (and I hope it is build from voxels), they arent 1x1x1 pixel, but a little bigger." CreationDate="2011-05-03T13:40:03.973" UserId="6982" />
  <row Id="15885" PostId="11891" Text="I had to RTFA to know that RTMFP meant :P" CreationDate="2011-05-03T15:15:39.110" UserId="7099" />
  <row Id="15886" PostId="11814" Score="1" Text="Kind of... localized, isn't this?" CreationDate="2011-05-03T15:16:37.863" UserId="165" />
  <row Id="15887" PostId="11891" Text="What does the P mean? I got as far as real-time multiplayer flash..and can you edit the title?" CreationDate="2011-05-03T15:48:35.640" UserId="1156" />
  <row Id="15888" PostId="11890" Text="Thanks. Unfortunately, I don't have access to the stencil buffer. Is there a way of doing it in Silverlight?" CreationDate="2011-05-03T16:28:04.753" UserId="4234" />
  <row Id="15889" PostId="11786" Text="I don't see the point in your listings. The fact you know C/C++ and Python help us, but why list that you can use version control and a debugger?" CreationDate="2011-05-03T16:42:32.990" UserId="1156" />
  <row Id="15890" PostId="11861" Text="2D blocks bigger than pixels are called tiles." CreationDate="2011-05-03T16:56:16.270" UserId="3505" />
  <row Id="15891" PostId="11675" Text="the packer looks nice for writing my own game (so +1) since it outputs the dynamically calculated sprite positions, but since they are already defined by Notch, I need a tool to pack in customizable positions" CreationDate="2011-05-03T16:57:41.917" UserId="252" />
  <row Id="15892" PostId="11891" Text="Trolling? http://en.wikipedia.org/wiki/Real_Time_Media_Flow_Protocol" CreationDate="2011-05-03T17:56:59.033" UserId="5091" />
  <row Id="15893" PostId="11893" Text="Then you didnt play the game." CreationDate="2011-05-03T18:05:39.203" UserId="5091" />
  <row Id="15894" PostId="11898" Text="What's wrong with a version for tablets and one for smartphones?" CreationDate="2011-05-03T18:08:23.757" UserId="1156" />
  <row Id="15895" PostId="11898" Text="If you change the code in one version, then you'll have to change it in the other too... It's not very handy. Or is there a way to sync the code ?" CreationDate="2011-05-03T18:20:14.823" UserId="7104" />
  <row Id="15896" PostId="11897" Text="Not sure about VertexPositionColorTexture, but this can be done with SpriteBatch and Texture2D." CreationDate="2011-05-03T18:29:07.070" UserId="1198" />
  <row Id="15897" PostId="11885" Text="I sure have thought about it. Simulating carter automata has benefits in other areas of the game (specifically, it makes it easier for me to decide that an enemy army is camped out on the road and stealing your iron), but it seems very expensive. I still might go with it though, it does seem to have most of the behavior I'm looking for." CreationDate="2011-05-03T18:30:55.307" UserId="6825" />
  <row Id="15898" PostId="11891" Text="I don't think he was trolling, it's probably not a very common acronym." CreationDate="2011-05-03T18:41:38.437" UserId="1430" />
  <row Id="15899" PostId="11893" Text="In fact, I did. Perhaps you could elaborate on what I missed that makes you think the technology is so revolutionary?" CreationDate="2011-05-03T18:44:21.150" UserId="1430" />
  <row Id="15900" PostId="11898" Text="I have no idea. But wouldn't you have it set up somehow that the code is exactly the same, but ship with different textures?" CreationDate="2011-05-03T19:22:08.000" UserId="1156" />
  <row Id="15901" PostId="11893" Text="Im not saying the technology is revolutionary, im saying its not exploited. I said you dindt play the game cuz you literally said that you didnt see a real time flash based multiplayer game." CreationDate="2011-05-03T19:44:10.917" UserId="5091" />
  <row Id="15902" PostId="11898" Score="2" Text="I haven't used Eclipse much, but isn't there a config manager where you can have separate builds depending on the config you choose? A la Visual Studio configurations" CreationDate="2011-05-03T19:51:22.723" UserId="2332" />
  <row Id="15903" PostId="11874" Text="I'm not sure that, as stated, your problem is posed correctly. The only thing that effects the metal produced of a mine is the number of laborers free to mine (you stated as much in 1). The &quot;efficiency&quot; of making iron should be independent of both the distance to a center and the number of transports available--after all, you've got plenty of metal, it just hasn't left the mine yet!" CreationDate="2011-05-03T19:54:10.457" UserId="5259" />
  <row Id="15904" PostId="11874" Text="Your second point about allowing miners to carry things complicates the calculations further. I'd just model it as saying that miners mine, and when they are done mining, they deliver the goods unless someone else is in place to handle transport. This naturally creates periodic deficits (real ones!) in mining capacity if you don't have transport to prevent these miners from switching tasks." CreationDate="2011-05-03T19:59:41.963" UserId="5259" />
  <row Id="15905" PostId="11898" Text="@The Communist Duck, yes but it's not very clean... :/" CreationDate="2011-05-03T20:00:42.227" UserId="7104" />
  <row Id="15906" PostId="11575" Text="Add a pre-compile script to link or copy assets into the `assets` directory, allowing you to preserve any game specific directory structure.  As for Windows symlinks: http://www.windows7home.net/how-to-create-symbolic-link-in-windows-7/" CreationDate="2011-05-03T20:01:21.727" UserId="6797" />
  <row Id="15907" PostId="11898" Text="@Ray Dey, you're right ! I should definitely look into this." CreationDate="2011-05-03T20:02:18.090" UserId="7104" />
  <row Id="15908" PostId="11874" Text="Your fourth point makes no sense, if you agree with my earlier assertion about mine capability: The mine is completely effective at producing iron *at its site*. It makes no difference whether you have 10 carters or 10,000--you can only move so much ore to the top of the mine. It makes no sense to add more carters past what the mine is able to produce, and so that issue is done away with completely: you use as many miners as the mines will support, and you use as much transport as the ore production requires." CreationDate="2011-05-03T20:03:31.913" UserId="5259" />
  <row Id="15909" PostId="11874" Text="The diminishing returns you seem to want to model are best handled elsewhere in your system, where they would make sense. Adding additional carters requires more housing, in turn requiring more roads. Failure to add roads results in congestion, slowing movement for all units. Failure to add housing results in slower carters (can't rest, grumpy, etc.) or fewer carters (simply can't support them). Building up enough infrastructure to have a constant bucket brigade to a mine is fine, but if the mine fails to produce carters perhaps don't get paid, and in turn cause damage by rioting or something." CreationDate="2011-05-03T20:06:28.897" UserId="5259" />
  <row Id="15910" PostId="11874" Text="If the player can create a mine and its associated infrastructure, and can create a carter infrastructure, and both things scale linearly (as described above), then there is no reason it would make sense for the system to become less efficient as you increase scale. Your suggested model to me seems broken. If you are trying to regulate this, let other things have effect: competition from better tech lets some other type of carter outperform the player's chosen type, or glut in the market supply for iron makes the mines less profitable in turn lowering carter wages in turn increasing crime." CreationDate="2011-05-03T20:09:12.250" UserId="5259" />
  <row Id="15911" PostId="11786" Score="1" Text="@TheCommunistDuck: Hey, that's better than some developers. :)" CreationDate="2011-05-03T20:11:21.560" UserId="5259" />
  <row Id="15912" PostId="11900" Text="Thank you for your answer. In fact I'm porting a PC/X360 game written in C# using XNA for Android and also iOS. What means &quot;wrap your code&quot; ? I'm sorry for my ignorance, I'm just a young french guy... Do you mean, putting like in C #ifdef XBOX etc.. ? It would be messy, wouldn't it ? And I don't even know it'd work. So what are you calling &quot;wrapping&quot; the code ? Thank you again. :) " CreationDate="2011-05-03T20:29:36.023" UserId="7104" />
  <row Id="15913" PostId="11898" Text="Honestly I'd be surprised if the download for a game is really dominated to an annoying degree by the cost of HD textures rather than the cost of audio - especially since high-end phones can have screens better than low-end tablets." CreationDate="2011-05-03T20:37:29.480" UserId="744" />
  <row Id="15914" PostId="11884" Text="Is iOS Box2D that different than &quot;real&quot; Box2D?" CreationDate="2011-05-03T20:39:28.463" UserId="744" />
  <row Id="15915" PostId="11902" Text="+1, that sample is great." CreationDate="2011-05-03T21:29:36.313" UserId="2111" />
  <row Id="15916" PostId="11903" Score="1" Text="&quot;Keep a single, main Model object which holds all data describing your world. It will hold general world information such as difficulty, physics parameters etc.&quot; Difficulty and physics parameters? Talk about conflation of concerns! -1." CreationDate="2011-05-03T21:31:41.160" UserId="744" />
  <row Id="15917" PostId="11903" Score="2" Text="@Joe -- Do you want me to outline to him the entire configuration hierarchy? We are keeping it simple here, are we not? I'd appreciate if you'd think before downvoting." CreationDate="2011-05-03T21:35:28.310" UserId="5473" />
  <row Id="15918" PostId="11903" Score="2" Text="Well the rest of the post is a bizarre attempt to cover MVC without covering V or anything normally recognizable as C, and I don't think MVC is good advice for game programming in the first place. I'd appreciate if you'd think before answering, but we can't always get what we want." CreationDate="2011-05-03T21:38:36.337" UserId="744" />
  <row Id="15919" PostId="1785" Text="Re set vs. stack, this has been my experience too. It's trying to fit a square peg into a round hole." CreationDate="2011-05-03T21:44:12.373" UserId="5473" />
  <row Id="15923" PostId="11900" Text="What I mean by &quot;wrap your code&quot; is taking code that is tied to a specific library, or operating system (usually, rendering, event/input handling, or file operations) and removing it from the rest of your code.  As an example: you might have code to get a list of files from a directory.  Every OS has a different way to do this.  So you would call getFileFromDirectory() function in your game code, then you would have different definitions of that function, using #ifdef WINDOWS.  Yes, it can get messy :), but you can keep the definitions in a different file.  Good luck!" CreationDate="2011-05-03T22:05:55.027" UserId="6558" />
  <row Id="15924" PostId="11900" Text="Of course, from my understanding of Android and iOS, none of them use XNA, so you'd pretty much be re-writing your entire game from scratch, so lot of stuff about wrapping code doesn't apply here.  The only stuff you'd probably be able to reuse would be the art and music/sound." CreationDate="2011-05-03T22:09:31.450" UserId="6558" />
  <row Id="15925" PostId="11902" Text="@zacharmarz:  Thanks much for the sample!  It seems like it will do the job.  Just one more question for the moment. . .I've been studying the code, and I eventually came across the use of &lt;code&gt;PlayerIndex?&lt;/code&gt;.  What does that extra &lt;code&gt;?&lt;/code&gt; do?" CreationDate="2011-05-03T22:11:44.063" UserId="7106" />
  <row Id="15927" PostId="11892" Text="A plan is good, but don't stress it too much or you'll never get done." CreationDate="2011-05-03T23:27:06.120" UserId="3547" />
  <row Id="15928" PostId="11906" Text="hey, thanks for the answer. It seems to be returning  -1 for source=3 dst = 38, which is an error..." CreationDate="2011-05-03T23:38:43.217" UserId="6117" />
  <row Id="15929" PostId="11906" Text="Zaky: It returns 1 for source=3, dest=38. It reduces to 325&gt;180 which is true, so it returns 1." CreationDate="2011-05-03T23:47:13.040" UserId="5021" />
  <row Id="15930" PostId="11902" Score="2" Text="To write code blocks in comments use a backtick (`\``). The `?` is the nullable operator, and allows a value type to be null. http://msdn.microsoft.com/en-us/library/1t3y8s4s(v=vs.80).aspx" CreationDate="2011-05-03T23:50:33.003" UserId="5021" />
  <row Id="15931" PostId="11892" Text="What type of game was it if I may ask? :)" CreationDate="2011-05-03T23:51:58.650" UserId="6970" />
  <row Id="15932" PostId="11893" Text="Josh, this might not be &quot;revolutionary&quot;, but this is a level of real time interaction that I've never seen before in a flash game. Perhaps I just don't play enough flash games?" CreationDate="2011-05-04T00:08:08.643" UserId="5021" />
  <row Id="15933" PostId="11906" Text="@Olhovsky My bad! Thanks alot sirs, it works!" CreationDate="2011-05-04T00:22:17.593" UserId="6117" />
  <row Id="15934" PostId="11893" Text="Olhovsky, thats exactly what Im talking about, I do play Flash games, and this kind of real time experience is just not outthere." CreationDate="2011-05-04T01:28:30.857" UserId="5091" />
  <row Id="15935" PostId="11903" Score="1" Text="@Joe: I agree that MVC is a rough choice for a game, but I'm pretty sure the role of V here is obvious." CreationDate="2011-05-04T01:40:18.057" UserId="1263" />
  <row Id="15936" PostId="11893" Score="2" Text="I guess I just don't know enough about Flash-based games to see that this is all that interesting (as from a technology-agnostic perspective it looks old hat). That being what it is, like I said, if it looks useful to you then learn it -- there's no reason not to, as it's obviously functional and learning new things can rarely harm you as a developer." CreationDate="2011-05-04T01:47:42.903" UserId="1430" />
  <row Id="15937" PostId="11894" Text="no still it didnt worked tried that as well" CreationDate="2011-05-04T04:28:21.763" UserId="7020" />
  <row Id="15938" PostId="11903" Score="3" Text="@Zach: When claims like &quot;FP is the ultimate MVC&quot; are made, nothing is obvious, except maybe that the poster fails to understand both MVC and functional programming." CreationDate="2011-05-04T05:26:36.327" UserId="744" />
  <row Id="15939" PostId="11908" Text="I've read those, and I think they're far more confusing and shallow than the proper Box2D manual." CreationDate="2011-05-04T05:51:56.800" UserId="744" />
  <row Id="15940" PostId="11891" Score="2" Text="speculative questions are off-topic here. They are usually not proper questions and tend to produce opinions and emotion rather than answers. http://meta.gamedev.stackexchange.com/questions/275/speculative-questions-off-topic" CreationDate="2011-05-04T05:54:57.750" UserId="744" />
  <row Id="15941" PostId="11905" Text="possible duplicate of [Calculating angle between 2 vectors](http://gamedev.stackexchange.com/questions/7131/calculating-angle-between-2-vectors)" CreationDate="2011-05-04T05:58:13.427" UserId="744" />
  <row Id="15942" PostId="11905" Text="Also effectively a duplicate of http://gamedev.stackexchange.com/questions/4467/comparing-angles-and-working-out-the-difference, which was a question about the same thing with some particular hardware restrictions." CreationDate="2011-05-04T05:59:12.893" UserId="744" />
  <row Id="15943" PostId="11900" Text="Ok, thank you for your answer ! :)" CreationDate="2011-05-04T07:54:45.507" UserId="7104" />
  <row Id="15944" PostId="11898" Text="Yes you're right, but I heard about upcoming tablets with a very high resolution, like 720p. Maybe it's just a small resolution but with high dpi ?" CreationDate="2011-05-04T07:56:58.357" UserId="7104" />
  <row Id="15945" PostId="11892" Text="@Zac Blazic began as a straight copy of pokemon but changed the battle system to Olympic style events as it was a learning game for a school. Has animation of people and background, 4 minigames, a town and a forrest area, menus and dynamically added content so the school could change the educational material themselves. Very rewarding project, am currently using a modified version as an engine for a old turn-based rpg. C++ and directx if you wana know. very little pointers to, used references." CreationDate="2011-05-04T08:22:02.300" UserId="6469" />
  <row Id="15946" PostId="11917" Text="yeah I know that 8 vertices, but I recompiled the original Jbox2D source codes, with the number 64. &quot;public static final int maxPolygonVertices = 64;&quot; and made a new .jar file from it. How can I triangulate my polygons?&#xA;" CreationDate="2011-05-04T09:51:06.547" UserId="7102" />
  <row Id="15947" PostId="11890" Text="You could try replacing the original mesh with two new meshes. Using the points of intersection of the cut, and using those points as the new vertices for the new meshes." CreationDate="2011-05-04T10:06:01.017" UserId="7098" />
  <row Id="15948" PostId="11898" Score="1" Text="The iPhone 4 is already 960×640, I can't imagine Android phones will be stuck at 800x480 for much longer. I don't think you'd use substantially different assets for 640 vs. 720." CreationDate="2011-05-04T10:06:51.157" UserId="744" />
  <row Id="15949" PostId="3264" Text="I suspect many people are against IoC because it means : " CreationDate="2011-05-04T11:33:27.453" UserId="747" />
  <row Id="15950" PostId="10663" Text="Code readability, testability and good architecture practices would suggest to avoid it.&#xA;" CreationDate="2011-05-04T13:04:36.970" UserId="4788" />
  <row Id="15953" PostId="11920" Text="Good question by the way, very common to see this, a lot of people assume they have to change the gravity when they encounter this" CreationDate="2011-05-04T13:40:13.860" UserId="6937" />
  <row Id="15955" PostId="11922" Text="That doesn't sound right. If you use consistent units, an object at 1 meter high should fall to the ground in 0.45 seconds. Scaling your entire scene shouldn't matter. Maybe you were communicating your timescale wrongly to your physics engine." CreationDate="2011-05-04T14:16:56.903" UserId="6907" />
  <row Id="15956" PostId="11922" Score="5" Text="I'm not talking about the height that you drop it at. I'm talking about scaling the object itself. If you are a 100 foot man and you jump at 20% of your height. It will take you longer and feel like you are on the moon. The other side is, if you are a 6 foot man and jump at 20% of your height, you will jump much lower and will hit the ground much sooner. It is definitely a scale issue. " CreationDate="2011-05-04T14:42:06.903" UserId="6937" />
  <row Id="15958" PostId="11920" Text="Something that seems to have been assumed - are your object masses correct? " CreationDate="2011-05-04T14:54:43.330" UserId="360" />
  <row Id="15959" PostId="11920" Score="5" Text="mass shouldn't be taken into account unless you are simulating planets. A marble falls with the same acceleration as a bowling ball ignoring wind resistance" CreationDate="2011-05-04T14:59:50.860" UserId="6937" />
  <row Id="15961" PostId="11805" Text="-1: Extraneous information for first half of answer not helpful to questioner. Second half of answer contains mostly speculation, while at the same time failing to clearly state the exact system used for promoting &quot;drama&quot;." CreationDate="2011-05-04T15:34:05.747" UserId="5259" />
  <row Id="15962" PostId="11781" Text="+1: Thanks for the interesting links!" CreationDate="2011-05-04T15:36:24.870" UserId="5259" />
  <row Id="15963" PostId="11777" Text="@Ginger Bill: Remember, gameplay is not always related to story. In fact, I'd tend to assert that a good story is secondary to good gameplay for most folks. So, if possible, there shouldn't be any harm in taking risks with a randomly-generated story provided it sort of hangs together and is backed by fun gameplay. What sort of game are you making?" CreationDate="2011-05-04T15:38:36.567" UserId="5259" />
  <row Id="15964" PostId="11890" Text="I guess this will be the best way to do it. Thanks." CreationDate="2011-05-04T15:53:37.097" UserId="4234" />
  <row Id="15966" PostId="7934" Text="I like the idea of multiple state machines. But how are they integrated to work with an entity? Are they updated in parallel? or are they nested inside an entity state machine?" CreationDate="2011-05-04T16:46:13.873" UserId="3020" />
  <row Id="15968" PostId="11930" Text="I voted to close because all I can see is 'what ideas can I use for challenges', which is subjective and argumentative, as well as off-topic. To keep the player addicted, there's questions like http://gamedev.stackexchange.com/questions/5667/what-makes-puzzle-games-addictive" CreationDate="2011-05-04T17:16:37.543" UserId="1156" />
  <row Id="15969" PostId="11930" Text="Off-topic? From which topic? ¬¬" CreationDate="2011-05-04T17:20:58.943" UserId="7114" />
  <row Id="15970" PostId="11930" Score="2" Text="Read the [faq](http://gamedev.stackexchange.com/faq) under **What kind of questions should I *not* ask here?**.  This kind of question falls under that category.  There's no specific problem to solve, and it's trying to just start a discussion." CreationDate="2011-05-04T17:22:35.623" UserId="51" />
  <row Id="15971" PostId="11930" Text="Also your other question was practically identical and was closed/voted down for similar reasons. http://gamedev.stackexchange.com/questions/11925/puzzle-first-person-games" CreationDate="2011-05-04T17:24:03.373" UserId="51" />
  <row Id="15972" PostId="7934" Text="@Dani, each state machines is referenced as an attribute of the entity objects. Most of them are independent for example, you can be invincible with small, super, fire and fly Abilities. Some events trigger multiple state transitions: For example getting hit by an enemy will decrease the ability and change damage mode to invulnerable. This leaves only a few cases where two state machines are actually linked. For example force run mode while invincible." CreationDate="2011-05-04T17:44:09.627" UserId="450" />
  <row Id="15973" PostId="11930" Score="1" Text="If you want an answer to this, the best thing you can do is ask *how* people come up with ideas, given constraints like limiting it to a genre (first-person puzzle). That might have a chance of getting a good answer." CreationDate="2011-05-04T19:19:49.703" UserId="1929" />
  <row Id="15974" PostId="11935" Text="There are plenty of forums and things you can ask for people, but as for actually *finding* anyone, good luck..." CreationDate="2011-05-04T19:47:35.777" UserId="189" />
  <row Id="15975" PostId="11935" Text="A link will help" CreationDate="2011-05-04T19:57:11.000" UserId="516" />
  <row Id="15976" PostId="11935" Text="I can't tell what to tag it as, but not search." CreationDate="2011-05-04T19:57:54.627" UserId="1156" />
  <row Id="15977" PostId="11934" Text="I have tried to turn off anti-aliasing (by glDisable(GL_POLYGON_SMOOTH);) with no effect. I am drawing skybox as triangle strip with coords form -1 to 1" CreationDate="2011-05-04T19:58:45.397" UserId="5459" />
  <row Id="15978" PostId="11935" Text="My thoughts exactly, but close enough" CreationDate="2011-05-04T19:59:40.170" UserId="516" />
  <row Id="15979" PostId="11937" Score="1" Text="The game is finished... just need to get all the placeholder graphics out of sight" CreationDate="2011-05-04T20:01:04.427" UserId="516" />
  <row Id="15980" PostId="11937" Score="1" Text="You'll have a lot more luck finding an artist with a finished game. Good luck mate." CreationDate="2011-05-04T20:17:49.647" UserId="2332" />
  <row Id="15981" PostId="11934" Score="1" Text="That sounds good to me. At least for now I'm out of guesses, but you may want to narrow down the problem by finding out if that black is the background bleeding through or the texture edge showing as black. If you place a red polygon somewhere behind the artefact, will the artefact take it's colour?" CreationDate="2011-05-04T20:25:42.623" UserId="3505" />
  <row Id="15982" PostId="11934" Text="I want try to extend walls, so they overlap (just like eBusiness wrote) - I think 0.0001 would be enough. You don't have to change UV coordinates." CreationDate="2011-05-04T20:44:17.817" UserId="4947" />
  <row Id="15983" PostId="11939" Text="That is why he has got the `GL_CLAMP_TO_EDGE` set, it should make the out of bounds samples take the value of the nearest in-texture pixels. What you describe may very well work, but it doesn't explain why the problem is there in the first place." CreationDate="2011-05-04T20:47:11.497" UserId="3505" />
  <row Id="15984" PostId="11937" Score="1" Text="If you're just looking for artists, you could try (game) art specific forums, like http://www.polycount.com/forum/" CreationDate="2011-05-04T21:00:53.573" UserId="6558" />
  <row Id="15985" PostId="11942" Text="This is a legal question about intellectual property law and so not really on-topic." CreationDate="2011-05-04T21:17:43.440" UserId="4191" />
  <row Id="15986" PostId="11942" Score="1" Text="Related: http://gamedev.stackexchange.com/questions/11752/is-it-legally-possible-to-make-a-clone-of-the-game" CreationDate="2011-05-04T21:26:47.513" UserId="6558" />
  <row Id="15987" PostId="11934" Text="1/10000 certainly isn't enough, the magnitude of the problem seems to be in the 1/4 to 1/2 pixel range, so depending on texture size the minimum magnitude for this to work would be around 1/1000. Not adjusting UV coordinates is kinda sloppy, given the nature of the texture the resulting visual jump may not be noticeable, but it would still be wrong. In any case, further advice for hacks should depend on the answer to the question I asked in my previous comment." CreationDate="2011-05-04T21:31:23.983" UserId="3505" />
  <row Id="15988" PostId="11942" Text="@chaos: I'm under the impression that whatever is of genuine interest to a games designer is on-topic here. Programming, maths and storytelling all get discussed here, but if we sorted by subject matter alone they could never be on topic." CreationDate="2011-05-04T22:43:58.430" UserId="2698" />
  <row Id="15989" PostId="11878" Text="Ahh the days when I was learning C++ and console games were awesome fun...  **[creates new console project...]**" CreationDate="2011-05-04T22:59:07.217" UserId="627" />
  <row Id="15990" PostId="1106" Text="Precisely what Gastón said." CreationDate="2011-05-04T23:04:26.570" UserId="627" />
  <row Id="15991" PostId="11937" Text="@Dani Awesome, you should've said so! I edited the answer a bit." CreationDate="2011-05-04T23:10:31.980" UserId="189" />
  <row Id="15992" PostId="239" Score="1" Text="The second half about servers, manpower and the likes should be enough to scare off anyone, let alone the amount of &quot;stuff&quot; in the game." CreationDate="2011-05-04T23:12:02.083" UserId="627" />
  <row Id="15993" PostId="5445" Score="1" Text="For this question though, he's specifically saying he wants to make a WoW clone." CreationDate="2011-05-04T23:15:03.310" UserId="627" />
  <row Id="15994" PostId="11947" Text="I have no idea what's going on in the right half of your diagram, and what it has to do with the left half or your problem." CreationDate="2011-05-05T01:05:50.683" UserId="2698" />
  <row Id="15995" PostId="11944" Text="How would you differentiate these in code?  I have indeed run into this problem." CreationDate="2011-05-05T01:20:10.377" UserId="7119" />
  <row Id="15996" PostId="11946" Text="I could use some additional information there.  How to you code this difference?" CreationDate="2011-05-05T01:24:02.197" UserId="7119" />
  <row Id="15997" PostId="11954" Score="2" Text="A stack that you can remove the bottom object from is not really a stack ;)" CreationDate="2011-05-05T01:46:16.277" UserId="5021" />
  <row Id="15998" PostId="11953" Score="1" Text="Can't do that. That causes all sorts of limitations of how I have to setup the portals and their positions. Like I said, I have everything implemented except the projection matrix. It's a very simple solution that causes no limitations like a second instance" CreationDate="2011-05-05T01:47:36.297" UserId="6937" />
  <row Id="15999" PostId="11947" Score="1" Text="Sorry, the left is an overhead view of the cameras. The right is the view from cam1. The blue area is the rendertexture for portal1 which displays the view for cam2" CreationDate="2011-05-05T01:49:08.773" UserId="6937" />
  <row Id="16000" PostId="11954" Text="An ordered bunch of data entities, a list might be the correct term." CreationDate="2011-05-05T01:49:41.613" UserId="3505" />
  <row Id="16001" PostId="11953" Score="1" Text="Portal uses render textures by the way. So does narbacular drop which is where the idea for portal came from" CreationDate="2011-05-05T01:50:01.753" UserId="6937" />
  <row Id="16002" PostId="11951" Text="Check out the image on the right. That's exactly what the view from cam1 looks like. The dotted blue bit needs to be scaled to fit the entire blue region for portal1. So it's already technically copy and pasted. It needs to scale now to ignore the rest of the view which comes from cam2" CreationDate="2011-05-05T01:54:56.757" UserId="6937" />
  <row Id="16004" PostId="11951" Text="Well, cam2 needs to be exactly the same distance, angle and position from the portal plane as cam1, and you'd render at the same resolution, I thought you had that fixed. In any case, for the sizing to work the cam2 rendering should be applied to a rectangle of width 2*[distance to camera]*[camera zoom], that should give it the correct size." CreationDate="2011-05-05T02:12:13.560" UserId="3505" />
  <row Id="16005" PostId="11944" Score="1" Text="The way I have it is that the weapon types are objects managed through the &quot;brokered definition set&quot; pattern that I talk about in this SO question: http://stackoverflow.com/questions/401720/brokered-definition-set-design-pattern-well-known-under-another-name, and each weapon object knows what type it is via an ID code.  So you might do `obj-&gt;setWeaponType(WEAPON_TYPE_SHOTGUN)` or whatever, and the weapon configures itself appropriately.  Weapon performance metrics might use the type's values as a baseline but allow the final result to be modified by the instance.  That sort of thing." CreationDate="2011-05-05T03:22:46.787" UserId="4191" />
  <row Id="16006" PostId="11944" Text="That's something to think about, thanks for the link.  What would you do in a situation where you wanted to display a list of the available types of weapons?  Does that sort of request go through the broker/type version?" CreationDate="2011-05-05T03:37:38.010" UserId="7119" />
  <row Id="16009" PostId="11957" Text="Can you be more specific?  What kind of animation? From the art perspective or the code perspective?  What about what you're doing is specific to the iPhone?" CreationDate="2011-05-05T05:10:04.017" UserId="51" />
  <row Id="16010" PostId="11944" Score="1" Text="@timfreilly: It depends on context.  If it's something like a shop, I would usually have the place stocked with actual instances of weapons and display their descriptions to the player.  If it's something like a developer overview or help interface, then I would ask the broker daemon for the full set of weapon type definitions and display information on them." CreationDate="2011-05-05T05:17:42.207" UserId="4191" />
  <row Id="16012" PostId="11954" Text="deque ;) O(1) enq/deq ftw." CreationDate="2011-05-05T06:23:52.157" UserId="3656" />
  <row Id="16013" PostId="11789" Text="GDB rocks for low-level debugging. Currently doing the memory allocator assignment in my systems class. To help me debug, I wrote a command file that defines commands which log heap traces and feeds them through a Python script that pretty prints them and writes them to disk. Don't be hatin'." CreationDate="2011-05-05T06:30:58.560" UserId="3656" />
  <row Id="16014" PostId="11934" Text="The artifact is not a background bleeding through the texture. I have set background color to red with no change. I have also tried to extend texture coordinates" CreationDate="2011-05-05T06:43:52.490" UserId="5459" />
  <row Id="16015" PostId="11939" Text="I have tried it with no change :/" CreationDate="2011-05-05T06:44:31.930" UserId="5459" />
  <row Id="16016" PostId="11941" Text="Problem is on GeForce 9400M, not the iPhone. This extension is not available for me." CreationDate="2011-05-05T06:46:11.880" UserId="5459" />
  <row Id="16017" PostId="11961" Score="5" Text="The Bullet Physics SDK contains a CCD physics demo in `Demos/CcdPhysicsDemo/CcdPhysicsDemo.cpp`. Have you tried taking a look at the code to learn what they do? Engine demos exist for a reason. ;)" CreationDate="2011-05-05T07:11:34.690" UserId="2698" />
  <row Id="16019" PostId="11946" Score="1" Text="@timfreilly: I have a sample class hierarchy for an item system like Kylotan describes at http://gamedev.stackexchange.com/questions/4516/what-are-different-ways-to-define-items-in-an-rpg-like-game/4546#4546; this is often called the flyweight pattern." CreationDate="2011-05-05T09:16:03.317" UserId="744" />
  <row Id="16020" PostId="11954" Score="2" Text="An ordered sequence where objects are put onto one end and removed from the other is most properly called a _queue_." CreationDate="2011-05-05T09:33:14.697" UserId="744" />
  <row Id="16021" PostId="11942" Text="@Jonathan: Your standard of &quot;whatever is of genuine interest to a games designer&quot; is exactly what leads to boat programming." CreationDate="2011-05-05T09:46:40.360" UserId="744" />
  <row Id="16022" PostId="11954" Score="1" Text="You can make a ring-buffer (BufferLength &gt;= longest command) and write keys to it (Position = Number MOD BufferLength). No adding/removing will be required at all" CreationDate="2011-05-05T10:33:34.647" UserId="3644" />
  <row Id="16023" PostId="11884" Text="Freezing Fire, it would help if you'd say what in particular isn't clear about the Box2D manual (which has a huge section on joints), or why Emanuele's tutorials aren't good for you." CreationDate="2011-05-05T11:00:01.320" UserId="744" />
  <row Id="16024" PostId="11954" Text="(By the way, -1 because you presuppose key events and the entire purpose of the question is how to do it without them.)" CreationDate="2011-05-05T11:05:42.843" UserId="744" />
  <row Id="16026" PostId="11946" Text="As Joe says, the Flyweight pattern is one way to present this, by implicitly sharing that 'type' data across the instances. I personally prefer to represent them explicitly, eg. with a MonsterInstance class and a MonsterType class. Each instance of MonsterInstance has a reference to its relevant MonsterType instance." CreationDate="2011-05-05T12:23:23.120" UserId="1101" />
  <row Id="16027" PostId="11884" Text="@joe Wreschnig: I Have updated my question   ==&gt; here problem is that       ==&gt;with use of  mouse joint i move the object through the screen  and due to the mouse joint object don't getting rigid to the place where my hand is moving   and also i am not getting any setter method for      ==&gt; b2Vec2 GetReactionForce(float32 inv_dt) const;    as i think this  is the responsible method for the ball having more elasticity prooperty" CreationDate="2011-05-05T12:52:10.417" UserId="5073" />
  <row Id="16029" PostId="11945" Text="If the game is carefully made, the render method can do interpolation to make 30fps updates actually not the same as rendering at 30fps." CreationDate="2011-05-05T13:33:01.897" UserId="189" />
  <row Id="16030" PostId="11948" Text="Have you tried skimming/flipping past the pages with things you already know?" CreationDate="2011-05-05T13:36:06.560" UserId="189" />
  <row Id="16031" PostId="11967" Text="I wish there was an easier way, but I think Rasertek's tutorials he/she is setting up everything for future tutorials......which makes sense at why it's so long." CreationDate="2011-05-05T13:37:38.217" UserId="6465" />
  <row Id="16032" PostId="11934" Text="Then `GL_CLAMP_TO_EDGE` is not working properly, either find some OGL boffin who know why, or redo all the textures to give them some margin. Perhaps you should post a more complete code sample if you want to bet on the former." CreationDate="2011-05-05T14:06:29.283" UserId="3505" />
  <row Id="16033" PostId="11967" Text="Also what is this shortcut function you speak of?" CreationDate="2011-05-05T14:14:06.423" UserId="6465" />
  <row Id="16034" PostId="11970" Text="Then how is this things possible (Pix debugging the fullscreen stutering things) : http://www.s33m3.be/PIX/PIX.png. As you can see, multiple frames are rendered at once in full screen ! (even with Vsync enabled). And the next frame doesn't wait the end of the previous one to start ! I can also show you (from pix) frame generated by the cpu, but never send to the GPU (throw away = stutter)" CreationDate="2011-05-05T14:45:06.470" UserId="7116" />
  <row Id="16035" PostId="11967" Text="The function he linked is a shortcut, of sorts. You still need to fill out the description structures, but D3D11CreateDeviceAndSwapChain is much easier to use than manually creating the device and swap chain." CreationDate="2011-05-05T15:05:23.663" UserId="1430" />
  <row Id="16037" PostId="11972" Text="Gotcha. It's just crazy having like 4 different Classes JUST to initialize something, Im going through the classes and MSDN docs to understand everything. but man... lol" CreationDate="2011-05-05T15:28:15.670" UserId="6465" />
  <row Id="16038" PostId="11956" Text="`setCollisionShape` doesn't appear in the [documentation](http://www.bulletphysics.com/Bullet/BulletFull/classbtRigidBody.html), except in a code snippet as a private method -- is the documentation out of date or just missing that method?" CreationDate="2011-05-05T15:30:16.770" UserId="1430" />
  <row Id="16039" PostId="11972" Text="It's overwhelming at first, but you can just wrap it all up behind a nice interface relatively easily." CreationDate="2011-05-05T15:31:15.180" UserId="1430" />
  <row Id="16040" PostId="11957" Text="Voted to close; this is incredibly broad." CreationDate="2011-05-05T15:37:17.880" UserId="1156" />
  <row Id="16041" PostId="11971" Text="So if I wanted to pass in co-ordinates in relative or absolute 2D screen space, how could I output vertices in the appropriate clip space?" CreationDate="2011-05-05T15:44:39.463" UserId="4662" />
  <row Id="16042" PostId="11971" Text="You want to send screen space coordinates *in* to the shader, and avoid having the pipeline screw with them after the shader? If you set w to 1 before you output your vertex, they should still be properly clipped and the perspective divide will no-op, which sounds like it will give you the desired result. The range of the output coordinates in X and Y should be -1 to 1 in this case, so scale accordingly if you're sending actual pixel coordinates in." CreationDate="2011-05-05T15:55:17.150" UserId="1430" />
  <row Id="16043" PostId="11976" Text="What makes you think Minecraft doesn't use what is essentially a voxel representation of its world? I mean, what is your source for that statement? I always assumed it did.&#xA;" CreationDate="2011-05-05T16:06:05.037" UserId="1430" />
  <row Id="16044" PostId="11972" Text="I feel kinda bad copy and pasting some of the stuff (like swap chain).....but it seems like alot of it is that way. Like there are LOTS of repeatable stuff." CreationDate="2011-05-05T16:07:24.950" UserId="6465" />
  <row Id="16045" PostId="11977" Text="2D top-down, or side view?" CreationDate="2011-05-05T16:07:58.190" UserId="5259" />
  <row Id="16046" PostId="11974" Text="Thanks alot for the answer! I'm beginning to think I'm jumping too high here. It seems this is going to take much more than i hoped it would :)" CreationDate="2011-05-05T16:11:06.070" UserId="6117" />
  <row Id="16047" PostId="11976" Text="http://www.minecraftwiki.net/wiki/Map - Specifically: &quot;Minecraft uses a voxel system which is an incremental 3D grid in which each grid point holds data for a single block.&quot;" CreationDate="2011-05-05T16:15:16.047" UserId="2332" />
  <row Id="16048" PostId="11974" Text="It *can* be done relatively simply -- perhaps you should post another question with more details on the specifics of your scenario (what data you have, what your world representation is like, the kind of rendering you are doing). Then you could get more tailored answers instead of a really broad information dump like I gave you." CreationDate="2011-05-05T16:19:45.297" UserId="1430" />
  <row Id="16049" PostId="11974" Text="@Josh Petrie, as i said the map is being drawn using cocos2d, i'm simply adding it to the active CCScene, that's all my &quot;rendering code&quot;. Some tiles (all (32, 32)) are collidable, some are not, those are all the obstacles in the way of visibility. The visibility cone's position and rotation are taken from an enemy's CCSprite. The test is whether a player (let's say represented by a CGRect) is within the visibility cone. If there are any other details that could possibly help please let me know :)" CreationDate="2011-05-05T16:29:05.603" UserId="6117" />
  <row Id="16050" PostId="11976" Score="2" Text="While Minecraft does use a voxel representation of the world, it is rendered using polygons.  My question was why he didn't write a voxel renderer." CreationDate="2011-05-05T16:32:24.993" UserId="6467" />
  <row Id="16051" PostId="11976" Text="My mistake, I misunderstood" CreationDate="2011-05-05T16:35:47.083" UserId="2332" />
  <row Id="16052" PostId="11977" Text="Side-view with a twist, the camera and the gravity rotate." CreationDate="2011-05-05T16:50:56.763" UserId="7050" />
  <row Id="16054" PostId="11899" Text="Thanks for the reply Minishlink. Yes, I know how to do that in spritebatch. Sorry, I didn't mention that. The link to create a custom spritbatch looks interesting. I will surely try that. Thanks again!" CreationDate="2011-05-05T18:32:22.537" UserId="7103" />
  <row Id="16055" PostId="11977" Text="Colliders in Unity do not require a mesh (except for MeshCollider, but you shouldn't use it anyway)" CreationDate="2011-05-05T18:45:51.577" UserId="2710" />
  <row Id="16056" PostId="11899" Text="The example I gave you is a bit old unfortunately, so you might want to take a look at a more recent piece of code. :)" CreationDate="2011-05-05T19:43:18.513" UserId="7104" />
  <row Id="16057" PostId="11947" Score="1" Text="I'll make a demo of this tomorrow so I can show more precisely what my issue is. It's hard to get it across while it's all in the theory stage :)" CreationDate="2011-05-05T20:20:17.813" UserId="6937" />
  <row Id="16059" PostId="11949" Score="1" Text="For a more specific answer, you should add to your tags what languages/APIs/framework you're using. For example, if you're using XNA, then it's easy to point you to examples that demonstrate exactly what you're looking for." CreationDate="2011-05-05T20:33:03.153" UserId="5021" />
  <row Id="16060" PostId="11964" Text="It's a little misleading to say that you *can't* do this without events. Technically, events are just a way to call a method or list of methods when some condition is met. In that sense, you need events. However, I can apply the word events (improperly) to many programming tasks that fit that description. I've added an answer that solves the problem in the way that I usually do it, which does not use what most programmers tend to think of as &quot;events&quot;." CreationDate="2011-05-05T20:57:42.607" UserId="5021" />
  <row Id="16061" PostId="11977" Text="Is it possible to use something that isn't a full collision check? If you are just checking for (static) walls, for an NPC, couldn't you just specify a line segment or path to traverse back and forth and so completely avoid npc-level collision (think a navmesh, sorta)?" CreationDate="2011-05-05T21:25:59.157" UserId="5259" />
  <row Id="16062" PostId="11976" Score="1" Text="voxel rendering using ray casting on the gpu is totally possible with today (or yesterday) gpus. With clever acc structs (which are simple for voxels) and clever memory usage you should be able to render incredible huge scene in realtime." CreationDate="2011-05-05T21:43:06.997" UserId="3794" />
  <row Id="16063" PostId="11894" Score="1" Text="Ouch. Hmm.  Is there any record on the server that the request is actually coming in? I guess that's still the central question I have:  is it just not even getting to the server, or getting there but not actually connecting?  Or is it just some completely unrelated error masked as a connection error?" CreationDate="2011-05-05T21:54:15.377" UserId="3830" />
  <row Id="16064" PostId="11983" Text="Any tips on how to go the projected shadows route, specifically with drawing it in cocos2d?" CreationDate="2011-05-05T22:00:34.963" UserId="6117" />
  <row Id="16065" PostId="11964" Score="2" Text="Your code does exactly what I said to do without events, but ignores the caveats - which is that you lose intra-frame ordering. When you get events from e.g. the Win32 message loop, you get them in an order with more granularity than a glob per frame. When you compute deltas yourself, you lose that. For a fighting game where players might input several parts of a combo in a single frame, you need to know if those were in or out of order." CreationDate="2011-05-05T22:06:40.460" UserId="744" />
  <row Id="16066" PostId="11983" Text="Sorry, that was the solution provided by Josh Petrie" CreationDate="2011-05-05T22:08:33.737" UserId="7136" />
  <row Id="16067" PostId="11964" Text="Fair enough. Provided that we're polling at 60hz, I doubt we want to distinguish between presses that are less than the 16ms apart that 60Hz polling provides (assuming our players are humans)." CreationDate="2011-05-06T01:01:06.063" UserId="5021" />
  <row Id="16068" PostId="11909" Text="This works fine, thanks!" CreationDate="2011-05-06T01:37:39.933" UserId="3232" />
  <row Id="16069" PostId="11664" Text="Thanks, Looks like I cannot avoid OpenGL. " CreationDate="2011-05-06T03:49:47.803" UserId="6890" />
  <row Id="16070" PostId="11476" Text="The reason I divert to OGRE is because of its excellent documentation and API (at least, I dont have to browse google for decent tutorial) and in my location, finding graphic resources is rare and hard, nobody publish/sell game development/programming books here and basically there is NONE game company that is established in my country. So yea..now I wish I could get decent latest OpenGL tutorial." CreationDate="2011-05-06T03:52:36.207" UserId="6890" />
  <row Id="16071" PostId="11985" Score="3" Text="Honestly, I don't want to help you with this, as your problem is simple, but going down the wrong path for making anything more complex than pong. What you really need is a main loop that calls Update() and takes care of all the updating of the program in that one file, and a Draw() which draws everything to the canvas. " CreationDate="2011-05-06T03:58:00.103" UserId="962" />
  <row Id="16072" PostId="1589" Text="Use variable timesteps for your game and fixed steps for physics" CreationDate="2011-05-06T05:11:45.077" UserId="1621" />
  <row Id="16073" PostId="11964" Text="We do. Skilled fighting game players can enter a hadouken/shoryuken stick command in less than three frames, meaning we must distinguish between them." CreationDate="2011-05-06T06:33:47.343" UserId="744" />
  <row Id="16074" PostId="11964" Text="Then you need to poll more often than 60hz." CreationDate="2011-05-06T07:39:44.423" UserId="5021" />
  <row Id="16075" PostId="9862" Text="well said! I always felt that JS is very well suited for the kind of data-driven &amp; component approaches that are so common in games but couldn't articulate myself :)" CreationDate="2011-05-06T07:42:02.120" UserId="4413" />
  <row Id="16076" PostId="1411" Text="&quot;there's a reason that nearly all web games are still Flash&quot; - flash used to be the only way if you ignore the horrors that are Java applets." CreationDate="2011-05-06T07:49:18.853" UserId="4413" />
  <row Id="16077" PostId="4278" Text="If he wants to use audio, networking, text rendering he will have to use html5 ready browser. Alas canvas would be a good pick. If you stick with DOM&amp;CSS you are limited in so far as these technologies already make up a presentation layer with certain assumptions (text flow, layering, kind of a scene graph for a text document). Whereas with canvas you can manipulate pixels in any way you see fit, which is closer to 'normal', raw game engines on top of SDL or opengl." CreationDate="2011-05-06T07:51:19.617" UserId="4413" />
  <row Id="16078" PostId="11924" Text="Thanks, this worked for me, this will help me alot. I'm sorry I'm still a noob on this site, I need 15 rep to vote you up, so I can't, I'm sure somebody else will. THANKS!!" CreationDate="2011-05-06T08:33:05.373" UserId="6203" />
  <row Id="16079" PostId="11964" Text="Without events it is extremely difficult to poll more than once per frame. That's my whole point." CreationDate="2011-05-06T09:42:27.597" UserId="744" />
  <row Id="16080" PostId="2230" Text="The [subversion](http://www.introversion.co.uk/subversion/) blog has some interesting examples of generated levels. In particular the [movie](http://www.introversion.co.uk/blog/20071212/video2.avi) for part 7. It doesn't have any code or algorithms but it shows how you can build up the detail in the generated level." CreationDate="2011-05-06T12:29:11.360" UserId="1085" />
  <row Id="16081" PostId="11924" Text="there's your 15 rep :)" CreationDate="2011-05-06T13:06:15.797" UserId="6937" />
  <row Id="16082" PostId="11993" Text="This is many questions, all of which have been covered in the other &quot;Getting Started&quot; questions on this site, and many of which show up in the sidebar to this question already." CreationDate="2011-05-06T13:40:06.007" UserId="744" />
  <row Id="16083" PostId="11993" Text="Are you planning on selling these games and making a living off of game development, or is this mostly just a hobby that you're going to be pursuing?" CreationDate="2011-05-06T13:45:57.510" UserId="6558" />
  <row Id="16084" PostId="11946" Text="(I'd do what Kylotan says as well, I'd still call that a flyweight object.)" CreationDate="2011-05-06T14:28:32.553" UserId="744" />
  <row Id="16085" PostId="11997" Text="I am confused. So your apple, pear, and orange are strings(say &quot;apple&quot;, &quot;pear&quot;, &quot;orange&quot;) but what objects do you want to compare with?" CreationDate="2011-05-06T14:53:00.120" UserId="1156" />
  <row Id="16086" PostId="11997" Score="4" Text="I'm 99% sure you're doing something horribly wrong if you're using a string like `Somequestion|apple|pear|orange` inside an XML file..." CreationDate="2011-05-06T14:56:46.857" UserId="2698" />
  <row Id="16088" PostId="11985" Text="Quit using the `(function)()` pattern, it can be handy for library stuff, but you don't need it, and you probably don't have the understanding to gain any advantage by using it." CreationDate="2011-05-06T14:59:15.997" UserId="3505" />
  <row Id="16092" PostId="12000" Score="1" Text="Exact duplicate of http://gamedev.stackexchange.com/questions/7602/rts-engine-or-dota-like-game" CreationDate="2011-05-06T15:27:53.383" UserId="1156" />
  <row Id="16094" PostId="12002" Text="Unity is actually free to use, unless you need any of the 'Pro' features (90% of people don't), or need to export to something like an iOS device." CreationDate="2011-05-06T15:53:56.823" UserId="6558" />
  <row Id="16095" PostId="12002" Text="Er, yes. You're right, I don't know why I said that because I even have it installed on one of my home machines... &gt;_&lt;  Fixed it." CreationDate="2011-05-06T15:54:45.167" UserId="1430" />
  <row Id="16097" PostId="12005" Score="5" Text="When two major physics engines have &quot;failed&quot;, recommending a third probably isn't the right approach - telling the questioner what they are doing wrong is." CreationDate="2011-05-06T16:07:05.923" UserId="744" />
  <row Id="16098" PostId="12009" Text="I realise this is pretty much what Josh already said, but I had an internet outage and couldn't post this 30m ago when I first typed it!" CreationDate="2011-05-06T16:27:17.083" UserId="1101" />
  <row Id="16099" PostId="12003" Score="2" Text="chances are that the engine is not wrong, but you've not set a property or doing it wrong somehow." CreationDate="2011-05-06T16:37:37.613" UserId="1156" />
  <row Id="16100" PostId="11920" Score="2" Text="Is your jump speed also realistic? If you've got 9.8m/s^2 gravity but a human who jumps 100x higher, the gravity will feel very wrong. Also, are you sure that you're applying the acceleration at the appropriate time scale?" CreationDate="2011-05-06T16:42:36.890" UserId="953" />
  <row Id="16101" PostId="12010" Text="I'd love to add the tag &quot;history&quot;, but I don't hve enough reputation...." CreationDate="2011-05-06T17:23:29.713" UserId="7150" />
  <row Id="16102" PostId="12010" Text="It's a good question. I will be watching this for answers as to whether any such thing exists." CreationDate="2011-05-06T17:34:32.570" UserId="5473" />
  <row Id="16103" PostId="11878" Text="I updated my question, hope to give me a lot of awesome resources :)" CreationDate="2011-05-06T17:54:23.807" UserId="4229" />
  <row Id="16104" PostId="11964" Text="It's *not* difficult to poll more than once per frame without events, that's my point. Just run the code I wrote in a separate thread at any loop interval that you'd like (e.g. 120hz) and update the input state. If nothing else can modify the input state, then you don't even need to worry about locking the state (with most modern hardware)." CreationDate="2011-05-06T18:58:51.217" UserId="5021" />
  <row Id="16105" PostId="12002" Text="You say there are two, but list 3. Is one not developed actively? ;-)" CreationDate="2011-05-06T19:01:35.210" UserId="1156" />
  <row Id="16107" PostId="12002" Text="Look I didn't have my coffee this morning! Fixed! :D" CreationDate="2011-05-06T19:14:03.790" UserId="1430" />
  <row Id="16108" PostId="12014" Text="+1 for the good answer. I did want to note that part of the problem is the amount of ideas we have. Probably pieces of about 30 ideas on our board. A big part is, we're trying to figure out how to standardize our prototyping process so we don't go and build a functional prototype for every idea." CreationDate="2011-05-06T19:28:36.000" UserId="6937" />
  <row Id="16109" PostId="11964" Text="What library are you using that will update the keyboard state more than once per vsync and lets you run input handling outside your window handling thread, and does not have a more easily-accessible event-based mode?" CreationDate="2011-05-06T20:04:30.320" UserId="744" />
  <row Id="16110" PostId="12014" Score="1" Text="Is the problem that you have too many or too few?  Or is the problem that the ideas are going off in too many different directions?  Part of the soft art of managing the project is figuring out how big your canvas is, and deciding to ignore things that aren't part of the core promise to the player you want to make." CreationDate="2011-05-06T20:13:44.337" UserId="51" />
  <row Id="16112" PostId="12010" Text="I have a feeling that this is far too broad a topic for there to be any meaningful response. Maybe I'll be proven wrong however. In particular I find it interesting that the question references ID Software's tech as if it is somewhat standard or definitive, but actually the preferred techniques differ across the industry." CreationDate="2011-05-06T20:43:10.790" UserId="1101" />
  <row Id="16113" PostId="11975" Text="I have found the error! It was necessary not to set **GL_CLAMP_TO_EDGE** for every texture of cube map but for the cubemapp itself! `glTexParameteri(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);` and `glTexParameteri(GL_TEXTURE_CUBE_MAP, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);` " CreationDate="2011-05-06T20:45:49.727" UserId="5459" />
  <row Id="16114" PostId="11964" Text="XNA. Vsync only affects how often the framework's Update() and Draw() are called on framework instances that inherit those methods. If you have your own loop, it can loop as often as you like. If you request the input state (on the XBOX 360 at least) outside of the framework's update loop, it does not get put into some sort of queue as you seem to suggest. And no, it does not have an event based mode, the model for getting input in XNA is to poll." CreationDate="2011-05-06T21:00:00.363" UserId="5021" />
  <row Id="16115" PostId="12014" Text="Sorry I didn't clarify well. We do small casual games for iOS and shockwave. These games take about 2 or 3 months so we have a ton of new game ideas that we constantly have floating around. We pick the best one when we get ready to start a new one. We have too many ideas. We're trying to pick which ones are the best and which we should do functional prototypes. So we need a standard way to prototype so we explore the good ideas and find out which ones are bad as quick as we can. Our definition of prototype includes drawing a character with nothing else. Visual prototypes vs functional." CreationDate="2011-05-06T21:31:16.033" UserId="6937" />
  <row Id="16116" PostId="12016" Text="+1 also, that's closer to a standardized prototyping plan. Talking to the guys, we may take aspects of what we do and mix in a scoring system like you suggest. also we may use storyboards as tetrad suggested. I'll see what they think today about these suggestions. great ideas " CreationDate="2011-05-06T21:35:05.843" UserId="6937" />
  <row Id="16117" PostId="11903" Text="Go and educate yourself. http://stackoverflow.com/questions/327955/does-functional-programming-replace-gof-design-patterns" CreationDate="2011-05-06T21:36:00.053" UserId="5473" />
  <row Id="16118" PostId="12011" Text="Glest is being actively developed, check the forums!" CreationDate="2011-05-06T21:50:01.643" UserId="4129" />
  <row Id="16119" PostId="12016" Score="3" Text="Personally I would suggest maybe going with a thumbs up/thumbs down voting pattern.  It's less decision making for the team members (&quot;is this a 2 or a 3&quot;), and most voting is either &quot;I like this idea&quot; or &quot;I don't like this idea&quot; or &quot;I'm ambivalent&quot;.  Approval/disapproval captures that better, and if you need to pare it down, you can do another runoff vote with the top ideas." CreationDate="2011-05-06T22:23:55.317" UserId="51" />
  <row Id="16120" PostId="12016" Text="Good idea tetrad" CreationDate="2011-05-06T23:36:18.407" UserId="6937" />
  <row Id="16121" PostId="11970" Text="@Fabian: Have you tried changing the &quot;maximum pre-rendered frames&quot; setting in the NVIDIA Control Panel?" CreationDate="2011-05-06T23:37:21.920" UserId="101" />
  <row Id="16122" PostId="12016" Text="That's right, there's lots of ways to customize this step by adjusting the range of scores and number of rounds of assessment." CreationDate="2011-05-07T01:23:57.217" UserId="5497" />
  <row Id="16123" PostId="12008" Text="I tried many configurations over few days, but it still happens. Can I get one good example...?" CreationDate="2011-05-07T01:33:37.207" UserId="5966" />
  <row Id="16124" PostId="11908" Text="no actually good tutorials and understandable also thank you very  much" CreationDate="2011-05-07T05:24:22.067" UserId="5073" />
  <row Id="16125" PostId="12018" Text="Are you sure they are a mess, or are you just somehow messing it up? Seeing how a lot of Game Devs use DX10, I am going to suspect it is somehow your error." CreationDate="2011-05-07T07:22:41.880" UserId="962" />
  <row Id="16126" PostId="12020" Text="Chances are you will want a shader." CreationDate="2011-05-07T08:23:46.127" UserId="1156" />
  <row Id="16127" PostId="12008" Score="2" Text="Your density and friction values seem very large, for Box2D." CreationDate="2011-05-07T09:56:08.350" UserId="744" />
  <row Id="16128" PostId="11903" Text="The first, and accepted, answer says &quot;When you work in a FP language, you no longer need the OOP-specific design patterns. But you still need some general design patterns, _like MVC_&quot;. But I'd wager somewhere some FP nut has claimed FP's equivalence with &quot;the ultimate MVC&quot;, so I'm sure you'll find a link to &quot;support&quot; you. I'm just not sure anyone but you will ever care." CreationDate="2011-05-07T10:00:09.843" UserId="744" />
  <row Id="16129" PostId="12021" Text="Too many questions." CreationDate="2011-05-07T10:03:35.353" UserId="1156" />
  <row Id="16130" PostId="12021" Text="well that was very constructive!" CreationDate="2011-05-07T10:18:23.777" UserId="7155" />
  <row Id="16131" PostId="12021" Score="2" Text="You seem to be saying 'What is the best practice for everything to do with isometric maps?' ranging from language choice (which should be what you know/target platform based) to displaying to the perspective." CreationDate="2011-05-07T10:24:49.797" UserId="1156" />
  <row Id="16132" PostId="11903" Text="You must, or you wouldn't keep coming back here. I think it offends you that there could ever be anything but the &quot;One True Way&quot; which you advocate. But more to the point, the accepted answer says, &quot;most OOP-specific design patterns are pretty much irrelevant in functional languages.&quot; And that is the point I am making here. MVC is ultimately irrelevant in FP; the focus becomes a broader separation of concerns. FP is better, stronger, faster for separation of concerns, having its roots in lambda calculus. Classical OO bundles data with function, a design flaw in my view and that of many others." CreationDate="2011-05-07T10:29:38.280" UserId="5473" />
  <row Id="16133" PostId="11903" Text="However many useful languages for game development remain classical OO, which is why I provided a hybrid example. You don't need to like the paradigm to use it, but you certainly can work around some of it's flaws -- which is exactly what design patterns are about, and what my example is similarly about." CreationDate="2011-05-07T10:35:58.337" UserId="5473" />
  <row Id="16134" PostId="11886" Text="cool! didn't know that site existed. is there a way i can move my question over there? or should i just cut/paste it there?" CreationDate="2011-05-03T08:04:27.593" />
  <row Id="16135" PostId="11886" Text="No worries, a mod should move it pretty soon! Or you could delete the question here and re-create over at Game Dev" CreationDate="2011-05-03T08:12:17.030" UserId="4132" />
  <row Id="16136" PostId="12028" Text="Does that mean, I need first to have a working game (prototype), then develop the AI and test it by testers?" CreationDate="2011-05-07T12:09:09.847" UserId="7159" />
  <row Id="16138" PostId="12028" Text="Technically yes..you can't expect to test a game without a game to test." CreationDate="2011-05-07T14:20:05.243" UserId="1156" />
  <row Id="16139" PostId="12028" Text="Thank you, I just thought I can give developers a map and colonies information (units, buildings, behaviors), and they can build a set of general AI strategies.&#xA;&#xA;Thx again! " CreationDate="2011-05-07T14:24:54.883" UserId="7159" />
  <row Id="16140" PostId="12028" Text="There's two parts; the testing and the algorithms. The algorithms need some kind of base to work with. You can't just say 'this is what I want' and expect them to know how your objects work. You need some kind of basic skeleton of logic and updating. For the testing, the only way is human testers - thus, you'll need the graphics too." CreationDate="2011-05-07T14:42:09.483" UserId="1156" />
  <row Id="16141" PostId="12033" Text="Using Bezier curves with [B-Splines](http://en.wikipedia.org/wiki/B-spline) allows for fairly accurate representation of any curve. If you need precision, [Cubic Hermit splines](http://en.wikipedia.org/wiki/Cubic_Hermite_spline) are slightly more accurate. Bear in mind, sometimes inaccuracy provides a welcome touch of organicness." CreationDate="2011-05-07T15:44:46.183" UserId="2698" />
  <row Id="16143" PostId="11924" Text="Thanks, voted you up ;)" CreationDate="2011-05-07T16:06:02.110" UserId="6203" />
  <row Id="16144" PostId="12003" Text="possible duplicate of [Is there an algorithm for a pool game?](http://gamedev.stackexchange.com/questions/7862/is-there-an-algorithm-for-a-pool-game)" CreationDate="2011-05-07T16:31:32.030" UserId="20" />
  <row Id="16145" PostId="4278" Text="The audio and networking libraries I provided don't require HTML5. And actually I see the text flow, layering and scene graph likeness as benefits. Most games are just sprites (images) being positioned and moved around and don't need direct access to pixels. It really needs to be evaluated based on the game that you want to make though, and also if you are personally more comfortable with canvas or DOM, if you want to support older browsers, if you need the extra power canvas provides, etc." CreationDate="2011-05-07T16:47:16.607" UserId="189" />
  <row Id="16146" PostId="12037" Score="1" Text="This doesn't pertain to game development. Please consult Maya-specific communities or official Autodesk Maya support pages." CreationDate="2011-05-07T16:48:55.847" UserId="189" />
  <row Id="16147" PostId="12038" Text="Could you maybe provide some pseudo code as I am new to all this. I am currently only working in the 2nd dimension so that removes some complications." CreationDate="2011-05-07T18:25:07.800" UserId="6540" />
  <row Id="16148" PostId="12038" Text="@anonymouse: sure, try this" CreationDate="2011-05-07T18:46:18.727" UserId="2061" />
  <row Id="16149" PostId="12037" Score="1" Text="If this is off-topic so are http://gamedev.stackexchange.com/questions/12032/curved-movement-between-two-points and http://gamedev.stackexchange.com/questions/11997/comparing-strings-with-objects-in-c-xna and http://gamedev.stackexchange.com/questions/12039/xna-xmlserializer-omitdeclaration-not-working and http://gamedev.stackexchange.com/questions/11985/how-do-i-prevent-loop-that-moves-character-to-run-twice-javascript ... I'm not saying those are on-topic, but there's definitely a pro-programming double standard here." CreationDate="2011-05-07T19:26:41.323" UserId="744" />
  <row Id="16150" PostId="12037" Text="See also http://meta.gamedev.stackexchange.com/questions/345/is-modelling-tool-discussion-on-topic - this is a specific question, with a picture." CreationDate="2011-05-07T19:27:54.833" UserId="744" />
  <row Id="16151" PostId="12037" Text="@Joris: If you haven't, you may wish to commit to http://area51.stackexchange.com/proposals/5022/3d-graphics-techniques-and-software to help it get off the ground." CreationDate="2011-05-07T19:28:22.620" UserId="744" />
  <row Id="16152" PostId="11997" Score="1" Text="@Jonathan: Such formats are extremely common for i18n because it keeps all the strings in-context, translators can provide more or fewer alternatives if appropriate, and because it maps cleanly onto every k/v pair i18n system out there." CreationDate="2011-05-07T19:37:46.233" UserId="744" />
  <row Id="16153" PostId="12033" Text="+1 for Bezier curves. For the use described, it's probably the easiest and the most controllable." CreationDate="2011-05-07T19:39:48.800" UserId="4082" />
  <row Id="16154" PostId="8619" Text="@Ergwun nope I didn't... I guess they just don't exist." CreationDate="2011-05-07T19:46:19.270" UserId="4307" />
  <row Id="16155" PostId="12021" Text="Thank you sir for reiterating my question in a more coherent way :)" CreationDate="2011-05-07T20:47:19.730" UserId="7155" />
  <row Id="16156" PostId="12028" Text="Thanks again, I decided to go with building a prototype with working animation, then building the AI architecture and test it with set of Experiments to test difficulties." CreationDate="2011-05-07T21:31:33.153" UserId="7159" />
  <row Id="16157" PostId="11953" Text="As someone who literally yesterday played through Portal 1 with developer commentary, it doesn't use render textures :) They had performance issues with doing so. It will re-render part of the last framebuffer as a fallback solution for infinite portals, but in general, it's rendering nested geometry. Check the dev commentary for test chamber levels 3 and 14, and play around with the behavior at 14 a bit - it's quite visually clear when it's deferring to the old rendered version." CreationDate="2011-05-07T22:52:27.310" UserId="323" />
  <row Id="16158" PostId="468" Text="@Dave O. - I ran the page through search and I found this:http://www.gamedev.net/page/resources/_/reference/programming/game-programming/300/enginuity-part-i-r1947" CreationDate="2011-05-07T23:49:18.470" UserId="2946" />
  <row Id="16159" PostId="12040" Score="1" Text="Not 100% positive what you mean here. If you're wondering how to move the pivot, you do this by going to the &quot;Hierarchy&quot; tab, and choosing &quot;Affect Pivot Only,&quot; and you can then move the pivot using the transform tool. " CreationDate="2011-05-07T23:52:32.073" UserId="4235" />
  <row Id="16160" PostId="12040" Text="yep, but as I said, I can't get the pivot, but the other point. According to my research this may have something to do with the Reset XForm modifier and mesh matrixes" CreationDate="2011-05-08T01:23:04.803" UserId="2228" />
  <row Id="16161" PostId="12037" Text="@Joe Isn't this question the equivalent of a programming question that has nothing to do with game-specific techniques or platforms, and thus gets moved to Stack Overflow?" CreationDate="2011-05-08T01:35:47.167" UserId="2698" />
  <row Id="16162" PostId="12026" Text="Will this actually give me the view matrix? As in, the matrix required to project world space into camera space?" CreationDate="2011-05-08T02:38:10.733" UserId="6279" />
  <row Id="16163" PostId="12037" Text="@Joe all those ones you linked are actually about game development, and while the questions could technically be answered by people with expertise from other domains, they will be better answered in the context of game development." CreationDate="2011-05-08T03:20:37.310" UserId="962" />
  <row Id="16164" PostId="12042" Text="hmm thanks for all the info :D would u be able to give me an example of your tick() function and would this be able to delay something from happening for a certain amount of ticks?" CreationDate="2011-05-08T04:47:17.090" UserId="7168" />
  <row Id="16165" PostId="12041" Text="Specifically, this tutorial (linked in the dupe question) will get you started: http://www.koonsolo.com/news/dewitters-gameloop/ " CreationDate="2011-05-08T04:58:25.260" UserId="51" />
  <row Id="16166" PostId="12042" Text="If you are talking about scheduling a time for an in-game event, I wouldn't use tick() for that.  Better to set an actual time in seconds for when you want the event to occur by scheduling it to current_game_time + number_of_seconds_in_the_future then checking if we've got there yet.  As for an example, you can check Mr. Luna's website: http://d3dcoder.net/d3d10.htm  Download the source code and look for a file called Common/GameTimer.cpp" CreationDate="2011-05-08T05:06:02.313" UserId="6467" />
  <row Id="16167" PostId="12028" Score="2" Text="You can probably just have different parameters to tweak when the AI is done being programmed. Exmples: Aggressiveness, Turtling, Stupidity, Max APM, all knowing, and anything else that would be good and relevant for your game." CreationDate="2011-05-08T06:10:06.873" UserId="962" />
  <row Id="16168" PostId="12040" Text="Does the default pivot location happen to align with the origin in Max (0, 0, 0)? What happens when you move the entire mesh to some other location in Max, then re-export?" CreationDate="2011-05-08T06:10:23.390" UserId="4235" />
  <row Id="16169" PostId="11565" Text="@user6924 just to clarify the NIO was introduced in Java1.4 you can check it even in [wiki](http://en.wikipedia.org/wiki/New_I/O) " CreationDate="2011-05-08T08:56:03.957" UserId="7160" />
  <row Id="16170" PostId="12040" Text="Well, after a more detailed research (and a night sleeping) I realised why its this point taken, and the reason is that I did that mesh using the lathe modifier, so the origin is where the source spline was, and not the centre of the volume. May Reset XForms fix it?" CreationDate="2011-05-08T10:24:02.443" UserId="2228" />
  <row Id="16171" PostId="12043" Text="&quot;Basically you should start your game with no computer opponents and get your developers to play the game.&quot; &gt;&gt; To make this happen, I need first to integrate multiplayer feature so developers can play the game, otherwise, I don't see how they supposed to play the game without having an opponent, right? I will really appreciate your clarification on this issue." CreationDate="2011-05-08T10:47:40.977" UserId="7159" />
  <row Id="16172" PostId="12027" Text="Nice question - I'd love to see some references to existing AI algorithm descriptions in the answers." CreationDate="2011-05-08T11:13:14.207" UserId="4834" />
  <row Id="16173" PostId="12028" Text="This is great idea, thx!&#xA;I am really happy about my first experience with stackexchange.com, you guys are really awesome and supportive!" CreationDate="2011-05-08T11:37:01.467" UserId="7159" />
  <row Id="16174" PostId="1959" Text="To be honest I wouldn't recommend Irrlicht for mobile development. It does too many memory-allocations and offers little-to-no custom memory-allocation implementations. The startup-time due to the nearly 60 000 allocations done at startup is a big issue." CreationDate="2011-05-08T13:04:53.473" UserId="1580" />
  <row Id="16175" PostId="11805" Text="@ChrisE Your criticism would carry more weight if you had shown the courage to advantage any constructive suggestions of your own. It is obvious to me that you just enjoy sniping from the sidelines." CreationDate="2011-05-08T13:24:35.440" UserId="7066" />
  <row Id="16176" PostId="12040" Text="It's probably worth a try - if that fails I'd try collapsing the modifier stack before exporting to see if you can get it working that way." CreationDate="2011-05-08T16:30:11.470" UserId="4235" />
  <row Id="16177" PostId="12051" Text="Thanks Olhovsky for the detailed information." CreationDate="2011-05-08T19:34:11.440" UserId="7103" />
  <row Id="16178" PostId="12048" Score="2" Text="You did not give enough information to help you with the first problem. You set something to be 160 and its 162, with no code I have no idea what you are doing wrong. Also you have 3 completely different problems. Split them up, because the second question is easy to answer, but I don't know the rest, so I cannot really submit an answer." CreationDate="2011-05-08T19:45:19.283" UserId="962" />
  <row Id="16179" PostId="1959" Text="I use Irrlicht on Android and IOS and startup time is not a big issue... Texture loading is far longer than alloc... " CreationDate="2011-05-08T20:47:28.013" UserId="721" />
  <row Id="16180" PostId="12048" Text="@AttackingHobo Looks like there's two source links in the first line. The Board's just a JPanel. Still this should definitely be split up!" CreationDate="2011-05-08T22:01:05.143" UserId="2698" />
  <row Id="16181" PostId="11887" Text="I'm assuming this will only work for one player vs one monster. Or would it be easy to update this to work for one player vs multiple monsters?" CreationDate="2011-05-09T01:23:14.823" UserId="7094" />
  <row Id="16182" PostId="12056" Score="2" Text="It's not legal http://gamedev.stackexchange.com/questions/712/legal-issues-for-a-fangame-of-a-commercial-franchise" CreationDate="2011-05-09T01:23:49.177" UserId="51" />
  <row Id="16183" PostId="8619" Text="@kaoD Yeah, I've given up looking too." CreationDate="2011-05-09T01:55:37.663" UserId="6846" />
  <row Id="16184" PostId="11887" Text="It is quite easy to add support for groups on both the monster side as the player side (in your situation, the player group will only contain one member: the player character). I have updated the answer for this scenario. " CreationDate="2011-05-09T06:13:30.837" UserId="5508" />
  <row Id="16185" PostId="12046" Text="Since this is in XNA would it be better for resources to have the bottom line be the second line but flipped horizontally or to use SpriteEffects to achieve the same effect?" CreationDate="2011-05-09T07:19:28.407" UserId="4200" />
  <row Id="16186" PostId="714" Text="+1 thought I should mention parody/satire which could make you get away with quite a lot in some contries." CreationDate="2011-05-09T08:31:57.837" UserId="2239" />
  <row Id="16187" PostId="12061" Text="Thank you for the response, is there any chance you could edit my JSFiddle example with an idea of which direction to go in? I'm so confused." CreationDate="2011-05-09T10:53:29.820" UserId="7172" />
  <row Id="16188" PostId="12051" Text="@Vijayendra Please mark as answer if it fits your needs!" CreationDate="2011-05-09T11:11:38.020" UserId="6210" />
  <row Id="16189" PostId="584" Text="+1 Heartily seconded" CreationDate="2011-05-09T11:27:54.840" UserId="3656" />
  <row Id="16190" PostId="12061" Text="There you go: http://jsfiddle.net/n7VAu/2/ Although this doesn't incorporate any best practices.. for example the movement calculation shouldn't be in the draw method.. but it's just an example." CreationDate="2011-05-09T11:32:32.377" UserId="20" />
  <row Id="16191" PostId="12067" Text="This question needs some more details. At least provide the platform you would like to develop for and what topics the book should cover. Programming? Design? Marketing?" CreationDate="2011-05-09T11:35:57.863" UserId="20" />
  <row Id="16192" PostId="12067" Text="for Windows PC with c++, a full indie game from start to finish" CreationDate="2011-05-09T11:49:45.793" UserId="7182" />
  <row Id="16193" PostId="12069" Text="for a beginning a simple physics game and later a full indie game with c++ for Windows PC. I mean the game design is also. In order to fully complete an indie game." CreationDate="2011-05-09T11:51:00.317" UserId="7182" />
  <row Id="16195" PostId="12071" Text="You might want to edit add an question to your post. What are you asking for?" CreationDate="2011-05-09T12:39:05.133" UserId="3316" />
  <row Id="16196" PostId="12069" Text="The largest part of my question is: I am thinking whether I should join the team to create a game?" CreationDate="2011-05-09T13:03:08.243" UserId="7182" />
  <row Id="16197" PostId="12067" Text="In that case, maybe have a look at this question: http://gamedev.stackexchange.com/questions/3637/what-is-a-good-book-to-start-programming-a-2d-c-game" CreationDate="2011-05-09T13:16:03.260" UserId="20" />
  <row Id="16198" PostId="12070" Text="That is an awesome book and I highly recommend it to all game designers, but it's no end-to-end technical text." CreationDate="2011-05-09T13:32:22.820" UserId="6588" />
  <row Id="16199" PostId="12077" Score="4" Text="+1 for just getting your hands dirty." CreationDate="2011-05-09T13:56:27.870" UserId="259" />
  <row Id="16200" PostId="12065" Text="For your second question, I'm pretty sure there's also a py2app you can use to make deployment fairly easy." CreationDate="2011-05-09T14:10:55.110" UserId="6558" />
  <row Id="16201" PostId="12067" Text="&quot;How do I make a game&quot; is too broad a topic, even if you're asking for links to books.  There are also lots of &quot;getting started&quot; and &quot;book recommendation&quot; type questions already here." CreationDate="2011-05-09T14:16:24.973" UserId="51" />
  <row Id="16203" PostId="12070" Text="short comment. thank you." CreationDate="2011-05-09T15:05:53.317" UserId="7182" />
  <row Id="16204" PostId="12071" Text="It seems like a combination of chaos' and tenpn's answer makes the most sense.. both from the developer side and from the players." CreationDate="2011-05-09T15:06:15.047" UserId="7187" />
  <row Id="16205" PostId="12068" Text="Just thought I'd add on to my answer, if you want a **window** with a width of say.. 160 you would just deduct 2 pixels from this value.&#xA;Therefore a width specified at 158 pixels would give you your desired 160 width. If however you simply want the gameplay area to be 160 pixels wide then what you have at present is fine." CreationDate="2011-05-09T15:35:20.283" UserId="5769" />
  <row Id="16206" PostId="12061" Text="Perfect, thanks very much!" CreationDate="2011-05-09T15:44:21.047" UserId="7172" />
  <row Id="16207" PostId="12081" Score="2" Text="I would agree with this answer even if it was implemented in OpenGL. The concept is what you need to worry about here. I would definitely avoid finding code that you can directly copy over. If you don't understand what the code is saying, that's a good hint you shouldn't copy it! :) Having this in DX9 is going to get you much closer though. Once you understand what the algorithms are doing in DX9, translating it into DX10 will be a good exercise as this will force you to know what's going on!" CreationDate="2011-05-09T15:45:18.787" UserId="6937" />
  <row Id="16208" PostId="12081" Text="Ya thats why im trying to understand everything before I move on, but man...DX10 has so much initialization stuff it can get very confusing." CreationDate="2011-05-09T16:07:23.560" UserId="6465" />
  <row Id="16209" PostId="12074" Text="Its easy to say generate a score for each player and pick the highest but what would you base the scores on ? " CreationDate="2011-05-09T16:19:49.600" UserId="6469" />
  <row Id="16210" PostId="12040" Text="Well, after XForms it was fixed, but there was still a problem as I was switching rotation axis in wrong matrix, so nothing happened. Theres an strange fact that spoils the correct axis naming, so that when I wanna rotate around Y axis, I must call Matrix.CreateRotationZ(...);" CreationDate="2011-05-09T16:39:54.113" UserId="2228" />
  <row Id="16211" PostId="12046" Text="Yes you could of course do that, the spritesheet is just the first one that I found on bing." CreationDate="2011-05-09T16:47:38.503" UserId="5224" />
  <row Id="16218" PostId="12074" Text="I'll update the answer with more details" CreationDate="2011-05-09T16:50:54.817" UserId="259" />
  <row Id="16219" PostId="12081" Text="+1 for Chad Vernon's article as it really helped me understand and implement my own heightmap based terrain a while back. A word of warning though, the formatting of the code on the site is sometimes dodgy (for me it was anyway) as some `--x` are seen as `-x` which gives you a very different outcome." CreationDate="2011-05-09T17:09:26.057" UserId="2332" />
  <row Id="16220" PostId="12072" Text="I don't understand what you're trying to say. Currently in that XNA sample, it does exactly what your bullet points say, and drawing of the balls occurs right after step 3. So why is there still interpenetration? Like you said, we expect step 3 to separate them." CreationDate="2011-05-09T17:55:05.810" UserId="5021" />
  <row Id="16221" PostId="10863" Text="Their mass wont change. But gravity will no longer hold them to the ground, so when they are not touching a surface, they will be easier to move." CreationDate="2011-05-09T18:02:57.243" UserId="962" />
  <row Id="16222" PostId="12065" Score="1" Text="If you do decide to do this in Python, you might want to see if you can do any of the &quot;slow&quot; parts using numpy (but it might not be neccessary)." CreationDate="2011-05-09T18:36:33.937" UserId="2560" />
  <row Id="16223" PostId="12088" Text="Game Maker uses its own language, not C++. So I don't think either of those books will help you with C++. They might help you understand different game programming concepts, though." CreationDate="2011-05-09T19:13:36.437" UserId="5423" />
  <row Id="16224" PostId="12086" Text="You're going to want to parse that language into JS." CreationDate="2011-05-09T19:17:51.957" UserId="1156" />
  <row Id="16225" PostId="12089" Text="+1 I dig the resemblance to Alice and Scratch, which are good examples to study for teaching kids to program." CreationDate="2011-05-09T19:18:34.180" UserId="3656" />
  <row Id="16226" PostId="12089" Text="Actually, this is better than what I am thinking of! And I will try it for sure! Brilliant!&#xA;&#xA;Couple of questions:&#xA;- Do you think it is a good idea to let players change colony individual's behaviors while the game is running or make the coding only available before running the simulation (for example, like light-bot game)? If you think it would be nice idea to give the option to change behavior while the game is running, then is  it technically possible to process code changes while game is running? Or it is intensive task?" CreationDate="2011-05-09T19:25:17.207" UserId="7159" />
  <row Id="16227" PostId="12089" Score="1" Text="It really depends on the design of your game. If it's a deterministic scenario, then after a change to a script you could just restart the scenario and see the effects. It would probably be easiest from a development perspective to &quot;compile&quot; before running the scenarios and see how it pans out until the end though." CreationDate="2011-05-09T19:57:31.107" UserId="2332" />
  <row Id="16228" PostId="12089" Score="1" Text="Otherwise, you could get your engine to fire a ScriptChanged event or something similar to let the appropriate characters know that their behaviours have been changed and they'd &quot;recompile&quot; it during game time BUT you would need to make sure if it's already in the middle of a behaviour being executed and that behaviour was changed, you want to either interrupt the behaviour, or let the behaviour complete and then replace it with the updated version." CreationDate="2011-05-09T20:00:24.567" UserId="2332" />
  <row Id="16229" PostId="12089" Text="Thank you so much for your help!" CreationDate="2011-05-09T20:08:29.090" UserId="7159" />
  <row Id="16230" PostId="6957" Text="Could you explain more about the &quot;wonky&quot; movement?" CreationDate="2011-05-09T21:37:08.597" UserId="5259" />
  <row Id="16231" PostId="11805" Text="@Uncompetative: If you could provide information about how you quantify drama, elaborate on the concept of &quot;Kudos&quot;, and otherwise explain better your idea of how to engage the player psychology, I would be more than happy to change my downvote to an upvote. Right now, unfortunately, your answer strikes me as buzzwordy and somewhat fluffy." CreationDate="2011-05-09T21:55:27.613" UserId="5259" />
  <row Id="16232" PostId="12087" Score="2" Text="I have no idea what hardware you are running on, but I think for a mobile game, that might be too much for most phones to handle." CreationDate="2011-05-09T22:09:02.813" UserId="962" />
  <row Id="16233" PostId="12082" Score="3" Text="Isn't that the opposite of &quot;easiest way&quot;? :-)" CreationDate="2011-05-09T22:10:58.853" UserId="3794" />
  <row Id="16234" PostId="12096" Text="Great minds think alike. :)" CreationDate="2011-05-09T22:27:22.987" UserId="5259" />
  <row Id="16235" PostId="12089" Text="You might also want to take a look at the [Mindstorms' UI](http://s.altrn.tv/s/213f6181-3763-e011-9d47-0200d897d049_2_full.jpg). There's an online demo [here](http://mindstorms.lego.com/en-us/Software/Default.aspx)." CreationDate="2011-05-09T23:10:29.633" UserId="2854" />
  <row Id="16236" PostId="12040" Text="Probably a difference in coordinate systems? I know for example many graphics applications have -Z looking &quot;into&quot; the screen and +Y pointing &quot;up&quot;, whereas in 3DS +Z is &quot;up.&quot;" CreationDate="2011-05-09T23:57:20.980" UserId="4235" />
  <row Id="16237" PostId="12092" Text="Yes but now C will correct it's position against both A and then against B. I see what you mean, but the examples I have worked out with 3 spheres seem to work out -- so I'm not sure if that's really the problem. Also, I believe that this iterative method is exactly how most game physics simulations resolve collisions. Again, I could be wrong, I'm not sure. Maybe solving collisions one at a time this way only prevents interpenetration if you use continuous collision detection." CreationDate="2011-05-10T00:02:21.543" UserId="5021" />
  <row Id="16238" PostId="12095" Text="Actually the problem is not the &quot;jitteryness&quot; (the instability). I'm okay with the instability, and can correct that later with a distance correction threshold at the cost of accuracy. The problem that I'm having (well, and that Microsoft is having, as it's their code), is that interpenetration is **not** being solved. That is, not only is it jittery, but there is also a *lot* of interpenetration, despite the code seeming to resolve penetration. Any idea why that is? Did I miss something in your answer? Thanks for the input btw!" CreationDate="2011-05-10T00:05:12.353" UserId="5021" />
  <row Id="16239" PostId="12104" Text="@Roger Perkins- I'd plus 1 your answer but I don't have the rep on this site yet, sorry!" CreationDate="2011-05-10T00:07:17.783" UserId="7191" />
  <row Id="16240" PostId="12095" Text="Oh, I think you're saying that multiple collisions do not resolve correctly due to multiple balls being pushed out of one-another, similar to Loren's answer -- is that right?" CreationDate="2011-05-10T00:07:41.183" UserId="5021" />
  <row Id="16241" PostId="12092" Text="This may actually be exactly the reason. Brandon suggested something similar. +1 for the useful contribution, whether it turns out to be the exact reason or not." CreationDate="2011-05-10T00:08:18.890" UserId="5021" />
  <row Id="16243" PostId="12106" Text="I think you're asking about line-rectangle collision. Is your game character in the shape of a rectangle, and the level is made of lines? Further explain what you're trying to do. What tools are you using? C++ or XNA or ActionScript or...?" CreationDate="2011-05-10T01:56:16.853" UserId="5021" />
  <row Id="16244" PostId="12106" Text="@Olhovsky - edited." CreationDate="2011-05-10T02:09:40.990" UserId="7201" />
  <row Id="16245" PostId="12095" Text="Right, that's the jitteriness, which also causes them to not collide correctly" CreationDate="2011-05-10T02:30:57.913" UserId="6937" />
  <row Id="16246" PostId="12095" Text="Well not really. Instability != interpenetration. Objects can jitter (due to penetration resolution) without interpenetrating. Anyways +1 :)" CreationDate="2011-05-10T02:51:12.310" UserId="5021" />
  <row Id="16247" PostId="12106" Text="Sigh, if you want your question answered, then just play along and answer my questions about your question -- it really does make things easier, even if it doesn't seem relevant to you right now. Anyways, I've started an answer for you below." CreationDate="2011-05-10T03:15:15.097" UserId="5021" />
  <row Id="16248" PostId="12099" Text="a) Caution regarding performance! Consider requestAnimationFrame and signal a 'keep alive' to your worker from it, so that you don't burn CPU if the tab is placed in the background (perhaps for too long)" CreationDate="2011-05-10T03:23:55.797" UserId="111" />
  <row Id="16250" PostId="12106" Text="@Jopo tools are not irrelevant because they provide a common ground for which to communicate the idea, and since many libraries (e.g. XNA) provide tools to do this intersection test for you. Unless of course, your preferred language to communicate in is pure math with latex. Anyways, see if my answer below helps or not. Let me know :)" CreationDate="2011-05-10T03:26:17.513" UserId="5021" />
  <row Id="16251" PostId="12110" Text="Sorry, I understand your confusion in my situation. My character is axis-aligned. My level is made up of straight, axis-aligned lines that are scattered throughout the level. I believe this is the last situation you have presented. " CreationDate="2011-05-10T03:26:50.563" UserId="7201" />
  <row Id="16252" PostId="12099" Text="b) IIRC All messages from the worker will be received on the main thread, they'll queue up. Think about what impact that will have on your main thread, if you got 5 updates but only need the latest. You also can't tell that you have more coming.  " CreationDate="2011-05-10T03:27:16.080" UserId="111" />
  <row Id="16253" PostId="12099" Text="c) All messages are making copies of data. The more data you have to send between threads the more data copying and garbage collection work. So, a win here will only exist if there is a high computation / message data ratio." CreationDate="2011-05-10T03:29:22.803" UserId="111" />
  <row Id="16254" PostId="12110" Text="Okay, let me edit my answer to reflect that." CreationDate="2011-05-10T03:29:32.223" UserId="5021" />
  <row Id="16255" PostId="12110" Text="Jopo: I added some code for you which does the intersection test that you want. I just wrote that off the top of my head, so hopefully I didn't make any mistakes, and you get the idea :)" CreationDate="2011-05-10T03:39:39.087" UserId="5021" />
  <row Id="16256" PostId="12110" Text="Edited answer to correct a mistake in my code." CreationDate="2011-05-10T03:45:00.290" UserId="5021" />
  <row Id="16257" PostId="12106" Text="@Olhovsky - I am using XNA. I originally did not want to say this because I did not want to deter anyone from answering my question simply because of my technology choice. As an off-topic, I was reading your blog and wish you best of luck on your DBP project! It looks quite good so far." CreationDate="2011-05-10T03:50:29.647" UserId="7201" />
  <row Id="16258" PostId="12110" Text="Added the intersect_amount to the code, so that you can just add that value to your player position to correct collisions. (The value will be negative when the player is intersecting a line from below, or positive when the player is on top of the line, intersecting it.)" CreationDate="2011-05-10T03:51:43.347" UserId="5021" />
  <row Id="16259" PostId="12106" Text="XNA does have built in collision stuff for this, but since everything you have is axis aligned, it would just be better to use the code snippet I wrote below. And thanks!" CreationDate="2011-05-10T03:53:05.047" UserId="5021" />
  <row Id="16260" PostId="12106" Text="And in that case, I changed my code snippet to be C#." CreationDate="2011-05-10T03:54:46.340" UserId="5021" />
  <row Id="16261" PostId="12110" Text="Quick question as I was implementing this: `if(bottom_right.X &lt; line.X1){` is suppose to be `if(bottom_left.X &lt; line.X1){`, correct?" CreationDate="2011-05-10T04:04:51.883" UserId="7201" />
  <row Id="16262" PostId="12110" Text="No. Well, it depends how you want your game to behave. If the box is halfway on a line on the left side, do you want the player to be able to balance on the edge of the line? I assume yes, so it should be that if the right side of the box is to the left of the left side of the line, then the player is not intersecting." CreationDate="2011-05-10T04:08:26.417" UserId="5021" />
  <row Id="16263" PostId="12110" Text="In other words, if the right side of the box is to the right of the left side of the line, then the player *is* intersecting the line. If you do it your way, then the player will fall through the line when the left side of the player moves even a little bit to the left of the line, even though most of the box is still on the line." CreationDate="2011-05-10T04:09:42.783" UserId="5021" />
  <row Id="16264" PostId="12110" Text="@Ohlovsky - Okay, I was just confused as that was not one of the parameters passed in." CreationDate="2011-05-10T04:11:01.413" UserId="7201" />
  <row Id="16265" PostId="12110" Text="Jopo: Oh, sorry, I misread your question. It's actually supposed to be `if(top_right.X &lt; line.X1){`. I edited the answer." CreationDate="2011-05-10T04:13:45.327" UserId="5021" />
  <row Id="16266" PostId="12110" Text="Maybe I've forgotten the XNA coordinate system - I changed the method header to this: `        bool test_line_intersection(Vector2 line1, Vector2 line2, Vector2 bottom_left,&#xA;        Vector2 top_right, out float intersect_amount)` as Line does not exist so I used vectors instead. I called these currently magic values: `intersect = test_line_intersection(a1, a2, new Vector2(0, 0), new Vector2(50, 50), out intersect1);` using a 50 by 50 pixel on a line and it detected no collision." CreationDate="2011-05-10T04:14:42.017" UserId="7201" />
  <row Id="16267" PostId="12110" Text="Well, you're now passing in 4 line values, but I only use 3, because you only need 3 for axis aligned lines. Define a line struct, `public struct AxisLine{ public float X1; public float X2; public float Y; }`." CreationDate="2011-05-10T04:16:29.473" UserId="5021" />
  <row Id="16268" PostId="12110" Text="(You only need 3 values for an axis aligned line because both points on the line share the same Y value)." CreationDate="2011-05-10T04:18:51.550" UserId="5021" />
  <row Id="16269" PostId="12110" Text="Okay, I've implemented the AxisLine struct and replaced my current line drawing code to support it. No collision is detected, so I'm sure it's because of the parameters I have passed. I'm passing in `intersect = test_line_intersection(al1, new Vector2(0, 50), new Vector2(50, 50), out intersect1);` where intersect is a bool, al1 is an AxisLine, and the Vector2 values correspond to a 50 by 50 square." CreationDate="2011-05-10T04:25:07.453" UserId="7201" />
  <row Id="16270" PostId="12110" Text="What are the values in al1?" CreationDate="2011-05-10T04:33:53.170" UserId="5021" />
  <row Id="16271" PostId="4559" Score="1" Text="Yeah - i remember reading your link a few years ago. You should finish those articles!" CreationDate="2011-05-10T04:37:17.773" UserId="4360" />
  <row Id="16272" PostId="12110" Text="`al1.X1 = 360;&#xA;            al1.X2 = 560;&#xA;            al1.Y = 370;` and my 50x50 block = `new Vector2(500, 325)`, which means the bottom of the block touches the line by a bit." CreationDate="2011-05-10T04:38:01.717" UserId="7201" />
  <row Id="16273" PostId="12110" Text="A block is defined by two points (the bottom left point of the block and the top right point), not just one point. The two points that you passed into the function above do not intersect with that line." CreationDate="2011-05-10T04:44:13.467" UserId="5021" />
  <row Id="16274" PostId="12110" Text="One way to fix your issue: Create a Hero class that stores your hero's position and the top_right and bottom_left of the hero's box. Then have a method in the hero class `SetPosition(Vector2 pos)` that sets the correct top_right and bottom_left of the box when you change the hero position." CreationDate="2011-05-10T04:47:12.623" UserId="5021" />
  <row Id="16275" PostId="12110" Text="Sorry? I passed in al1, new Vector2(0,50), new Vector2(50, 0) into the function. Does that not constitute two points? I tried adding the blocks position into the mix for world coordinates, but that did not work either. The 500, 325 is the position of my block." CreationDate="2011-05-10T04:48:05.093" UserId="7201" />
  <row Id="16276" PostId="12110" Text="Another option to fix your issue: Only store the hero position, and change the method I gave you in this answer to take hero position and half the hero box width. Then you can compute the intersection using the position + half_width in this method instead." CreationDate="2011-05-10T04:48:23.217" UserId="5021" />
  <row Id="16277" PostId="12110" Text="(Vector2(0,0), Vector2(50,50)) represents a 50x50 box whose top left corner is at position (0,0) on the screen." CreationDate="2011-05-10T04:48:59.097" UserId="5021" />
  <row Id="16278" PostId="12110" Text="(Vector2(500+0, 325+0), Vector2(500+50,325+50)) represents a 50x50 box whose *top left corner* is at position (500,325) on the screen." CreationDate="2011-05-10T04:51:10.017" UserId="5021" />
  <row Id="16279" PostId="12110" Text="Sorry I forgot that in XNA the top left corner of the screen is (0,0). I might have an error somewhere due to that because I was thinking of (0,0) as the bottom left corner (or center). Anyways the issue so far is that you're passing the wrong parameters into the method because your box coordinates are not formed correctly :)" CreationDate="2011-05-10T04:53:12.310" UserId="5021" />
  <row Id="16280" PostId="12110" Text="@Olhovsky - Okay, thanks! I'll use some paper and pencil later to figure it out! Gotta go to bed now, so it'll be tomorrow." CreationDate="2011-05-10T05:02:24.707" UserId="7201" />
  <row Id="16281" PostId="12098" Text="+1 I was going to post that link!" CreationDate="2011-05-10T07:30:41.320" UserId="259" />
  <row Id="16283" PostId="12003" Text="I tested with density 1 and friction 0.0 ~ 0.1, it keeps sticking." CreationDate="2011-05-10T07:54:07.367" UserId="5966" />
  <row Id="16284" PostId="12040" Text="Yep, now i'll have to search how to fix it, but for the moment I'll go on with the game development. thanks for the help! ^^" CreationDate="2011-05-10T11:18:47.713" UserId="2228" />
  <row Id="16285" PostId="3487" Text="Slick isn't as well-known and appreciated as it should be. I've used it before and was pleasantly surprised at every turn how well it was designed. It's because of Slick that I prefer Java for 2D game development." CreationDate="2011-05-10T11:56:31.770" UserId="1263" />
  <row Id="16286" PostId="4447" Text="I accept this answer because technically it seems to be the most powerful, but I'm still in need of such tool but locally hosted." CreationDate="2011-05-10T15:06:48.897" UserId="364" />
  <row Id="16287" PostId="12134" Text="Well it's just kind of a side project thing, terrain rendering is something that interests me alot. And doing it in OpenGL (from what i've seen) is ALOT easier to understand than doing it in DirectX" CreationDate="2011-05-10T15:15:36.127" UserId="6465" />
  <row Id="16288" PostId="12131" Score="11" Text="Nothing is ever a waste to learn." CreationDate="2011-05-10T15:28:33.713" UserId="6569" />
  <row Id="16289" PostId="12131" Score="12" Text="If you want to target ANYTHING that isn't Windows, you need OpenGL. That includes Linux, Mac OS, iPhone, Android, and any other esoteric operating system I don't know. Anyway, this is basically saying 'Is openGL any good compared to DX', and so I voted to close as subjective." CreationDate="2011-05-10T15:30:07.720" UserId="1156" />
  <row Id="16290" PostId="12138" Text="This is more for a side fun project for me. I have a normal programming job (firmware/drivers) So this is kinda the opposite end of the spectrum." CreationDate="2011-05-10T15:44:45.807" UserId="6465" />
  <row Id="16291" PostId="12136" Text="Asteroid gravity idea is interesting, it can make the path more bendy... One problem with Android design is that screens come in all sizes, so what works for a tablet may not work for a mobile especially when having many sprites on the screen and using finger touch. Perhaps the ball should be smaller to give space to asteroid fragments..." CreationDate="2011-05-10T15:52:05.457" UserId="6616" />
  <row Id="16292" PostId="12135" Text="How you export the model usually depends on what you are exporting it to. If you could give a bit more information as to which engine you are targeting then someone might pipe up with plugin or steps to go from a max model to one for that engine." CreationDate="2011-05-10T16:05:09.733" UserId="4443" />
  <row Id="16293" PostId="12135" Text="i have no knowledge of gamr prog , i only know max" CreationDate="2011-05-10T16:18:18.460" UserId="6961" />
  <row Id="16294" PostId="12131" Score="4" Text="@The Communist Duck: Except Windows Phone 7, and Xbox 360." CreationDate="2011-05-10T16:30:39.633" UserId="4662" />
  <row Id="16295" PostId="12130" Score="3" Text="Seeing as you only have 8 ratings and 1 comment, it may be too early to tell. I'm downloading the game now to let you know what I think, but I should mention that this question seems to be more self promoting than informative. You should really remove the last paragraph with the contact info to avoid being flagged. This site isn't for recruiting or soliciting." CreationDate="2011-05-10T16:34:15.107" UserId="3327" />
  <row Id="16296" PostId="12131" Text="@DeadMG Windows Phones are technically Windows. XBox is Microsoft, so I forgot to explicitly state it." CreationDate="2011-05-10T16:52:31.957" UserId="1156" />
  <row Id="16297" PostId="12142" Text="The problem (for me) at least is......there seems to be alot less information/tutorials available for DX and the ones that exist just don't explain it well enough for me. And through all the initialization looking through source code makes it alot more difficult (to me) to understand actually whats going on." CreationDate="2011-05-10T16:59:39.860" UserId="6465" />
  <row Id="16298" PostId="12130" Text="Yes, the moment one mentions the name of the game it is a self-promotion... I personally would be happy to sometimes see that people on this forum produce some concrete work which one can try and taste, so that is not always purely theorethical." CreationDate="2011-05-10T17:08:27.480" UserId="6616" />
  <row Id="16299" PostId="12130" Text="I agree and I don't think it's wrong to mention the name of the game for the purpose of allowing people to try it. I'm glad to see that you removed the last paragraph since that's the only portion I felt was inappropriate for stack exchange. Good luck with the success of your game!" CreationDate="2011-05-10T17:12:55.383" UserId="3327" />
  <row Id="16300" PostId="12142" Text="Altho...now that you mention it, maybe DX9 would be easier to start with." CreationDate="2011-05-10T17:18:13.633" UserId="6465" />
  <row Id="16301" PostId="6506" Score="1" Text="+1 for the pic of you on a research ship" CreationDate="2011-05-10T17:23:32.090" UserId="3327" />
  <row Id="16302" PostId="12135" Text="The answers you get will be the same as the other question you asked with the same subject matter.  You need a game engine.  That engine will dictate how you export your max file and get it in game as an art asset.  Unity3D is probably the easiest to use as you can just drop in a 3ds file and it'll export it for you." CreationDate="2011-05-10T17:43:04.473" UserId="51" />
  <row Id="16303" PostId="11976" Text="Interesting.  Do you think there's any chance notch'll change the rendering technique to lower Minecraft's system requirements?" CreationDate="2011-05-10T18:24:00.647" UserId="6467" />
  <row Id="16304" PostId="12148" Text="Thanks, I've included additional information about the game's platform and purpose." CreationDate="2011-05-10T18:26:53.333" UserId="7191" />
  <row Id="16305" PostId="12142" Score="1" Text="I wouldn't recommend starting with DX9.  It's not as organized as DX 10 and it's only going to go away." CreationDate="2011-05-10T18:28:43.670" UserId="6467" />
  <row Id="16306" PostId="12146" Score="3" Text="I am not sure in Java, but in general you always have to poll input. You might then post events when things change, but this is still based off of a polling system." CreationDate="2011-05-10T18:33:01.693" UserId="4443" />
  <row Id="16307" PostId="12125" Text="+1 for that good link. Actually I bought a membership to Paul's blog yesterday because of that article." CreationDate="2011-05-10T18:52:25.200" UserId="5021" />
  <row Id="16308" PostId="12072" Text="Step 1 &amp; 4 can cause penetration, step 3 removes the penetration if it occurred." CreationDate="2011-05-10T19:23:29.927" UserId="1923" />
  <row Id="16309" PostId="12131" Text="&quot;Windows Phones are technically Windows&quot; try to explain to someone trying to install a Windows app on his phone!" CreationDate="2011-05-10T19:34:43.240" UserId="6210" />
  <row Id="16310" PostId="12072" Text="The point of this question is that penetration is not being completely removed. See other answers for why that is." CreationDate="2011-05-10T20:07:21.433" UserId="5021" />
  <row Id="16311" PostId="12151" Text="Interesting, thanks.  However in your two examples, if you follow one of the diagonals out from the bottom of the image, they both follow a completely straight line (the c64 image follows a curve).  The Mip mapped version seems to suffer less from interference/moire and aliasing effects, but the geometry looks the same in each case to me. I'm not yet convinced this is the full answer." CreationDate="2011-05-10T20:11:47.293" UserId="7224" />
  <row Id="16312" PostId="12144" Text="That was quite an analysis! I guess you as a fellow developer are more generous than a typical consumer would be who demands satisfaction otherwise… ;) Yes, it is only a pong game, but I still feel that some little trick could make it become more magical. I like your idea of playing against oneself - that would be something new. For example if every hit into asteroid would leave a glowing crystal which would then deflect only X movement and slightly fasten the ball, that could be fun! The aim would be to create as many crystals until the ball is lost." CreationDate="2011-05-10T20:15:55.497" UserId="6616" />
  <row Id="16314" PostId="12151" Text="Its not the full answer, but it is a side effect. It has something to do with drawing a texture as it goes to infinity. When the perspective it in that angle and with their very limited processing power my guess it they wrote something that would be good enough.&#xA;As such, you would have to create the effect manualy via shaders." CreationDate="2011-05-10T20:27:41.710" UserId="1883" />
  <row Id="16315" PostId="12151" Text="Well it'll be hard to find an example of mipmapping that show exactly the same effect. The influence of the rendering software/hardware will have an effect on the end result. Here some some other examples of mipmapping: [link](http://softimage.wiki.softimage.com/xsidocs/tex_clip_source_FilteringanImageClip.htm) [link](http://www.edharriss.com/tutorials/tutorial_xsi_elliptical_filtering/elliptical_filtering_files/xsi_ui.jpg)" CreationDate="2011-05-10T20:32:45.737" UserId="7191" />
  <row Id="16316" PostId="12151" Score="1" Text="UpTheCreek: Actually the diagonals do NOT follow a straight line. Consider the image he linked: http://warsztat.gd/files/articles/texatlas/mip-map2.png. Look at the diagonals off in the distance, they exhibit the same behavior as your question's images. The reason that the curve is further in the distance is mainly because the camera's angle with the plane is larger than the angle in the images in your question." CreationDate="2011-05-10T20:42:18.780" UserId="5021" />
  <row Id="16317" PostId="12150" Text="Your question seems to suggest that these two images do not display the same curvature of the grid on the plane. However, they both do produce the exact same effect as far as I can tell. It's just that in the lower image, the camera angle is a little lower." CreationDate="2011-05-10T20:45:25.190" UserId="5021" />
  <row Id="16318" PostId="4591" Text="Good answer. And I like chiguires." CreationDate="2011-05-10T20:52:11.627" UserId="5473" />
  <row Id="16319" PostId="11987" Text="+1. This is the best way to do it. Shaders rule! (Aaand they're all you can hope for in the future, and on mobile devices...)" CreationDate="2011-05-10T20:54:40.337" UserId="3289" />
  <row Id="16320" PostId="12151" Text="I'm sure there's plenty of test apps out there for showing the effects of mip mapping. Try putting one together and seeing if you can re-create the look you want." CreationDate="2011-05-10T20:56:13.147" UserId="7191" />
  <row Id="16321" PostId="12131" Score="1" Text="If the WP7 OS is technically Windows, then the XBOX OS is technically Windows. (They aren't, btw.)" CreationDate="2011-05-10T20:57:42.117" UserId="5021" />
  <row Id="16322" PostId="12134" Text="XNA is an API for DirectX, and is easier to understand (IMO) than working directly with OGL or DX. The concepts you learn in XNA will carry over to either OpenGL or DirectX later." CreationDate="2011-05-10T20:59:19.417" UserId="5021" />
  <row Id="16323" PostId="12099" Text="@Vincent, regarding B) that's why I said that you would either need to have `document` always ready by finding a reasonable fps or go with option 2 where the worker does nothing until `document` asks for it." CreationDate="2011-05-10T20:59:22.303" UserId="2845" />
  <row Id="16324" PostId="12148" Score="1" Text="Note that `GetAsyncKeyState` is a simple way to use polling on Win32." CreationDate="2011-05-10T21:14:36.827" UserId="3289" />
  <row Id="16325" PostId="1132" Text="Project Entropia does Developer-run auctions. But since they use real money the developers really want to take as much money _out_ of the system as possible (i.e. as the players are willing to tolerate). " CreationDate="2011-05-10T21:41:31.270" UserId="3289" />
  <row Id="16326" PostId="12150" Score="1" Text="I believe this effect was called 'mode 7' on the super nintendo: http://en.wikipedia.org/wiki/Mode_7 which might answer your third question." CreationDate="2011-05-10T21:50:05.260" UserId="6558" />
  <row Id="16327" PostId="12153" Text="I'm curious about the nature of getting input from devices. Are keyboard events dispatched by the OS the result of polling at the device driver level? Or does a keyboard event correspond with an interrupt? Or are there interrupts, but the OS buffers them and dispatches them when it sees fit?" CreationDate="2011-05-10T22:13:22.843" UserId="3656" />
  <row Id="16328" PostId="12148" Text="Derp, I asked a question in Nate Bross' comments that you deal with here, so I guess I'll refine it. Do all PCs offer that 1:1 hardware interrupt to OS keyboard event relationship, and what kind of platforms are limited to low-level polling?" CreationDate="2011-05-10T22:16:20.563" UserId="3656" />
  <row Id="16329" PostId="12153" Text="I am not positive on how it works at that level, but it's most basic, some software runs in a loop and checks the keyboard state and compares it to the previous state, if its changed the change gets bubbled up." CreationDate="2011-05-10T22:23:28.973" UserId="1198" />
  <row Id="16330" PostId="12120" Text="@Gibson Tang I've never used the xcode debugger. How do I?" CreationDate="2011-05-10T22:44:28.113" UserId="7195" />
  <row Id="16331" PostId="12150" Text="@Olhovsky - I'm agree that there is a moire effect in both images, it's just that I feel there is an additional effect going on in the first (the curvature is clearly visible in the foreground). Perhaps I'm wrong." CreationDate="2011-05-10T22:51:56.953" UserId="7224" />
  <row Id="16332" PostId="12110" Text="@Olhvosky - I'm still having trouble getting in the correct values. I've added the coordinates of the first line to the bottom left and top right values to put it into correct screen coordinates, but it still isn't working. Do you have any ideas of one parameters I must pass?" CreationDate="2011-05-10T23:31:55.483" UserId="7201" />
  <row Id="16333" PostId="1125" Text="The primary idea is to hugely decrease the inflation issue by make it difficult for bots to flood the market. But this does work even on the non-abuse case: Earning back karma may cost money. Obviously karma should not be sold directly for story reasons. But a quest may require a player to buy something from an NPC, or may require potions or usable magic artefacts." CreationDate="2011-05-11T00:18:18.400" UserId="450" />
  <row Id="16334" PostId="12110" Text="You dont add the coordinates of the line to bottom_left and top_right. bottom_left and top_right are supposed to be two corners of the box around your player. If your hero is at the center of the box, then: `bottom_left = (hero.X - box_width/2, hero.Y - box_height/2)`, `top_right = (hero.X + box_width/2, hero.Y + box_height/2)`." CreationDate="2011-05-11T00:58:12.080" UserId="5021" />
  <row Id="16335" PostId="12110" Text="I added a diagram to the answer to make the situation clearer." CreationDate="2011-05-11T01:03:47.960" UserId="5021" />
  <row Id="16336" PostId="12150" Score="2" Text="The amount of curvature changes as your camera angle changes (less curvature close up as the camera gets further off the ground). Imagine looking straight down at the grid. Then you would see no curvature at the center, and you *would* see curvature at the edges. **However** there is some sort of different sampling technique used in the first image, you're right. The aliasing of edges close up is clearly different (not necessarily better) than in the second image. I don't know what kind of sampling that is. I'm still confident that the difference in curvature though, is just due to cam angle." CreationDate="2011-05-11T01:14:14.573" UserId="5021" />
  <row Id="16337" PostId="12151" Text="Something that this answer misses is that the top image in the question is not using simple point sampling. (Compare the aliasing of the grid edges in the first and second image in the foreground.)" CreationDate="2011-05-11T01:18:44.323" UserId="5021" />
  <row Id="16338" PostId="12157" Text="Something that this answer misses is that the top image in the question is not using simple point sampling. (Compare the aliasing of the grid edges in the first and second image in the foreground.)" CreationDate="2011-05-11T01:18:53.013" UserId="5021" />
  <row Id="16339" PostId="12110" Text="@Olhovsky - Oh, I see what you mean. I'll try and transfer these numbers to include the fact the origin is at the top left. Thanks for the diagram!" CreationDate="2011-05-11T01:26:03.217" UserId="7201" />
  <row Id="16340" PostId="12110" Text="@Olhovsky - If the origin is at the top left, wouldn't the parameters be `bottom_left = new Vector2(heroPos.X, heroPos.Y + 50);&#xA;            top_right = new Vector2(heroPos.X + 50, heroPos.Y);`, assuming a 50 by 50 block?" CreationDate="2011-05-11T02:06:32.120" UserId="7201" />
  <row Id="16341" PostId="12152" Text="Thanks for direction! I implemented PID scheme and it works for me. It took time to find stable coefficients, but now heli 'snaps' in place without much overshoot." CreationDate="2011-05-11T07:40:53.497" UserId="7035" />
  <row Id="16342" PostId="12110" Text="@Jopo: Yes. Except it should be `+25` not `+50` assuming the box width is 50. Everything I've written has been for the origin at (0,0). You might have to flip the `&lt;` and `&gt;` in part of the method I wrote in the answer for the XNA coordinate system." CreationDate="2011-05-11T07:41:31.487" UserId="5021" />
  <row Id="16343" PostId="12152" Score="1" Text="PIDs are like magical unicorns. Hard to tame, but once they are hey you've got a magical unicorn!" CreationDate="2011-05-11T08:06:49.460" UserId="259" />
  <row Id="16344" PostId="12171" Text="You've got a pointer to a native array and a size? Fail- use a self-owning self-sizing pointer." CreationDate="2011-05-11T10:46:40.910" UserId="4662" />
  <row Id="16345" PostId="7092" Text="@lechlukasz: what are you talking about? It didn't work for me? It doesn't work because it just makes no sense, it *just doesn't do that*. Yes, buying skills costs more as you go on, and no, that does not prevent inflation just like it doesn't prevent global warming: they're not related by any means. I wish I could downvote more this nonsense and downvote the poor guy who upvoted too." CreationDate="2011-05-11T11:03:01.573" UserId="2188" />
  <row Id="16346" PostId="6412" Text="&quot;Classes are awesome when just compared to struct's&quot; In C++, the only difference between structs and classes is the default visibility (public for structs, private for classes). In every other aspect, they behave identically." CreationDate="2011-05-11T12:44:03.683" UserId="3318" />
  <row Id="16347" PostId="12171" Text="Whoops... C/C++ mixup and an error. I have updated my answer. Thanks for the heads-up." CreationDate="2011-05-11T12:58:30.590" UserId="5508" />
  <row Id="16348" PostId="12168" Text="Thank you for your comments. I have now written down ideas for  many levels of this game and arkanoid logic would play an important part." CreationDate="2011-05-11T13:25:10.857" UserId="6616" />
  <row Id="16352" PostId="12171" Text="@DeadMG: what exactly do you mean by 'self-owning self-sizing'? Are you referring to something like the vector above, or were you thinking of something else?" CreationDate="2011-05-11T13:36:08.047" UserId="1101" />
  <row Id="16354" PostId="12179" Text="Thats what I figured, thanks" CreationDate="2011-05-11T13:59:12.513" UserId="6465" />
  <row Id="16355" PostId="12176" Text="Your `UserTalent` table has no need of an autokey column. `user` and `talent` can be the only two columns and a composite key: they will never be duplicates and you will never query `id` anyway." CreationDate="2011-05-11T14:07:12.263" UserId="2698" />
  <row Id="16356" PostId="12176" Text="I am not a database designer and I would be interested to hear one's say on this: If every talent had a unique name, could you not also do away with every other numeric ID field in this table design, and use names as keys (with any edits cascaded)? Would there be any significant costs or benefits in doing so?" CreationDate="2011-05-11T14:11:40.370" UserId="2698" />
  <row Id="16357" PostId="12177" Text="http://gamedev.stackexchange.com/questions/536/recommended-2d-game-engine-for-prototyping" CreationDate="2011-05-11T14:20:51.860" UserId="51" />
  <row Id="16358" PostId="12138" Text="Most mainstream game developers I know don't actually do any graphics programming.  All the work is hidden behind graphics abstraction layers.  Maybe a shader written here and there, but the majority of the work isn't graphics related." CreationDate="2011-05-11T14:31:13.257" UserId="51" />
  <row Id="16359" PostId="12110" Text="@Olhovsky - Correct me if I'm wrong, but if 0,0 was at the top left, and thus heroPos is oriented at the top left, would the top-right not be it's X position + the width of the character (50)?" CreationDate="2011-05-11T15:19:35.023" UserId="7201" />
  <row Id="16360" PostId="12114" Text="Good experiment. I've been following these types of projects too. Unfortunately, most are still tied to Java/C. I believe that OP is looking for a way to pull this off natively in the browser (no plugins)." CreationDate="2011-05-11T15:24:31.547" UserId="2845" />
  <row Id="16361" PostId="12184" Text="I'de like to note as you have that this is the exception. Then again, aren't most successful games the exception? Not sure where I've heard it, but I've been told to calculate .33*expected revenue + .66*(expected revenue/3) to give you an idea of what to expect in development. That's based on the probability that you are 33% likely to get your expected revenue and 66% likely to have a flop. :) That's kind of meant as a joke, but still has some merit" CreationDate="2011-05-11T15:33:09.953" UserId="6937" />
  <row Id="16362" PostId="12177" Text="Was halfway through writing a recommendation on HGE, then i re-read the question :) Is there anything you're trying to accomplish with it but stuck on?" CreationDate="2011-05-11T15:51:24.680" UserId="6117" />
  <row Id="16363" PostId="12171" Text="A Boost `ptr_vector` might be even better." CreationDate="2011-05-11T16:05:17.067" UserId="2683" />
  <row Id="16364" PostId="12189" Score="1" Text="A fragment shader fulfills the same function as a pixel shader." CreationDate="2011-05-11T16:43:08.987" UserId="1430" />
  <row Id="16365" PostId="12186" Text="I'm not sure what algorithm they use, so this isn't an answer, but I imagine this is what you're trying to emulate: [youtube video](http://www.youtube.com/watch?v=ajdzxsL_NIE)" CreationDate="2011-05-11T17:01:47.420" UserId="7191" />
  <row Id="16366" PostId="12110" Text="@Jopo: Yes you are right if you want to represent the hero's position as the top left of the box. Like in the diagram, if your hero position is the center of the box, then you need to add half the width to get to the top_right X, and subtract half the width to get to the bottom_left X. If the screen origin (0,0) is at the top left then you need to subtract half the width to get to the top_right Y (because smaller values are closer to the top of the screen). What I wrote about the X values a few posts back is still correct in the XNA coordinate system." CreationDate="2011-05-11T18:25:17.910" UserId="5021" />
  <row Id="16367" PostId="12193" Text="Excellent post, I'm worried about object penetration depth as well.  Small objects have the tendency to fall through thin objects regardless of velocity.  This is because of the allowed penetration depth in Havok is typically a few centimeters.  I would need to turn this down to nearly nothing to support millimeter scales.  Is this acceptable based on floating point precision?  This is where I was going with possibly scaling the entire world." CreationDate="2011-05-11T18:29:40.117" UserId="891" />
  <row Id="16368" PostId="12193" Score="1" Text="I think penetration depth can be adjusted on the fly, but you will start to see more penetration happening with larger objects. Floating point precision should only be a problem when you are very far from the origin as the position coordinates become too large to deal with small differences in position... You could alleviate that by translating everything closer to the origin, you wouldn't necessarily need to scale the world, but either approach might work. Regardless, some threshold of size difference will make the simulation too unstable for Havok, you would need an engine that uses doubles." CreationDate="2011-05-11T18:53:39.260" UserId="7249" />
  <row Id="16369" PostId="12193" Text="Another reason that scaling may be undesirable is you will need to adjust the mass, inverse mass, and inertia tensors of every object or your shrunked world will be super dense." CreationDate="2011-05-11T18:58:21.220" UserId="7249" />
  <row Id="16370" PostId="12131" Score="1" Text="My view on Direct X is your view on OpenGL. I can't see why Direct X would be the future in any way. OpenGL ES/WebGL is the future!" CreationDate="2011-05-11T19:14:16.007" UserId="853" />
  <row Id="16371" PostId="3426" Text="I would propose that it is a people/culture issue, as you suggest. You get a lot of knee-jerk reaction on this topic. Unfortunately there is a huge difference between having shipped a game and having improved your ability to ship the next one smarter/faster. Some strive for too much perfection, some strive for none at all, but the real winners sit somewhere in between." CreationDate="2011-05-11T19:19:31.480" UserId="5473" />
  <row Id="16372" PostId="12177" Text="HGE *is* wicked." CreationDate="2011-05-11T19:21:51.540" UserId="5473" />
  <row Id="16373" PostId="12176" Text="@Jonathan Hobbs: An autoincrement primary id is always nice for delete/update operations. It's never slower but often faster. Also row size is not of concern here. The same is also true for the case of unique talent names. For good performance you'll want to join your tables on unique integers only. See http://en.wikipedia.org/wiki/Database_normalization etc." CreationDate="2011-05-11T20:23:44.577" UserId="6655" />
  <row Id="16374" PostId="12199" Text="&quot;I agree with what the first poster suggested&quot;, Answers are not kept in order by posting date. So you should refer to other answers using the answerers username. If there were ten answers, all with varying amounts of votes, no one would have a clue who posted first." CreationDate="2011-05-11T21:08:01.030" UserId="1163" />
  <row Id="16375" PostId="12176" Text="@LumpN Thanks. A DB designer I knew once stated that autokeys were evil and should be avoided, but I've never been clear on whether that's the case or why. I suppose it isn't." CreationDate="2011-05-11T21:39:50.473" UserId="2698" />
  <row Id="16376" PostId="12189" Text="I don't think we can tell from the question whether the OP is a beginner at all game programming -- he only stated that he's a beginner at writing shader code. Learning to write shaders is a very important tool to have in a game developer's shed, I wouldn't merely gloss over them unless you're only at the *very* beginning stages of learning game development." CreationDate="2011-05-11T21:51:00.247" UserId="5021" />
  <row Id="16377" PostId="12110" Text="@Olhovksy- So if it still does not work, what would that mean?" CreationDate="2011-05-11T22:40:48.940" UserId="7201" />
  <row Id="16378" PostId="12110" Text="Jopo: First, test the function on values that you know should work. Tell me a line, a bottom_left and a top_right that you are giving to the function, where you think the function should be telling you that the hero box and line intersect." CreationDate="2011-05-12T02:14:44.480" UserId="5021" />
  <row Id="16379" PostId="12190" Text="Uh, no. &quot;Path following&quot; is the same as path finding. There are many approaches that permit realtime following of *thousands* of agents when obstacles are changing, on a desktop PC. Certainly it is not too expensive to find a path for a *single* agent, when obstacles move around. Here is one such approach, of many: http://grail.cs.washington.edu/projects/crowd-flows/&#xA;GPU accellerated versions of continuum crowds exist." CreationDate="2011-05-12T03:52:29.137" UserId="5021" />
  <row Id="16380" PostId="12190" Text="I would have to disagree on this one. Any engine will treat path finding and path following as two distinct problems, where the first one is a graph search of the navigable area and the other one intends in searching the optimal movement vector within the local space. I've worked on such crowd simulation producing middleware used by AAA games without needing to rely on the GPU. Most implementations will use a flow field (the pathfinder) and steering to follow the flow and avoid other agents (the pathfollower). As my answer stated, this is a &quot;game programmer&quot; answer, not an academic answer." CreationDate="2011-05-12T04:03:04.580" UserId="7136" />
  <row Id="16381" PostId="12190" Text="I know you don't need the GPU for contiuum crowds, which is why I linked a CPU based version. Your description of path following is still a pathfinding search, it is just a pathfinding search at a different detail level, on a different dataset. So what you really have is a course detail pathfinding pass, and a fine detail pathfinding pass. Ultimately you are trying to *find* the path that an actor should follow. Inventing new terms for this just confuses things." CreationDate="2011-05-12T04:07:39.383" UserId="5021" />
  <row Id="16382" PostId="12144" Text="No problem, glad to help :) I look forward to seeing what you come up with!" CreationDate="2011-05-12T04:12:33.207" UserId="3327" />
  <row Id="16383" PostId="12190" Text="I'm sorry but &quot;path following&quot; is not an invented term.  Read industry produced documents and you'll see it used over and over again: [link](http://www.valvesoftware.com/publications/2009/ai_systems_of_l4d_mike_booth.pdf) or [link](http://www.red3d.com/cwr/steer/PathFollow.html) just to link a few.  Unfortunately I can't link you to NDA protected documentations of engines / middlewares widely used in the industry." CreationDate="2011-05-12T04:26:20.947" UserId="7136" />
  <row Id="16384" PostId="12190" Score="1" Text="Your first link is the link that I gave in my answer btw. Okay fair enough, it might be fair to describe that type of path finding as path following. Ultimately they are both trying to find the path to follow, but I think that in this case I'm wrong, and we should call what we see in your second link as path following. E.g. the act of linking coarse path points together with cubic splies/biezer curves/insert-your-method-here. That said, I still strongly disagree that it is not feasible to implement path finding around dynamic obstacles, as your answer seems to suggest." CreationDate="2011-05-12T04:46:51.710" UserId="5021" />
  <row Id="16385" PostId="12177" Text="wicked?Why? what you mean?" CreationDate="2011-05-12T06:02:45.710" UserId="7264" />
  <row Id="16386" PostId="12185" Text="DevMaster Engines List == Only 3D Engines" CreationDate="2011-05-12T06:03:45.660" UserId="7264" />
  <row Id="16387" PostId="12198" Text="@Byte56 Thanks for your interest. I will take another look at the code today and will get back to you either with some code or some questions." CreationDate="2011-05-12T06:24:04.350" UserId="7160" />
  <row Id="16388" PostId="3653" Text="I just bought this book (waiting for it to arrive!) - in what terms would you say it's dated? " CreationDate="2011-05-12T07:14:23.603" UserId="1199" />
  <row Id="16390" PostId="11023" Text="&quot;performance gains dune to compiling&quot;, sorry but, javascript is not a compiled programming language, as3 is. Although some javascript implementations use JIT compilers. " CreationDate="2011-05-12T13:33:15.080" UserId="4248" />
  <row Id="16391" PostId="12221" Text="Thanks, I used a similar approach, as it is described here: http://answers.unity3d.com/questions/58449/how-to-automatically-create-fixed-joints-in-a-wall-of-cubes" CreationDate="2011-05-12T13:45:46.417" UserId="6395" />
  <row Id="16392" PostId="12218" Score="1" Text="@repecmps, Thanks for the links! As far as your first comment, are you saying that GameDevSE excludes developing board or table top games? We are, after all, just talking about game mechanics, which would be more or less universal regardless of the game medium. I assume that since this was shot down on GamersSE that BoardGamesSE would also be off limits." CreationDate="2011-05-12T15:04:14.787" UserId="2845" />
  <row Id="16393" PostId="12185" Text="Sure, but some of them are still viable for producing 2D games." CreationDate="2011-05-12T15:04:53.203" UserId="1430" />
  <row Id="16394" PostId="12018" Text="The only things I can say : The same application running on ATI card : No problem. Going into DirectX11 API =&gt; No problem at all. And as stated : The application is running perfectly in windowed mode &quot;at fullscreen resolution&quot;, but laggy as hell in true full screen." CreationDate="2011-05-12T15:08:24.393" UserId="7116" />
  <row Id="16395" PostId="12018" Text="I could also said, that running the DX10 sample from slimDX guys (you know a simple triangle displayed) is not running smootly in fullscreen either. In fact to be 100% honest, the problem is not the &quot;Fullscreen&quot;, it is the fullscreen with Vsync that makes problem. But As I have a 120hz screen with 3dvision driver, the Vsync is forced On when going into fullscreen. Other information : Even AAA game have this problem : http://forums.steampowered.com/forums/showthread.php?t=1881758" CreationDate="2011-05-12T15:13:40.853" UserId="7116" />
  <row Id="16396" PostId="1754" Text="there is a fairly unknown and unestablished economic concept called &quot;Freigeld&quot; (see https://secure.wikimedia.org/wikipedia/en/wiki/Demurrage_%28currency%29), which claims to solve inflation by &quot;wearing out money&quot;." CreationDate="2011-05-12T15:26:02.057" UserId="1732" />
  <row Id="16397" PostId="12018" Text="One last things : I did this test, that leads me to this driver problem : If i manage myself the rendering speed (limiting in my code manually the FPS to 60  mainly putting sleep(X) in main loop), the stuttering stops ! (Remember that I was not GPU bound neither - as this stuttering things is also happening with a single triangle demo)." CreationDate="2011-05-12T15:26:45.640" UserId="7116" />
  <row Id="16398" PostId="12208" Text="Thanks for the links. D* Lite does seem right from what i've been reading" CreationDate="2011-05-12T15:27:41.273" UserId="7242" />
  <row Id="16399" PostId="12218" Score="1" Text="@Kevin: no I was just saying that users on B&amp;C games might know more games of this type (thus more chance to find what you're looking for) For example you could look in this post: http://boardgames.stackexchange.com/questions/1039/games-that-have-no-element-of-luck" CreationDate="2011-05-12T15:47:57.900" UserId="3956" />
  <row Id="16400" PostId="12226" Score="2" Text="Voted to close as this is better asked on Stack Overflow." CreationDate="2011-05-12T15:52:15.353" UserId="2332" />
  <row Id="16401" PostId="12218" Text="@repecmps, thanks for the reply and clarification! I'll probably cross-post later given your example." CreationDate="2011-05-12T16:00:01.940" UserId="2845" />
  <row Id="16402" PostId="12207" Text="@Philip, thanks for the post. Multiplayer is not important so long as it meets at least one of the requirements. I'll look into it. Thanks!" CreationDate="2011-05-12T16:02:12.753" UserId="2845" />
  <row Id="16403" PostId="12219" Text="This is exactly the kind of stuff I was looking for. Thanks!" CreationDate="2011-05-12T16:13:09.257" UserId="2845" />
  <row Id="16404" PostId="12218" Text="@repecmps, thanks for the links. I really like that site. I was able to find a HUGE list of board games fitting my criteria because of their mechanics categorization. For example, here's a list of games that use [&quot;Simultaneous Action Selection&quot;](http://www.boardgamegeek.com/boardgamemechanic/2020/simultaneous-action-selection) (as they call it)." CreationDate="2011-05-12T16:53:54.243" UserId="2845" />
  <row Id="16405" PostId="12193" Text="Would using a physics engine that uses doubles internally be worth the effort in this case?  The only popular 3D physics engines that allows this would be Newton and ODE to my knowledge.  Giving up a visual debugger and maya plugins for tuning physics would definitely be painful." CreationDate="2011-05-12T18:34:27.137" UserId="891" />
  <row Id="16406" PostId="12230" Text="Is this still basically checking every frame if money has changed?&#xA;&#xA;Right now, I just update the UI every frame with the money amount, so I guess this just doesn't update the UI unless it has too, so that should help the game efficiency a bit." CreationDate="2011-05-12T18:50:33.080" UserId="6894" />
  <row Id="16407" PostId="12225" Text="That is a great idea! I would have never thought of recording myself and playing it back over multiple connections. Thanks a lot." CreationDate="2011-05-12T19:07:51.443" UserId="3659" />
  <row Id="16408" PostId="12230" Text="Also, I am using Flash CS5, how do I import the custom library for signals? I never done that before." CreationDate="2011-05-12T19:15:24.760" UserId="6894" />
  <row Id="16409" PostId="12231" Text="The diagram was what got to me. A picture is worth a thousand words." CreationDate="2011-05-12T21:16:04.033" UserId="6122" />
  <row Id="16410" PostId="12238" Score="3" Text="I'd play it. You should give it a try... if that's what you're asking." CreationDate="2011-05-12T21:29:04.530" UserId="7191" />
  <row Id="16411" PostId="537" Score="1" Text="Just to note, I wrote the above comment in September 22, 2010. 7 days later I sat down and in one night created [my first Löve game](https://github.com/GloryFish/arrow_chase) having never written any Lua before. Since then I have created [several](https://github.com/GloryFish/RedditGameJam-05) [games](https://github.com/GloryFish/GPC-4-Desert) with Lua and Löve and I am currently porting a Löve game to iOS. It's been a great prototyping language and a great way to learn Lua. " CreationDate="2011-05-12T21:42:23.873" UserId="1230" />
  <row Id="16412" PostId="12230" Text="@Sean: Well, somewhere you have to trigger the money-change event.. right? Maybe that's when the player collides with a coin or something. Code above was just an example. The idea is that the game will dispatch the signal only when necessary and all listeners will then (and only then) update. &#xA;The easiest way to add the library to Flash is to download the `.swc` file and add it to the &quot;Library path&quot; tab which can be found in: `File` &gt; `Action Script Settings`. Use &quot;Browse to SWC File&quot; there." CreationDate="2011-05-12T22:04:47.103" UserId="20" />
  <row Id="16413" PostId="12230" Text="SWC download is here: https://github.com/downloads/robertpenner/as3-signals/as3-signals-v0.8.swc.zip" CreationDate="2011-05-12T22:05:10.940" UserId="20" />
  <row Id="16414" PostId="298" Score="1" Text="+1. Prior non-professional experience is a must. If they haven't written _any game (or similar project) at all_ when applying for a job, you'd better off waiting for someone who has." CreationDate="2011-05-12T22:10:12.530" UserId="3289" />
  <row Id="16416" PostId="10030" Text="Magic Imps design the land and then shoot the image onto the screen using their magic wands." CreationDate="2011-05-12T09:23:26.687" UserId="7269" />
  <row Id="16417" PostId="713" Text="So the flash version of Portal is completely legal since it doesn't use any resources from the original game, just the name?" CreationDate="2011-05-12T23:49:30.560" UserId="4779" />
  <row Id="16418" PostId="12235" Text="+1 When implementing something grand, taking incremental steps from something tiny is always incredibly helpful. In every single step, you have only a tiny amount of code that might not be working, so identifying any problems that appear in each step is easy." CreationDate="2011-05-13T00:21:55.590" UserId="2698" />
  <row Id="16419" PostId="12244" Score="2" Text="The solution is larger than just the intersection point between two lines. Trav has a number of lines describing terrain and any part of the character could be intersecting with any part of any terrain line." CreationDate="2011-05-13T01:05:06.010" UserId="2698" />
  <row Id="16420" PostId="12244" Text="That's just a repetition of the algorithm though.  The formula to test for the presence of an intersection, whether it's in the segments I'm looking at, and then get the specific location is exactly what I'm after" CreationDate="2011-05-13T01:53:41.183" UserId="7282" />
  <row Id="16421" PostId="12193" Text="I doubt you want to use doubles, I was saying that is last resort if for some reason you need huge differences in scale. More often in games you can cheat by only using part of a large object when viewed up close, or ignoring tiny objects when viewed from afar." CreationDate="2011-05-13T01:53:47.470" UserId="7249" />
  <row Id="16423" PostId="12245" Text="@Clinton, you have any papers or pointers for this?" CreationDate="2011-05-13T02:11:06.247" UserId="1087" />
  <row Id="16424" PostId="12229" Text="@Byte56, you have any existing framework that does the above things? I'm tired of writing everything by hand. " CreationDate="2011-05-13T02:14:19.253" UserId="1087" />
  <row Id="16426" PostId="12018" Text="Eh? Magica is not a AAA game. And that problem is an XNA specific glitch that is fixed with editing the updating code, not the rendering code." CreationDate="2011-05-13T02:41:35.600" UserId="962" />
  <row Id="16427" PostId="12244" Score="1" Text="The reason I responded to the answer is because yes, it is a repetition of the algorithm, and you _can_ brute force it. I would expect there's more to it nowadays though. I don't think just pointing out the mathematical formula for line intersection does the problem justice. What about when your level gets decently large, and you're wasting cycles checking for intersection against a totally unrelated wall?" CreationDate="2011-05-13T02:46:51.290" UserId="2698" />
  <row Id="16428" PostId="12245" Text="I guess before elaborating, it might be good to get a better idea of exactly what you're doing. I understand what you want to do, I'm not sure why you want to do it?" CreationDate="2011-05-13T03:01:06.527" UserId="4235" />
  <row Id="16429" PostId="12244" Text="Jonathan: Well, from the question: &quot;I've got a coarse grained algorithm that tells me when some part of my character is likely to have collided with some part of the cave wall.&quot; Although we don't know if that coarse detail algorithm is any good or not..." CreationDate="2011-05-13T03:11:25.423" UserId="5021" />
  <row Id="16430" PostId="12245" Text="@Clinton, because it is our client's requirement, to be able to generate slopes connecting platforms and terrains in a realistic and mechanical manner. " CreationDate="2011-05-13T03:24:27.933" UserId="1087" />
  <row Id="16431" PostId="12245" Text="What I mean is, what are those slopes going to be used for? Do the slopes need to be visualized (i.e. actual visible geometry)?" CreationDate="2011-05-13T03:28:19.380" UserId="4235" />
  <row Id="16432" PostId="12245" Text="@Clinton, yes, the slopes need to be visualized, and not only that, I would need to compute the volume difference between the slopes and the terrains" CreationDate="2011-05-13T03:32:02.933" UserId="1087" />
  <row Id="16433" PostId="12245" Text="Ahhh, okay. I'd say my answer really isn't going to be of much use to you then, I was thinking you were going to use the slopes *for* collision detection, which doesn't seem to be the case. I'd say Byte56's answer is more in line with what you want. Sorry!" CreationDate="2011-05-13T03:36:33.317" UserId="4235" />
  <row Id="16434" PostId="10030" Text="`Math.PI`, lots of it." CreationDate="2011-05-13T04:02:52.050" UserId="627" />
  <row Id="16435" PostId="4727" Score="1" Text="Unity does cost a fair bit though. Especially if you buy both the iPhone and Android versions." CreationDate="2011-05-13T04:18:31.787" UserId="1163" />
  <row Id="16436" PostId="12242" Text="I think the book is really good to get started in cocos2d. It won't explain what everything does and what it's purpose is (apparently that's what the OP want), but since cocos2d is open source, you can always have a look at the code." CreationDate="2011-05-13T05:37:59.937" UserId="20" />
  <row Id="16438" PostId="12252" Score="8" Text="Hahahahahahahhahahahahaahahahaahaha" CreationDate="2011-05-13T07:13:18.320" UserId="962" />
  <row Id="16439" PostId="12252" Text="You can take the first comment as response you would get from everyone you would try to sell your &quot;idea&quot; to. If it's so vetted out and planed put your money where your imagination is. Oh and can you please tell what industries where you can sell idea and in case some one else makes it work you get €€€, otherwise .... oh well let's try again." CreationDate="2011-05-13T09:55:42.587" UserId="1582" />
  <row Id="16440" PostId="12250" Text="what about DX9.0c tho....." CreationDate="2011-05-13T11:01:44.753" UserId="6465" />
  <row Id="16441" PostId="12264" Text="+1 for telling me , manipulating matrices is faster, let me wait for some more days while i (code&amp;re-code) :) before I mark this as the answer" CreationDate="2011-05-13T11:42:44.527" UserId="1251" />
  <row Id="16442" PostId="3223" Score="2" Text="This question is a great resource. A few of these links I've seen before, but most are new to me." CreationDate="2011-05-13T12:04:54.103" UserId="6588" />
  <row Id="16443" PostId="12264" Score="1" Text="You don't have to re-code everything. Like I said, you can freely mix these things. The marginal performance gain of using matrices isn't worth re-coding everything." CreationDate="2011-05-13T12:15:37.300" UserId="20" />
  <row Id="16444" PostId="12250" Text="@Sauron: You said you're doing DirectX 10 anyway. Did you actually read the linked documentation? One of the paragraphs reads *Enabling Rendering When Direct3D 10 Hardware is Not Available*" CreationDate="2011-05-13T12:59:43.873" UserId="7311" />
  <row Id="16445" PostId="12260" Text="Very good point, we never got that far." CreationDate="2011-05-13T13:10:38.840" UserId="141" />
  <row Id="16446" PostId="12267" Text="To be clear (not sure if it was misinterpreted or not) only the combat area would be affected. The rest of the interface, menus and such, would stay normal. You're right, it would suck if a blind spell meant you couldn't read any information." CreationDate="2011-05-13T13:11:39.573" UserId="141" />
  <row Id="16447" PostId="12250" Text="Ohhh I thought it was talking about DX10-&gt;11 with it, nm. my bad. " CreationDate="2011-05-13T13:12:17.027" UserId="6465" />
  <row Id="16448" PostId="12272" Score="1" Text="+1 for a really well-formed question." CreationDate="2011-05-13T13:41:39.047" UserId="7311" />
  <row Id="16450" PostId="11023" Text="The concept of &quot;compiled programming language&quot; is strange. Any programming language can be compiled into another language. That AS3 is typically compiled before deployment into some other language does not offer any significant performance gain because that is not machine code." CreationDate="2011-05-13T13:54:08.740" UserId="450" />
  <row Id="16451" PostId="12273" Text="I would say that all but the most exotic objects your center-to-center calculation should be okay." CreationDate="2011-05-13T14:11:54.717" UserId="6848" />
  <row Id="16452" PostId="12238" Score="1" Text="Seems like it might become more of an action game than RPG. But given the state of most RPGs lately you probably still have a large audience. Might just get repetitive however." CreationDate="2011-05-13T14:14:47.803" UserId="6848" />
  <row Id="16453" PostId="12278" Text="+1, Interesting wiki. Although moving the *I* block one space left or right won't work. The more advanced rotation systems also seem to apply different rules for different blocks.. I'd like to find a method that would work for all block possibilities (if not too costly). " CreationDate="2011-05-13T15:24:16.363" UserId="20" />
  <row Id="16454" PostId="12252" Text="Most people have a hard time finding an artist to do this.  A good iOS developer can get a &lt;paid&gt; contracting gig for a fair chunk of $$, why would they go this route?  You might be better off finding a partner who shares the same vision." CreationDate="2011-05-13T15:24:57.593" UserId="5661" />
  <row Id="16455" PostId="538" Text="who are you calling small time?" CreationDate="2011-05-13T15:39:39.247" UserId="2301" />
  <row Id="16456" PostId="3223" Text="@jhocking thanks!" CreationDate="2011-05-13T15:50:41.370" UserId="1477" />
  <row Id="16457" PostId="12278" Text="@bummzack: Well, then just use the same table for all the blocks like the DTET system. It simply tests more locations besides left and right. You can create your own system and check however many positions you want. However, using the same table for all pieces might allow &quot;unnatural&quot; wall kicks." CreationDate="2011-05-13T16:05:27.410" UserId="229" />
  <row Id="16458" PostId="12281" Text="@Josh Petrie: +1, Hi Josh. Thank you for your good answer. You mention, that even in Orthographic configuration I would take advantage of all gluLookAt() parameters. Would you explain more, please, how I would use EyePosition or UpVector? As I understand Orthographic transformation, there is no eye distance from the camera center. I am not sure if UpVector would be any benefitial in Ortho views, as well. Thanks." CreationDate="2011-05-13T16:25:16.923" UserId="2229" />
  <row Id="16459" PostId="12281" Text="gluLookAt *just* computes a matrix (using [this math](http://pyopengl.sourceforge.net/documentation/manual/gluLookAt.3G.html)). It does nothing else, and it has no knowledge of the rest of the GL state, so the eye position and up vector -- which are used to define basis vectors to compute cross products and ultimately arrive at the final basis vectors for the view space are just as relevant and necessary regardless of whether or not you will eventually use a perspective or orthographic projection." CreationDate="2011-05-13T16:27:42.273" UserId="1430" />
  <row Id="16460" PostId="12281" Text="@Josh Petrie: I see, and thanks for your additional comment. It was valuable, as I did not know things you mentioned in there. Your answer is clear candidate for the *Accepted Answer*, but I would like to wait few moments to see if others bring some valuable information." CreationDate="2011-05-13T16:34:20.630" UserId="2229" />
  <row Id="16462" PostId="12278" Text="Thanks for the edits. These are actually much better than the material on wikia. Much appreciated." CreationDate="2011-05-13T16:50:12.590" UserId="20" />
  <row Id="16463" PostId="12283" Text="Incorrect. A single 2D height map has 3 dimensions of information, each pixel has an X, a Y and a color. So for example, when the color is white the height of that area is 0, when the color is black the height is the map maximum, everywhere in between is a different height." CreationDate="2011-05-13T16:55:38.257" UserId="7191" />
  <row Id="16464" PostId="12283" Score="2" Text="I didn't say that a heightmap doesn't have 3 pieces of information. Read my answer again. I said that all you can represent with a heightmap is a single layer of blocks laid out in 3D. To have 10 layers of blocks, you would need 10 height maps. This is why games like minecraft do not use heightmaps to represent the data." CreationDate="2011-05-13T16:57:33.717" UserId="5021" />
  <row Id="16465" PostId="12283" Text="You can have a look at my own procedural terrain here if you want to be convinced that I'm not just making things up: http://www.olhovsky.com/category/dbp2011/" CreationDate="2011-05-13T16:58:43.843" UserId="5021" />
  <row Id="16466" PostId="12283" Text="Think of it this way each pixel has 0-255 values available. If the value was 120, you would put a cube into spaces 0 through 120. The pixel value defines the height of a _column_ of blocks." CreationDate="2011-05-13T17:02:08.583" UserId="7191" />
  <row Id="16467" PostId="12283" Text="Consider that DirectX has 3D textures as well as &quot;regular&quot; textures (also called 2D textures in this article): http://msdn.microsoft.com/en-us/library/bb205133%28v=vs.85%29.aspx The pictures there might help you visualize the difference." CreationDate="2011-05-13T17:02:45.867" UserId="5021" />
  <row Id="16468" PostId="12283" Text="Byte56: It can only represent *one* block in that column. Then you are just filling in everything underneath. Sure you can do that, but you lose one of the benefits of voxels, as per my answer." CreationDate="2011-05-13T17:04:18.913" UserId="5021" />
  <row Id="16469" PostId="12283" Score="1" Text="A 3D texture contains 4 dimensions of information, a position in 3D space AND a color." CreationDate="2011-05-13T17:05:10.113" UserId="7191" />
  <row Id="16470" PostId="12283" Text="If you want to represent multiple blocks in the column (instead of just always filling in the whole column), then you'll need multiple heightmaps stacked on top of one-another." CreationDate="2011-05-13T17:05:32.250" UserId="5021" />
  <row Id="16471" PostId="12283" Text="Byte56: Yes, a 3D texture contains 4 pieces of information. So what? Technically you can represent many pieces of information in a 3D texture. It has several color channels. It has many bits per color, etc." CreationDate="2011-05-13T17:05:53.253" UserId="5021" />
  <row Id="16472" PostId="12283" Text="You don't lose the benefits of voxels. Sure, you're not utilizing all the benefits (when using a single height map), but you're not losing any. Clearly height maps are not the ONLY answer, further deformations, tunnel carving, etc. are required." CreationDate="2011-05-13T17:08:55.097" UserId="7191" />
  <row Id="16473" PostId="12283" Text="`Sure, you're not utilizing all the benefits, but you're not losing any.` Are we just arguing about semantics now? If you're not using all of the benefits, then isn't that pretty much the same as &quot;losing&quot; one or more benefits?" CreationDate="2011-05-13T17:11:53.653" UserId="5021" />
  <row Id="16474" PostId="12268" Text="why a downvote? What's wrong with this question?" CreationDate="2011-05-13T17:12:09.313" UserId="2231" />
  <row Id="16475" PostId="12283" Text="The point is that creating a tunnel using a single heightmap is very very difficult compared to storing the voxels in a 4D array of some kind -- so it is unusual to talk about 2D heightmap textures and voxels at the same time." CreationDate="2011-05-13T17:13:09.540" UserId="5021" />
  <row Id="16476" PostId="12283" Text="I'm not arguing. It's clear you're not losing the benefits. If you were losing the benefits, then you wouldn't be able to utilize them in the future, obviously you are. I also didn't recommend using a height map for creating a tunnel. I recommend using a height map for creating a land-like surface that can then be conditioned with other methods to produce the desired results." CreationDate="2011-05-13T17:19:40.483" UserId="7191" />
  <row Id="16477" PostId="12283" Text="OH. You're suggesting that we use a 2D texture to start the terrain, and then go from there. Okay, that's pretty valid. It's not what I would do (nor is it what Minecraft does IIRC), but it's a good place to start." CreationDate="2011-05-13T17:23:51.303" UserId="5021" />
  <row Id="16478" PostId="12261" Text="That is some bad design. If you run into something with enough velocity, you will teleport backwards when you crash into something." CreationDate="2011-05-13T17:25:27.573" UserId="962" />
  <row Id="16479" PostId="12230" Text="It is good to see alternative solutions such as Signals -- thanks. I disagree with your reasoning behind using Signals however. If you are using an absurd amount of events in a real time game, there is a much larger problem in your architecture. So much so that you need a whole other library to get by? Bollocks." CreationDate="2011-05-13T17:29:12.843" UserId="5473" />
  <row Id="16480" PostId="12283" Text="Yep, sorry that wasn't clear. I updated my post with a article from Game Developer, it's pretty good and goes into both 2D and 3D &quot;height maps&quot;." CreationDate="2011-05-13T17:29:30.553" UserId="7191" />
  <row Id="16481" PostId="12229" Text="Heh, sorry no. Did you create all the code for generating this scene? If so it's likely that an open source solution will be as much or more work than implementing your own version. I'm sorry to say I don't know of any plug and play option. You appear to have a uncommon plug :) That means real work." CreationDate="2011-05-13T17:39:06.760" UserId="7191" />
  <row Id="16482" PostId="12283" Text="The link is broken :(" CreationDate="2011-05-13T17:58:09.643" UserId="5021" />
  <row Id="16483" PostId="12283" Text="Updated, might not work for long! Save it to disk :)" CreationDate="2011-05-13T18:05:10.907" UserId="7191" />
  <row Id="16484" PostId="12283" Text="Sadly you can't save it to disk. It lets you view a few pages before kicking you out. Or maybe the link is just dead again :P" CreationDate="2011-05-13T18:48:38.937" UserId="5021" />
  <row Id="16485" PostId="12110" Text="Hopefully you didn't give up on this :) Remember that my function assumes that positive Y is up, but in XNA spritebatch screen coordinates, positive Y is down. So the function needs to be modified slightly. If you tell me a function input that doesn't work for you, I can confirm whether you're using the function correctly, and possibly help you fix the function to work in your coordinate system :)" CreationDate="2011-05-13T18:52:17.843" UserId="5021" />
  <row Id="16486" PostId="12283" Text="Bummer, sorry! Could be worth buying the digital download. It was a fairly good article." CreationDate="2011-05-13T19:12:52.057" UserId="7191" />
  <row Id="16487" PostId="12110" Text="@Olhovsky- Don't worry, I think this is pretty important. :D Unfortunately, school has gotten in the way, but it's the weekend. I'll try switching the signs for the Y on the function soon. Thanks for your continued support!" CreationDate="2011-05-13T19:25:02.763" UserId="7201" />
  <row Id="16488" PostId="12230" Text="@Nick Wiggill There's not only the performance aspect, but also the readability of code that's in favor of signals. As for the amount or interval of signal dispatching: Sometimes it really helps your architecture when you can have objects that dispatch events very frequently and still maintain loosely coupled components. I think the signal/slot pattern is a really good design pattern for these cases." CreationDate="2011-05-13T21:07:15.323" UserId="20" />
  <row Id="16489" PostId="12110" Text="@Olhovsky - I do believe I got it to work! I switched the &lt; and &gt; signs in the function and double checked my inputs, and they seem to resolve correctly! I do need to more checking though. I'm just wondering, since my box doesn't move yet, does this function give the direction it came from? Right now it is giving me negative values that I can bump my heroPos.Y by and the collision is resolved, though it often isn't the shortest one." CreationDate="2011-05-13T21:10:04.653" UserId="7201" />
  <row Id="16490" PostId="12289" Text="what do you mean by &quot;data-oriented&quot;?" CreationDate="2011-05-13T21:14:12.387" UserId="2231" />
  <row Id="16491" PostId="12110" Text="@Olhovsky- Okay, I implemented movement and I can confirm that collision detection works (thanks!) but it doesn't tell direction. Despite if I approach the line from the top or bottom, it always gives a negative number. If I approach it from the top, I get -1, etc, which is correct. If I approach it from the bottom, I get -49, which can also resolve collisions but is from the wrong direction." CreationDate="2011-05-13T21:18:17.563" UserId="7201" />
  <row Id="16492" PostId="12286" Text="I don't see that notation on page 4, or a section 4.1. Is that the right paper?" CreationDate="2011-05-13T21:58:07.810" UserId="2698" />
  <row Id="16493" PostId="12289" Text="There is a lot of information on Google, but here is a decent article that popped up which should provide a high-level overview, followed by a discussion as it relates to component systems: http://gamesfromwithin.com/data-oriented-design, http://www.gamedev.net/topic/592962-data-oriented-design-containers-for-components/" CreationDate="2011-05-13T22:10:59.610" UserId="7221" />
  <row Id="16494" PostId="12296" Text="@Byte56: +1 for good link. Hi Byte, thanks for this link. To my surprise, many people in that thread concluded that using triangle strips is much less performance efficient than triangle lists. It is not worth of implementing them because of small memory savings. " CreationDate="2011-05-13T23:20:50.907" UserId="2229" />
  <row Id="16495" PostId="12297" Text="1)i know about level streaming but i want to do it with big level so it will be even bigger                                           2)the future plan is an mmo but i want to use udk to make some sort of demo to test things out                                          and there is an mmo made with UE3 which is APB its not open world like i want but its still made of very big maps" CreationDate="2011-05-14T00:00:32.340" UserId="7345" />
  <row Id="16496" PostId="12110" Text="Paste your function here: http://pastebin.com/ and link it to me." CreationDate="2011-05-14T00:01:39.860" UserId="5021" />
  <row Id="16497" PostId="12300" Score="1" Text="+1. However this book is more about &quot;the top of the current graphics knowledge&quot; than about fundamentals. But this is a must read anyhow and this is also my favorite on this subject." CreationDate="2011-05-14T00:23:14.553" UserId="6813" />
  <row Id="16499" PostId="12110" Text="@Olhovsky- http://pastebin.com/X7nP5NDi" CreationDate="2011-05-14T01:08:50.033" UserId="7201" />
  <row Id="16500" PostId="12229" Text="@Byte56, quite the contrary I think it should be a common plug. I mean, detecting the planes that collide with other planes, how uncommon can it be?" CreationDate="2011-05-14T01:21:05.943" UserId="1087" />
  <row Id="16501" PostId="12229" Text="If only that was the problem. The issue is that those planes don't exist yet. I agree plane collision is a common one, but taking the geometry created above to find where those planes should start and their angle is the hard part, finding out when they end (collision) should be the simple part." CreationDate="2011-05-14T02:02:46.883" UserId="7191" />
  <row Id="16502" PostId="12110" Text="Oh I see. Well, the function currently returns how much intersection there is, but it has no way of knowing whether the line is &quot;above&quot; or &quot;below&quot; you. It just &quot;sees&quot; a line and a box and tells you right at this moment, how much it is intersecting. So what you can do to fix this, is have two fields in your hero class (or however you store your hero), one for the current position (`Vector2 position`) and one for the previous position (`Vector2 lastPosition`). Then after you use this function for the intersection test, check if `position.Y - lastPosition.Y` is negative." CreationDate="2011-05-14T02:03:57.510" UserId="5021" />
  <row Id="16503" PostId="12296" Text="Makes the job that much easier then!" CreationDate="2011-05-14T02:05:41.720" UserId="7191" />
  <row Id="16504" PostId="12110" Text="if `position.Y - lastPosition.Y` is negative, then your hero is moving up, so you should add whatever test_line_intersection returned, if not the you should subtract whatever test_line_intersection returned. This will do the collision response properly. Hopefully I got the signs right :)" CreationDate="2011-05-14T02:05:52.640" UserId="5021" />
  <row Id="16505" PostId="12297" Text="also DC universe is build with UE3 and it looks open world (haven't acutely played it) " CreationDate="2011-05-14T02:17:58.930" UserId="7345" />
  <row Id="16506" PostId="12229" Text="I see! Is there any reference you have on the plane collision part? That would be helpful to me as well. " CreationDate="2011-05-14T02:19:08.057" UserId="1087" />
  <row Id="16507" PostId="12110" Text="@Olhovsky - Got it! Your calculations were basically spot on, but since if I approached from the bottom of the line, the function would return something like -40 instead of 10 (the difference being that -40 is if it would of came from the top and the 10 comes from the collision coming from the bottom), I added the texture's width. I have another question though - if I come from the sides, the box will be pushed up quickly to either the top or bottom of the line. I actually don't want this behaviour - in a platformer, I'd rather have it not to push." CreationDate="2011-05-14T03:21:02.557" UserId="7201" />
  <row Id="16508" PostId="12289" Text="i can't agree with all the thing sied about DOD, since i think it can't be complete itself, i mean only DOD can suggest a very good aprroch for storing data but for calling functions and procedures you need to use either procedural or OOP approch, I mean the problem is how to combine these two method to take the most benefit both for performance and coding easiness, eg. in the structure i suggest there will be performance problem when all the entities doesn't share some components but it can easily be solved using DOD, you only have to make diffrent arrays for diffrent types of entieties." CreationDate="2011-05-14T04:23:51.293" UserId="7328" />
  <row Id="16509" PostId="12229" Text="Well any two planes that aren't parallel with each other will intersect at some point. What you're more interested in is quad collision or triangle collision. Likely for this scenario simple ray-triangle intersection. Should be simple to find via a Google search." CreationDate="2011-05-14T05:06:17.063" UserId="7191" />
  <row Id="16510" PostId="12306" Text="@Bethor: Unfortunatelly, GL ES has only vertex and fragment shaders. I do not use a full OpenGL 3. Therefore, dipping into OpenGL 3+ would probably be more consuming than finding answer to my question. Maybe, if anybody can generate vertex normals for a cube, so we could compare the results. The normals should be the same." CreationDate="2011-05-14T07:28:40.140" UserId="2229" />
  <row Id="16511" PostId="12287" Text="I believe it is called 'dilation', a description of which can be found on Wikipedia[http://en.wikipedia.org/wiki/Dilation_(morphology)].  Nice catch" CreationDate="2011-05-14T08:04:53.257" UserId="1400" />
  <row Id="16512" PostId="4262" Text="Sorrry,but i dont know where are these project properies. Could someone tell me?" CreationDate="2011-05-14T07:36:26.453" UserId="7354" />
  <row Id="16513" PostId="12306" Text="If anyone has idea, that would really help." CreationDate="2011-05-14T09:18:47.223" UserId="2229" />
  <row Id="16514" PostId="12304" Text="possible duplicate of [Any reliable polygon normal calculation code?](http://gamedev.stackexchange.com/questions/8191/any-reliable-polygon-normal-calculation-code)" CreationDate="2011-05-14T09:30:59.140" UserId="20" />
  <row Id="16515" PostId="12304" Text="How do you define your cubes triangles? Are you sure the triangle vertices are all defined in counter-clockwise orientation?" CreationDate="2011-05-14T09:38:06.883" UserId="20" />
  <row Id="16516" PostId="12312" Text="+1 for the first paragraph here. Bunkai needs 24 vertices to make a properly shaded cube here. 3 vertices located at each corner with normals orthogonal to the face of the triangle the vertex will be used for." CreationDate="2011-05-14T11:12:24.097" UserId="1923" />
  <row Id="16517" PostId="12311" Text="there is just a thing about client-server ping time, when you want to calculate client latecy, it's common to send a packet and check when it's respons returns, it's called responce time and that's what accualy matters. and by the way since all your packets run through a single server there's no benefit knowing client-client ping times since it's always sum of the two client's ping times." CreationDate="2011-05-14T12:45:33.623" UserId="7328" />
  <row Id="16518" PostId="12311" Text="Means total game lag will be sum of two biggest pings. I can use it for gameplay flow control. Nice." CreationDate="2011-05-14T15:21:16.830" UserId="3644" />
  <row Id="16519" PostId="12304" Text="@bummzack: Hi, please, do not mark this trhead as a duplication. It is not difficult to find vertex normal generation algorithm. This question is where the probem can be (it might not be in normals), and can help others to check correctness of their algorithms against my cube normals (if proven as correct), as the cube is very standard mesh for initial testings." CreationDate="2011-05-14T15:26:40.947" UserId="2229" />
  <row Id="16520" PostId="12304" Text="@bummzack: to answer your second question: I use 3D authoring application, and I have developed a plug in. The plug in uses API calls to output vertices, triangulated indices and facet normals. I generated the above normals in two ways: Firstly, by summing and averating the facet normals as returned from the software. Secondly, I calculated facet normals from scratch, by generating vertices cross product. Both results were the same. As the application uses OpenGL internaly, I that th order of triangle vertices is counter-clockwise, but I am going to verify that now." CreationDate="2011-05-14T15:33:00.970" UserId="2229" />
  <row Id="16521" PostId="5435" Text="&quot;...geometry of the 3D models is intrinsic to the game logic...&quot; Thus the geometry becomes primarily model data so as to be manipulated by the controller (in this case, it affects physics, so it exists with all other physics parameters) for game logic purposes. If it also happens to be used for the view, as in this case, then that is considered as secondary, as the true simulation is the controller affecting the model; the view is irrelevant. (Some quibble over whether configuration data should exist in the model; up to you, but the principle remains the same). This is a purist approach." CreationDate="2011-05-14T15:39:31.667" UserId="5473" />
  <row Id="16522" PostId="4262" Text="@Romantyk12 - http://i56.tinypic.com/2iqeu6t.png Hopefully this image helps. After clicking properties on the right-click pop up, the first tab labelled 'XNA Game Studio' has settings near the top to choose Reach or HiDef profile." CreationDate="2011-05-14T15:48:50.223" UserId="2946" />
  <row Id="16523" PostId="12312" Text="@Roger Perkins: +1 for valuable answer. Hi Roger, thanks for your reply. I understand the issue of trippling vertices to have properly shaded cube. However, at this moment, I think the higher priority is solving the issues I described above: it looks like I always see the inside of the cube, and despite the **light is positioned in front** of the cube, it looks like the cube is lit from its back. I **process triangulated cube**, therefore, there are some irregularities in normals, assuming the normals are calculated correctly." CreationDate="2011-05-14T15:54:19.080" UserId="2229" />
  <row Id="16524" PostId="12312" Text="@Steve H: thanks for your comment. I did not realize this, but because I process triangulated cubes I might need 48 vertices, is that correct?" CreationDate="2011-05-14T15:57:25.053" UserId="2229" />
  <row Id="16525" PostId="12297" Text="It's not because a team did it that it's a good idea.  The Unreal Engine is not meant to process hundreds of pawns, so without lots changes, it's simply not the best decision to go with this engine.  I can't get into details because of NDAs, but I would advise you reconsider the engine if you plan on doing a MMO." CreationDate="2011-05-14T15:57:59.590" UserId="7136" />
  <row Id="16526" PostId="12305" Text="@martin pilch: +1 for good comment. Hi Martin, thanks for your links. yeah, I found Lighthouse3D, and it looks like quality resource. " CreationDate="2011-05-14T15:59:40.370" UserId="2229" />
  <row Id="16527" PostId="12297" Text="how about cryenigne then? do youknow if its meant for that kind of games? im pretty sure i sa a couple open world games using cryenigne" CreationDate="2011-05-14T16:53:22.310" UserId="7345" />
  <row Id="16528" PostId="12297" Text="There is a major difference between open world and MMO!  Also, what is the background of your team?  What is your budget?  It might affect which engine to use!" CreationDate="2011-05-14T16:55:14.997" UserId="7136" />
  <row Id="16529" PostId="12314" Text="@Josh Petrie: +1 for very valuable comment. Hi, Josh. Thanks for your response. Well, if a person is in the beginning of shader developement, it woud really help to see how some standard shaders are implemented: For example how Phong (which is very standard algorithm) is performed, pixel lighting shaders, etc..  I understand your point, and the sources you provided sound as a good material. I will take a look at them. So far, the best resources I have found are: OpenGL Shading Language book and the Lighthouse 3D site." CreationDate="2011-05-14T17:07:18.940" UserId="2229" />
  <row Id="16530" PostId="12304" Text="@all: the probem si **partially solved**: I can confirm now, that the calculated normals are correct. The problem I had, which took me more than 24 hours to solve, was in one sign. I used: *mProjection = glm::perspective (45.0f, (float)WINDOW_WIDTH / (float)WINDOW_HEIGHT, **-1130.0f**, 1130.0f);* instead of correct *mProjection = glm::perspective (45.0f, (float)WINDOW_WIDTH / (float)WINDOW_HEIGHT, 1130.0f, **-1130.0f**);* However, there is one more problem: the mesh gets rendered only if it is moved into negative -z. The vertices that are in positive z are ignored/culled. Any idea, please?" CreationDate="2011-05-14T17:16:11.007" UserId="2229" />
  <row Id="16531" PostId="12297" Text="dosnt meter right now i only want to do open world simulation for testing just to see how it works and if serves my pourpse so i want an engine that free (like udk or crytek sdk) just to test rthings out" CreationDate="2011-05-14T18:31:17.560" UserId="7345" />
  <row Id="16532" PostId="12312" Text="@Roger: since this answer was more detailed and provided me with additional information, I am marking it as the *Acceptable Answer*. The problem is solved, although it was elsewhere. I described it in the update of my question above." CreationDate="2011-05-14T18:32:33.623" UserId="2229" />
  <row Id="16533" PostId="12314" Text="**I would therefore still welcome repositories of good quality shaders**, illustrating development of interesting effects. The scripts can be used as a basement for combining them and creating new attractive effects." CreationDate="2011-05-14T18:36:04.060" UserId="2229" />
  <row Id="16534" PostId="12311" Score="1" Text="Well, there you go.  To sum up once again: send a packet from Server to Client and track it's round trip time.  Average over some finite interval, and there you have it.  Client to Client time is unimportant but can be approximated by summing Client pings." CreationDate="2011-05-14T20:11:03.800" UserId="1400" />
  <row Id="16535" PostId="12198" Text="@Byte56 thanks for your time and suggestions. (+1) I will try to rethink it again and maybe get a better code sample. But right now I cannot figure out what wrong is going on there - your suggestions have been tried." CreationDate="2011-05-14T22:37:56.003" UserId="7160" />
  <row Id="16536" PostId="12323" Text="@downvoter: this question was downwoted as not a real question. I understand that the question is broad, but **it is absolutely clearly related to game development**. The questions are **clearly formulated too**. Moreover, it is absolute **must** for every game developer to learn answers to the questions above. Why to close opportunity to inform starters on this important subject? Sometimes, I have impression, that people are happy to close questions - not sure if they earn some points for that." CreationDate="2011-05-15T00:15:38.760" UserId="2229" />
  <row Id="16537" PostId="12323" Score="2" Text="@Bunkai: Hover your mouse over the downvote button and read the tooltip. You are leaping to conclusions. If anything, it is more likely this falls under &quot;did not do research&quot;, but we simply have no idea why it was downvoted." CreationDate="2011-05-15T01:26:25.627" UserId="2698" />
  <row Id="16538" PostId="12323" Score="2" Text="Generally speaking, it doesn't matter how much money is involved.  If you don't have the right to distribute something (for example, for music), you don't have the right to distribute it at all.  Regardless of whether or not you're making money. If you have to ask &quot;can I do this with someone else's IP&quot; the answer is &quot;no&quot;." CreationDate="2011-05-15T02:56:50.243" UserId="51" />
  <row Id="16539" PostId="12323" Score="2" Text="By the way, regarding games based on movies: the movie studio would've approached a games company and asked them to make a game based on the movie (it's promotional material _and_ merchandise). I don't know of any occasions where it occurred the other way around - that isn't to say it didn't happen however." CreationDate="2011-05-15T03:53:11.840" UserId="2698" />
  <row Id="16540" PostId="11117" Score="1" Text="Voted to close as too localized. I can see 'where can I find 3D models of people' as a valid question, but supermarket equipment seems very niche-like." CreationDate="2011-05-15T09:13:38.493" UserId="1156" />
  <row Id="16541" PostId="12324" Score="2" Text="Are you looking to pay this person as much as a CSR/GM, or as much as a full-time designer? That's usually the determining factor in job titles..." CreationDate="2011-05-15T09:36:34.723" UserId="744" />
  <row Id="16542" PostId="12330" Score="2" Text="&quot;Dungeon Master&quot; is a trademark (maybe still a registered trademark) of TSR/WotC/Hasbro." CreationDate="2011-05-15T09:41:07.650" UserId="744" />
  <row Id="16543" PostId="12323" Text="@Jonathan Hobbs: +1 for valuable comments. Hi, and thanks for your comment. What I did was clicking on *close(1)*, and I saw the one point was for the category **Not a Real Question**. Therefore, my comment above was on this subject." CreationDate="2011-05-15T09:45:24.063" UserId="2229" />
  <row Id="16544" PostId="12177" Text="Meaning it's a great piece of work, HGE." CreationDate="2011-05-15T09:47:39.753" UserId="5473" />
  <row Id="16545" PostId="12323" Text="@Tetrad: +1 - Hello, what you wrote is clear and I can understand it. Thanks." CreationDate="2011-05-15T09:49:10.097" UserId="2229" />
  <row Id="16546" PostId="12327" Text="@Jonathan Hobs: +1 - Thank you for this answer. If I understand it correctly, it takes 80 years after standard Copyright expires, unless the product Copyright is prolonged. For this, a lawyer university degree would be helpful. :-)" CreationDate="2011-05-15T09:58:30.727" UserId="2229" />
  <row Id="16547" PostId="12329" Text="@gazialankus: +1 - Thanks, your answer basically covers everything. It answers every question I asked, plus, you provide further material to study. Now, I have enough material to start with. Therefore, I see no reason, not to mark this as the *Accepted Answer*. " CreationDate="2011-05-15T10:08:39.877" UserId="2229" />
  <row Id="16548" PostId="12329" Text="@Bunkai.Satori thank you, glad to be of help:) I would love to see what you create in the end. " CreationDate="2011-05-15T10:12:19.530" UserId="7369" />
  <row Id="16549" PostId="12327" Text="I will keek this thread open for a while, to see if people contribute with more answers. If not, i will mark this, as the *Accepted Answer*" CreationDate="2011-05-15T10:12:30.840" UserId="2229" />
  <row Id="16550" PostId="12323" Text="@Bunkai: Right; there was some clarity lost when you said downvoted - what you were talking about was someone [voting to close](http://gamedev.stackexchange.com/privileges/close-questions), which is quite different. ;)" CreationDate="2011-05-15T12:57:46.610" UserId="2698" />
  <row Id="16551" PostId="11993" Text="I've already been building a web-based business that covers my living expenses. I'd like to make money from my games though." CreationDate="2011-05-15T13:06:01.190" UserId="5113" />
  <row Id="16552" PostId="12333" Score="1" Text="I don't know what you're asking. You don't build games with Qt as such. If you need help on the OpenGL part, then look for OpenGL games. And accept answers to previous questions." CreationDate="2011-05-15T13:18:04.200" UserId="1156" />
  <row Id="16553" PostId="12333" Text="@The Communist Duck: and why not? I wouldn't choose Qt either to make a game but this is possible. There is 3D rendering api (http://doc.qt.nokia.com/latest/painting-3d.html) and it was even asked Qt users if they wanted more tools to make games with Qt (http://labs.qt.nokia.com/2009/09/16/improved-support-for-writing-games-using-qt/), finally you can find a &quot;how to write game with QML&quot; here: http://labs.qt.nokia.com/2010/08/12/a-guide-to-writing-games-with-qml/ and a game development section on the nokia forum: http://developer.qt.nokia.com/forums/viewforum/17/" CreationDate="2011-05-15T13:41:03.337" UserId="6813" />
  <row Id="16554" PostId="12333" Text="Hm,I didn't see that. Either way, the OP is saying the 'openGL stuff' so I assume they are using the the GUI bit which is no problem for them..therefore, their problem is with OpenGL not Qt." CreationDate="2011-05-15T13:43:41.013" UserId="1156" />
  <row Id="16555" PostId="12323" Text="@Jonathan Hobbs: Ah I see, this was my confusion. It would be a bit problematic to change the comment, as it is not enabled for editing anymore. I will leave it, as it is, but yes, it was addressed to the person voting to close it. " CreationDate="2011-05-15T13:44:13.713" UserId="2229" />
  <row Id="16556" PostId="12298" Text="This is a great resourceful answer and I appreciate it, but I can only mark a single answer, and the other one is more directly relative to JS.&#xA;They are both correct though.&#xA;Again thanks." CreationDate="2011-05-15T14:37:28.197" UserId="7350" />
  <row Id="16557" PostId="12285" Text="why did i get the down vote? what was wrong with my solution?" CreationDate="2011-05-15T15:26:29.007" UserId="7328" />
  <row Id="16558" PostId="12110" Text="@Olhovsky- I've done some more testing, and it only seems like this happens when I move onto the line sideways, then press up or down. If I don't press either of those keys, it won't pop me back up." CreationDate="2011-05-15T15:29:41.197" UserId="7201" />
  <row Id="16559" PostId="12285" Text="Your solution is not really a component based solution as components are not separated from your game classes. Your instances all relies on the IS A relation (inheritance) instead of a HAS A relation (composition). Doing it the composition way (entities addresses several components) gives you a lot of advantages over an inheritance model (which is usually why you use components). Your solution gives none of the benefits of a component based solution and introduces some quirks (multiple inheritance etc). No data locality, no separate component update. No runtime modification of components." CreationDate="2011-05-15T15:37:30.427" UserId="2792" />
  <row Id="16560" PostId="12326" Text="GPU gems are great, but nothing to start with ..." CreationDate="2011-05-15T17:21:21.730" UserId="3794" />
  <row Id="16561" PostId="12323" Score="1" Text="It's not a real question because there's like four different questions in it. That also makes it a bad question, hence downvoting. I also still think it's off-topic. I'm also absolutely sick of &quot;how much can I clone of X?&quot; questions." CreationDate="2011-05-15T18:34:24.707" UserId="744" />
  <row Id="16562" PostId="12324" Text="More in the CSR/GM range." CreationDate="2011-05-15T18:45:11.367" UserId="4191" />
  <row Id="16563" PostId="11699" Text="It's been a while but I finally got it to work thanks to your suggestions! I needed only 2 geometry methods (one to know if a point is within a polygon and one to get the intersection of two segments). I still need to handle roofs but it looks easy to do know. You can watch the result on this [video](http://www.dailymotion.com/video/xipz6w_shadow-casting-wall-demo_creation) and look at the source [code here](https://github.com/xpac27/LittleWorld/blob/98d58982fcf14926f423539db8922e25f596f6f4/Object.cpp#L118) (i just worked 1 day on it so it may be possible to optimize it more)." CreationDate="2011-05-15T19:31:20.277" UserId="6932" />
  <row Id="16564" PostId="12340" Text="Right, my expectation would be that they'd be manipulating existing content to create events, not making new base content.  I don't think I'd ever specify this type of job at that level; if they're capable of making new base content that's up to my standards, I want them focused on that, not direct customer interaction." CreationDate="2011-05-15T20:06:08.177" UserId="4191" />
  <row Id="16565" PostId="12330" Text="&quot;More derivative of D&amp;D&quot; is not really a direction I want to go, anyway." CreationDate="2011-05-15T20:35:30.583" UserId="4191" />
  <row Id="16566" PostId="12314" Text="@Bunkai Satori I think Josh meant that as a reason that these sorts of repositories do not exist mostly." CreationDate="2011-05-15T20:53:32.483" UserId="1156" />
  <row Id="16567" PostId="12342" Score="5" Text="This is more a question for gaming.stackexchange" CreationDate="2011-05-15T21:31:33.977" UserId="4395" />
  <row Id="16570" PostId="12286" Text="I guess this would be better suited for math.stackexchange.com" CreationDate="2011-05-15T21:43:37.440" UserId="20" />
  <row Id="16571" PostId="12342" Score="1" Text="@JustSid I couldn't decide which to ask this to, since it's more about recalling a game, but for the purpose of game dev. I'll ask it there as well. I'd like to leave this one here as well, unless it's voted closed. " CreationDate="2011-05-15T21:55:08.293" UserId="7283" />
  <row Id="16572" PostId="12323" Text="@Joe: Understood, and in the future, i will try to spread multiple questions into separate threads. Well, knowing the answer on how much a person can get inspired by another's work is elementary subject to avoid law complications. If I do not know the answer, I simply ask, and I am not aware of better place to ask than here." CreationDate="2011-05-16T00:25:33.913" UserId="2229" />
  <row Id="16573" PostId="12110" Text="For this you might want to start a new question. Basically you currently output the Y intersection amount. You now want to also output the X intersection amount. You'll also need to keep track of the amount of intersection on X and Y at the previous update, in order to know which direction to push the block out of the line." CreationDate="2011-05-16T01:25:26.093" UserId="5021" />
  <row Id="16574" PostId="12345" Text="Very nice answer." CreationDate="2011-05-16T01:32:15.103" UserId="2111" />
  <row Id="16575" PostId="12347" Text="Covered pretty thoroughly here: http://gamedev.stackexchange.com/questions/1589/fixed-time-step-vs-variable-time-step" CreationDate="2011-05-16T01:53:10.510" UserId="3656" />
  <row Id="16576" PostId="12347" Text="I've read that discussion and the links there multiple times. It is actually how I've come to this post. My question mainly has to do with how to implement game states in order to achieve interpolation - which is not covered at all in that discussion." CreationDate="2011-05-16T02:13:59.497" UserId="6633" />
  <row Id="16577" PostId="12338" Text="Hi, welcome to the GDSE. Nice answer!" CreationDate="2011-05-16T02:20:17.063" UserId="3794" />
  <row Id="16578" PostId="12110" Text="@Olhovsky - Okay, thanks! I'll go ahead and mark your answer as accepted as that is _long_ overdue! I'd like to thank you for your continued support and thorough answers, as well as the patience and encouragement you have given me. A stunning amount of comments later, I've reached quite a good point in my platformer - I'm working on a simple level editor to draw lines and have the prototype read them in. Once again, one final thank you for all the help! Good luck on your endeavours! " CreationDate="2011-05-16T02:23:57.087" UserId="7201" />
  <row Id="16579" PostId="12345" Score="1" Text="Looks like µF on the top :)" CreationDate="2011-05-16T03:34:31.477" UserId="7191" />
  <row Id="16580" PostId="12348" Text="Sorry for the wall of text by the way, I tend to type a lot later at night." CreationDate="2011-05-16T03:40:43.730" UserId="7383" />
  <row Id="16582" PostId="12350" Score="9" Text="+1 If you don't have artistic skills, then getting the gameplay on its way is really important! Leave the real art to the real artists, and focus on having something to show them so they can go &quot;Wow! This project is actually going somewhere! How great would it be to put _my_ art in there?&quot;" CreationDate="2011-05-16T06:01:55.053" UserId="2698" />
  <row Id="16583" PostId="12342" Score="1" Text="This isn't worth downvotes, it just needs to be closed. Save your rep. (+1 to counter an undeserved -1)" CreationDate="2011-05-16T06:17:16.763" UserId="2698" />
  <row Id="16584" PostId="12110" Text="I'm glad your game is coming along Jopo, good luck :)" CreationDate="2011-05-16T06:23:37.820" UserId="5021" />
  <row Id="16585" PostId="12352" Text="I don't get it. You're saying I can lock the big dt that i'd compute in my game loop - that my physics consumes? How do I do that? Can I do it with CADisplayLink? I mean, what % of CPU are you assuming I'm using? Should you really assume locked game loop dt?" CreationDate="2011-05-16T06:25:44.003" UserId="6633" />
  <row Id="16587" PostId="3232" Text="Yep very good business advice as well as dev stuff." CreationDate="2011-05-16T09:37:38.350" UserId="259" />
  <row Id="16588" PostId="12264" Text="ok ! Thanks for that too, (this app doesnt let me write just &quot;ok !&quot; :)" CreationDate="2011-05-16T09:53:41.137" UserId="1251" />
  <row Id="16589" PostId="12327" Text="@Bunkai Something like that. The exact behaviour of copyright law depends on the type of medium. Also, the reason why most things pre-1930s is now public domain is because before ~1930 copyright could not be renewed." CreationDate="2011-05-16T10:03:02.650" UserId="2698" />
  <row Id="16590" PostId="12357" Text="Possible subset of http://gamedev.stackexchange.com/questions/90/why-is-it-so-hard-to-develop-a-mmo" CreationDate="2011-05-16T10:46:34.483" UserId="1156" />
  <row Id="16591" PostId="12352" Text="What I'm saying really boils down to this: do the least complicated thing that would work." CreationDate="2011-05-16T11:01:33.663" UserId="211" />
  <row Id="16592" PostId="12352" Text="Elaboration: using a variable `dt` for `update` and `render` is the simplest thing that would work, but generally avoided when using physics engines for the instability it causes. Therefore, calling `update` with a fixed `dt`, and rendering at the same rate (while dropping frames if your `update` runs long) is generally the simplest thing that would work. Writing code to interpolate objects between `update` calls adds complexity to your code; complexity that you're adding to solve no problem in particular." CreationDate="2011-05-16T11:04:07.483" UserId="211" />
  <row Id="16593" PostId="6314" Text="I'm voting to close as too localized. In five months, the list of phones in the accepted answer has _completely_ changed." CreationDate="2011-05-16T11:33:00.017" UserId="744" />
  <row Id="16594" PostId="12131" Text="Maybe not the Windows OS, but they're still 'Windows' Phones." CreationDate="2011-05-16T12:19:55.027" UserId="1156" />
  <row Id="16595" PostId="12354" Text="tl;dr how do I store and play frame animations?" CreationDate="2011-05-16T12:20:40.317" UserId="1156" />
  <row Id="16596" PostId="12327" Text="@Jonathan Hobbs: Understood." CreationDate="2011-05-16T13:07:52.740" UserId="2229" />
  <row Id="16597" PostId="12314" Text="@The Communist Duck: Hi, thanks for your comment. I understand that. I am grateful for every response here, and for Josh's one too. However, what came to my mind is, that internet is so large, that maybe somebody other than Josh will remember of seeing some places to get inspired by particular shaders. I can imagine, that a company/indidvidual using shaders a lot, would collect them, and some of them might also publish them. Josh's answer is my candidate for the *Accepted Answer* anyway, so if no one contributes shortly, I will close this thread my marking his answer." CreationDate="2011-05-16T13:13:03.203" UserId="2229" />
  <row Id="16598" PostId="12338" Text="@Slin: +1 for good answer. Hi Slin, and welcome to GDSE. Thank you for this good answer and for the example stuff. I am glad, you shared your experince with shaders programming for mobile platform. At this moment, I do all the development on PC, planning to port later. So your experience will be appreciated then." CreationDate="2011-05-16T13:16:42.920" UserId="2229" />
  <row Id="16599" PostId="12348" Score="16" Text="My girlfriend is artist. To find artistic girlfriend is my advice and very elegant solution of this problem :-P." CreationDate="2011-05-16T14:10:52.450" UserId="3794" />
  <row Id="16600" PostId="5199" Text="There's some irony here in that to have visually pleasing hexagons in an isometric view, you will have to avoid actually isometric hexagons." CreationDate="2011-05-16T14:36:15.137" UserId="3588" />
  <row Id="16601" PostId="12367" Text="Also note that the OpenGL picking API has been deprecated in GL3 Core. It's still available in the full profile though." CreationDate="2011-05-16T15:33:05.617" UserId="2792" />
  <row Id="16602" PostId="10254" Text="Just as an FYI -- you should make your call to EAGLContext setCurrentContext: before any of your GL calls.  You are currently doing in the middle of your BeginDrawing method.  Also, if you are only using one EAGLContext for the app, you can simply set it once after it is created and never call it again as long as it remains valid." CreationDate="2011-05-16T16:34:18.747" UserId="34" />
  <row Id="16603" PostId="10423" Text="Depending on what version of iOS he is running on, the UIScrollView probably isn't having an effect.  For simple scenes like this (looks like about 18 triangles), it's not going to matter." CreationDate="2011-05-16T16:39:04.907" UserId="34" />
  <row Id="16604" PostId="10254" Text="One more FYI -- glBindFramebufferOES() only needs to be called once per context, so you shouldn't be calling it once per frame." CreationDate="2011-05-16T16:41:43.890" UserId="34" />
  <row Id="16605" PostId="12327" Score="2" Text="@Bunkai At this point, it is 70 years after the death of an author. Or in cases of works created by a corporation, either 120 years after creation or 95 years after publication. &#xA;&#xA;This will also probably be extended again in the future." CreationDate="2011-05-16T16:54:11.170" UserId="14" />
  <row Id="16606" PostId="12330" Text="I didn't knew such a general something was trademarked (two normal words). It did fit the description though.  (I wonder where the -2 came from btw, bit harsh)." CreationDate="2011-05-16T17:11:13.750" UserId="5224" />
  <row Id="16607" PostId="12348" Score="3" Text="@notabene: Tips were we can find girls that are willing to live with us and are artistic skilled? All ways I can think off are illegal =/" CreationDate="2011-05-16T17:13:41.627" UserId="4395" />
  <row Id="16608" PostId="12367" Text="Heh, knowing which term to search for makes a huge difference :) However, I just searched google for 'lwjgl picking example', and this thread was one of the top hits!" CreationDate="2011-05-16T17:19:06.503" UserId="1072" />
  <row Id="16609" PostId="12374" Score="1" Text="You want to sell a game for 200 euros? What are you smoking and can I have some?" CreationDate="2011-05-16T17:24:06.220" UserId="1156" />
  <row Id="16610" PostId="12362" Text="The exact method and formula used depends a bit on the shape of your tiles, and probably a bit on how you're drawing the map (is 0,0 on the top, bottom, or one of the sides of the map)  More details about your problem would help." CreationDate="2011-05-16T17:25:38.933" UserId="6558" />
  <row Id="16611" PostId="7034" Text="This is so sad and true." CreationDate="2011-05-16T17:26:47.233" UserId="1217" />
  <row Id="16612" PostId="12374" Text="Have you looked at the game? There's a fair amount of work put in it and there are some solutions that are really hard to come up with if you're a beginner. Mind you, the package will contain all the source code and assets along with documentation. But I don't know, maybe I actually am smoking.." CreationDate="2011-05-16T17:29:30.757" UserId="1217" />
  <row Id="16613" PostId="12374" Text="I am probably wrong here (since I do not have Unity Web Player installed I cannot view it), but all I can see from the description is a slight twist on an asteroids clone. I personally would not value it at anywhere near what you have put. I have not seen the game and as such I can't make a completely accurate comment, but you're going to need a pretty big codebase to charge £150 for it." CreationDate="2011-05-16T17:45:56.730" UserId="1156" />
  <row Id="16614" PostId="12374" Text="For what it's worth, Chrome hung the first two times I tried to play it. Worked on the third try though." CreationDate="2011-05-16T18:08:13.330" UserId="1430" />
  <row Id="16615" PostId="12229" Text="I posted some ray triangle intersection code on [this question](http://gamedev.stackexchange.com/questions/12360/how-do-you-determine-which-object-surface-the-users-pointing-at-with-lwjgl) if that's useful to your project. " CreationDate="2011-05-16T18:29:36.203" UserId="7191" />
  <row Id="16616" PostId="12372" Score="1" Text="+1 for actual games being developed!" CreationDate="2011-05-16T18:35:39.743" UserId="6117" />
  <row Id="16617" PostId="12357" Text="Short answer: you don't." CreationDate="2011-05-16T19:29:02.150" UserId="7191" />
  <row Id="16618" PostId="12374" Text="Your game caused flash player to lockup, then crash, then the game loaded :/" CreationDate="2011-05-16T19:46:10.163" UserId="962" />
  <row Id="16619" PostId="12380" Text="Hey I found that site, unfortunately no imports from textures, but it's a nice tool. Unfortunately not all functions work on my computer (weird problems useing the noise functions). Definately an option though for someone who is trying to generate a non-realistic but pretty skybox." CreationDate="2011-05-16T20:23:41.060" UserId="5224" />
  <row Id="16620" PostId="12382" Text="Ah yes, I've actually looked at Celestia before for this project (alternative to writing our own engine), I could use it to generate a nice skybox, I'll need to be very certain about camera orientation and f.o.v. though, I'll use it as a last resort!" CreationDate="2011-05-16T20:25:40.887" UserId="5224" />
  <row Id="16621" PostId="12374" Text="I've seen the hanging behaviour with other games on kongregate so I'm not sure if it's my game, the kong API or a combination. As the game is loading it shouldn't be able to hang flash.. will continue to try to fix it though!" CreationDate="2011-05-16T20:30:28.050" UserId="1217" />
  <row Id="16622" PostId="12374" Text="@Josh and @AttackingHobo, I've noticed Chrome has a lot of trouble with Unity games on Kongregate, I doubt it's a problem with Phil's game.  It's either something with the Unity plugin on Chrome, or Flash and Unity being on the same page." CreationDate="2011-05-16T20:30:38.387" UserId="6558" />
  <row Id="16623" PostId="12376" Text="Thank you, I was thinking along your lines already. Whatever we decide to do, we'll probably sell the art separately with or without the rest." CreationDate="2011-05-16T20:32:23.743" UserId="1217" />
  <row Id="16624" PostId="12383" Text="HDR shop did the trick!" CreationDate="2011-05-16T20:33:09.630" UserId="5224" />
  <row Id="16625" PostId="12379" Text="You've got some interesting opinions here. I'll definitely re-evaluate the situation." CreationDate="2011-05-16T20:34:07.877" UserId="1217" />
  <row Id="16626" PostId="12354" Text="Not enough for a full answer, but: You could use a hash map, a 2d array, a state machine, or something else someone here will point out." CreationDate="2011-05-16T20:37:10.907" UserId="6558" />
  <row Id="16627" PostId="12376" Text="Our art guy says thanks :)" CreationDate="2011-05-16T20:43:02.237" UserId="1217" />
  <row Id="16628" PostId="12350" Text="Very encouraging answer. Yet the textures that *you* are using are already very nice and way beyond the capabilities of somebody as artistically challenged as me. ;-)" CreationDate="2011-05-16T20:59:10.390" UserId="4661" />
  <row Id="16629" PostId="12374" Text="@thedaian Yeah, I don't think it's his game in particular, but it is a point to be aware of as far as marketing goes." CreationDate="2011-05-16T21:17:29.040" UserId="1430" />
  <row Id="16630" PostId="12374" Text="@Josh You're absolutely right. Thanks for confirming that it's not just my box it crashes on." CreationDate="2011-05-16T21:21:54.170" UserId="1217" />
  <row Id="16631" PostId="12350" Text="@Konrad Beyond your capabilities of [visiting a site full of textures](http://gamedev.stackexchange.com/questions/20/where-can-i-find-free-sprites-and-images/122#122) and downloading some?" CreationDate="2011-05-16T21:47:19.147" UserId="2698" />
  <row Id="16632" PostId="12327" Text="@Noctrine: +1 - Hi and thanks for your additional specifying info. I will shortly take a look at copyrigh law, to learn key things, I should now." CreationDate="2011-05-16T21:54:24.350" UserId="2229" />
  <row Id="16633" PostId="12350" Text="Well, it's just a trick of the eye really, but thank you. Once all the textures are out on a some geometry the brain makes it work. You haven't seen the UI, it's ugly as sin. But indeed as Jonathan suggests, texture sites would work great." CreationDate="2011-05-16T21:55:51.980" UserId="7191" />
  <row Id="16634" PostId="12387" Text="You probably are going to want to write code to only draw those sprites which are visible, especially if you find that you need to increase the size of your grid." CreationDate="2011-05-16T21:46:13.493" />
  <row Id="16635" PostId="12309" Text="If you liked the answer, don't forget to Accept it!" CreationDate="2011-05-16T22:58:47.347" UserId="1400" />
  <row Id="16636" PostId="12110" Text="@Olhovsky - Just realized I didn't mark it as the answer! Sorry, marked it ;) Thank you!" CreationDate="2011-05-16T23:10:04.477" UserId="7201" />
  <row Id="16637" PostId="12362" Text="Tiles are 2:1 (more specifically, 64x32). The coordinate system doesn't matter since I'm writing the editor. (0,0 at the top or left seems sensible however.)" CreationDate="2011-05-16T23:11:20.893" UserId="7375" />
  <row Id="16638" PostId="12348" Score="3" Text="Minecraft had/has horrible default graphics, and yet it is a wildly successful game. Some time after its release, notch added in custom texturepacks, so that users could install graphics made by real artists. However, the game was successful before that point because of the fantastic gameplay and open-ended nature. Game first, graphics later :P." CreationDate="2011-05-17T00:03:43.810" UserId="7124" />
  <row Id="16639" PostId="12388" Score="1" Text="I've considered doing something like this a few times, but every time I've come to the same conclusion: this is not the place for this kind of a request.  If you have a technical question, this is the place to go to solve those pesky bugs.  But free handouts of game ideas is not the intended purpose of this Stack Exchange.  Anyone is welcome to challenge this allegation, but I believe that you should remove this 'request'." CreationDate="2011-05-17T02:14:37.237" UserId="1400" />
  <row Id="16640" PostId="12390" Text="Yeah, I was thinking of making a shooter/explorer type game, where enemies drop new weapons and armor and such. I'm going to work out on this idea a bit more and the implementation of it." CreationDate="2011-05-17T02:18:14.783" UserId="7410" />
  <row Id="16641" PostId="12388" Text="@Grimless: I don't think it's a big deal. If people have some ideas they wouldn't mind sharing, then they are free to do so. If not, then that's just fine. I'm not looking for the &quot;idea of the decade&quot; type stuff and that should be known if I'm asking on a public forum." CreationDate="2011-05-17T02:20:11.333" UserId="7410" />
  <row Id="16642" PostId="12388" Text="True enough.  I simply felt that keeping the site more oriented towards solving development issues over asking others for game ideas was important to me.  Certainly, if anyone is willing to answer your question with game ideas, that is up to them." CreationDate="2011-05-17T02:22:18.980" UserId="1400" />
  <row Id="16643" PostId="12388" Text="@Grimless indeed, i agree with you." CreationDate="2011-05-17T02:22:51.113" UserId="3794" />
  <row Id="16644" PostId="12391" Text="Meh, I'm not too serious about looking for professional interns. Even helping on a small indie team would be cool. I'm a math major so my interests are not purely in game dev or even programming." CreationDate="2011-05-17T02:23:49.117" UserId="7410" />
  <row Id="16645" PostId="12388" Score="2" Text="@Grimless: How about this for a development issue: lacking ideas? How do I come up with my own!" CreationDate="2011-05-17T02:24:57.477" UserId="7410" />
  <row Id="16646" PostId="12390" Text="I dont think that that whole &quot;start small&quot; thinq is that great at all as everybody says. I made 3D tanks in opengl as first graphics project, do something on which you can really learn. Not something super easy..." CreationDate="2011-05-17T02:29:09.650" UserId="3794" />
  <row Id="16647" PostId="12388" Score="3" Text="Now, see, that is a much better question!  THAT is something the game dev community should be able to help you with.  That question is open enough that it encourages you to work for a real answer with guidance from the community." CreationDate="2011-05-17T02:43:15.373" UserId="1400" />
  <row Id="16648" PostId="12390" Text="@notabene — The idea is to get used to the steps of game development by recreating classic titles.  This approach lets one understand how all of the components come together to create a game and get a feel of the flow.  If the OP is comfortable with these things, then they should move on to meatier fare, such as creating their own simple game." CreationDate="2011-05-17T02:45:27.507" UserId="1400" />
  <row Id="16649" PostId="12390" Text="There's a few reasons to start small.  Part of it is to learn more about the tools you're using, part is because a large game will probably result in burnout before you're done, and part is because tons of people who've never made games want to make the next WoW right away.  That said, 'start small' doesn't always mean &quot;make pong&quot;, it just means &quot;don't try to make a AAA game as your first project&quot;" CreationDate="2011-05-17T02:46:28.947" UserId="6558" />
  <row Id="16650" PostId="12390" Text="+1 Cloning with deviation from the original design where its convenient or just dawns on you is a good way to go." CreationDate="2011-05-17T03:21:35.340" UserId="4235" />
  <row Id="16651" PostId="12393" Score="3" Text="There's no question in your post. Start hacking together a codebase and post when you have a specific question. Between your books and the MSDN site, you should have all you need to get started" CreationDate="2011-05-17T03:27:06.447" UserId="3656" />
  <row Id="16652" PostId="12393" Score="4" Text="You don't even have a playable prototype and you have been working for months? :/" CreationDate="2011-05-17T04:03:34.743" UserId="962" />
  <row Id="16653" PostId="12389" Text="Thank you! - this works great for flat maps.&#xA;Now, can you tell me a bit more about how I could add arbitrarily sized (i.e. with a Z depth) tiles that are on another layer? (Such as props like a well, or a streetlight)" CreationDate="2011-05-17T04:06:59.717" UserId="7375" />
  <row Id="16654" PostId="12393" Text="We don't meet often but we do meet consistently. Not everyone started with us at the beginning, but we have a lot of design work to show for it. " CreationDate="2011-05-17T04:34:02.860" UserId="7412" />
  <row Id="16655" PostId="12365" Text="_&quot;Previous comment&quot;_ doesn't help here since the post order is jumbled. Names please! :)" CreationDate="2011-05-17T04:55:50.490" UserId="2698" />
  <row Id="16656" PostId="12359" Text="I think glowing lines might be a bit simplistic, but I like your direction. Very good advice." CreationDate="2011-05-17T04:56:31.410" UserId="2698" />
  <row Id="16657" PostId="12354" Text="how would a 2d array be used in this instance?" CreationDate="2011-05-17T05:33:48.783" UserId="6258" />
  <row Id="16658" PostId="12041" Text="is there a way u can reopen this question...that link doesn't provide the correct information i wonted...and i believe this isn't a dup because the  other person did no specify a language..." CreationDate="2011-05-17T06:09:11.937" UserId="7168" />
  <row Id="16659" PostId="12397" Text="Is this an art question? Wouldn't you render it like everything else?" CreationDate="2011-05-17T06:30:02.927" UserId="7191" />
  <row Id="16660" PostId="12397" Text="Opengl-es glRamp(GL10.GL_SMOOTH, .4f, 0, 0);" CreationDate="2011-05-17T06:37:00.647" UserId="7415" />
  <row Id="16661" PostId="12350" Text="@Jonathan Of course; that’s what I would do. But @Byte56 specifically mentioned that he’s doing all the textures himself, and then talked about MS Paint so I was expecting *really* crappy graphics and was very positively surprised when looking on his website." CreationDate="2011-05-17T06:53:23.893" UserId="4661" />
  <row Id="16662" PostId="12391" Score="2" Text="I think @notabene means to say &quot;internship&quot;, and not &quot;intern&quot;. I.e. Suggesting you take on a role as an intern." CreationDate="2011-05-17T07:07:50.823" UserId="5473" />
  <row Id="16663" PostId="12350" Text="@Konrad Wow! Ok, I didn't see that. Awesome! Now I'm impressed too." CreationDate="2011-05-17T08:02:51.053" UserId="2698" />
  <row Id="16664" PostId="12395" Text="I'm not entirely sure I agree with this. Might be because I swear by the ScientificNinja games not engines post." CreationDate="2011-05-17T08:21:52.787" UserId="1156" />
  <row Id="16665" PostId="12404" Text="possible duplicate of [Lightwight cross browser library for server side push?](http://gamedev.stackexchange.com/questions/6524/lightwight-cross-browser-library-for-server-side-push)" CreationDate="2011-05-17T09:49:05.893" UserId="20" />
  <row Id="16666" PostId="12405" Text="You need to add some more information here. How do you scroll the terrain? Are you testing the release build? Is your terrain tiled in any way? How many FPS do you get?" CreationDate="2011-05-17T09:51:39.200" UserId="20" />
  <row Id="16667" PostId="12395" Text="I do too. However, the engine tutorial I linked is basically a component framework that gets out of your way, plus component examples to show you the ropes. Consider that this makes my job easier, and now that I'm making my game, I'm taking steps back to make the engine _my game's engine_. I recognise the issue here though: I don't mean to tell him to write an engine, he just needs something to enable him to _finally just make the damn game._" CreationDate="2011-05-17T09:58:28.167" UserId="2698" />
  <row Id="16668" PostId="12406" Text="Ah, for &quot;Getting Real&quot;, you can read it online for free. You can read it [here](http://gettingreal.37signals.com/toc.php)" CreationDate="2011-05-17T10:30:46.077" UserId="5049" />
  <row Id="16669" PostId="12395" Text="Now that link is actually working for me (originally I assumed it was just another 'here's some code for a half crap engine'), I can see your point. So +1, for that link :) I reckon it'll help me too." CreationDate="2011-05-17T10:40:19.613" UserId="1156" />
  <row Id="16670" PostId="12397" Text="Duplicated over at Graphic Design: http://graphicdesign.stackexchange.com/questions/2058/how-do-i-depict-a-ramp-from-a-top-down-2d-perspective" CreationDate="2011-05-17T11:54:40.390" UserId="2853" />
  <row Id="16671" PostId="12389" Score="1" Text="That's when you use the offsetY and offsetX values.  If your streetlight is 64x64, then passing in a negative 32 for the offsetY value should make it appear at the right place.  Hopefully that's enough to get you started." CreationDate="2011-05-17T12:33:49.153" UserId="6558" />
  <row Id="16672" PostId="10729" Text="@ashes That's something to keep in mind, but it isn't necessarily a stopper.  If you have enough players, there's always going to be people upset over any change, and it's up to the makers to decide whether more people will be upset than happy.  Keeping in mind, the upset people are going to complain a lot louder than the happy people rejoice.  Pretty much every WoW expansion invalidates the work of all the hardcore players, and gives newer players a chance to rise to the top and that's worked out well for them." CreationDate="2011-05-17T12:59:44.367" UserId="5006" />
  <row Id="16673" PostId="12391" Text="@NickWiggill Yeah, that is what i wanted to say, thank you." CreationDate="2011-05-17T13:32:16.207" UserId="3794" />
  <row Id="16674" PostId="12407" Text="This seems like a HUGE memory hog. Keeping the entire world drawn in a surface off-screen is going to run you into memory issues once you start wanting to do things like having multiple (animated) layers for your world and expanding it further than what you have now. It would be much better to keep the information about the world and only draw the parts/objects that need to be drawn when they need to be drawn. Just my 2 cents. :)" CreationDate="2011-05-17T14:14:26.390" UserId="5060" />
  <row Id="16675" PostId="12405" Text="@bummzack: thanks for you remind :o)" CreationDate="2011-05-17T14:37:27.580" UserId="3630" />
  <row Id="16676" PostId="12407" Text="@Drackir I think you misunderstand. only the world is drawn off screen, things like the other people are tracked and drawn on the backer buffer when they are needed. also I do not see myself doing more that 70 x 70 world. when I say world I mean area, this could be a town a dungeon or the inside of a house, when the player moves between them the off screen surface is reconstructed. yes it takes memory but 2d tiles on modern terrabite drives makes it negligible and a few seconds loading is a small price to pay for smooth scrolling and animation. but yes there are better and harder ways :) " CreationDate="2011-05-17T14:50:41.127" UserId="6469" />
  <row Id="16677" PostId="12407" Text="The surface should be stored in the GFX card memory, not on the hard drive. However, I believe if the GFX card memory is too large, it will move the surfaces onto the HD which would considerably slow things down. Admittedly, it's been a while since I've dealt with that stuff so I don't remember exactly how it worked, but I guess as long as you're not drawing too big of a world it would be ok. :)" CreationDate="2011-05-17T15:00:54.713" UserId="5060" />
  <row Id="16678" PostId="12405" Text="Just a guess, but maybe you have too much being rendered at once.  Don't render anything that isn't in the camera, and see if that helps." CreationDate="2011-05-17T15:07:12.003" UserId="6558" />
  <row Id="16680" PostId="12358" Text="+1 for photos, I'm going to have to try that myself." CreationDate="2011-05-17T15:28:46.617" UserId="284" />
  <row Id="16681" PostId="12405" Score="1" Text="24FPS looks smooth in film, but anything below 30FPS is unlikely to look smooth for gaming.  I'm not sure if that's what's causing your jitter problem, but you should look at increasing the framerate to at least 30, if you can." CreationDate="2011-05-17T15:33:45.317" UserId="5311" />
  <row Id="16682" PostId="12407" Text="@Drackir That is interesting to know, I never thought of it like that. I found that this way gives me a smoother scroll that if I dynamically drew new tiles so I think it fits ok but I will have to look into that. " CreationDate="2011-05-17T15:45:46.867" UserId="6469" />
  <row Id="16683" PostId="12397" Text="@burgy omg__________" CreationDate="2011-05-17T15:52:03.727" UserId="7415" />
  <row Id="16684" PostId="12407" Text="I was working on a game where I had maps 31x31 but they were attached together side-by-side. I was trying working from someone else's engine and they would draw all the maps surrounding the one the player was on; so nine maps in total. Each map had several (I think 6) layers. So like 31x31x9x6 = 51894 tiles being drawn (max of course; not all tiles were full) every time the user switches maps. That was a huge slow-down for me, so I rewrote the drawing routine to only draw the tiles surrounding the player as far as 1 tile past the edge of the screen (to handle partial tiles while moving)." CreationDate="2011-05-17T16:06:16.837" UserId="5060" />
  <row Id="16685" PostId="12393" Text="-1, there's no real question here.  " CreationDate="2011-05-17T16:07:36.890" UserId="51" />
  <row Id="16686" PostId="12407" Text="You could kind-of mix your idea into that and re-use part of the surface when you move to a new tile/position so rather than redraw all the tiles on the screen, copy the part of the back-buffer that won't change and only redraw the new line of tiles you need (because you moved one tile away). Anyways, as long as it's fast enough for you that's all that matters. I'm just thinking out loud now. :P" CreationDate="2011-05-17T16:09:15.160" UserId="5060" />
  <row Id="16687" PostId="12405" Text="Can you post the swf in question? I know a lot of things that could fix a bunch of different jittering problems." CreationDate="2011-05-17T16:11:51.783" UserId="962" />
  <row Id="16688" PostId="12396" Score="2" Text="I'd argue that 11 people is about 7-8 people too many for a small indie game.  5 programmers means 5 different coding styles, and 5 people adding code, and tons of communication required to keep everything sane.  4 artists means 4 different art styles to coordinate.  And 2 audio guys are going to get bored once they've made sound effects and music.  Not to say it's impossible to make an indie game with 11 people, but it requires a project manager and leads and good leadership and direction." CreationDate="2011-05-17T16:16:17.170" UserId="6558" />
  <row Id="16689" PostId="12402" Text="You may have seen this analysis, but it bears linking: http://fabiensanglard.net/doomIphone/index.php" CreationDate="2011-05-17T18:42:58.323" UserId="5661" />
  <row Id="16690" PostId="12285" Text="first of all the question asks for structure that every component instance is only related to one entity, and you can activate and deactivate components by only adding a `bool isActive` to base commponent class. there is still need for introduction of usable components when you are defining enteties but i don't consider that as a problem, and still you have seprate componnent updates(remember somthing like `dynamic_cast&lt;componnet*&gt;(entity)-&gt;update()`.&#xA;" CreationDate="2011-05-17T19:03:37.203" UserId="7328" />
  <row Id="16691" PostId="12285" Text="and i agree there will still be a problem when he wants to have component which can share data but considering what he asked for i guess there won't be a problem for that, and again there are some tricks for that problem too that if you want i can explain." CreationDate="2011-05-17T19:07:33.813" UserId="7328" />
  <row Id="16692" PostId="12412" Text="Found the problem.  It was hidden in some legacy NDK code ported from the iOS version.  Previously I was loading and unloading textures in the native code.  In the destructor in question there was a glDeleteTextures call that was removing the texture.  I'm not sure why it didn't cause a problem on the first reload, but it now works." CreationDate="2011-05-17T19:22:39.330" UserId="6605" />
  <row Id="16693" PostId="12285" Text="While I agree that it's possible to implement it this way, I don't think it's a good idea. You designers cannot compose objects themselves, unless you have one über class which inherits all possible components. And while you can call update on just one component, it will not have good in-memory layout, in a composed model all component instances of the same type can be kept close in memory and iterated over without any cache misses. You are also relying on RTTI, which is something that is usually turned off in games due to performance reasons. A good sorted object layout fixes that mostly." CreationDate="2011-05-17T19:38:19.490" UserId="2792" />
  <row Id="16694" PostId="12414" Text="I'm not sure I understand. If I render the scene to a texture and then render a quad with that texture to a smaller render target I only get a quarter of the scene rendered (and magnified) when I draw the small texture to the backbuffer." CreationDate="2011-05-17T20:25:15.107" UserId="2469" />
  <row Id="16695" PostId="12405" Text="Lets do the math to find a good framerate. By &quot;good&quot; I mean a framerate that converts into a nice round milliseconds between each frame. 60fps = 16.6... 30fps = 33.3... 25fps = 40 24fps = 41.6... So from this, it looks like 25 makes the most sense." CreationDate="2011-05-17T21:25:45.367" UserId="1163" />
  <row Id="16696" PostId="12422" Text="I agree. `int` should be sufficient, and `UInt64` should almost never need to be exceeded." CreationDate="2011-05-17T21:56:41.197" UserId="1198" />
  <row Id="16697" PostId="12422" Score="1" Text="9,223,372,036,854,775,807 is the maximum value for a *signed* 64-bit integer. For an unsigned 64-bit integer, the maximum value is 18,446,744,073,709,551,615." CreationDate="2011-05-17T22:37:26.637" UserId="3318" />
  <row Id="16698" PostId="12422" Text="You could use the System.Numerics.BigInteger type. It supposedly doesn't have an upper limit (performance will probably degrade if it gets too large)." CreationDate="2011-05-17T23:15:57.503" UserId="3547" />
  <row Id="16699" PostId="12422" Text="@Michael Madsen Doh! Twice as long then before it wraps! ;) Ta" CreationDate="2011-05-18T00:07:54.517" UserId="4410" />
  <row Id="16700" PostId="12418" Text="Are you sure after you Detect a collision you are reacting to it? It sounds like the character is not being pushed back Out of the object and is instead being stopped where they are (but I did not read the code throughly)." CreationDate="2011-05-18T00:09:39.210" UserId="4443" />
  <row Id="16701" PostId="12423" Text="3D Engine, or 3D Game Engine?" CreationDate="2011-05-18T03:06:47.437" UserId="962" />
  <row Id="16702" PostId="11201" Score="1" Text="This is not Game Development." CreationDate="2011-05-18T03:07:25.733" UserId="962" />
  <row Id="16703" PostId="11032" Text="C# definitely, I wouldn't want to give up using C#, and with linux I would have to, well XNA C# that is." CreationDate="2011-05-18T03:22:12.350" UserId="962" />
  <row Id="16704" PostId="12419" Text="I don't know, but it sounds like the model looks pretty funny, any screen-caps you can share?" CreationDate="2011-05-18T03:26:19.277" UserId="962" />
  <row Id="16705" PostId="11694" Text="The iOS SDK is no longer free, as of the release of XCode 4.  You must now either pay for an iOS/Mac Developer Account or buy XCode from the Mac App Store" CreationDate="2011-05-18T03:52:46.860" UserId="1598" />
  <row Id="16706" PostId="12418" Text="Yes I'm sure of it. The `entity.setPositionX()` or `entity.setPositionY()` is called after the collision check. When I walk against the wall without jumping then the player is pushed back correctly." CreationDate="2011-05-18T04:25:01.563" UserId="6728" />
  <row Id="16707" PostId="12422" Text="18 billion billion is one hell of a score." CreationDate="2011-05-18T04:34:38.953" UserId="627" />
  <row Id="16708" PostId="12348" Text="&quot;Girlfriend&quot;? What's &quot;girlfriend&quot;." CreationDate="2011-05-18T04:38:48.687" UserId="627" />
  <row Id="16709" PostId="12423" Text="3D Engine. Honestly I don't really understand what's the difference." CreationDate="2011-05-18T04:38:49.187" UserId="7394" />
  <row Id="16710" PostId="12429" Text="There seems to be a matrix order problem. Can you describe in which orders you do your model view operations? You might be translating before rotating, which would rotate your camera around some other point in the world." CreationDate="2011-05-18T05:37:56.350" UserId="2792" />
  <row Id="16711" PostId="12430" Text="I am using a fixed framerate and not in realtime. I am thinking that it will give me a higher quality render." CreationDate="2011-05-18T06:02:01.937" UserId="312" />
  <row Id="16712" PostId="12430" Text="Sure it can, but at what cost? If you have the power to jitter everything in time it might be good. Sorry if I did not answer your question." CreationDate="2011-05-18T06:09:33.730" UserId="2792" />
  <row Id="16713" PostId="12423" Score="2" Text="Since you don't put any requirements, the answer is &quot;any of them&quot;. " CreationDate="2011-05-18T06:21:31.067" UserId="2710" />
  <row Id="16714" PostId="12430" Text="You can probably look at some rayt racing papers for solutions for this. They usually blend jittered images, both in time and space." CreationDate="2011-05-18T06:23:38.650" UserId="2792" />
  <row Id="16715" PostId="12429" Text="Translation/rotation order shouldn't be an issue if I am using a single matrix for my transform, should it?  I thought matrices were used to solve that issue.  Additionally, the camera seems to move and rotate correctly, except for the frustum.  Is it possible that translation/rotation order doesn't effect modelview but effects the projection matrix?  That seems very strange to me.  I'm uncertain how to answer your comment, because the camera can be moved and/or rotated at any time and it's modelview matrix is calculated each frame." CreationDate="2011-05-18T06:26:02.173" UserId="1400" />
  <row Id="16716" PostId="12430" Text="@void I'm just not sure what weight I give each image or if I just average them." CreationDate="2011-05-18T06:29:07.540" UserId="312" />
  <row Id="16717" PostId="12429" Text="No you will still have to order things correctly, since rotating before or after a translation will have completely different results. Do you set your matrices correctly in the different matrix slots?" CreationDate="2011-05-18T06:29:41.487" UserId="2792" />
  <row Id="16718" PostId="12430" Score="1" Text="Usually there is no &quot;right&quot; thing. Only what's looking good ;) Do you need physically correct blur? If not then you can probably use some heuristic to blend it. Tried using a bell curve? does it look bad if you just blend everything together with 1/16 the alpha each?" CreationDate="2011-05-18T06:32:13.623" UserId="2792" />
  <row Id="16719" PostId="12289" Text="This doesn't answer my question directly but it's very informative. I remembered something about Dataflows back in my University days. It's the best answer so far, and it &quot;wins&quot;." CreationDate="2011-05-18T06:34:55.020" UserId="2231" />
  <row Id="16720" PostId="12430" Text="I haven't actually got that far yet, right now I've got it rendering in slow motion. Next I gotta blend and output to video. Also, I found this: http://freespace.virgin.net/hugo.elias/graphics/x_motion.htm" CreationDate="2011-05-18T06:47:29.217" UserId="312" />
  <row Id="16721" PostId="12414" Score="1" Text="@dotminic You will have to sample several times, and blend the samples together. Or you can sample once and make sure your linear filtering takes care of blending the 4 pixels." CreationDate="2011-05-18T06:50:39.903" UserId="2792" />
  <row Id="16722" PostId="12429" Text="Matrix slots?  As in Projection and Modelview?  I think so, but obviously I've got something wrong here.  My modelview matrix calculations are based on the gluLookAt page.  The resulting matrix looks something like  M = (s[0] s[1] s[2] 0 u[0] u[1] u[2] 0 -f[0] -f[1] -f[2] 0 p.x p.y p.z 1)  where s=side u=up and f=forward and p=position.  Once that is built, it is inverted and then glMultMatrix'd onto the identity Modelview.  If necessary, I can do a full psuedocode dump as an edit." CreationDate="2011-05-18T06:54:11.803" UserId="1400" />
  <row Id="16723" PostId="12423" Score="2" Text="-1, not specific enough, doesn't show any real research." CreationDate="2011-05-18T06:55:17.033" UserId="51" />
  <row Id="16724" PostId="12431" Score="4" Text="I think you need to add more details.  Or words.  I think you forgot a few." CreationDate="2011-05-18T06:59:25.640" UserId="51" />
  <row Id="16725" PostId="12390" Text="@notabene: Not to rain on your parade but 3D tanks in OpenGL is &quot;start small&quot;." CreationDate="2011-05-18T07:54:50.777" UserId="678" />
  <row Id="16727" PostId="12432" Text="Unrelated - considered Ogre3D instead OpenGL?" CreationDate="2011-05-15T07:36:43.110" />
  <row Id="16728" PostId="12432" Text="Actually, no, I never heard of it. I'm using OpenGL because that's what I was taught in my classes. Can Ogre3D do 2D too? I suppose it can, but we never know..." CreationDate="2011-05-15T07:44:31.593" />
  <row Id="16729" PostId="12432" Text="Yes it can, it even has its own GUI toolkit (cegui).  For example, TorchLight is built with it.  It can save you time because it wraps nicely AROUND OpenGL.  http://www.ogre3d.org/tikiwiki/MOGRE" CreationDate="2011-05-15T08:07:30.503" />
  <row Id="16730" PostId="12432" Text="&quot;Or even a separate thread for every unit&quot; Hell no. The overhead of a thread is much too big. For one there is the reserved memory for the stack of the thread(1MB by default). And thread switches are expensive too." CreationDate="2011-05-15T12:41:13.083" />
  <row Id="16731" PostId="12434" Score="1" Text="Sounds very complicated." CreationDate="2011-05-15T13:19:00.523" />
  <row Id="16732" PostId="12432" Text="migrated per http://meta.gamedev.stackexchange.com/questions/434/are-beginner-design-review-questions-acceptable" CreationDate="2011-05-18T08:25:53.660" UserId="146" />
  <row Id="16733" PostId="12402" Text="I saw it, and is quite good :D" CreationDate="2011-05-18T08:31:05.387" UserId="6395" />
  <row Id="16734" PostId="12429" Text="Please show us the code where you calculate s, u and f. Additionally it is always helpful to dump the values for each step up to the matrix and post it here, including the final matrix passed to the glMultMatrix/glLoadMatrix func. Also post the code where you pass the result matrix to OpenGL." CreationDate="2011-05-18T08:32:46.467" UserId="1839" />
  <row Id="16735" PostId="12441" Text="Am I missing something, but couldn't you just save to a binary format and just adjust your loading algorithm (thus much faster load/read times)?" CreationDate="2011-05-18T10:27:40.537" UserId="1156" />
  <row Id="16736" PostId="12441" Text="@The Communist Duck It's usually much better to save in a interchange format that can be reopened again in your DCC app, and then compile it to a app specific format. This will reduce a lot of engine/game code and you will have a lot foster loading since you don't have to translate data or change layout." CreationDate="2011-05-18T10:58:46.567" UserId="2792" />
  <row Id="16737" PostId="12414" Text="@void kind of like creating a mipmap chain and blending them all together ?" CreationDate="2011-05-18T11:23:55.137" UserId="2469" />
  <row Id="16738" PostId="12390" Text="@Ranieri ... agreed! :) just don't know why everybody points to the making PONG or something." CreationDate="2011-05-18T11:36:58.870" UserId="3794" />
  <row Id="16739" PostId="12414" Score="1" Text="@dotminic Mipmap chain creation is just several down sample steps that reduces 2x2 pixels to 1. Sometimes you might want to sample a bit more though, to reduce aliasing." CreationDate="2011-05-18T11:38:54.207" UserId="2792" />
  <row Id="16740" PostId="12414" Text="@dotminic: IIUC, you basically want create a mip map chain, but stop once you reach the desired size. You might need to adjust the sample pattern &amp; count if the downsample size isn't a power-of-two fraction of the large texture, or to reduce aliasing as void says." CreationDate="2011-05-18T11:46:49.990" UserId="3289" />
  <row Id="16741" PostId="11694" Text="ugh well that is a crappy change. I'll delete my answer if you can direct me to any proof of this change (I can't check myself because I have a developer account.)" CreationDate="2011-05-18T11:54:40.750" UserId="6588" />
  <row Id="16742" PostId="12439" Text="What exactly are your sprites _doing_? I assume they're not just being drawn." CreationDate="2011-05-18T11:55:45.663" UserId="2698" />
  <row Id="16744" PostId="12390" Text="@notabene Mostly because pong, tetris, breakout, and similar games are ones everyone has played at some point, and everyone can make, no matter what their skill level is.  It's pretty much the lowest common denominator.  In other words: it's like teaching someone addition, subtraction, multiplication, and division before telling them to learn calculus (or at least, make sure they know the basics of maths before going on to learn advanced stuff)." CreationDate="2011-05-18T12:30:22.730" UserId="6558" />
  <row Id="16745" PostId="12442" Score="2" Text="Fyi, `using` everything available isn't good programming practice. I can immediately tell if a class of mine handles input at all if I see it imports `Microsoft.Xna.Framework.Input`. It helps me to understand what my code is doing when I revisit it, and it'll help others when they begin to work with it. If your camera imports `Microsoft.Xna.Framework.Audio` then doesn't end up doing anything audio-related at all, your namespace references lose all the value they can add to understanding source code." CreationDate="2011-05-18T12:34:54.910" UserId="2698" />
  <row Id="16747" PostId="12446" Text="i did that at first, but it results in the same problem.&#xA;and moving the window to the top left corner of the screen didn't work either. do you have any other idea?&#xA;but still thanks." CreationDate="2011-05-18T12:51:56.260" UserId="7437" />
  <row Id="16748" PostId="12441" Text="@The Communist Duck: The reasons that led me toward text file format firstly were my skills level. I needed to see what data gets exported from 3D authoring application. When sloving bugs, I needed to quickly edit and change data in the file, to search for the causes of problems. If I go with binary file format from beginning, I thought, things would be too messy for me to progress quickly." CreationDate="2011-05-18T13:28:29.547" UserId="2229" />
  <row Id="16749" PostId="12439" Text="Too many unknowns here such as what code is being executed for each sprite, what platform you're on, etc.  Python isn't your problem here is my bet, it's your approach to coding and managing the sprites." CreationDate="2011-05-18T14:22:38.417" UserId="3830" />
  <row Id="16751" PostId="12397" Text="As you accepted an answer in your [other question](http://graphicdesign.stackexchange.com/questions/2058/how-do-i-depict-a-ramp-from-a-top-down-2d-perspective), I will close this one. If this question is separate from your other question or needs further answering, please revise your question and add a comment beginning with &quot;@Ricket&quot; so I can reopen the question if needed. (I can't mark it as a duplicate of another site's question so I am closing it as not a real question)" CreationDate="2011-05-18T15:26:00.310" UserId="189" />
  <row Id="16752" PostId="12431" Score="2" Text="You accidentally the words!" CreationDate="2011-05-18T15:29:51.740" UserId="189" />
  <row Id="16753" PostId="12439" Text="Hardware instancing would be pretty good for this." CreationDate="2011-05-18T15:33:23.377" UserId="7191" />
  <row Id="16756" PostId="12449" Text="In the pictures, it looks like each of the dots is at the same height.  Are the corners at the same height as well?" CreationDate="2011-05-18T16:06:50.957" UserId="370" />
  <row Id="16758" PostId="12437" Text="Thanks! I swapped the x and y check and implemented a isOnLand check. So the player can jump and glide against the wall. Now another problem has come up, when the player stand next to the wall and jumps, then when he lands the x get adjusted (from the collision of the floor) and the player gets placed into the wall.. " CreationDate="2011-05-18T16:45:35.417" UserId="6728" />
  <row Id="16759" PostId="12443" Text="possible duplicate of [Where can I find free sprites and images?](http://gamedev.stackexchange.com/questions/20/where-can-i-find-free-sprites-and-images)" CreationDate="2011-05-18T16:49:35.900" UserId="1156" />
  <row Id="16761" PostId="12437" Text="I find it hard to imagine the possible code structure based on your comment. Why does X need to be adjusted when Mario collides with the floor after a jump? I would think this will only need an adjustment in Y, leaving X untouched." CreationDate="2011-05-18T17:59:00.390" UserId="5508" />
  <row Id="16762" PostId="12444" Text="+1 for particles.  Look up how to do a good particle system on your platform of choice and you will learn a lot about tricks for managing a massive number of sprites." CreationDate="2011-05-18T18:31:12.333" UserId="4496" />
  <row Id="16763" PostId="12456" Text="I made some test http://html5test.com/ and it said that I have no WebGL context;)" CreationDate="2011-05-18T18:47:06.040" UserId="2776" />
  <row Id="16765" PostId="12422" Text="GameCenter on the iOS uses a signed 64-bit int that can be formatted in many ways (points, time, fractions), it seems flexible enough." CreationDate="2011-05-18T19:24:56.030" UserId="5661" />
  <row Id="16766" PostId="12446" Text="Could you post the code that you used to draw the circle as an edit?" CreationDate="2011-05-18T20:17:21.663" UserId="2111" />
  <row Id="16768" PostId="12434" Text="Your idea sounds fine except for the first part about moving units into and out of the main game loop. All AI should be done in it's own loop, where you can select to skip the loop every `x` iterations on low priority units." CreationDate="2011-05-18T20:25:02.417" UserId="5021" />
  <row Id="16770" PostId="12426" Text="Motion around the edges of the screen should blur just like motion in the middle of the screen; uniform sampling from each frame makes sense. Unless you want physically-correct motion blur (which is far from trivial to implement yourself), I would think your approach is good enough." CreationDate="2011-05-18T21:13:43.817" UserId="7148" />
  <row Id="16771" PostId="12463" Text="I would suggest looking into sqlite http://www.sqlite.org/.  It is very self-contained, indexed, handles blobs, etc.  This would help with performance and address &quot;holes&quot; in your file." CreationDate="2011-05-18T21:32:41.080" UserId="5661" />
  <row Id="16772" PostId="12429" Text="Wow. I feel incredibly stupid. So, it turns out the renderInterface() line is important: I set the scene to orthographic, draw my interface elements, and then return to perspective. But here's the kicker: I was using default values instead of the current camera's perspective.  Thanks for the help guys!" CreationDate="2011-05-18T21:44:33.667" UserId="1400" />
  <row Id="16773" PostId="12465" Text="I agree. Had I continued to develop the infinite world feature, a database is likely what I would have ended up with." CreationDate="2011-05-18T22:14:39.827" UserId="7191" />
  <row Id="16775" PostId="12450" Text="This was definetly the better way to go about it, but no cigar as of yet, it appears my image still has some 'quirks', I updated the original post." CreationDate="2011-05-18T22:56:21.273" UserId="4513" />
  <row Id="16777" PostId="12465" Text="-1 That is simply not true, a flat file can contain any indexing system you like. File systems and databases are nothing more than abstractions of the flat dataspace, yet they manage to find specific pieces of data without resorting to brute force. Note to self: Write first, -1 last." CreationDate="2011-05-18T22:58:29.403" UserId="3505" />
  <row Id="16778" PostId="12465" Text="File systems and databases have solved the problems involved in providing random access, so you have the option to use them or to spend time reinventing the wheel. Unless you get a significant benefit out of doing so (e.g. Steam benefits massively from their GCF/NCF file formats) it probably isn't worth the investment. I'm not going to build my game its won physics engine if an excellent one is already available, and the same goes for a random access format." CreationDate="2011-05-18T23:03:43.627" UserId="2698" />
  <row Id="16779" PostId="12465" Text="That is a completely different discussion, you wrote &quot;cannot&quot;. If you mean &quot;not recommended&quot;, then write so. Even if it in the context leads to the right choice of action a lie is still a lie. In another context the wrong information may lead to a poor choice of action." CreationDate="2011-05-18T23:23:52.767" UserId="3505" />
  <row Id="16780" PostId="12465" Score="1" Text="I actually agree with you; I was rewriting my post as you wrote your last comment. I apologise for having provided misleading information, it's unacceptable on principle." CreationDate="2011-05-18T23:28:46.477" UserId="2698" />
  <row Id="16781" PostId="12422" Text="Not applicable to your actual case, but signed integer overflow is undefined in C, so it's probably a good idea to use an unsigned integer there in order to avoid some potential issues." CreationDate="2011-05-18T23:38:47.700" UserId="603" />
  <row Id="16782" PostId="12427" Text="It's the right answer, but I seem to be getting lost in the concepts... &#xA;at some point you seem to have stopped looking at the normal [0,1] and started using the perpendicular to the normal?&#xA;&#xA;oh I see, you're taking the line, and aligning it to the x axis, which is what I want to do, it's just that you don't really need the normal to do it (although doesn't using the normal make sure the rotation happens in the expected direction? or is that just ordering of A and B)" CreationDate="2011-05-19T01:54:03.477" UserId="7282" />
  <row Id="16783" PostId="12427" Text="Well I did not used the normal because it was not needed. But you can dot-product the normal with the axis that must be aligned with the normal to compute the required angle (-angle) instead of using the dot-product of segment and the axis that must be aligned with this segment." CreationDate="2011-05-19T02:03:37.957" UserId="6813" />
  <row Id="16785" PostId="12475" Text="Sounds right, I guess it's simpler than I thought." CreationDate="2011-05-19T03:00:29.563" UserId="7454" />
  <row Id="16786" PostId="12479" Text="Some good points, obviously I am just trying to get the algorithm correct, the implementation is far from ideal, I don't even clean up memory at this point :P." CreationDate="2011-05-19T03:25:48.293" UserId="4513" />
  <row Id="16787" PostId="12479" Text="At this point, the scaling over passes is 64 / i, obviously I will change that later, but it doesn't really explain the dimples effect currently experienced. :S" CreationDate="2011-05-19T03:33:55.120" UserId="4513" />
  <row Id="16788" PostId="12465" Text="Jonathan Hobbs, one of the few people on the internet who have principles. Thank you." CreationDate="2011-05-19T05:01:05.737" UserId="7191" />
  <row Id="16789" PostId="12483" Text="ok thanks it seams that only the second option is valid and up to date :&#xA;http://code.google.com/p/facebook-cpp-graph-api/&#xA;" CreationDate="2011-05-19T05:36:30.367" UserId="3689" />
  <row Id="16790" PostId="12446" Text="@Jesse the circle is just an image i placed on the location of the mouse, &#xA;`spriteBatch.Draw(zombieTex, new Rectangle(Mouse.GetState().X, Mouse.GetState().Y, 50, 50), Color.White);`" CreationDate="2011-05-19T07:34:10.000" UserId="7437" />
  <row Id="16791" PostId="12484" Text="@Vincent, thank you!!!:)" CreationDate="2011-05-19T08:02:01.267" UserId="2776" />
  <row Id="16792" PostId="12432" Text="There are many ways to get many things executing at once. One way is multithreading, but C# has other approaches such as tasks and futures that are more lightweight, and could be used per unit. See this altdevblogaday: http://altdevblogaday.org/2011/04/19/solving-problems-with-asynchrony-asset-loading/" CreationDate="2011-05-19T08:40:56.013" UserId="259" />
  <row Id="16793" PostId="12456" Text="And my WebGL debugger popped up so it can also use WebGL, so uh, what Vincent said." CreationDate="2011-05-19T10:19:37.097" UserId="337" />
  <row Id="16794" PostId="12450" Text="not sure but line 93 looks wrong, 64/i might need to be 64&gt;&gt;i (as you half the effect each octave)" CreationDate="2011-05-19T10:47:18.863" UserId="1742" />
  <row Id="16795" PostId="12411" Text="Thanks a lot, maybe i shouldn't worry about the render performance, it is really good news, in J2ME games, this is always a big problem." CreationDate="2011-05-19T11:07:37.097" UserId="7420" />
  <row Id="16796" PostId="12414" Text="This is a naive question, but is not going to be slow ? because IIUC, for a 4 level mipmap chain, that's a lot of rendering to a RenderTarget, and a lot of Texture2D. Is it not a performance killer ? Or am I completely of track ?" CreationDate="2011-05-19T11:28:53.183" UserId="2469" />
  <row Id="16797" PostId="12446" Text="Oh, I see. Well you just called the SpriteBatch.Begin by providing a transformation (cam.get_transformation(graphics.GraphicsDevice)) so the &quot;zombieTex&quot; texture will be offset by the camera's transformation when it needs to be drawn directly to the screen without translation. That would be my guess." CreationDate="2011-05-19T11:45:36.470" UserId="2111" />
  <row Id="16798" PostId="12414" Text="@dotminic: On a modern PC? Not likely. There are much worse things you could do than just render 4 flat textures. :)" CreationDate="2011-05-19T11:48:39.500" UserId="3289" />
  <row Id="16799" PostId="12446" Text="But how do i add that transormation to my sprites and other coördinates than? becaus i use my mouse location to shoot at too." CreationDate="2011-05-19T12:10:59.527" UserId="7437" />
  <row Id="16800" PostId="12484" Score="1" Text="I just watched the presentation and I think I would like to try out ForPlay in a later project. Seems like a really nice approach. Thanks for the link anyway!" CreationDate="2011-05-19T12:31:08.857" UserId="7463" />
  <row Id="16801" PostId="12446" Text="I'm not sure about this but you could do two different Draw sections, where one would use SpriteBatch.Begin() with the transformation, and then it would end (SpriteBatch.End()). After, you just do another SpriteBatch.Begin() call without any transformation for the HUD like that circle. That's how I would try first." CreationDate="2011-05-19T12:35:32.683" UserId="2111" />
  <row Id="16802" PostId="12446" Text="that fixex the drawing and shooting issue, but now the problem arises with the edge scrolling that doesn't work properly anymore.&#xA;i have a feeling this isn't going to work for me. :( but still thanks for your help." CreationDate="2011-05-19T13:00:15.587" UserId="7437" />
  <row Id="16803" PostId="12488" Score="2" Text="If you say &quot;C/C++&quot;, it's pretty likely that you don't have a good grasp on at least one of them, and probably both." CreationDate="2011-05-19T16:21:54.277" UserId="4662" />
  <row Id="16804" PostId="12414" Text="@Macke, ok I'll give it a try, but it does require a bunch of render targets if I'm not messing things up again." CreationDate="2011-05-19T16:35:36.323" UserId="2469" />
  <row Id="16806" PostId="12488" Score="2" Text=" I understand that some people confuse the two and I probably should of said C/C++/Objective-C to iterate that I understand the main languages that you can use to program on the iOS platform. I didn't feel like saying C/C++ would automatically mean that I confuse the two as one." CreationDate="2011-05-19T17:57:28.640" UserId="853" />
  <row Id="16807" PostId="12493" Score="5" Text="Agreed. As tldr: If you have to ask the question, you're much likely better off going with an existing engine." CreationDate="2011-05-19T18:14:45.160" UserId="6690" />
  <row Id="16808" PostId="11358" Score="1" Text="My understanding is that Apple reversed its position about other languages being used for iPhones apps." CreationDate="2011-05-19T18:59:45.107" UserId="539" />
  <row Id="16809" PostId="12501" Text="Forgot to mention. Since I put player_ID in the park_ground_state table, the players have a one to many relationship with parks. So they can have multiple parks." CreationDate="2011-05-19T19:25:42.343" UserId="6937" />
  <row Id="16810" PostId="12501" Text="Also, if you make state_data a nchar[16] array. You can have many more options for states of the individual cells. Each separate character would represent a state for a cell." CreationDate="2011-05-19T19:28:52.730" UserId="6937" />
  <row Id="16811" PostId="12503" Text="You wouldn't happen to have a link to a project that might be similar to what you describe?  I have never used script languages before.  I was hoping to just define the cards in XML, read them in and basically the game would just apply what the card does." CreationDate="2011-05-19T19:46:22.863" UserId="4338" />
  <row Id="16812" PostId="12498" Text="Very true. Those guys are starting up a new company to continue moving it forward." CreationDate="2011-05-19T20:11:17.413" UserId="1198" />
  <row Id="16813" PostId="12504" Score="3" Text="Agreed, at the same time, IMHO all programmers need to know databases at this level regardless of if they are going to be writing them for their jobs in the future. This project could serve as a good point to start learning and as they don't know it yet. I'de say it's probably the biggest benefit they will get from this project if they implement all of the work themselves. You're still right though, in the short term, a DB programmer would help." CreationDate="2011-05-19T20:17:36.217" UserId="6937" />
  <row Id="16814" PostId="12503" Text="XML is not a bad idea, but you will be very limited trough. Script offer the ability to create custom behaviors using the public methods offered by the engine. This way the engine can remain as &quot;generic&quot; as possible. I don't know an example applying to cards, but there is tons of games using LUA like WoW (addons) or Aquaria (behaviors of entities)." CreationDate="2011-05-19T20:23:00.020" UserId="6813" />
  <row Id="16815" PostId="12446" Text="Is there any way I could have access to the full source code? Maybe I could *try* to find how to fix it." CreationDate="2011-05-19T20:26:29.710" UserId="2111" />
  <row Id="16816" PostId="12503" Text="Hmm I'm seeing a real advantage to using a script language.  So in the example, you have damage.  For a card game, with multiple things would it be better to try to figure out all the actions possible or try to build a generic 'setActionEffect'.  In Munchkin you can say apply a modifier to your level to inrease it.  You can also make the monster disappear.  You can even adjust a die roll.  That piece of the puzzle is what I'm challenged with, how to model something complex like that." CreationDate="2011-05-19T20:39:22.090" UserId="4338" />
  <row Id="16817" PostId="12449" Text="For what it's worth, your images look very pretty. :)" CreationDate="2011-05-19T20:39:50.077" UserId="5259" />
  <row Id="16818" PostId="12504" Score="1" Text="Yea kind of an interesting challenge.  A programmer that comes in and asks, &quot;How do I make art?&quot; might be better off just getting an artist partner, but on the other hand maybe they really can learn art and do it.  &#xA;&#xA;Irrespective of the &quot;who&quot;, I really do stress the idea of adding a layer between game and database.  That lets you restructure the back-end database system in the future without breaking the game for example." CreationDate="2011-05-19T20:42:10.057" UserId="3830" />
  <row Id="16819" PostId="12450" Text="Ahhh!! Thank you so much, I can't believe that, I knew it'd be something stupid for that second problem.&#xA;Loved your makeshift TGA code, sorry, I should have saved you the trouble and put up the header." CreationDate="2011-05-19T20:49:40.743" UserId="4513" />
  <row Id="16820" PostId="12503" Text="I'm not really sure how scripting is going to help his &quot;engine&quot; from devolving into a whole host of properties such as &quot;ProtectionAgainstX&quot; and &quot;CanDoY&quot;, etc. In fact it seems like scripting would force you to break encapsulation down, which I believe would make it harder and harder to add new cards and change fundamental game rules. " CreationDate="2011-05-19T20:50:01.453" UserId="539" />
  <row Id="16821" PostId="12499" Text="I'm very aware on how to clean up memory, but seeing as this was an algorithm prototype only, and would be re-written to use vectors, I just wanted to make sure it was correct." CreationDate="2011-05-19T20:51:03.563" UserId="4513" />
  <row Id="16822" PostId="12449" Text="scrand(): I'm not entirely sure that I understand--is this supposed to return a signed character on the interval (-r/2,r/2]?&#xA;&#xA;The dimples, to me anyways, seem kind of like the result of overflow. The adjacent areas seem to suddenly shoot black, and then climb back up to white. Overall, it also looks like there is sharp banding, again suggesting to me that you are overflowing, perhaps.&#xA;&#xA;Would you mind doing the math in a higher precision (say, integer), and then clamping the values to the range [0,256] or [-128,127]?" CreationDate="2011-05-19T20:55:46.167" UserId="5259" />
  <row Id="16823" PostId="12449" Text="The problem was solved below, it was because I was bounds checking against the range of the random value, not its actual value. The scrand() was a temporary 'noise' function ideally returning [-128, 127]" CreationDate="2011-05-19T20:59:14.857" UserId="4513" />
  <row Id="16824" PostId="12449" Text="Ah, cool! Glad to hear it's working now." CreationDate="2011-05-19T21:03:58.643" UserId="5259" />
  <row Id="16825" PostId="12450" Score="2" Text="+1 for ghetto tga." CreationDate="2011-05-19T21:04:15.853" UserId="5259" />
  <row Id="16826" PostId="12503" Text="@Alex: The goal is to make it the more &quot;generic&quot; possible, so it can be used with a completely different universe without having to change the game code/core. The &quot;protectionAgainstIce&quot; used in the pseudo-code was a bad example used to demonstrate the &quot;if&quot; statement, but it should be something like isProtectedAgainst(&quot;ice&quot;) which is more generic an reusable with different stuffs (&quot;fire&quot;, &quot;balls&quot;, &quot;laser&quot;, etc.). This way there is an &quot;infinity&quot; of possibilities as long as the types (fire etc) are defined outside the game core too." CreationDate="2011-05-19T21:25:22.660" UserId="6813" />
  <row Id="16827" PostId="12503" Text="But this is neither the best nor the only solution, this is just the way I would have done it ;)" CreationDate="2011-05-19T21:31:11.767" UserId="6813" />
  <row Id="16828" PostId="12488" Text="I do like this question as it makes a welcome change from the usual &quot;how do I make my own engine?&quot; questions. +1 for you, sir." CreationDate="2011-05-19T22:17:41.907" UserId="2332" />
  <row Id="16830" PostId="12502" Score="1" Text="Please clarify something for me: are you looking for something that will just let you develop Munchkin painlessly, or do you have the ambition to create a generic card game framework that people can also use on other card games? (Aside, if you're considering the latter, I would advise just focusing on the former at this point)" CreationDate="2011-05-19T22:35:24.687" UserId="2698" />
  <row Id="16831" PostId="12380" Text="I think I'll use that for the night time skybox in my game. Thanks for the link!" CreationDate="2011-05-19T22:40:40.783" UserId="7191" />
  <row Id="16832" PostId="12501" Text="Hmm, but each tile is basically going to be a string, which will be a library ID for Flash, as all the assets would come in at run time from a .swf, how I would I store all 16 strings though as one record, ah maybe as 16 columns? What about though the trickier issue of the 2nd layer 2D array?" CreationDate="2011-05-19T23:25:42.037" UserId="7482" />
  <row Id="16833" PostId="12504" Text="Finding someone else to do this work was my first reaction, but it proved to be a hard thing to do, finding people who know what they are doing and have experience with this kind of work AND is affordable is almost impossible. I did find someone eventually but they keep dissapearing and the project is not moving forward, so I'm left with not much choice but to do it myself, hence my question :) oh and I should mention that I'm using AMFPHP to communicate to the php/mysql. All I need is to understand how to design the database better." CreationDate="2011-05-19T23:28:18.243" UserId="7482" />
  <row Id="16834" PostId="12502" Text="I'm not really interested in Munchkin anymore, but I actually have another card game in mind (something of my own creation) that i'd like to put in computer form, painlessly.  Does that help?" CreationDate="2011-05-19T23:58:17.797" UserId="4338" />
  <row Id="16835" PostId="12505" Text="Look into HLSL, distortion effects are not complicated to do using a simple pixel shader. The Bloom sample on the XNA site is a good place to start. Also, Aquaria is open source ;)  http://hg.icculus.org/icculus/aquaria/file/deb98b4addea" CreationDate="2011-05-20T00:31:55.600" UserId="2345" />
  <row Id="16836" PostId="12505" Score="1" Text="I just noticed that you are targeting the Windows Phone 7, in that case forget my HLSL suggestion (XNA does not give you access to programmable shaders on the phones). Instead, here is the ripple effect code from Aquaria (Line 615): http://hg.icculus.org/icculus/aquaria/file/deb98b4addea/BBGE/AfterEffect.cpp#l615" CreationDate="2011-05-20T00:42:44.607" UserId="2345" />
  <row Id="16837" PostId="12507" Score="2" Text="Oh. That...actually works pretty well. And so simple that I now feel foolish for not thinking of it. Oh well. Thanks!" CreationDate="2011-05-20T03:49:48.080" UserId="6985" />
  <row Id="16838" PostId="12509" Text="I'm not really sure I understand. Are you saying you want to have 100 sprites that are all in the same spot and animated the same way?" CreationDate="2011-05-20T05:01:59.950" UserId="5060" />
  <row Id="16839" PostId="12504" Text="@Tim Holt: It's not possible to write to a DB directly from flash. Although there is a lot you can screw up in your intermediate layer, mainly validation and escaping which will enable SQL injection attacks if not done properly." CreationDate="2011-05-20T06:11:40.783" UserId="20" />
  <row Id="16840" PostId="12502" Text="As long as you're [writing a game, not just an engine](http://scientificninja.com/blog/write-games-not-engines)." CreationDate="2011-05-20T06:14:01.840" UserId="2698" />
  <row Id="16841" PostId="12446" Text="you can download the complete solution here [ZombieSurvival](https://rapidshare.com/files/517100100/ZombieSurvival.rar)" CreationDate="2011-05-20T07:09:11.370" UserId="7437" />
  <row Id="16842" PostId="12507" Score="2" Text="It's often tempting to make things more complicated than they need to be :)" CreationDate="2011-05-20T07:13:23.380" UserId="1163" />
  <row Id="16843" PostId="12496" Text="Very interesting idea. Hopefully they eventually enable 2d canvas acceleration as well at some point." CreationDate="2011-05-20T07:15:39.883" UserId="37" />
  <row Id="16844" PostId="12512" Text="and just to complete this answer, you can always add mobs or remove them from your checking loop. eg. when there is no one to observe what a mob is doing it's just not logical to do all the thing that the NPC would do at that time. so you can easily filter many mobs and just check if the important ones(usualy the ones close enough to players) need any updates" CreationDate="2011-05-20T09:30:22.747" UserId="7328" />
  <row Id="16845" PostId="12517" Text="I don't think you have an option. You could either do it explicitly (your first way) or implicitly (the second), but I doubt you're going to find a mid point. Unless you have some kind of `ent:&quot;Point&quot;:SetPos(...)`..which is almost the first method again. Maybe use the second method for common components?" CreationDate="2011-05-20T11:02:31.283" UserId="1156" />
  <row Id="16846" PostId="12504" Text="If you're worried about escaping you're doing it wrong. Your lowest level (aside from the DB itself) should be built on parameterized queries. Anything else and you should be fired." CreationDate="2011-05-20T11:11:32.043" UserId="744" />
  <row Id="16847" PostId="12518" Score="1" Text="That Cinder framework you linked to looks quite simple actually. Kinda similar to processing." CreationDate="2011-05-20T12:51:44.627" UserId="20" />
  <row Id="16848" PostId="12467" Score="1" Text="You're using it, but also writing it and selling it. Please disclose commercial interests when answering questions with links to products." CreationDate="2011-05-20T13:23:19.003" UserId="744" />
  <row Id="16849" PostId="12518" Score="2" Text="Sorry, the English here is very poor, I'm having a hard time figuring out what you are actually asking." CreationDate="2011-05-20T13:51:07.367" UserId="741" />
  <row Id="16850" PostId="12522" Text="Thanks, it was helpful. But my consideration was mostly about some sort of pre-rendered frames." CreationDate="2011-05-20T14:48:08.380" UserId="7497" />
  <row Id="16851" PostId="12522" Score="3" Text="Pre-rendered fire animations are still usually done with particle effects, just a particle effect in a graphics tool and not in the game engine. Or are you asking how to create the individual particle images?" CreationDate="2011-05-20T14:50:38.453" UserId="6588" />
  <row Id="16852" PostId="12516" Score="1" Text="It sounds like you are asking if GML is a subset of C++?" CreationDate="2011-05-20T15:00:45.387" UserId="1430" />
  <row Id="16853" PostId="12518" Text="To learn c++, writing simple c++ functions and classes, without writing a complete program to see something on the screen. How does the game maker's GML language. Or, as in Adobe Flash ActionScript. Or, as the script Unity3D." CreationDate="2011-05-20T15:01:12.550" UserId="7490" />
  <row Id="16854" PostId="12518" Text="@Saulius I think you mean 'I want to see something on the screen without writing lots of code, like how I can in Unity or Flash'. The term you want is a game engine. :)" CreationDate="2011-05-20T15:13:00.417" UserId="1156" />
  <row Id="16855" PostId="12467" Text="Updated. Thanks." CreationDate="2011-05-20T15:23:36.343" UserId="7453" />
  <row Id="16856" PostId="12518" Text="Sorry for my bad english. I have downloaded a few game engines, but not look seriously at them. Just looking for any running program to write not a script, but maybe something like the cropped c++ language looking like a script." CreationDate="2011-05-20T15:23:43.560" UserId="7490" />
  <row Id="16857" PostId="12519" Text="possible duplicate of [detecting the coordinates where a bullet hits a mesh](http://gamedev.stackexchange.com/questions/12524/detecting-the-coordinates-where-a-bullet-hits-a-mesh)" CreationDate="2011-05-20T16:05:25.273" UserId="1156" />
  <row Id="16858" PostId="12507" Score="1" Text="elegant answer!" CreationDate="2011-05-20T17:01:57.607" UserId="1477" />
  <row Id="16859" PostId="12532" Text="If I assume I'd just have to handle for NoPositionComponentException or something, what's the advantage of this over just putting all that in the Entity class?" CreationDate="2011-05-20T17:14:42.677" UserId="1156" />
  <row Id="16860" PostId="12533" Text="I had thought of using indexers..this is really nice. I shall wait a bit to see what else appears, but I'm veering towards a mix of this, the usual GetComponent(), and some properties like @James suggested for common components." CreationDate="2011-05-20T17:43:51.680" UserId="1156" />
  <row Id="16861" PostId="12532" Text="Being unsure what your entity class actually contains I can not say there is an advantage or not. I personally advocate component systems where there is no base entity per-say simply to avoid the question of 'Well what belongs in it'. However I would consider an interface class like this a good argument for it existing." CreationDate="2011-05-20T18:30:51.407" UserId="4443" />
  <row Id="16862" PostId="12533" Text="I may be missing what is being said here but this seems more of a replacement for e.GetProperty&lt;type&gt;(&quot;NameOfProperty&quot;).Whatever with e[&quot;NameOfProperty&quot;].Whatever ?? " CreationDate="2011-05-20T18:34:11.483" UserId="4443" />
  <row Id="16863" PostId="12532" Text="I can see how this is easier (I don't have to query the position through GetProperty), but I don't see the advantage of this way instead of placing it in the Entity class itself." CreationDate="2011-05-20T18:34:54.120" UserId="1156" />
  <row Id="16864" PostId="12533" Text="@James It's a wrapper for it (Much like your design)..except it's more dynamic - it does it automatically and cleaner than the `GetProperty` method..Only downside is the string manipulation and comparison. But that's a moot point." CreationDate="2011-05-20T19:13:59.513" UserId="1156" />
  <row Id="16865" PostId="11694" Text="You can still download Xcode 3.2.6 w/ iOS SDK 4.3 with a free account but are required to upgrade your account if you want to download Xcode 4." CreationDate="2011-05-20T20:18:45.147" UserId="303" />
  <row Id="16866" PostId="12533" Text="Ah, my misunderstanding there. I assumed the GetProperty was part of the entity (And so would do what was described above) and not the C# method." CreationDate="2011-05-20T20:45:58.783" UserId="4443" />
  <row Id="16867" PostId="12536" Text="@josh: thanks for edit my ugly english!" CreationDate="2011-05-20T20:59:01.723" UserId="4481" />
  <row Id="16868" PostId="12536" Score="1" Text="may I ask how are you storing cards in your program, are you havving an array containing all cards, or does every custom control instance take a hold of some card or any thing else that could help?" CreationDate="2011-05-20T21:04:57.300" UserId="7328" />
  <row Id="16869" PostId="12536" Text="@gajet: I can store them in any kind of way: list&lt;cardcontrol&gt;, or cardcontrol[] etc. etc. Control can expose value, color of any thing can help the play..." CreationDate="2011-05-20T21:08:38.300" UserId="4481" />
  <row Id="16870" PostId="12537" Text="@Gajet: than for your time! I dont have pile, but 32 card distribuiited in 4 hands. The any card can play or not whit others base on rules game. I need to know which card is underneath" CreationDate="2011-05-20T21:17:42.580" UserId="4481" />
  <row Id="16871" PostId="12537" Text="if there is no pile involved how can a card be underneath another?" CreationDate="2011-05-20T21:23:15.320" UserId="7328" />
  <row Id="16872" PostId="12537" Text="@gajet: I can move any card freely in the board. Based on rules game each card interact diffently depends on which card is underneath" CreationDate="2011-05-20T21:25:19.703" UserId="4481" />
  <row Id="16873" PostId="12416" Text="What font did you add as a spritefont? If you use the same font and type the same characters into Word, do they show up as expected?" CreationDate="2011-05-20T21:26:29.280" UserId="1198" />
  <row Id="16874" PostId="12544" Text="hum **time** is supposed to be a float comprised between 0 and 1, whereas the total of durations (**fFrameLength** in your example) is not supposed to be comprised between 0 and 1 from what I understood. Thus your script need to be slightly modified. " CreationDate="2011-05-21T00:00:26.397" UserId="6813" />
  <row Id="16875" PostId="12544" Text="I guess that `if ( time * animation_length &lt; fFrameLength )` should fix the problem." CreationDate="2011-05-21T00:21:45.810" UserId="6813" />
  <row Id="16876" PostId="12416" Text="@Nate Yes, I did some investigation into this. It seems like XNA dont have any support for Complex Text Layout (CTL - http://en.wikipedia.org/wiki/Complex_text_layout). I looked into shwan's blog - http://blogs.msdn.com/b/shawnhar/archive/2007/04/26/unicode-fonts-in-xna.aspx. Its very surprising. I dont know how others handle this situation." CreationDate="2011-05-21T06:45:03.883" UserId="7103" />
  <row Id="16877" PostId="12546" Text="A link alone is not an answer. What if that site goes down tomorrow?" CreationDate="2011-05-21T07:58:58.100" UserId="20" />
  <row Id="16878" PostId="12540" Text=" I can see why the shared-data-by-name system may be an issue, but how else could I avoid the problem of multiple components needing data (i.e. which one do I store something in)? Just being very careful at the design stage?" CreationDate="2011-05-21T08:37:13.467" UserId="1156" />
  <row Id="16879" PostId="12551" Text="What languages do you know? It's almost certainly going to be faster to use one of those. Anything reasonably powerful will be able to do 3D. Actionscript yes, but with some difficulty." CreationDate="2011-05-21T09:49:47.723" UserId="1156" />
  <row Id="16880" PostId="12551" Text="Also, what target is this for? The web? Consoles?" CreationDate="2011-05-21T09:50:05.227" UserId="1156" />
  <row Id="16883" PostId="12551" Text="Hey. See the top of the question" CreationDate="2011-05-21T09:53:56.857" UserId="7505" />
  <row Id="16884" PostId="12552" Text="You know any decent Javascript libraries that target gaming requirements?" CreationDate="2011-05-21T09:58:55.870" UserId="7505" />
  <row Id="16885" PostId="12552" Text="Uh, you won't need a Javascript library. Unity3D is written in C++ I believe, and uses Javascript for scripting. (as well as C# and Boo IIRC)" CreationDate="2011-05-21T09:59:58.747" UserId="1156" />
  <row Id="16886" PostId="12540" Text="Also, in terms of the 'having the user also have to know what type it is', couldn't I just cast it to property.GetType() in the get() method?" CreationDate="2011-05-21T10:01:20.557" UserId="1156" />
  <row Id="16887" PostId="12552" Text="Sorry, mis-read your answer. Will edit again when I've looked at unity 3d." CreationDate="2011-05-21T10:01:53.493" UserId="7505" />
  <row Id="16888" PostId="12551" Text="@YsoL8 what exactly do you mean by afterthoughts?" CreationDate="2011-05-21T10:02:16.373" UserId="1156" />
  <row Id="16889" PostId="12551" Text="It occurred to me to add details about my background before I saw your comment" CreationDate="2011-05-21T10:24:52.710" UserId="7505" />
  <row Id="16890" PostId="12552" Text="OK some of those demos are seriously impressive: download!" CreationDate="2011-05-21T10:25:28.793" UserId="7505" />
  <row Id="16891" PostId="12555" Text="Your algorithm looks sound.  A code snippet would be useful." CreationDate="2011-05-21T11:57:27.640" UserId="2902" />
  <row Id="16892" PostId="12556" Text="Thanks for that, will help :) Wouldn't the dynamic way have the same kind of effect as just casting to property.GetType(), though?" CreationDate="2011-05-21T12:03:10.303" UserId="1156" />
  <row Id="16893" PostId="12555" Text="JRT: Actually his algorithm is flawed, if the goal is to prevent the player from passing through objects." CreationDate="2011-05-21T12:11:45.533" UserId="5021" />
  <row Id="16894" PostId="12555" Text="My understanding is that the character is moving so fast it has gone completely through the platform in the time between two frames and so the collision isn't being detected." CreationDate="2011-05-21T12:14:11.010" UserId="1386" />
  <row Id="16895" PostId="12555" Text="@CiscoIPPhone: Exactly. When the the player is going slower the collision detection works fine. " CreationDate="2011-05-21T12:35:35.933" UserId="6728" />
  <row Id="16896" PostId="12555" Text="@Olhovsky: If his intention is to calculate the next position, then check for a collision based on the calculated position, then why is this flawed?  (His implementation may well be flawed)" CreationDate="2011-05-21T12:54:58.430" UserId="2902" />
  <row Id="16897" PostId="12555" Text="That seems like a lot of code.." CreationDate="2011-05-21T13:25:53.883" UserId="1156" />
  <row Id="16898" PostId="12446" Text="Edited my answer to show the changes that I would have made. Sorry if I'm taking it very slowly, but I thought it would be better than just throwing the solution." CreationDate="2011-05-21T13:29:04.750" UserId="2111" />
  <row Id="16899" PostId="12446" Text="Also, sorry for the long delay, it took be a while to make that answer.. :)" CreationDate="2011-05-21T13:29:30.147" UserId="2111" />
  <row Id="16901" PostId="12557" Text="I implemented the first method and increased the frame rate to 60. Now I still got the problem that the player goes trough the ground (sometimes). My tiles are 16x16. Maybe a max velocity y?&#xA;&#xA;The second method sounds good, but I'm wondering how to get the lines of the blocks close to the line from the start to new postion line to find the intersection. " CreationDate="2011-05-21T15:07:10.370" UserId="6728" />
  <row Id="16902" PostId="12556" Text="There will be a cast at some point, since TryGetMember has an out `object` parameter - but all of this will be resolved at runtime. I think it's a glorified way to keep a fluent interface over i.e. entity.TryGetComponent(compName, out component). I'm not sure I did understand the question, however :)" CreationDate="2011-05-21T15:33:20.633" UserId="1258" />
  <row Id="16903" PostId="12557" Text="You should definitely have a max falling speed. This would help tremendously and I don't think it would be a huge deal to the player." CreationDate="2011-05-21T18:15:01.263" UserId="3547" />
  <row Id="16904" PostId="12557" Text="There is a terminal velocity for things falling in real life so you'd actually be making it more realistic =)" CreationDate="2011-05-21T18:21:30.863" UserId="1386" />
  <row Id="16905" PostId="12557" Text="I implemented the max velocity y and tweeked the gravity and player jump physics. And it works like a charm. Thanks for the link and information!" CreationDate="2011-05-21T18:25:29.277" UserId="6728" />
  <row Id="16906" PostId="12561" Text="don't have any idea; you can ask icefrog guess he can help!" CreationDate="2011-05-21T19:04:58.203" UserId="7328" />
  <row Id="16907" PostId="12556" Text="The question is that I could use dynamic types everywhere, or (AFAICS) returning (property.GetType())property." CreationDate="2011-05-21T19:35:37.717" UserId="1156" />
  <row Id="16908" PostId="12540" Text="What kind of global (in entity scope) data are you pushing to these shared data repositories?  Any kind of game object data should be easily accessible through your &quot;engine&quot; classes (transform, colliders, renderers, etc).  If you're making game logic changes based on this &quot;shared data&quot;, then it's a lot safer to have one class own it and actually make sure that component is on that game object than just blindly asking to see if some named variable exists.  So yes, you should handle that in the design phase.  You could always make a component that just stores data if you really need it." CreationDate="2011-05-21T19:45:16.047" UserId="51" />
  <row Id="16910" PostId="12570" Text="You should try to add a Z coordinate value, to begin with. I'm pretty sure that your engine returns 3 values and not 2. Thus, you need to use all of the 3 values if you want to test collision correctly. " CreationDate="2011-05-22T00:39:14.460" UserId="6813" />
  <row Id="16911" PostId="12570" Text="Thanks, but no,it's not as i told i m adapting this engine which is written for 2d graphics so there is no Z coordinate there,and i don't think that is the reason of all above problems" CreationDate="2011-05-22T00:51:46.027" UserId="7518" />
  <row Id="16913" PostId="12570" Text="You convert 2D to 3D without Z ? I must have missed something. I think it's time for me to sleep few hours. Even if your balls are moving on a 2D plan, as long as you are using the returned values to change the position of the balls in a 3D world, you need some sort of Z coordinate. It can be fixed at Z=1 or Z=15 no matter, but you will need some sort of Z coordinate to convert the 2D position of your physic simulation into a 3D  position to render the balls in your 3D world. I may have misunderstood the problem though. " CreationDate="2011-05-22T01:08:45.663" UserId="6813" />
  <row Id="16915" PostId="12570" Text="i have shown all the code, i don't have any more and this is not working. Do u really think Z has the same importance as X and Y to move the ball ideally...the only problem is to  select  and produce the right/suitable value for X and Y so that ball don't go out of the panel and for this the minX/minY/maxY and maxX also needs to be set with suitable and appropriate values..." CreationDate="2011-05-22T01:22:51.647" UserId="7518" />
  <row Id="16916" PostId="12570" Score="1" Text="The problem is that the X coordinate for the same pixel on your screen is generally not the same value at Z=1 and Z=15 in your 3D render engine (because it use to be a perspective projection) except if you render using orthographic projection. Thus the X coordinate you get is probably not corresponding to the positions of the pixels on your screen." CreationDate="2011-05-22T01:37:35.807" UserId="6813" />
  <row Id="16917" PostId="12555" Text="@JRT: It's flawed because he doesn't compute the next position in his algorithm. His algorithm describes discreet collision detection, where he only detects collisions with the current position at this frame." CreationDate="2011-05-22T03:11:25.787" UserId="5021" />
  <row Id="16918" PostId="12544" Text="Adjusted based on this info. I just missed it some how, even reading it twice after reading the comments I missed that the time float is a percentile of the animations position." CreationDate="2011-05-22T06:39:22.227" UserId="4443" />
  <row Id="16919" PostId="12575" Score="1" Text="I was thinking of having a mesh_manager, and then you ask the manager, mesh_manager-&gt;get(&quot;Speher&quot;); and the manager handles all the meshes. Which way do you prefer? Maybe your way is better, because then you can easily change mesh by just doing, mesh_component(set Mesh) or something " CreationDate="2011-05-22T08:50:42.610" UserId="5612" />
  <row Id="16920" PostId="12555" Text="@Olhovsky: How do you mean flawed? How can I predict another frame ahead without knowing what the player will do at that frame?  " CreationDate="2011-05-22T09:11:05.220" UserId="6728" />
  <row Id="16921" PostId="12564" Text="The time elapsed method will keep up with the delay by updating the physics with the lost time. Your method in the other hand will not catch up with the delay when the update cycles will be higher then 10 milliseconds (not smooth)." CreationDate="2011-05-22T09:13:54.300" UserId="6728" />
  <row Id="16922" PostId="12578" Text="yeah i got the idea from unity and was hoping to be able to make something similar in my engine ill update my question and add a little more detail as to how my engine is setup.. And thanks for the help...i will attempt to implement it now :D" CreationDate="2011-05-22T09:44:15.743" UserId="7168" />
  <row Id="16923" PostId="12580" Score="2" Text="'Best' is very subjective." CreationDate="2011-05-22T10:13:24.473" UserId="1156" />
  <row Id="16924" PostId="12577" Score="1" Text="Testing. I think that's probably the only efficient way." CreationDate="2011-05-22T10:16:50.000" UserId="1156" />
  <row Id="16925" PostId="12564" Text="That is only a problem if you set the update rate too high for the computer to keep up. You'd do variable step 20 years ago because stuff like this was on on the limit of what a computer could handle. That is not so any more." CreationDate="2011-05-22T10:32:46.320" UserId="3505" />
  <row Id="16926" PostId="12582" Text="besides those 2 you can also try shiva3D you need commertial lisence for this one also but it's a little cheaper" CreationDate="2011-05-22T10:34:49.613" UserId="7328" />
  <row Id="16927" PostId="12573" Text="Maybe you can use glVertexAttribDivisor: http://www.opengl.org/sdk/docs/man4/xhtml/glVertexAttribDivisor.xml- but I don't know, if it will work with ordinary draw commands (without instanced drawing). " CreationDate="2011-05-22T11:12:54.040" UserId="4947" />
  <row Id="16928" PostId="12588" Text="This is something I've never considered. +1 interesting question." CreationDate="2011-05-22T12:05:50.927" UserId="1156" />
  <row Id="16931" PostId="12591" Text="Thanks that is perfect ! " CreationDate="2011-05-22T12:45:40.417" UserId="5275" />
  <row Id="16932" PostId="12555" Text="@Sven: You can't know *for certain* where an object will be next frame, because objects may collide with it between this frame and next, however you can add velocity*timestep to the object to find the position that the object will be in if it doesn't collide with anything. Typically physics engines accurately find collision by tracing an object from this frame to the next, to find the earliest collision point. This prevents any objects from falling through other objects, and this is what CiscolPPhone describes as his &quot;Second method&quot;." CreationDate="2011-05-22T14:05:54.417" UserId="5021" />
  <row Id="16933" PostId="12588" Text="The first one. If doing the second you increase the input lag by a full frame, possibly more depending on how you get input in the first place and V-sync. Always make sure not to increase the input lag" CreationDate="2011-05-22T14:23:13.217" UserId="1883" />
  <row Id="16934" PostId="12559" Score="1" Text="It doesn't have to be faster. &#xA;Take the world of Oblivion, rendering this as one would just be stupid and very slow since you can't choose what sections are visible to the player. You will end up wasting a ton of resources" CreationDate="2011-05-22T14:27:08.717" UserId="1883" />
  <row Id="16935" PostId="11113" Text="Platform please? On OpenGL ES 2.x, many drivers are buggy." CreationDate="2011-05-22T14:27:32.697" UserId="721" />
  <row Id="16936" PostId="12559" Score="1" Text="His example was a corridor. If he had said 'the entire world', I would've mentioned that. :P" CreationDate="2011-05-22T14:31:37.563" UserId="1156" />
  <row Id="16937" PostId="12559" Text="Well spoken, my bad" CreationDate="2011-05-22T14:55:09.993" UserId="1883" />
  <row Id="16938" PostId="9834" Score="3" Text="I say show us your game, I have got no idea how good that game of yours actually is, but if you want to sell it you'll need feedback in order to do the polish. Apart from this enabling us to help you in that regard I don't see any other way of being able to provide a good answer for your question." CreationDate="2011-05-22T15:56:33.127" UserId="3505" />
  <row Id="16939" PostId="12586" Text="in function `public void drawworld()` you have to change ` trans[i].setTranslation(new Vector3f(ball[i].getX(),                    ball[i].getY(), 0.0f));` but i have to calculate the exact formulas if you want to know what you yuo write there, try solving the problem I described and if you couldn't comment here so that I'll try!" CreationDate="2011-05-22T15:59:48.397" UserId="7328" />
  <row Id="16940" PostId="12581" Text="Another mesh deformation solution might be to make mesh data lazily copied when accessed.  Normally it just draws, but if you access the mesh data it makes a copy so you can do whatever you want with it without affecting other instances of it." CreationDate="2011-05-22T17:06:05.460" UserId="51" />
  <row Id="16941" PostId="12555" Text="@Olhovsy: My code already used that method what you are describing, it adds only the velocity in the update. So in the collision method you know the current location and by adding the velocity you know the next. I thought you stated that I had to check another frame ahead." CreationDate="2011-05-22T17:35:08.700" UserId="6728" />
  <row Id="16942" PostId="12554" Text="thank you very much for taking the time to respond. Since we were constrained by time, we had to roll a temp solution. (not based on irc or jabber) I'm sure that many indie developers would be interested in being able to access Chatblade through deferred payments or through new license options. As soon as we can spare the manpower to integrate Chatblade, I'll let you know. It is still the preferred solution of course." CreationDate="2011-05-22T17:37:11.180" UserId="5868" />
  <row Id="16943" PostId="12586" Text="i thought you talked about correcting the initial position (vector3f pos),  what are u finding wrong now in this function, it just translating the ball according to values returned from engine .." CreationDate="2011-05-22T17:52:34.587" UserId="7518" />
  <row Id="16944" PostId="12586" Text="if i'm right, you see objects move faster when they get near edges of the screen, that's because you are moving object with a linear function while you are rendering them using perspective view, you have to either change your camera type to render an isometric image or you have to change your function as I explained above (all the ray stuff and where it hits that perpendicular plane), and if you want me to calculate what the correct position should be you have to help me with more details like what game engine are you using what are your camera properties (viewrect) and so on ..." CreationDate="2011-05-22T18:01:02.007" UserId="7328" />
  <row Id="16945" PostId="12586" Text="this is all the code what i have, i don't have any other code. on the basis of experience and knowledge, i will try to adapt some other engine. may be this:http://stackoverflow.com/questions/345838/ball-to-ball-collision-detection-and-handling, but i have already so much problem with only this little engine/code." CreationDate="2011-05-22T18:22:13.153" UserId="7518" />
  <row Id="16946" PostId="12586" Text="then how are you rendering your scene you should at least use opengl/directx with their default configurations even if you don't use any gameengine." CreationDate="2011-05-22T18:29:52.610" UserId="7328" />
  <row Id="16947" PostId="12586" Text="if you want we can work on this engine, if you feel it's well documented and we can lead to the solution easily. i m using java3D the initialization code is not included." CreationDate="2011-05-22T18:32:55.717" UserId="7518" />
  <row Id="16948" PostId="12593" Text="@Gajet are you suggesting to double-buffer all game data on the cpu-side too?" CreationDate="2011-05-22T18:55:54.113" UserId="1839" />
  <row Id="16949" PostId="12586" Text="then let me try solving that problem" CreationDate="2011-05-22T18:58:59.877" UserId="7328" />
  <row Id="16951" PostId="12593" Text="somthing like that, but not all data, only the thing that can move.&#xA;so that both GPU&amp;CPU read from CPUbuffer[0] and each do their calculations, and save their results in memory buffer/CPUBuffer[1], and when both their works finished they start reading from CPUBuffer[1]" CreationDate="2011-05-22T19:12:10.093" UserId="7328" />
  <row Id="16952" PostId="12586" Text="first try this line in your initializations `javax.media.j3d.View&#xA;.setProjectionPolicy(PARALLEL_PROJECTION)` it should do the trick. i think it would help alot." CreationDate="2011-05-22T19:19:09.007" UserId="7328" />
  <row Id="16953" PostId="12517" Text="I think you may find use on http://gamedev.stackexchange.com/questions/12529/a-component-based-entity-system-with-user-friendliness-in-mind I was trying to find a way to make my system as easy to use and compact as possible in terms of naming :)" CreationDate="2011-05-22T19:37:57.113" UserId="1156" />
  <row Id="16954" PostId="12564" Text="But then you still have a gap in time that is not caught by your physics when the elapsed time exceeds let's say 100, because the user's machine was busy with other more important processes.  " CreationDate="2011-05-22T19:41:57.973" UserId="6728" />
  <row Id="16955" PostId="12593" Text="This is overkill, impractical and ends up in a messy code-base since the game entity will have _normal_ and double-buffered properties relevant to rendering. There are much easier solutions for the communication from game-thread to the render-thread, like command queues. -1 for suggesting this" CreationDate="2011-05-22T19:42:36.943" UserId="1839" />
  <row Id="16956" PostId="12593" Text="agreed but i think it's the only way you can fully use the power of CPU and GPU simultaneously, command queues fir example won't work since every time CPU finnished a generating frame data it should give all it's data to GPU, and this means you have to wait CPU finishes working and then copy all the buffer at that time, keep in mind that nothing in the world should change while GPU is drawing the world, so if you use command queues there won't be any change in CPU and GPU waiting for each other." CreationDate="2011-05-22T19:48:42.140" UserId="7328" />
  <row Id="16958" PostId="12586" Text="did you try `javax.media.j3d.View.setProjectionPolicy(PARALLEL_PROJECTION)`, i'm not a java programer my self but i think you have to add that line of code in `3dMovingballs.3DMovingBalls` method, i'm not a java programmer and it's the first time i'm working with java3D but you have to have some instance of javax.media.j3d.view in your code somewhere, i just don't know which one it is!" CreationDate="2011-05-22T19:57:50.533" UserId="7328" />
  <row Id="16960" PostId="12547" Score="1" Text="To expand on what Gajet wrote there, what he's proposing is that you keep track of two values: the current frame index and the time remaining until the next frame should be displayed. Each frame, you need to decrement the time remaining, and should that drop beneath zero, you increment your frame index by one and append the new time to next frame. The only thing missing is handling the case where enough time has passed to advance more than one frame. if(nextframe&lt;0) should be while(nextframe&lt;0) to deal with that. " CreationDate="2011-05-22T20:16:37.050" UserId="6690" />
  <row Id="16961" PostId="12593" Text="The fact that one waits for the other to finish does not mean that they don't run in parallel, they do, but the first one that finishes has to wait, since rendering and game-update must be synced. But they _fully_ run in parallel. So the double-buffer suggestion solves a problem that is not there." CreationDate="2011-05-22T20:18:44.160" UserId="1839" />
  <row Id="16962" PostId="12586" Text="yes i already had that feeling =),i shown you all code and Java3d is high level not like openGL everything in your control.if u r interested u can run the code and see the outcome , my idea came from this and this could be right n fast starting point for you:http://www.java2s.com/Code/Java/3D/AnimationandInteractionaBouncingBall.htm" CreationDate="2011-05-22T20:22:37.640" UserId="7518" />
  <row Id="16963" PostId="12593" Text="what is the point of parallel processing if they can't run in the same time? when you are talking of parallel processing this means there are two threads which are doing some diffrent things and doesn't stop each other from working, if in some program i create 2 thread in a way that one is always waiting for another that would be slower than using only one thread!" CreationDate="2011-05-22T20:45:26.810" UserId="7328" />
  <row Id="16964" PostId="12586" Text="sorry if i couldn't be much help but i tried my best!" CreationDate="2011-05-22T20:49:15.293" UserId="7328" />
  <row Id="16965" PostId="12564" Text="Have you actually read and understood the code? Unless the physics takes more than 10 ms per step it will always do a complete catchup." CreationDate="2011-05-22T20:53:55.483" UserId="3505" />
  <row Id="16966" PostId="11381" Text="That link has gone out of date (he moved his page)." CreationDate="2011-05-22T21:37:57.417" UserId="2698" />
  <row Id="16967" PostId="12599" Text="So then, I write a class that will be instantiated by the Layer or Director and it would have access to the Layer(s) and be able to add, remove, update, the Sprites? If I am creating custom actions for the Sprites, do those get written in this Controller object or will I still need to subclass the Sprite?" CreationDate="2011-05-22T23:03:23.840" UserId="2921" />
  <row Id="16968" PostId="12602" Text="I saw it, but how to compile it I did not understand" CreationDate="2011-05-22T23:38:37.357" UserId="7523" />
  <row Id="16969" PostId="12602" Score="3" Text="Rather than just dumping a download link, perhaps a link to the actual website with the documentation, wiki, and API reference might be more helpful. http://bulletphysics.org" CreationDate="2011-05-22T23:47:54.490" UserId="263" />
  <row Id="16970" PostId="12606" Text="Thank you, but I have not time to do so much routine." CreationDate="2011-05-23T01:17:36.707" UserId="7523" />
  <row Id="16971" PostId="12600" Score="1" Text="What things do you think you &quot;don't need for games?&quot; It's dangerous to make such assumptions about a field you admittedly don't know that much about." CreationDate="2011-05-23T01:33:33.890" UserId="1430" />
  <row Id="16972" PostId="12606" Text="Maybe next time, it's not that hard that it looks like ;). However I added few links at the bottom that might help." CreationDate="2011-05-23T01:38:14.693" UserId="6813" />
  <row Id="16973" PostId="12600" Text="Removed the backstory since it isn't pertinent. " CreationDate="2011-05-23T01:44:26.380" UserId="51" />
  <row Id="16975" PostId="12573" Text="@zacharmarz that ought to go in an answer so it can be enlarged upon; it looks promising, I hadn't seen that before; it would require all bits I drew to be the same size, of course, but using it to give different transform for each unit and draw an army of the same unit, then it might be great!" CreationDate="2011-05-23T06:42:24.523" UserId="4129" />
  <row Id="16976" PostId="12602" Text="@Bob i just wanted to express that download link since it just takes some time find `simdvectormath` specific file in bullet files" CreationDate="2011-05-23T07:08:11.783" UserId="7328" />
  <row Id="16977" PostId="12446" Text="zomg thanks for the awnser i'm sure this will work, i'll start working on it right now. I can't thank you enough." CreationDate="2011-05-23T07:08:51.863" UserId="7437" />
  <row Id="16978" PostId="12564" Text="I wrote it down on the whiteboard and you are right. It will check all the collisions correctly, but when the delay is to big the renderer will lag. But what will hapen when your nextUpdate stays under the 10 milliseconds?" CreationDate="2011-05-23T07:28:42.410" UserId="6728" />
  <row Id="16979" PostId="12606" Text="Neat answer. SIMD math is fun. I remember days when i was using SSE for accelerating raytracing. But why to play little toy, if we have GPGPU now :)" CreationDate="2011-05-23T09:21:32.693" UserId="3794" />
  <row Id="16980" PostId="12514" Text="Nice one. Thanks." CreationDate="2011-05-23T10:29:48.040" UserId="91" />
  <row Id="16981" PostId="12563" Text="I have alredy using this method, but I think that works only for whole model (not for meshes), but is posible that us depends on my drawing code." CreationDate="2011-05-23T10:30:15.407" UserId="7359" />
  <row Id="16982" PostId="12559" Text="yes, my level scene is corridor [link](http://t.zvb.cz/imperium/databaze/lidi/vodacek/klenba4.png)" CreationDate="2011-05-23T10:35:33.527" UserId="7359" />
  <row Id="16983" PostId="12446" Text="If it doesn't work feel free to post an other comment! :)" CreationDate="2011-05-23T12:25:28.847" UserId="2111" />
  <row Id="16985" PostId="12627" Text="What about mobile platforms? I'm currently working on an OpenGL project for Android and iOS. To be more specific I'm implementing skeletal animation and I need a good math library, which would compile for those platforms. I don't think SSE would be possible :)" CreationDate="2011-05-23T13:11:10.077" UserId="7533" />
  <row Id="16986" PostId="12627" Text="SSE is just a compile option in either suggested libraries, both can be compiled with normal C++, just dont activate the &quot;SSE&quot; compile switch :)" CreationDate="2011-05-23T13:13:51.867" UserId="1839" />
  <row Id="16987" PostId="12627" Text="Ow ok, thanks Maik!" CreationDate="2011-05-23T13:22:18.993" UserId="7533" />
  <row Id="16988" PostId="12436" Score="1" Text="Do you have any code in the update functions for the cubes? Also the poly count should be fine since it's only about 2400. I know with physics I try to stay under 10k polys as per the documentations recommendations, but I'm too lazy to answer this completely since I'de have to test build on my ipod. " CreationDate="2011-05-23T13:39:50.277" UserId="6937" />
  <row Id="16989" PostId="12555" Text="@Sven: I am stating that you have to check &quot;another frame ahead&quot;, yes. In order for objects to move at all, you must integrate velocity once per frame to get the current position. Physics engines typically test collision well by computing what the position of the object will be if it continues on it's current path to the next frame, and then traces it's position between now and the next frame. This avoids the problem of missing collisions without having to limit object velocities, as is partially described by CiscolPPhone as &quot;Swept Collision Detection&quot;." CreationDate="2011-05-23T13:48:47.887" UserId="5021" />
  <row Id="16990" PostId="12627" Text="You're very welcome! Good luck :)" CreationDate="2011-05-23T13:55:56.193" UserId="1839" />
  <row Id="16991" PostId="12436" Text="I have no code into my update function, not for the the above test.&#xA;10k polys is smth to remember, thanks :D " CreationDate="2011-05-23T13:58:31.317" UserId="6395" />
  <row Id="16992" PostId="12436" Score="2" Text="My suggestion as it's what anyone would have to do to answer this: get the pro trial. Open up the profiler and first do the wall without the joints. Look at the percentage of CPU that physics is using. Then enable the joins and look at the percentage again. Also watch the framerate. You can find your limits there." CreationDate="2011-05-23T14:07:45.527" UserId="6937" />
  <row Id="16993" PostId="12624" Score="1" Text="And why? Anyway, I think this is moe suited to SO." CreationDate="2011-05-23T14:08:02.203" UserId="1156" />
  <row Id="16994" PostId="12599" Text="&quot;Layer&quot; and &quot;Director&quot; don't mean anything to me (they don't communicate their function well through their name alone). I would expect custom actions to be handled by the controller class though -- possibly by the controller holding on to a reference to a script (or some script-like object). You shouldn't need to subclass the sprite for any of this." CreationDate="2011-05-23T14:24:45.997" UserId="1430" />
  <row Id="16995" PostId="12628" Score="5" Text="Half your post is missing." CreationDate="2011-05-23T14:47:58.890" UserId="1156" />
  <row Id="16996" PostId="12628" Score="1" Text="Can you describe exactly what doesn't work with the first tower when the second is built? Should they cumulate the speed reduction (and it doesn't) or should it behave another way ?" CreationDate="2011-05-23T14:51:33.790" UserId="6813" />
  <row Id="16997" PostId="12626" Text="Definitely +1 for the performance note. Most mathematical libraries like XNAMath feature heavy inlining, which would be lost with some kind of factory pattern." CreationDate="2011-05-23T15:24:38.980" UserId="4662" />
  <row Id="16998" PostId="12621" Text="@Adam, that makes sense and I already am saving the entire history. I was more interested in what would be useful to monitor the server in (near-) real time." CreationDate="2011-05-23T15:56:06.960" UserId="7528" />
  <row Id="16999" PostId="12628" Text="@Valkea as i can understand from his question i think he means after building the second tower the first tower doesn't slow enemies anymore." CreationDate="2011-05-23T15:57:25.013" UserId="7328" />
  <row Id="17000" PostId="12629" Text="sleeping and waking up is refered to device so while user just pause your game or switch processs it should loose any of the EGL context." CreationDate="2011-05-23T16:00:15.023" UserId="7328" />
  <row Id="17001" PostId="12628" Text="Yes, my problem is, once the second tower is built, the first one stops working (it no longer slows enemies). However, it is still detecting the collisions with the enemies. I don't understand why it doesn't slow them down though." CreationDate="2011-05-23T16:03:50.270" UserId="6894" />
  <row Id="17002" PostId="12628" Text="Is the enemy's slow variable being set but the speed is not changing? or is the slow variable not being set?" CreationDate="2011-05-23T16:47:32.560" UserId="1477" />
  <row Id="17003" PostId="6956" Text="I got through the skeelogy.com tutorial last week. Very, very nice tutorial." CreationDate="2011-05-23T17:24:38.207" UserId="7512" />
  <row Id="17004" PostId="12630" Score="5" Text="Have fun playing through UltraCausual Ponies 9000, 5 times each day for a month, pressing pause every half second to see if the game breaks." CreationDate="2011-05-23T17:38:57.183" UserId="962" />
  <row Id="17005" PostId="12624" Text="@The Communist Duck, I think this question is fine. Other field of programming could easily get away with a non optimized abstraction for the math lib, but a game on a mobile device really needs to be optimized as possible." CreationDate="2011-05-23T17:50:53.900" UserId="962" />
  <row Id="17006" PostId="12637" Text="I think that is exactly what is happening. I didn't think of it until you said it. I need to figure out a way to set it back to false without constantly doing it." CreationDate="2011-05-23T17:51:39.890" UserId="6894" />
  <row Id="17007" PostId="12624" Text="Actually, I was more going for 'why do you want multiple math libraries'?" CreationDate="2011-05-23T18:03:23.743" UserId="1156" />
  <row Id="17008" PostId="12637" Score="2" Text="I would recommend putting the slow on some sort of countdown.  That way each time the enemy moves it would subtract 1 from it, and each time it's hit by a slow tower you can set it to a fixed number.  &#xA;&#xA;If slowTimer == 0 you move normal speed, but if slowTimer &gt; 0 you know you need to apply the slowdown effect and subtract 1 from slowTimer.  If one tower keeps hitting the enemy, it will keep resetting to the fixed number, avoiding stacking the slowdown or pre-emptively turning it off.&#xA;" CreationDate="2011-05-23T18:04:35.207" UserId="4496" />
  <row Id="17009" PostId="12564" Text="I don't completely get your question. Did the edit answer it?" CreationDate="2011-05-23T18:18:15.197" UserId="3505" />
  <row Id="17010" PostId="12641" Score="2" Text="If you can sacrifice the memory, a table of 100 pre-computed values would be faster (and slightly more accurate).  I doubt the user would be able to distinguish between the full and pre-computed versions." CreationDate="2011-05-23T18:43:45.360" UserId="5661" />
  <row Id="17011" PostId="12641" Text="@Daniel it would be faster, but with 100 random values, it is pretty easy to see repeating patterns." CreationDate="2011-05-23T18:44:50.493" UserId="962" />
  <row Id="17012" PostId="12640" Text="The probability of a position won't be equal to the position (that's mathematically impossible - trivially, the domain and range of the function includes both 0.50 and 0.51), nor is it a triangular distribution. (http://en.wikipedia.org/wiki/Triangular_distribution)" CreationDate="2011-05-23T18:45:45.113" UserId="744" />
  <row Id="17013" PostId="12559" Text="With that scene, definitely several elements. It would be a real pain to change the scene in 3DMax, blender or whatever. And as &quot;The Communist Duck&quot;, if it becomes a bottleneck and you are sure its the model and not anything else, than maybe (if the performance is really that important) you can do it." CreationDate="2011-05-23T18:46:46.950" UserId="1883" />
  <row Id="17014" PostId="12637" Text="and if you don't what to use slow timer you can set slow to false right after you compute final speed." CreationDate="2011-05-23T19:15:03.847" UserId="7328" />
  <row Id="17015" PostId="12635" Text="2) makes no sense whatsoever. You cannot detect a collision 'other than by using collision'." CreationDate="2011-05-23T19:40:48.013" UserId="1156" />
  <row Id="17016" PostId="12630" Score="3" Text="@AttackingHobo I am interested in any job combining playing games and ponies. Where do I sign up?" CreationDate="2011-05-23T20:04:15.057" UserId="1156" />
  <row Id="17017" PostId="12640" Score="1" Text="While sqrt gives some interesting patterns, particle systems generally need to be very CPU light per particle, so I would recommend avoiding square roots (which are computationally slow) where possible.  You can sometimes get away with just pre-computing them, but it can make your particles have noticeable patters over time." CreationDate="2011-05-23T20:25:28.690" UserId="4496" />
  <row Id="17018" PostId="12649" Text="I'm porting an C++ game to the Android NDK which isn't designed to reload the context easily, so at least for me it is somewhat difficult. Difficulties aside, reloading textures will introduce a delay which isn't present on our other devices (iPhone, PSP, DS, etc..)  Glad to hear honeycomb fixes this but unfortunately we need to support 2.1+" CreationDate="2011-05-23T21:57:27.913" UserId="788" />
  <row Id="17019" PostId="12640" Score="1" Text="@Joe Wreschnig, did you read that Wikipedia article yourself, stuff a=0, b=1, c=1 into the generation formula and you get the formula in my post." CreationDate="2011-05-23T22:13:32.620" UserId="3505" />
  <row Id="17020" PostId="12640" Score="3" Text="@Lunin, why are you complaining about the square root when you have got an exponent in your answer?" CreationDate="2011-05-23T22:34:24.833" UserId="3505" />
  <row Id="17021" PostId="12649" Text="This does not answer his question at all." CreationDate="2011-05-23T22:48:34.947" UserId="6592" />
  <row Id="17023" PostId="12637" Text="I ended up using a countdown, but instead of time, it uses distance traveled. So basically, once the enemy is not over the tower any more, it will speed up." CreationDate="2011-05-24T00:49:28.413" UserId="6894" />
  <row Id="17024" PostId="12650" Text="http://superuser.com/questions/287697/enabling-virtualization-on-a-pc" CreationDate="2011-05-24T03:02:51.190" UserId="51" />
  <row Id="17025" PostId="12641" Text="Just because there appears to be a repeating pattern doesn't mean it isn't random.  The essence of randomness is its unpredictability, which literally means that as much as one can't predict that there won't be a pattern, one also can't predict that there could be one (at least for a short time).  You'll have to do some testing, but if you do find patterns with multiple tests using different seeds, then your algorithm for generating pseudo-random numbers may need to be reviewed." CreationDate="2011-05-24T03:16:41.283" UserId="7548" />
  <row Id="17026" PostId="12653" Text="Any explanation for downvote?" CreationDate="2011-05-24T03:18:13.967" UserId="7546" />
  <row Id="17027" PostId="12653" Score="2" Text="Using libraries is probably the *easiest* way to learn basic concepts since they provide an easy interface on how to do things.  Once you understand what you're doing, then you can dig deeper into how." CreationDate="2011-05-24T03:18:33.683" UserId="51" />
  <row Id="17028" PostId="12653" Score="1" Text="Also -1 since this question is very generic.  &quot;How do I begin&quot; has been asked time and time again, and there are a lot of questions that cover it.  If you had a specific question about, say, collision detection, you should ask that.  " CreationDate="2011-05-24T03:19:36.567" UserId="51" />
  <row Id="17029" PostId="12648" Text="Given that the planets have a random radius, you would need one grid for each radius, and even then you have to make sure that are not too aggressive with the grid sizes or else you end up removing entire grid squares that have some valid places." CreationDate="2011-05-24T03:30:07.283" UserId="7384" />
  <row Id="17030" PostId="12639" Score="1" Text="Instead of using a graphing program, you can just plot the Beta distribution as this is a special case.  For a given `value`, this is Beta(value, 1)." CreationDate="2011-05-24T03:48:04.390" UserId="7384" />
  <row Id="17031" PostId="12648" Text="The grid is only to provide a discrete list of points.  A world can take up an arbitrary size.  It doesn't have to be set up such that the spacing between grid units is the same as the radius of a world." CreationDate="2011-05-24T03:48:07.663" UserId="51" />
  <row Id="17032" PostId="12648" Text="Let's say that you don't have one validGridCoords for every radius, but you still want any point chosen from validGridCoords to be valid for an arbitrarily-sized planet.  That means that you have to be very aggressive when pruning points.  You have to prune them as if you are inserting the largest planet.  Then, this will distribute small planets much more sparsely than they would otherwise be distributed — and possibly require more computations: `O(PG)` where G is the number of grid points and P the number of planets.  Considering his solution is O(P^2 / p), I'm not sure this is better." CreationDate="2011-05-24T04:03:12.243" UserId="7384" />
  <row Id="17033" PostId="12649" Text="If you don't understand, you can't do it." CreationDate="2011-05-24T05:54:22.553" UserId="721" />
  <row Id="17034" PostId="12647" Text="These links might help you: http://gamedev.stackexchange.com/questions/6730/how-to-randomly-place-rectangle-inside-a-larger-bounding-rectangle-without-inters and http://stackoverflow.com/questions/4373741/how-can-i-randomly-place-several-non-colliding-rects" CreationDate="2011-05-24T06:44:53.593" UserId="20" />
  <row Id="17035" PostId="12648" Text="I've used that kind of solution for my own 2D space game random generation (http://nextstopnowhere.wordpress.com), and it can really work fine. Tetrad's proposed solution could be further improved by using space partitioning techniques to refine it, but I didn't need it." CreationDate="2011-05-24T08:41:01.757" UserId="6210" />
  <row Id="17036" PostId="12660" Text="+1 clean, clear and as simple as can be, great answer!" CreationDate="2011-05-24T09:24:21.540" UserId="1839" />
  <row Id="17037" PostId="12639" Text="@Lunin thx. i tried plotting some graphs and i think it could get me where i want." CreationDate="2011-05-24T09:36:47.067" UserId="4037" />
  <row Id="17038" PostId="12639" Text="@Neil G thanks for the tip with &quot;beta distribution&quot; - this sounds interesting and useful ... i'll do some research on that topic" CreationDate="2011-05-24T09:37:27.363" UserId="4037" />
  <row Id="17039" PostId="12641" Text="@AttackingHobo thx for that trick. i like the use of LUTs. and the formula is quite easy to understand. i did not think of it this way before. not seeing the wood for the trees ... :)&#xA;&#xA;also i think repeating patterns should be avoided but probably would not be recognized in this case anyway. still, precomputing all values would hurt the visual experience. anyway, thx for reminding me that this is a factor to consider on the topic of randomness ..." CreationDate="2011-05-24T09:44:03.027" UserId="4037" />
  <row Id="17040" PostId="12652" Text="@amitp thx for your valueable input. i always like to hear how skilled people solve problems. but i still need to wrap my head around it to be honest..." CreationDate="2011-05-24T09:47:24.683" UserId="4037" />
  <row Id="17041" PostId="12657" Text="thx for your help. as stated above, beta distribution sounds interesting. but i cannot make sense of the content of the wikipedia page yet. or a formula / code. well, also i don't have time right now to investigate further :s&#xA;i see that boost has code for beta distributions, but this would be overkill. well, i guess i need to go through it first and then write my own simplified version." CreationDate="2011-05-24T10:07:46.747" UserId="4037" />
  <row Id="17042" PostId="12578" Text="thanks for your help...i managed to implement time scale into my game :D." CreationDate="2011-05-24T10:13:21.290" UserId="7168" />
  <row Id="17043" PostId="12658" Text="possible duplicate of [2D graphics - why use spritesheets?](http://gamedev.stackexchange.com/questions/7069/2d-graphics-why-use-spritesheets)" CreationDate="2011-05-24T10:41:13.870" UserId="1156" />
  <row Id="17044" PostId="12664" Text="possible duplicate of [Game State 'Stack'?](http://gamedev.stackexchange.com/questions/1783/game-state-stack)" CreationDate="2011-05-24T10:42:04.137" UserId="1156" />
  <row Id="17045" PostId="12655" Score="1" Text="I wouldn't class Game engine Architecture or game code complete as ones for starting game mechanics..certainly good reads, but not for a beginner." CreationDate="2011-05-24T10:43:23.653" UserId="1156" />
  <row Id="17046" PostId="12665" Score="2" Text="+1 You have an intention to learn how to make games right? Learning various geometry problems will only teach you how to tackle various geometry problems. It isn't even yak shaving, it's just completely misdirected. If you want to learn how to make games, start learning to make games." CreationDate="2011-05-24T10:55:58.270" UserId="2698" />
  <row Id="17047" PostId="12640" Text="@eBusiness: You're right. I don't know what I was thinking when I said it wasn't triangular, probably I'm too used to dealing with the a = c = 0 case of them. (However the probability of a position is still not equal to the position.)" CreationDate="2011-05-24T11:00:54.783" UserId="744" />
  <row Id="17048" PostId="12640" Text="As an aside, fast inverse square root is a neat trick, but today we have instructions like rsqrtps, which will do them much faster and more accurately if that's your bottleneck. Either way, it is not something to worry about generally, and certainly not worse than arbitrary powers. (Square root is, after all, a power.)" CreationDate="2011-05-24T11:06:40.977" UserId="744" />
  <row Id="17049" PostId="12664" Score="8" Text="There is a lot of questions like this: &quot;What is the best way to...&quot; The sad answer to these is that there is no best way, especially not with the little information given. It all depends on the constraints of the system. How do you need to work with it? Does a non programmer have to script it? How often will you update? The list goes on." CreationDate="2011-05-24T11:45:10.597" UserId="2792" />
  <row Id="17050" PostId="12669" Text="Do you mean Minecraft-like? That is, voxel?" CreationDate="2011-05-24T11:57:05.423" UserId="1156" />
  <row Id="17051" PostId="12641" Text="also thanks for bringing up the term Weighted &quot;Random Numbers&quot;!" CreationDate="2011-05-24T12:04:08.683" UserId="4037" />
  <row Id="17052" PostId="12668" Text="Thanks.. Unfortunately removing physics for player is not an option at this point of time, and regarding fake gravity, i have tried it but fails at certain times results in weird behaviors." CreationDate="2011-05-24T12:06:00.540" UserId="7096" />
  <row Id="17053" PostId="12667" Text="Thanks.. i would like to go your way if i was not using any physics engine for the game. Apparently i am extensively using Box2D." CreationDate="2011-05-24T12:11:02.093" UserId="7096" />
  <row Id="17054" PostId="12660" Text="@Nevermind thank you very much for your very thorough and understandable explanation. all of the other posts were very helpful too, but i really could understand your post the easiest and fastest. it sticked out bc it really hit the spot for my way of understanding things. and the aspects you are explaining are exactly what i was looking for (or wandering about)! it will enable me to use this in a lot of cases in future. so thx again!!!&#xA;&#xA;btw, i played around with some of your curves of them and it works like charm." CreationDate="2011-05-24T12:11:03.007" UserId="4037" />
  <row Id="17055" PostId="12640" Text="@eBusiness &amp; @Joe Wreschnig - &quot;triangle distribution&quot; is another good hint for me to research. looks very simplistic and useful. thx!" CreationDate="2011-05-24T12:12:16.177" UserId="4037" />
  <row Id="17056" PostId="12669" Text="Yes, actually. Have any ideas?" CreationDate="2011-05-24T12:14:32.103" UserId="7514" />
  <row Id="17057" PostId="12640" Text="@Joe Wreschnig well, could still be useful on some mobile platforms " CreationDate="2011-05-24T12:15:04.880" UserId="4037" />
  <row Id="17058" PostId="12669" Text="Just edited so people know :) It's something I'm interested in though." CreationDate="2011-05-24T12:19:32.963" UserId="1156" />
  <row Id="17059" PostId="12563" Text="Whether it depends on the whole model or the meshes depends on your renderer, or how you have implemented the culling. Vertices are vertices." CreationDate="2011-05-24T12:19:33.737" UserId="4513" />
  <row Id="17061" PostId="12670" Text="I don't have any experience with flash on mobile devices, but I find it hard to believe that it's connected to event-listeners. In what situations does your game lag?" CreationDate="2011-05-24T12:39:38.113" UserId="20" />
  <row Id="17062" PostId="12669" Score="4" Text="Have you looked into octrees? http://en.wikipedia.org/wiki/Octree" CreationDate="2011-05-24T12:42:14.070" UserId="20" />
  <row Id="17063" PostId="12670" Text="The enemies on the path just stop or move slow. I wanted to start optimizing the code. Mouse Events are one of the first things I thought of.&#xA;&#xA;Another thing that might be slowing down my game is the sorting of the enemies. When a wave appears, the enemies in the wave are put into an array. I have enemies that are faster than others so they will pass enemies on the path. I want my towers to shoot whichever enemy is in front. To do this, each time my game updates, I find the distance traveled and sort the enemies with a bubble sort depending on which one moved the furthest." CreationDate="2011-05-24T12:52:16.123" UserId="6894" />
  <row Id="17064" PostId="12671" Text="I would say i get it, but unfortunately i don't. The collision boxes of the blocks aren't moving, only the collision box of the player. And i have a method now which (without looping through all the blocks) returns all the blocks that are within a 5 block radius of the player. Sorry for the hassle, but any clarification? By the way, to make it simpler could you assume the world is 64 x 64 x 64?" CreationDate="2011-05-24T13:02:35.793" UserId="7514" />
  <row Id="17065" PostId="12671" Text="And i am still getting around 5fps :(" CreationDate="2011-05-24T13:03:07.023" UserId="7514" />
  <row Id="17066" PostId="12670" Text="@Sean Hm tricky. If you can somehow manage to remove the event-listeners (by pre-populating the board, so that you won't need mouse events), that would probably be the easiest way to check if the events are actually the bottleneck here." CreationDate="2011-05-24T13:05:59.113" UserId="20" />
  <row Id="17067" PostId="12640" Text="@Joe Wreschnig, I did write equivalent (not equal), by which I mean a linear relation that cross the origin. The numbers have different units so of course they can't be equal." CreationDate="2011-05-24T13:08:10.030" UserId="3505" />
  <row Id="17068" PostId="12655" Text="I disagree, particularly for the Game Engine Architecture. It starts at a very basic level a go to some very deep notions later. I persist in the idea, that it is accessible to the very beginners." CreationDate="2011-05-24T13:12:58.470" UserId="6813" />
  <row Id="17069" PostId="12670" Text="I will try that. I was just wondering if one event listener for everything would still be better than creating an event listener for each individual object." CreationDate="2011-05-24T13:15:37.693" UserId="6894" />
  <row Id="17070" PostId="12671" Text="I re-worded my answer, let me know if it helped." CreationDate="2011-05-24T13:24:58.290" UserId="4513" />
  <row Id="17071" PostId="12640" Text="I merely mentioned fast inverse square root to point out that a square root operation is not that expensive, in a modern environment you shouldn't use it explicitly. If it actually is the fastest method for a given platform then the compiler should implement it." CreationDate="2011-05-24T13:25:54.590" UserId="3505" />
  <row Id="17072" PostId="12671" Text="So i narrow down the blocks in which the player could be, using this octree technique. I'm pretty sure i get that. But are you suggesting i use my collision detection once i have narrowed it down to just a small selection of blocks, or do you have some other method?" CreationDate="2011-05-24T13:32:01.987" UserId="7514" />
  <row Id="17073" PostId="12670" Text="Sure, one event listener would also work. You could use the `target` property then. But not even that is required, since you could determine the clicked tile by calculating the index by using the mouse coordinates given by the event. That would allow you to use some light-weight components like `Shape` for your tiles, or draw the tiles directly to a bitmap." CreationDate="2011-05-24T13:33:29.630" UserId="20" />
  <row Id="17074" PostId="12671" Text="By collision zones, I mean the groups of cubes that are being checked against (ie within your 5m radius) for collision detection. Rather than moving this zone as the player moves, have all zones pre-calculated and the player can just traverse the tree, minimizing your total iterations exponentially!&#xA;And yes, once you have narrowed the surrounding cubes to the player, to a small amount, then you simply iterate over those; which should be minimal and vastly improve your performance." CreationDate="2011-05-24T13:34:44.110" UserId="4513" />
  <row Id="17075" PostId="12669" Text="Have you tried profiling your game? It may show some key areas where the most time is being spent. It may not be what you think it is." CreationDate="2011-05-24T13:37:02.440" UserId="4513" />
  <row Id="17076" PostId="12664" Text="@The Communist Duck: it's not a duplicate the question you refered to is a possible solution to this one." CreationDate="2011-05-24T13:37:15.640" UserId="7328" />
  <row Id="17077" PostId="12658" Score="1" Text="@The Communist Duck: I think the question is not about the *why* but rather about the *how* to use a sprite-sheet." CreationDate="2011-05-24T13:39:59.457" UserId="20" />
  <row Id="17078" PostId="12509" Text="@Drackir: NO.I mean the situation where we need 100 sprites all from same sprite sheet but different having actions running at different postions at once." CreationDate="2011-05-24T13:40:28.830" UserId="5119" />
  <row Id="17079" PostId="12510" Text="+1 for &quot;I would recommend to separate your classes, but not because of memory-concerns&quot; . Yes ofcourse that's what in my mind as well.But think this way- We are duplicating the variables holding position of sprite in Sprite class as well as in NPC class also.If the number of instances are more we need to think of memory as well." CreationDate="2011-05-24T13:44:30.853" UserId="5119" />
  <row Id="17080" PostId="12511" Text="&quot;Multiple entities can efficiently use the one sprite object&quot; - this is the idea behind my problem statement.But how effective it is to classify the classes based on memory rather than the classification they belong?" CreationDate="2011-05-24T13:50:13.607" UserId="5119" />
  <row Id="17081" PostId="12672" Score="7" Text="No, there is absolutely no need for a Singleton here." CreationDate="2011-05-24T14:00:43.160" UserId="4662" />
  <row Id="17082" PostId="12674" Text="I have been looking at signals. I want to start using those to take some of the stress off my update function." CreationDate="2011-05-24T14:32:04.640" UserId="6894" />
  <row Id="17083" PostId="12669" Score="2" Text="Rather than drawing all 6 faces of each cube, you could only draw the faces that aren't in contact with anything" CreationDate="2011-05-24T14:47:42.467" UserId="5369" />
  <row Id="17085" PostId="12655" Text="The OP wants to learn gamedev, not engine architecture. If you have a good basis in the former, the book is good if you want to learn. Personally I think the OP has his ideas mixed up." CreationDate="2011-05-24T15:07:44.603" UserId="1156" />
  <row Id="17086" PostId="12664" Text="@Gajet They both seem to answer the same idea (how to manage game states), so I would say duplicate." CreationDate="2011-05-24T15:08:26.850" UserId="1156" />
  <row Id="17087" PostId="12672" Score="2" Text="@DeadMG No, there is absolutely no need for a Singleton anywhere (with a few extreme corner case exceptions) &lt;- Fixed it for ya :)" CreationDate="2011-05-24T15:09:01.780" UserId="1156" />
  <row Id="17088" PostId="12672" Score="1" Text="@The Communist Duck: That's not a fix, it's saying something completely different. I specifically only stated anything about this particular use." CreationDate="2011-05-24T15:10:30.507" UserId="4662" />
  <row Id="17089" PostId="12664" Score="1" Text="I think void hit the nail on the head. It's a hard question to answer in a generic way." CreationDate="2011-05-24T15:13:07.170" UserId="1386" />
  <row Id="17090" PostId="12673" Score="2" Text="+1, totally agree.  You shouldn't be looking into algorithms, you should be looking at profiling your code.  My guess is it's nothing to do with the fact that you're iterating through the blocks (it's not that many), it's what you are doing with each block.  Ultimately yes you need to have a better method than brute force, but if you can't handle a simple iteration on 48x32x48 cubes, you need to rethink what you are doing with each cube, not how you are looping." CreationDate="2011-05-24T15:33:37.203" UserId="3830" />
  <row Id="17091" PostId="12650" Text="Since Unity runs in Windows, I'm not even sure why you'd even need to do this." CreationDate="2011-05-24T15:36:23.800" UserId="3830" />
  <row Id="17092" PostId="12664" Score="1" Text="Just do whatever makes the most sense for you.  If you're comfortable with enums and a switch, go for it.  If you prefer a pattern of derived classes or function pointers, go for that.  Don't worry about efficiency until you have a need to.  At this point in the game it's all about expressiveness and malleability, and that's a somewhat subjective field." CreationDate="2011-05-24T15:40:32.863" UserId="51" />
  <row Id="17093" PostId="12650" Text="@Tim you can't build the iOS version without OSX." CreationDate="2011-05-24T15:41:33.423" UserId="51" />
  <row Id="17094" PostId="12676" Text="so I think that's what i'm looking for, thanks" CreationDate="2011-05-24T16:17:31.270" UserId="7555" />
  <row Id="17095" PostId="12672" Text="who said anything about a need for singleton, i just mention i've worked with 3 engines and in all of them director was defined as a singleton, and i think this approch is the easiest! sure you can change your data structure to avoid using singleton but as long as i can imagine, it will only make it harder to code using your gameEngine.&#xA;&#xA;and by the way i used esenthelEngine, GameBryo and cocos2d, and tried Unity3D, Shiva3D and UDK, in all of them there is a singleton which works as a director (i'm just guessing about Unity and Shiva since these ones are only scripting engines)" CreationDate="2011-05-24T16:19:34.030" UserId="7328" />
  <row Id="17096" PostId="12672" Text="Singletons may make it easier, but they're still not a good design. They were designed for when &gt;1 instance would break the code - such as a low level driver thingy. " CreationDate="2011-05-24T16:30:10.053" UserId="1156" />
  <row Id="17097" PostId="12677" Text="I think you are just looking for '3d object selection' in which case there is a lot of information both on this SE as well as on google (when you know what to search for :))" CreationDate="2011-05-24T16:53:46.763" UserId="4443" />
  <row Id="17098" PostId="12677" Text="If that's it, look for 'picking'." CreationDate="2011-05-24T16:55:45.297" UserId="1156" />
  <row Id="17099" PostId="12677" Text="alright, ill look aroundm thanks for the suggestion, but im also wondering how to change from 3D to 2D for health bars and such." CreationDate="2011-05-24T16:56:28.980" UserId="6275" />
  <row Id="17100" PostId="12677" Text="hey i just found [this](http://www.lighthouse3d.com/opengl/picking/index.php?openglway). is this a good example?(i was skimming xD)" CreationDate="2011-05-24T17:00:35.330" UserId="6275" />
  <row Id="17101" PostId="12674" Text="I think another thing that could help would be to use less movieclips and more sprites or just bitmap data. My problem is, I don't know how to add bitmaps to a sprite or to bitmap objects and then display them." CreationDate="2011-05-24T17:35:34.763" UserId="6894" />
  <row Id="17102" PostId="12653" Text="@Tetrad: I am looking for a solution without libraries which I think makes my question different." CreationDate="2011-05-24T17:35:34.587" UserId="7546" />
  <row Id="17103" PostId="12650" Text="Aaahh ok hadn't thought of that, thanks." CreationDate="2011-05-24T17:37:38.750" UserId="3830" />
  <row Id="17104" PostId="12653" Text="I hope going the harder way was not one of the reasons for downvoting. Why do you want me to go the easier way when I am not worried about going the harder way? I need to do some research in this area and so I need to do things without using libraries." CreationDate="2011-05-24T17:37:40.823" UserId="7546" />
  <row Id="17105" PostId="12671" Text="Unless the player is very large relative to the size of the cubes, then checking collision around the player is probably the fastest way. If the player occupies no more space than one cube for example, then he only needs to check 27 surrounding cubes at most, to find a collision. This does not require a tree as you can index directly into those cube locations, assuming he stores the cubes in an array that he can index into, with one slot allocated for every possible cube location." CreationDate="2011-05-24T17:38:50.333" UserId="5021" />
  <row Id="17106" PostId="12672" Text="Uhm, Singleton in UDK? Nonsense, a global pointer is not the same as a singleton! -1" CreationDate="2011-05-24T17:39:28.323" UserId="1839" />
  <row Id="17108" PostId="12673" Score="3" Text="@Tim: Unless his player is large enough to occupy a space of 48x32x48, then he should not be iterating through anywhere near that many cubes. If he is iterating through 73000 cubes per frame, then I can tell you without doing any profiling, that it's worth it for him to fix that, if for no other reason than to learn how to avoid doing tens of thousands of times more iterations than are necessary. This is not what I would call micro or premature optimization." CreationDate="2011-05-24T17:45:33.430" UserId="5021" />
  <row Id="17109" PostId="12672" Score="1" Text="Singletons are also hell if you want to do anything with threads. Or touch something by mistake when shutting down you game that will reinitialize all singletons again ;) It's just Bad Design (TM)." CreationDate="2011-05-24T17:48:02.160" UserId="2792" />
  <row Id="17110" PostId="12669" Text="@David: Yeah, or he could stop doing a single draw call per cube first, and then worry about individual polygons later." CreationDate="2011-05-24T17:49:12.287" UserId="5021" />
  <row Id="17111" PostId="12674" Text="MovieClip inherit from the Sprite class. So a MovieClip is a Sprite with some special methods and properties mainly focused on the timeline concept. You should use MovieClips when you need to manipulate their 'timeline' (frames) else you'd better use the Sprites.&#xA;(Beside this, you should consider to choose some 'accepted' answers on your previous questions. You didn't accepted any of them, and accepting the answers that helped you will make people more prone to answer new questions. Not this one however, it's still early and you can have other answers.)" CreationDate="2011-05-24T17:56:29.247" UserId="6813" />
  <row Id="17112" PostId="12640" Text="@eBusiness: I did not realize Math.Pow() was so slow, but your comment made me run a performance test between the two and you're right, it is considerably slower than Math.Sqrt().  However, if you know which power you are going for and that power is a whole number, you can relatively easily write an equivalent function yourself with significant gains over sqrt.  Thank you for pointing this out though, I will be editing my answer to add this piece of information." CreationDate="2011-05-24T18:01:06.133" UserId="4496" />
  <row Id="17113" PostId="12677" Text="This isn't your inquiry here, but [you may also find it useful to see this question about translating axes between 2D and 3D](http://gamedev.stackexchange.com/questions/10995/swapping-axis-labels-between-2d-and-3d-coordinates)." CreationDate="2011-05-24T18:02:50.577" UserId="3588" />
  <row Id="17114" PostId="12674" Text="@Valkea, sorry about not selecting answers. I am still learning how everything on this site works. I selected the answers to my other questions." CreationDate="2011-05-24T18:09:56.443" UserId="6894" />
  <row Id="17115" PostId="12674" Text="No problem, it's just better if you want more answers ;)." CreationDate="2011-05-24T18:25:07.947" UserId="6813" />
  <row Id="17116" PostId="12681" Score="4" Text="Profile the code is really all I could suggest. My guess is that its not as finely tuned as you think and that is why TF2 is running higher tick rate on less hardware. I also think that TF2 may be doing all of the things you suggested doing and as a result that is contributing to why their performance is higher." CreationDate="2011-05-24T18:40:36.720" UserId="1198" />
  <row Id="17117" PostId="12682" Score="1" Text="The idea behind is to use &quot;pre-rendered&quot; sprites to make it look like 3D, and some tricks to create the perspective and relief illusion." CreationDate="2011-05-24T18:48:27.500" UserId="6813" />
  <row Id="17119" PostId="12653" Text="You say you want to do things without using libraries, and in your post you give an example like OpenGL.  Do you want to do pure software rendering without any hardware acceleration?  It would be slow and the skills there aren't terribly useful in the general case." CreationDate="2011-05-24T18:53:52.430" UserId="51" />
  <row Id="17120" PostId="12672" Text="@The communist duck : your game does initialize Rendering system and it's only initialized once, it does initialize sound system and it's only initialized once, also there is physics engine, and many other things that only initialized once in every game, why is it a bad thing to have a singleton class which initialize them only once and give their pointer to anyone who needs it?  " CreationDate="2011-05-24T18:54:51.253" UserId="7328" />
  <row Id="17121" PostId="12672" Text="@Maik isn't singleton a global pointer within a class, and a functino to return it? and when i'm talking about unity, shiva3d, and udk i told you i'm jst guessing about them since there are some classes which only has one pointer to some only-once initialized objects so there has to be a singleton taking care of them (or at least each of them should be singletons)" CreationDate="2011-05-24T18:56:41.027" UserId="7328" />
  <row Id="17122" PostId="12682" Text="i guess that i need some explanation :D" CreationDate="2011-05-24T18:59:29.110" UserId="7557" />
  <row Id="17123" PostId="12672" Text="and to all who think singletons are bad thing for game development : plz just name some game engines which doesn't have singletons for to manage gamestates, and not even only in gameengines for example those who tried somthing programming somthing with Qt know that also Qt decleres QCoreApplication as singleton which also works as director for Qt applications." CreationDate="2011-05-24T19:04:27.700" UserId="7328" />
  <row Id="17124" PostId="12672" Text="@void: agreed to the point you made out but Directors are usualy readonly singletons so they won't make any trouble even if access it from more than one thread in a same time." CreationDate="2011-05-24T19:05:59.303" UserId="7328" />
  <row Id="17125" PostId="12641" Text="@AttackingHobo Sorry, I wasn't clear.  The lookup table would be to precompute something like y = sqrt(x) or any of the functions mentioned by @Nevermind above (as was suggested in the accepted answer)." CreationDate="2011-05-24T19:07:12.697" UserId="5661" />
  <row Id="17126" PostId="12680" Score="2" Text="if you define a class for each state, it'll help you organize your code and also let you to define `OnEnter` and `OnExit` events for every event, very useful for loading unloading unnecessory data." CreationDate="2011-05-24T19:10:14.213" UserId="7328" />
  <row Id="17127" PostId="12640" Score="1" Text="@Lunin: Performance theory is a pretty neglected field, a lot of what people think they know where approximately correct 30 years ago when ALUs were big expensive and slow. Even the exponent function which you have just discovered to be a quite slow arithmetic function is rarely a highly significant performance sinner. Branching (using an if statement) and cache misses (reading a piece of data not currently residing in cache) are typically what cost the most performance." CreationDate="2011-05-24T19:23:01.690" UserId="3505" />
  <row Id="17128" PostId="12660" Score="1" Text="FYI: These are called quantile functions: http://en.wikipedia.org/wiki/Quantile_function" CreationDate="2011-05-24T19:27:14.700" UserId="7384" />
  <row Id="17129" PostId="12683" Score="6" Text="I should have said tick rate instead of frame rate. Of course nothing renders on the server. I mean the interval at which it processes the commands in the game loop. Also a few answers suggest that you can give things like collision detection to the client, as long as you do random verifications every few seconds. Someone said it weeds out cheaters rather quickly." CreationDate="2011-05-24T19:27:58.740" UserId="141" />
  <row Id="17130" PostId="12672" Text="@Gajet You're missing the point. Why force yourself to ONE instance when you only WANT one, not only NEED one?" CreationDate="2011-05-24T19:34:22.863" UserId="1156" />
  <row Id="17131" PostId="12677" Text="for health bars (that need to be in specific 3d locations) consider billboarding a quad rather than 2d/3d conversion." CreationDate="2011-05-24T19:47:48.140" UserId="1923" />
  <row Id="17132" PostId="12672" Score="1" Text="@The Communist Duck: when i'm talking aboat game resources it's realy somthing that should only be initialized once ,eg. you'll only get error for trying to initialize DirectX with same configurations, or same window. and on the other hand there is no restriction to use singletons, you can use multiton whenever you feel there is need for more than one instance to a class, the main point is all the resources should be shared with all other classes in game and singleton(multiton) is an acceptable pattern to share your resources across your application." CreationDate="2011-05-24T20:25:38.083" UserId="7328" />
  <row Id="17133" PostId="12672" Text="@Gajet A multiton is not a singleton." CreationDate="2011-05-24T20:29:10.337" UserId="1156" />
  <row Id="17134" PostId="12684" Text="This doesn't answer OP's question at all; you're just telling him that he is doing it wrong because you say so." CreationDate="2011-05-24T20:30:02.053" UserId="1156" />
  <row Id="17135" PostId="12684" Text="This should be a comment not an answer." CreationDate="2011-05-24T20:39:06.563" UserId="962" />
  <row Id="17136" PostId="12672" Score="1" Text="@The Communist Duck: the only diffrence is that it can handle more than one instance, so it won't force you to have only one instance of an object. it's same as singleton in every other aspect, and you asked &quot;why should we force ourselve to only one instance?&quot;" CreationDate="2011-05-24T20:45:55.110" UserId="7328" />
  <row Id="17137" PostId="12672" Text="@Gajet It can handle more than one instance, so any issues related to having only one instance go out the window." CreationDate="2011-05-24T20:55:04.697" UserId="1156" />
  <row Id="17138" PostId="12672" Text="@the Communist duck: this time you are missing the point, what I need is an object to share resources between all my game classes it doesn't matter if it's a singleton, multiton or even a global variable or any other approch that you can think of, there only is a need to share all game resources to all game objects and it's also possible to have that shared object to manage states too! that's what i mean when i say there is a need for a director class!" CreationDate="2011-05-24T20:59:53.063" UserId="7328" />
  <row Id="17139" PostId="12672" Text="@Gajet I think this has descended into some kind of chaos. I never questioned the need for an engine/director, I was simply making the point that a singleton is nearly never a good design choice." CreationDate="2011-05-24T21:06:25.760" UserId="1156" />
  <row Id="17140" PostId="12686" Score="1" Text="http://gaming.stackexchange.com/questions/22836/what-happened-to-all-the-3d-platformers It was closed on gaming (for not being a real question), so why would it be on topic here?" CreationDate="2011-05-24T21:07:17.430" UserId="1156" />
  <row Id="17141" PostId="12672" Text="@Gajet That's exactly the description of another well knwon Anti-Pattern, called the [God Object](http://en.wikipedia.org/wiki/God_object)" CreationDate="2011-05-24T21:08:18.540" UserId="1839" />
  <row Id="17142" PostId="12686" Score="1" Text="Raven suggested I ask it here, and I believe there's an answer." CreationDate="2011-05-24T21:09:32.750" UserId="6467" />
  <row Id="17143" PostId="3279" Text="Thanks. I've not done a whole lot in the graphics realm of programming if thats obvious. destructible and/or deformable geometry is precisly the main intent here. Well destructible/constructable anyways." CreationDate="2011-05-24T21:12:18.537" UserId="1477" />
  <row Id="17144" PostId="12672" Text="@The Communist Duck: agreed on the point you made out but I think this is one of the rare use cases of singleton" CreationDate="2011-05-24T21:15:11.593" UserId="7328" />
  <row Id="17145" PostId="12688" Text="are those fully 3D platformers or are they 2.5D?" CreationDate="2011-05-24T21:15:19.127" UserId="6467" />
  <row Id="17146" PostId="12686" Score="2" Text="Nintendo/Miyamoto had some interesting things to say about 3D platformers with regards to 3DS in an Iwata Asks. Apparently people in their play tests just don't comprehend 3D too well on a 2D screen, which is why they developed Mario Galaxy to focus more on 2D gameplay and maybe it's also why the New Super Mario Bros games (which are 2(.5)D) sell WAY more than any 3D Mario" CreationDate="2011-05-24T21:20:36.893" UserId="982" />
  <row Id="17147" PostId="12688" Text="Both of those games involve basically 2D gameplay rendered with a 3D engine; I don't think that is what the OP is asking about." CreationDate="2011-05-24T21:29:46.593" UserId="1430" />
  <row Id="17148" PostId="12672" Text="@Maik Semder: i don't think my sample of director class is a type of GodObject (it sure knows alot but doesn't do any thing on his own), it only shares all the resources between all game objects." CreationDate="2011-05-24T21:30:24.570" UserId="7328" />
  <row Id="17149" PostId="12688" Text="then what is your defenition of 3D platformer?" CreationDate="2011-05-24T21:34:23.427" UserId="7328" />
  <row Id="17150" PostId="12688" Text="He means free movement in any direction, not constrained to a vertical plane of movement. 2D gameplay rendered with a 3D engine is generally referred to as 2.5D" CreationDate="2011-05-24T21:39:42.283" UserId="6588" />
  <row Id="17151" PostId="12230" Text="Is it possible to pass parameters through signals?" CreationDate="2011-05-24T21:44:20.967" UserId="6894" />
  <row Id="17156" PostId="12688" Text="so mean mean somthing like [Penny Arcade Adventures](http://en.wikipedia.org/wiki/Penny_Arcade_Adventures:_On_the_Rain-Slick_Precipice_of_Darkness), if not plz provide me with some example of these games." CreationDate="2011-05-24T22:03:04.293" UserId="7328" />
  <row Id="17157" PostId="12689" Score="2" Text="The first thing to do is be able to create a window, render a sprite, and move it around with some sort of controls.  Then move on to physics, and finally content for your game." CreationDate="2011-05-24T22:04:02.233" UserId="6558" />
  <row Id="17158" PostId="12511" Text="efficient, not so much for memory concerns (Windows PC) but for rendering. If you can minimize texture swapping and state changes it is much more efficient for rendering. You have your sprite sheet loaded into memory and your images are packed onto it as tightly as possible. Your sprite class then organizes these images into a logical representation. You Entity class then can present multiple sprites in the game world very efficiently in terms of memory and rendering." CreationDate="2011-05-24T22:25:02.277" UserId="7453" />
  <row Id="17159" PostId="12687" Text="xna is an engine itself, what did you want from searching `best xna engine`? and i think UDK meets your needs the best" CreationDate="2011-05-24T22:27:38.850" UserId="7328" />
  <row Id="17160" PostId="12230" Text="@Sean Yeah. You declare the parameters when you construct a signal. See my code example in my answer. I declare one parameter of type `int` there. But this can of course be any parameter type and also more than one parameter." CreationDate="2011-05-24T22:28:57.063" UserId="20" />
  <row Id="17161" PostId="12689" Text="Learning how to use Threads correctly will be very helpful too." CreationDate="2011-05-24T22:44:47.050" UserId="7548" />
  <row Id="17162" PostId="12691" Score="2" Text="-1 These do not seem to be specific to 3D platform games performance and would have equal application to games in general. Is there anything out there to draw the correlation?" CreationDate="2011-05-24T23:31:28.877" UserId="4443" />
  <row Id="17163" PostId="12691" Text="@James:  Item 1 applies to the &quot;decline of sales,&quot; item 2 applies to 3D gaming (in that many 3D games do look and function very similarly), and item 3 also applies to the &quot;decline of sales.&quot;  Therefore, I believe that my answer is tailored to the question that was asked." CreationDate="2011-05-24T23:36:30.950" UserId="7548" />
  <row Id="17164" PostId="12688" Text="No that's an RPG. He means something like Jak and Daxter (I loved those games) where you can run and jump freely anywhere. Another series I loved was Ratchet and Clank." CreationDate="2011-05-24T23:53:09.757" UserId="6588" />
  <row Id="17165" PostId="12688" Text="oo oo and Sly Cooper. god I miss my ps2" CreationDate="2011-05-24T23:55:46.700" UserId="6588" />
  <row Id="17166" PostId="12679" Text="Or you could have a 'bounding box' that surrounds the player, and then you simply check what objects it is colliding with to determine what objects the player should collide with. A good physics engine will be able to do all the optimizations for you; it will also allow for more than just 'blocks' to collide with." CreationDate="2011-05-25T00:08:39.067" UserId="4513" />
  <row Id="17167" PostId="12687" Score="2" Text="@Gajet, xna an engine? [lolwut?](http://forums.create.msdn.com/forums/p/14394/75086.aspx) I also specified C#, so UDK is out of the question." CreationDate="2011-05-25T00:23:29.800" UserId="1258" />
  <row Id="17168" PostId="12653" Text="Dear @Cracker: let's suppose you learn everything there is to know about how to solve the complex mathematical problems of e.g. collision and rendering. How will this actually contribute to your ability to write a game?" CreationDate="2011-05-25T01:30:23.400" UserId="2698" />
  <row Id="17169" PostId="12691" Text="@Randolf #2 is the only one that's even remotely relevant, and even that's pushing it because that's true of many types of games. most MMOs are pretty much the same thing rehashed, heck most 2D platformers are mostly the same thing.  How does #1 or #3 explain the difference of sales between 2D platformers and 3D platformers?  Or between any other type of game?  It's a general statement that has nothing to do with 3D platformers. " CreationDate="2011-05-25T03:14:25.487" UserId="5006" />
  <row Id="17170" PostId="12688" Text="I'm surprised Mario 64 wasn't mentioned as an example, that's the first thing I think of for 3D platformer." CreationDate="2011-05-25T03:16:14.877" UserId="5006" />
  <row Id="17171" PostId="12690" Text="Regarding Mario Galaxy, even though it had some true 3d sections, those were probably my least favorite parts of the game, so I think you're right that it's just hard to create good controls that aren't frustrating to deal with when platforming." CreationDate="2011-05-25T03:18:15.813" UserId="5006" />
  <row Id="17172" PostId="12673" Text="My player is less than the size of 1 cube, though may be larger at some stage (but not much)" CreationDate="2011-05-25T05:10:59.803" UserId="7514" />
  <row Id="17173" PostId="12686" Text="Shinrai pretty much nailed it. There's still plenty of good 3D platformers. What's happened is that the B/C-grade game mills have gone on to make mediocre God of War clones rather than mediocre Mario 64 clones." CreationDate="2011-05-25T05:26:47.010" UserId="744" />
  <row Id="17174" PostId="12691" Text="@Davy8:  For item 1, even though it applies to many types of games, it still does apply to 3D games as well and so it is a valid reason.  For item 3, although I didn't specify the 3D crowd, for the 3D gamers addicted to an MMORPG (such as World of Warcraft which is a 3D game) this would still be valid." CreationDate="2011-05-25T06:01:14.487" UserId="7548" />
  <row Id="17175" PostId="12691" Text="@Davy8:  Regarding your assertion that 2D games have the same problem as 3D games (for looking similar), I find that there is actually a lot more variation among 2D games -- I suspect that it might be partly due to 2D limitations that push the artists to be more innovative (especially with the lower resolution stuff that involves famous styles like pixel art).  With 3D there is innovation as well, but I haven't seen it focused on the artistic side of things like I have with 2D games where the artist has had to make things fit (as opposed to just splattering images on a 3D wall somewhere)." CreationDate="2011-05-25T06:06:08.943" UserId="7548" />
  <row Id="17176" PostId="12445" Text="I'll accept this one as it has the most votes, but all the answers combined are good. If any more answers get added, that will be nice... but I have some useful information from this. Thanks all." CreationDate="2011-05-25T06:31:38.163" UserId="7435" />
  <row Id="17178" PostId="12695" Text="Thanks for your answer. I've been considering Unity but I'm looking for a xna solution. Both terrain and indoor level in the same scene is not a requirement." CreationDate="2011-05-25T08:02:51.733" UserId="1258" />
  <row Id="17179" PostId="12672" Score="1" Text="@Gajet Nope, this is not one of them. http://stackoverflow.com/questions/228164/on-design-patterns-when-to-use-the-singleton Lists a few of them. Even if it's not a god object, it seems to be an amalgamated blob of all the subsystems. It may be to share the subsystems around, but why not have drawables have a reference to the render system? Why do they care about the game state, or the input manager, or the sound system? If it's simply so you don't have to pass parameters, it is not a valid reason. " CreationDate="2011-05-25T09:41:46.410" UserId="1156" />
  <row Id="17180" PostId="12687" Score="2" Text="@Gajet, XNA is not an engine. It is a framework over managed DirectX. And why the hell would UDK satisfy his requirements? It's not XNA, it's not even C#, and it doesn't even support scripting in a language he knows." CreationDate="2011-05-25T09:43:51.357" UserId="1156" />
  <row Id="17181" PostId="12673" Text="Randomman159: Then you only need to test against his surrounding 27 cubes to find collision. See my answer." CreationDate="2011-05-25T09:45:01.803" UserId="5021" />
  <row Id="17182" PostId="12689" Text="This isn't really an answer, but I would start smaller. And by smaller, I mean Pong. " CreationDate="2011-05-25T09:47:23.200" UserId="1156" />
  <row Id="17183" PostId="12679" Text="Personally, I would not want to rely on a physics engine's broadphase to test against 73000 cubes for me, when I could just write two dozen or so lines of code to efficiently test for collision for me. Also, he probably doesn't have a physics engine to tap into at this time." CreationDate="2011-05-25T09:48:49.740" UserId="5021" />
  <row Id="17184" PostId="12699" Score="1" Text="Thanks Duck - I had a look at Sunburn and it seemed interesting. Funny the site went down shortly after I registered to download an evaluation version... " CreationDate="2011-05-25T09:54:22.217" UserId="1258" />
  <row Id="17186" PostId="12701" Score="2" Text="beacause it's created by Microsoft :D:D" CreationDate="2011-05-25T10:28:00.900" UserId="7558" />
  <row Id="17187" PostId="12702" Text="just have a feeling it'll have benefits if you use pure java, I think  it's because pure java can run on any platform but if you try combining those languages c++ binaries would prevent cross-platform features" CreationDate="2011-05-25T10:28:46.587" UserId="7328" />
  <row Id="17188" PostId="12703" Text="Could you not just do a line-box intersection test?" CreationDate="2011-05-25T10:40:08.073" UserId="1156" />
  <row Id="17189" PostId="12702" Text="For clarity, are we talking web in browser, or web as in multiplayer downloadable binaries? @Gajet out of interest, how does C++ limit cross platform features? Most libraries are X-platform." CreationDate="2011-05-25T10:41:18.473" UserId="1156" />
  <row Id="17190" PostId="12701" Score="9" Text="@Miro That makes no sense." CreationDate="2011-05-25T10:45:53.233" UserId="1156" />
  <row Id="17191" PostId="12704" Text="I accept taht you have to override you draw and update settings but that doesn't mean it has no rendering engine, the point is it makes every thing ready for you to draw, and those are not only abstract draw calls just looking at it's sample it has nothing less than a 2d GameEngine (i didn't check 3d stuff realy), and as far as i can remember it has input controllers , and I mean is it just framework because microsoft named it so or does it have some logical reason?" CreationDate="2011-05-25T10:56:45.477" UserId="7328" />
  <row Id="17192" PostId="12702" Score="1" Text="Have you thought of using WebGL? " CreationDate="2011-05-25T10:57:27.753" UserId="4947" />
  <row Id="17193" PostId="12676" Text="Hello again, this solved my problem. I just wanted to share, Thanks :)" CreationDate="2011-05-25T10:57:28.547" UserId="7555" />
  <row Id="17194" PostId="12702" Text="Just FYI: The [upcoming release](http://labs.adobe.com/technologies/flashplatformruntimes/incubator/features/molehill.html) of the Flash player will use the GPU and provide hardware accelerated 3D and 2D rendering." CreationDate="2011-05-25T11:01:30.370" UserId="20" />
  <row Id="17195" PostId="12701" Score="2" Text="What's the point? If it does the job that you need, use it. If not, then don't. Who cares how people call it? It's just a label anyway, mostly used from marketing monkeys ;)" CreationDate="2011-05-25T11:05:49.173" UserId="1839" />
  <row Id="17196" PostId="12704" Score="1" Text="@Gajet: Consider for a moment that there is discussion on the net of [how to create an engine in XNA](http://gamedev.stackexchange.com/questions/tagged/engine+xna) but not for Unreal Engine or CryEngine. I think a common characteristic of a game engine is that you can just plug in the bits and _something_ will go ([TV Tropes asserts engines can be fairly data-driven in this regard](http://tvtropes.org/pmwiki/pmwiki.php/Main/GameEngine)). By contrast, XNA leaves you to do basically every ounce of the work yourself - you just don't have to create the middleware to interface with devices." CreationDate="2011-05-25T11:10:44.240" UserId="2698" />
  <row Id="17197" PostId="12702" Text="@The Communist duck: since when you are writeing a code with java the jar files compiler generates can run on any platform but you have to build seperate binaries for each platform when using c++ and there are always some libraries which have small diffrences in diffrent platforms, which is why cross-platform c++ projects have some specific platform programmers." CreationDate="2011-05-25T11:11:42.460" UserId="7328" />
  <row Id="17198" PostId="12704" Score="1" Text="Furthermore I don't believe I've found a clear definition of a game engine yet, but what I do know is that _there are game engines_, and XNA simply does not do any of the things they do (except provide middleware, and some very simple low-level components)." CreationDate="2011-05-25T11:12:23.850" UserId="2698" />
  <row Id="17199" PostId="12701" Text="it's just becuase the comment The Communist Duck responded to my comment in [this question](http://gamedev.stackexchange.com/questions/12687/engine-with-terrain-and-indoor-areas-bsp-like)" CreationDate="2011-05-25T11:12:25.987" UserId="7328" />
  <row Id="17200" PostId="12701" Score="3" Text="@Maik Semder It isn't a label at all. An engine and a framework are two distinct and separate things, and XNA is the latter. It's useful to distinguish and understand that XNA is not an engine, otherwise you might get very confused when you discover you actually might need to create an engine in XNA, or that it does not offer any plug-in-some-bits-and-play capabilities like actual engines do." CreationDate="2011-05-25T11:15:19.353" UserId="2698" />
  <row Id="17201" PostId="12704" Text="@Jonathan Hobbs: now I can see what you are talking about but again i've tried GameBryo(NetImmerse) and that's considered a gameengine but until lightspeed it had less features than XNA itself, it was just a mere middlewere, so i think we can change the question title to `what makes an sdk to be called a GameEngine?`" CreationDate="2011-05-25T11:16:39.553" UserId="7328" />
  <row Id="17202" PostId="12704" Text="@Gajet I think if you want to ask that you should start an entirely new question, because it is after all an entirely new question, and has nothing to do with the discussion or answer now present in this question." CreationDate="2011-05-25T11:19:04.993" UserId="2698" />
  <row Id="17203" PostId="12701" Text="@Jonathan my point is: check what it does, not how it is called, since the label 'Engine' is used in a lot of different ways. " CreationDate="2011-05-25T11:29:11.723" UserId="1839" />
  <row Id="17204" PostId="12701" Score="2" Text="@Maik This is part of how we work out what it does. I say _driver_, you know what it is and isn't, what it does and how you can use it. Something similar should happen when I say _framework_ - but only if you recognise what a framework is, and what it isn't (an engine). Considering those practical implications I mainly object to you saying _&quot;Who cares how people call it? It's just a label anyway&quot;_" CreationDate="2011-05-25T11:33:26.077" UserId="2698" />
  <row Id="17205" PostId="12706" Text="I'm considering Box2D, but it seems to only do convex polygon shapes. Should I generate polygons from my line segments, or should I just modify the level editor to support polygons? Should they all just be static bodies? Thanks" CreationDate="2011-05-25T11:40:44.547" UserId="7375" />
  <row Id="17206" PostId="12706" Text="@mpnk121 :polygons are nothing else that a bunch of lines which created a closed shape, it's nothing much diffrent from the lines you are already generating." CreationDate="2011-05-25T11:47:33.650" UserId="7328" />
  <row Id="17207" PostId="12706" Score="1" Text="@mphk121 the manual.pdf in Box2D/Documentation says in paragraph *4.4 Polygon Shapes*: **&quot;However, you can create line segments using 2 point polygons&quot;**" CreationDate="2011-05-25T12:03:26.913" UserId="1839" />
  <row Id="17208" PostId="12706" Text="However, it's probably easier if you connect the lines to a convex polygon. The picture in your question-body uses convex polygons anyway." CreationDate="2011-05-25T12:05:39.660" UserId="1839" />
  <row Id="17209" PostId="12702" Text="@zacharmarz: i haven't. It's extension for JavaScript and i like compiled languages." CreationDate="2011-05-25T12:17:42.917" UserId="7558" />
  <row Id="17210" PostId="12702" Text="@Gajet the amount of platform specific code is usually covered by your windowing library if you have one. @Miro, is this meant to be in browser or not?" CreationDate="2011-05-25T12:34:54.520" UserId="1156" />
  <row Id="17211" PostId="12702" Text="@The Communist Dock: not only that, any driver specific thing (window, audio, networking, ..., usualy all the thing that the game engine handles) are platform dependent only creating window doesn't make c++ code platform independent, and if he tries to create binaries with c++ he has to have all target platforms to compile his code. but with java I think you can compile only on windows and expect the results from same jar file running on a mac." CreationDate="2011-05-25T12:38:50.427" UserId="7328" />
  <row Id="17212" PostId="12702" Text="@Gajet Ok, replace 'windowing library' with 'libraries'. It is not difficult to get a few different libraries together - or just get a game engine." CreationDate="2011-05-25T12:44:11.590" UserId="1156" />
  <row Id="17213" PostId="12699" Score="1" Text="oooh I just noticed your edit... interesting. I might be tempted to go back to shader programming too. thanks again duck." CreationDate="2011-05-25T12:49:37.317" UserId="1258" />
  <row Id="17214" PostId="12700" Text="Thanks.. i have tried increasing mass and thus increasing the gravity (M*g), but doesn't solve the problem. :(" CreationDate="2011-05-25T12:51:29.723" UserId="7096" />
  <row Id="17215" PostId="12642" Text="@Simon: +1 for great tip. Hi Simon, thanks for your great tip. I started using GLM (OpenGL Math Library), and it is pretty amazing. It contains everything from vector, matrix, quaternion math, SLERP interpotations, etc... so far, it offers more than I realy need, so I am happy with it for now." CreationDate="2011-05-25T13:22:03.633" UserId="2229" />
  <row Id="17216" PostId="12666" Text="@Maik: +1 for good tips. Hi Maik, thanks for your comments. In my opinion, the second might be useful especially when the game integrates Bullet Physics. My game is going to use Bullet Physics, but unfortunatelly, I have started using GLM, so I will try to stick to GLM." CreationDate="2011-05-25T13:26:24.110" UserId="2229" />
  <row Id="17217" PostId="12708" Text="but that's how to find performance bottle necks, i wanted to know how to solve them, eg. when you are working with a two dimentional array just swaping order of the loops may increase your program speed dramatically." CreationDate="2011-05-25T13:31:32.980" UserId="7328" />
  <row Id="17218" PostId="12702" Score="1" Text="-1, what exactly are you asking here? Advantages in what areas? Which one do you prefer? You haven't given any real requirements, and even if you had (i.e. &quot;performance&quot;, it really wouldn't be answerable since there is so much more to a program than the language itself. Why do you need or want to use java at all? " CreationDate="2011-05-25T13:52:07.590" UserId="51" />
  <row Id="17219" PostId="12707" Score="2" Text="This question is too broad. If you find a bottleneck and want advice on how to fix it, feel free to bring it here. Mostly the answers would involve learning the language inside and out, reading up on what the compiler does, and using critical thinking and objective testing. " CreationDate="2011-05-25T13:59:36.800" UserId="51" />
  <row Id="17220" PostId="12707" Text="Also, how is this question different from http://gamedev.stackexchange.com/questions/853/c-low-level-optimization-tips ?" CreationDate="2011-05-25T14:00:09.030" UserId="51" />
  <row Id="17221" PostId="12653" Text="@Tetrad: I don't mind if things are slower as I am doing research on this. I guess I am not able to express why I need to do this. By not using libraries I meant that I do not want to use Game Engine libraries. I am fine with using libraries for drawing stuff. I don't want to write my own functions for drawing lines and shapes. Anyways, I got started with HTML5 canvas. Thanks!" CreationDate="2011-05-25T14:00:16.623" UserId="7546" />
  <row Id="17222" PostId="12707" Text="@Tetrad So true. There is also a lot of difference between architectures on what optimizations are good. What's good for an x86 will certainly not hold for a Cell, so a good knowledge of your platform is needed." CreationDate="2011-05-25T14:04:06.137" UserId="2792" />
  <row Id="17223" PostId="12704" Score="1" Text="But you *could* develop an engine using an existing engine as a framework if you really wanted to be pedantic. Lots of people took quake 3 tech then made an engine that was more usable. Then again you can also make a game without an &quot;engine&quot; at all if you really wanted to.  It is more correct to call xna a framework, but I don't know about making the distinction from an &quot;engine&quot;, as it isn't as strongly defined as &quot;framework&quot;." CreationDate="2011-05-25T14:06:33.373" UserId="51" />
  <row Id="17224" PostId="12653" Text="@Jonathan Hobbs: I know how to draw things on screen. I know how to move objects on the screen. So I can do basic animation. But to write a game I need to learn things like collision detection, etc. Once I learn how to detect collisions I will be able to write simple games. I will be able to make a car racing game with birds-eye view but not be able to make a car racing game with a view from inside the car. I am more interested in understand how things work at a lower level. So I don't care about productivity." CreationDate="2011-05-25T14:11:51.080" UserId="7546" />
  <row Id="17225" PostId="12700" Text="Try reducing the hero's restitution. Describe to me the problem that you are still having with high gravity and high mass." CreationDate="2011-05-25T15:10:04.137" UserId="5021" />
  <row Id="17226" PostId="12708" Text="You solve the bottlenecks in a fashion that is appropriate to the bottleneck, there are very few global solutions. You're asking for information that won't help you." CreationDate="2011-05-25T15:15:10.503" UserId="1430" />
  <row Id="17227" PostId="12707" Text="Sigh. Judging by this question, you should be worrying about correctness right now, and performance much later." CreationDate="2011-05-25T15:15:46.330" UserId="5021" />
  <row Id="17228" PostId="12702" Text="@Tetrad: ok, i've specified it better. Java is required, because i haven't found way to run c++ application in browser " CreationDate="2011-05-25T15:20:07.463" UserId="7558" />
  <row Id="17229" PostId="12707" Text="i'm just looking for some guide to do so, and @Tetrad it's almost the same tanx for guiding me to that question. but i'm looking for some tough books that have many optimization tricks for, not just 1 or 2 general advises." CreationDate="2011-05-25T15:23:21.827" UserId="7328" />
  <row Id="17232" PostId="12704" Text="+1 for &quot;I just want to shove stuff together.&quot;" CreationDate="2011-05-25T16:16:30.123" UserId="6569" />
  <row Id="17233" PostId="12704" Text="@octal9 For my current project, that is literally what I am trying to make :)" CreationDate="2011-05-25T16:46:23.000" UserId="1156" />
  <row Id="17234" PostId="12712" Text="Good answer, +1." CreationDate="2011-05-25T16:53:01.810" UserId="5021" />
  <row Id="17235" PostId="12704" Text="Tetrad: If an engine is closed source and only exposes that which you need to create a game in the context of the engine, then you can't create an engine with it. Unless you're being *really* pedantic, in which case you can always create an engine whenever you have a turing machine -- but that is not a useful argument in this discussion IMO." CreationDate="2011-05-25T16:58:44.843" UserId="5021" />
  <row Id="17236" PostId="12703" Score="1" Text="The Communist Duck: No, he couldn't *just* do a line-box intersection test." CreationDate="2011-05-25T16:59:37.060" UserId="5021" />
  <row Id="17237" PostId="12707" Text="I can not recommend high enough the Effective C++ and More Effective C++ books for general guidelines on C++ and such." CreationDate="2011-05-25T17:18:48.237" UserId="4443" />
  <row Id="17238" PostId="12708" Text="@Gajet You would find loop issues like that by profiling. And why would you loop the wrong way anyway?" CreationDate="2011-05-25T17:22:05.290" UserId="1156" />
  <row Id="17239" PostId="12689" Text="@Duck Pong is a great game to start off with, it's like the &quot;Hello World&quot; of game development :)" CreationDate="2011-05-25T17:35:50.017" UserId="7002" />
  <row Id="17240" PostId="12689" Text="Well I guess I have done &quot;some&quot; game dev before, so I'm a bit beyond pong. I did a breakout game and a falling blocks game, so I think it's time to move on. And thanks for the tips guys." CreationDate="2011-05-25T17:36:01.300" UserId="7562" />
  <row Id="17241" PostId="12714" Text="if you use just java, other than controls, would it make an easy convert to android?" CreationDate="2011-05-25T17:50:34.143" UserId="2301" />
  <row Id="17242" PostId="12714" Text="I don't know too much about Android, somebody else is probably better suited to respond to that." CreationDate="2011-05-25T18:15:35.287" UserId="1430" />
  <row Id="17243" PostId="12713" Text="this answer was the closest to my question (at least you refered to a book which could help me optimize my code), i just wanted to know if there are any books which explain some low-level optimizations." CreationDate="2011-05-25T18:18:40.127" UserId="7328" />
  <row Id="17244" PostId="12713" Text="Gajet, I'm glad you found my answer helpful. The type of optimizations you'll find in the book might be reffered to as high-level optimizations though, not low-level :)" CreationDate="2011-05-25T18:20:11.373" UserId="5021" />
  <row Id="17245" PostId="12707" Text="@James: just write your comment as an answer and i'll accept it (your response was the only one related to my question except the one tetrad gave!)" CreationDate="2011-05-25T18:23:29.597" UserId="7328" />
  <row Id="17246" PostId="12547" Text="That would work if the update() method receives a dt value. However, the value this one receives is a float from 0 to 1 indicating the animation's progress e.g. if the animation length is eight seconds, and we are four seconds in, update(time) will be called with a value of 0.5 for time. " CreationDate="2011-05-25T18:24:51.937" UserId="1230" />
  <row Id="17247" PostId="12544" Text="Yeah it's an unusual arrangement. Specifically I am attempting to enhance cocos2d's CCActionInterval to support heterogeneous frame durations. I am considering not trying to implement it as an interval action and instead using a standard non-sequenceable action wich would give the update method a more typical dt value and would make everything a lot simpler." CreationDate="2011-05-25T18:27:41.893" UserId="1230" />
  <row Id="17248" PostId="12547" Text="@Chris: tanx for comment and i've applied your change." CreationDate="2011-05-25T18:29:20.177" UserId="7328" />
  <row Id="17249" PostId="12547" Text="@glory fish: if you receive the progress your animation made so far then you can change frame every time input is grater than 1 or if your problem is your class works with some static frame time you can always check if `dt*staticFrameTime &gt;= currentFrameTime`" CreationDate="2011-05-25T18:32:27.480" UserId="7328" />
  <row Id="17250" PostId="12717" Text="there was a game named [baku baku](http://en.wikipedia.org/wiki/Baku_Baku_Animal), or  it's a tetris-like game which can help you as your power game, and also there was almost similar opensource game named CrackAttack." CreationDate="2011-05-25T18:39:47.217" UserId="7328" />
  <row Id="17251" PostId="12717" Score="3" Text="Some suggestions on finding games: visit game jam sites (Global Game Jam and Ludum Dare have many hundreds of games) and see if you can adapt anything found there.  Or see if there's any game creation clubs at your university that you can ask for help." CreationDate="2011-05-25T18:42:18.040" UserId="6558" />
  <row Id="17252" PostId="12544" Text="@GloryFish I think this would be a potential trade off you would want to do some benchmarking around. You would save some math overhead doing this but I am not sure if the interval actions vs non-sequence-able actions change would end up eating any benefits.. Of course, ease in programming is also a consideration to keep in mind ;) PS: I actually up-voted Gajet's answer as it looked more efficient." CreationDate="2011-05-25T18:47:54.940" UserId="4443" />
  <row Id="17253" PostId="11519" Score="1" Text="Additionally, you can do just about anything you want from a Windows XNA Game. The requirement of no unmanaged code is XBOX (and WP7) only." CreationDate="2011-05-25T18:50:24.677" UserId="1198" />
  <row Id="17254" PostId="12648" Text="Thanks for the responses, will give the grid approach a try!" CreationDate="2011-05-25T20:21:50.473" UserId="5677" />
  <row Id="17255" PostId="12656" Text="Well the problem is that my solution isn´t working at all, it doesn´t calculate any new locations. It just takes the first location and even if it is in the range it will still be placed. I was really wondering if there are any other methods to do this than the one I use." CreationDate="2011-05-25T20:24:55.570" UserId="5677" />
  <row Id="17256" PostId="12720" Score="3" Text="The question specifically mentioned WoW, and a few answers point out that something smaller is possible in a few months (weeks if you're really good).  The scrabble MMO example you posted had about 3-4 people working on it, and had 3 meetups prior to the development time to work out details.  Plus it used libraries and other tools to speed up development.  You could certainly put together a 'simple MMO' using Unity in about a month if you worked on it full time.  But there's more to a good MMO than a 3d client and decentralized system." CreationDate="2011-05-25T20:30:07.373" UserId="6558" />
  <row Id="17257" PostId="12717" Text="hey! I think crack attack would be more of an *achievement* game (at least the one I just downloaded. from the sound of it baku baku also has an achievement component." CreationDate="2011-05-25T20:39:37.213" UserId="7331" />
  <row Id="17258" PostId="12717" Text="@Ruben :carck attack and baku baku are both tetris like games, both have single player and 2 player modes. of course they can both be used as a achivement games, when playing multiplayer mode they can represent a power game (as I can understand from your defenition of power games)" CreationDate="2011-05-25T21:05:44.137" UserId="7328" />
  <row Id="17259" PostId="12717" Text="The thing is, that we want to *isolate* the motives. Influencing others as in multiplayer mode is power-ish, but competition for points is achievement-ish. A prototypical power game would perhaps be a god game like *Island god* on facebook where you play God for little islanders." CreationDate="2011-05-25T21:24:59.253" UserId="7331" />
  <row Id="17260" PostId="12717" Text="@Ruben I think you are going to need to be specific as to which types of game metrics fall into which categories. Reason I say this is Tetris with a global high score table seemed to be a Power only game to me until you said a personal score is also achievement. I think you are going to have a very hard time isolating Power from Achievement in the setting of games as its usually accomplishments of achievements that give you power in the realm of video games. So yeah, a list of which metrics fall where would be nice. Maybe making scores relative to other players would work around things..." CreationDate="2011-05-25T21:41:52.377" UserId="4443" />
  <row Id="17261" PostId="12656" Text="@Martino: Your method is good; you just need to debug your code.  Why don't you start by removing the recursion, and writing an iterative solution?  (There is no reason why `calculatePlanetLocation` needs to call itself.)" CreationDate="2011-05-25T22:00:02.300" UserId="7384" />
  <row Id="17262" PostId="12717" Text="@James We added some paragraphs, hopefully it's clearer now! If not, please tell us. By the way we don't need/want multiplayer games (not even sequentially as in Tetris)." CreationDate="2011-05-25T22:13:54.510" UserId="7331" />
  <row Id="17263" PostId="12717" Text="@Ruben: according to your latest paragraph i think i can almost categorise  baku baku as a power game when played in multi player mode. since there is no score or achivement in the game, you have to play as good as you can and you can make the game harder for other player if you play some special trick. (like matching 6 cards at the same time) and if you want some examples of a god game, i can suggest `virtual villegers` series and heaven &amp; hell (in the later one you realy are the god and send profits and ...)" CreationDate="2011-05-25T22:24:12.417" UserId="7328" />
  <row Id="17264" PostId="12725" Text="Yeah I'm adding line of sight checking right now. Actually the gains were minimal, from 45 ms for 25 players, down to 35 ms. But there may be some extra overhead for using individual send commands instead of broadcast. And I do only send messages on input. But you're right, there may be a way to not have to tick at all, only when input is received." CreationDate="2011-05-25T23:03:04.990" UserId="141" />
  <row Id="17265" PostId="12718" Text="Turn the point filter on and do a single frame capture with PIX. That should let you examine the types of all the textures and render targets to make sure they are of the type you think they are." CreationDate="2011-05-25T23:22:30.500" UserId="5824" />
  <row Id="17266" PostId="12723" Text="I have been going through the loop looking for something that would cause it. So far, I can't find anything. The problem happens in the exact same spot every time, but only on the Android. " CreationDate="2011-05-25T23:29:40.943" UserId="6894" />
  <row Id="17267" PostId="12723" Text="maybe it's caused by some other event stucking in an infinite while so default flash loop hangs in there (not the main update event some other event that is called on every loop), and check if it maybe caused by case sensitivity. for example you are trying to draw some object which name is not the same case as the asset." CreationDate="2011-05-26T00:05:55.040" UserId="7328" />
  <row Id="17268" PostId="12726" Score="1" Text="because zNear and zFar specify the distances the planes are from the camera, not their position... or am I misunderstanding your question?" CreationDate="2011-05-26T00:18:03.157" UserId="6467" />
  <row Id="17269" PostId="12657" Score="1" Text="@didito: It's not so hard.  You just replace your `uniform_generator()` call with `gsl_ran_beta(rng, a, b)`.  See here: http://www.gnu.org/software/gsl/manual/html_node/The-Beta-Distribution.html" CreationDate="2011-05-26T00:19:03.843" UserId="7384" />
  <row Id="17270" PostId="12726" Text="@da code monkey: +1, nope you are not misunderstanding at all. So you say, the two above mentioned parameters do not contain physical plane coordinates, but they represent offset values from the camera. If the camera is moved, the frustum follows it. This should have been emphasized in OpenGL books." CreationDate="2011-05-26T00:34:01.710" UserId="2229" />
  <row Id="17271" PostId="12726" Text="It is pretty explicitly spelled out in most of those books; do you have specific examples of passages that indicate that the values are absolutes?" CreationDate="2011-05-26T01:20:39.307" UserId="1430" />
  <row Id="17272" PostId="12726" Text="Also do not that it simply by convention that things &quot;deeper&quot; have a &quot;more negative&quot; depth. You can arrange it however you like." CreationDate="2011-05-26T01:21:27.170" UserId="1430" />
  <row Id="17273" PostId="12726" Text="@da code monkey: If you wisth, retype your answer as a regular answer into this thread. Then, I will be able to mark it as the *Accepted Answer*. Thanks for helping, I had a lot of headchache from this." CreationDate="2011-05-26T01:21:29.933" UserId="2229" />
  <row Id="17274" PostId="12726" Text="@Josh Petrie: **OpenGL SuperBible**, Chapter 3, Page 86: *&quot;The parameters are the field-of-view angle in the vertical direction, the aspect ratio of the width to the height of your window, and the distances to the near and far clipping planes (see Figure 3.4). You find the aspect ratio by dividing the width (w) by the height (h) of the window or viewport.&quot;* Sure, if I focus on the words, it is stated correctly. My point was, that it could have been **emphasized**, that the planes are offsets from the camera and not fixed positions." CreationDate="2011-05-26T01:26:12.657" UserId="2229" />
  <row Id="17275" PostId="12726" Text="@Josh: thanks for the second commend too. I think, most people leave the default settings, where &quot;deeper&quot; goes to *negative z-axis numbers*. But yes, as you mentioned it, I remember reading, that the direction of axis is confugurable. " CreationDate="2011-05-26T01:31:40.297" UserId="2229" />
  <row Id="17276" PostId="12728" Text="@Josh Petrie: +1 for helpful answer. Hi Josh, and thanks for the clarification. It was my misinterpretation of the text. By the way, this knowledge was key to solve unpredicatble behavior of my OpenGL graphics. As there is nothing more to add, let me mark this as the *Accepted Answer*." CreationDate="2011-05-26T01:37:16.607" UserId="2229" />
  <row Id="17277" PostId="12018" Text="Hello, this problems occurs with : XNA, SlimDX, pure C++ with the sample given by installind directX SDK. So once again, the problem is not in the code but in the directX10 driver. Google : Fullscreen stutering, you will find thousand of people complaining on AAA game about this kind of problem." CreationDate="2011-05-26T07:15:37.593" UserId="7116" />
  <row Id="17278" PostId="12699" Score="1" Text="Turns out Sean James has written a book too, if I'm not mistaken. I'm picking this as the answer since a) there's no out of the box solution as it seems b) linked content has valuable info and saved me the effort to go through a bazillion of other xna sites." CreationDate="2011-05-26T07:40:55.790" UserId="1258" />
  <row Id="17280" PostId="12446" Text="i have another problem, i think it might be related to this, but i'm not sure. should i make an other question or just ask it here?&#xA;i was trying to add a tilemap to my game so i could draw the background but seems that the drawspeed of my tilemap doesn't keep up with my movement speed, but i found out that changing my movement speed doesn't change the fact that i keep up with the edge of my world. " CreationDate="2011-05-26T08:20:07.003" UserId="7437" />
  <row Id="17281" PostId="12617" Text="I think I need to clarify a bit. I am looking to things that people have found useful to track inside the game server. Things like number of active card tables, number of players, number of observers, avg. number of players per table, that sort of thing. I can keep going, but I am wondering what metrics you've found to be more useful than others and why. Thank you!" CreationDate="2011-05-26T09:32:53.140" UserId="7528" />
  <row Id="17282" PostId="12718" Text="Adam: Read the last sentence of my question. Anyways, the render targets all were the types that I thought, that wasn't the problem. See my answer below." CreationDate="2011-05-26T11:16:08.030" UserId="5021" />
  <row Id="17283" PostId="12736" Text="Are you sure it's not the CPU? I would profile anyway to see where your time is spent." CreationDate="2011-05-26T11:23:50.117" UserId="1156" />
  <row Id="17284" PostId="12736" Text="No i'm almost sure. I have no operations around CPU and on many computers I have tested." CreationDate="2011-05-26T11:59:36.973" UserId="7497" />
  <row Id="17285" PostId="12446" Text="Interesting. Could you upload your code again? I would recommend that you do create a question because you'll get the advice from people with more experience than me. I'll still take a look at your code and try to find the problem though." CreationDate="2011-05-26T12:35:52.893" UserId="2111" />
  <row Id="17286" PostId="12733" Text="@user4241: +1 for great answer. Hi and thanks. As I was reading your text, few questions came to my mind: **1.** what about **very distand** and **very close objects**, where the object itelf is resized. Do you keep mip mapped textures for them? **2.** When an object is close to the edges to the screen and close to the camera as well, the **geometry of the object changes**, as the object is vieweved from an angle. Do you compensate this deformation? **3.** Would you be possibly willing to **share the math** used to calculate plane where the one textex equals one pixel, please?" CreationDate="2011-05-26T12:45:03.550" UserId="2229" />
  <row Id="17287" PostId="12446" Text="this is it, just keep walking down or right with WASD and you'll see the problem. don't walk up or left becaus i didn't set any boundries yet so it will crash. [link](http://dl.dropbox.com/u/15532091/ZombieSurvival2.rar)" CreationDate="2011-05-26T12:58:08.177" UserId="7437" />
  <row Id="17288" PostId="12730" Text="@Josh Petrie: +1 for good answer. Hi Josh, thanks. Currently, I use two OpenGL Program IDs/Projections (one for perspective one for orthogonal projection) in my game. Is it possible from your viewpoint to combine the two projections so, that they can interact? Basically, I need a 2D ortho sprite to enter a 3D object (say a tunnel). I wisth to see, as I really enter the 3D object, not to be above or below it. Does any solution come to your mind? Does the 2D sprite have to be in Perspective projection to achieve that?" CreationDate="2011-05-26T12:58:51.757" UserId="2229" />
  <row Id="17289" PostId="12734" Text="I just recently started using FlashDevelop. I have completely rewritten my game loop and most of the code that uses it. I have solved the problem, but I am not sure what I did. How do I use FlashDevelop to find memory-leaks?" CreationDate="2011-05-26T13:02:16.290" UserId="6894" />
  <row Id="17290" PostId="12736" Score="2" Text="What do you mean when you say you have &quot;two programs&quot; running? Is it separate processes that has separate windows? Or do you use two libs to draw into one OpenGL context?" CreationDate="2011-05-26T13:19:48.043" UserId="2792" />
  <row Id="17291" PostId="372" Text="i recommend you drop the first line - the top rated answer doesn't answer your question but is offended by your premise ;)" CreationDate="2011-05-26T13:27:32.187" UserId="4413" />
  <row Id="17292" PostId="12734" Text="@Sean: I'm using FlashBuilder myself, so I don't know exactly how to use the profiler in FlashDevelop. But maybe this link can help you with the setup: http://www.flashdevelop.org/community/viewtopic.php?f=9&amp;t=7330" CreationDate="2011-05-26T13:52:37.897" UserId="20" />
  <row Id="17293" PostId="4278" Text="@Ricket yeah, it depends on the game. But he asks for HTML5 and your answer is mostly about Flash and DOM level 1 :) If he wants to do bleeding edge HTML5 development then don't lure him back." CreationDate="2011-05-26T14:08:03.637" UserId="4413" />
  <row Id="17294" PostId="1786" Text="@RCIX &amp; Joe indeed. lisp &amp; scheme are *the* introductory languages at a lot of universities." CreationDate="2011-05-26T14:12:41.633" UserId="4413" />
  <row Id="17295" PostId="12736" Text="@Green Code Profile." CreationDate="2011-05-26T14:33:46.273" UserId="1156" />
  <row Id="17296" PostId="12738" Text="I was thinking that might have been the problem, but I am not sure. I have an option in my game to increase the speed. To do that, I just change the frame rate from 30 to 60 fps. I tried leaving it in 30 fps and still had the problem. Is there a better way to increase the game's speed? Should I have an function that doubles the speed of the tower firerate and enemy movement instead of changing the frame rate?" CreationDate="2011-05-26T15:49:19.293" UserId="6894" />
  <row Id="17297" PostId="12747" Text="What is the code your are using to place the tiles? I have been using the Flash IDE and just creating movieclips for my tiles and they fit together with no gaps. I think placing them as a bitmap would be better, but I don't know how to do it." CreationDate="2011-05-26T15:54:17.743" UserId="6894" />
  <row Id="17298" PostId="12749" Text="I'm able to create .pngs without anti-aliasing and they fit together perfect, but then the entire tile is pixelated, which I don't want, I only want the edges to pixelated, not the interior of the tile." CreationDate="2011-05-26T16:11:19.533" UserId="7482" />
  <row Id="17299" PostId="12742" Score="1" Text="Are you sure you aren't just hitting the outside box first?  Can you provide a screenshot of what the colliders are set up like?" CreationDate="2011-05-26T16:15:14.790" UserId="51" />
  <row Id="17300" PostId="12749" Text="Yes, that's why you only &quot;pixelate&quot; the alpha channel, not the whole tile. If you save it as PNG24, you won't get a pixelated PNG." CreationDate="2011-05-26T16:19:39.240" UserId="20" />
  <row Id="17301" PostId="12657" Text="thx for the hint. i do not use GSL (actually have not heard about it before), but good call. i will check the source!" CreationDate="2011-05-26T16:41:52.770" UserId="4037" />
  <row Id="17302" PostId="12018" Text="@Fabian, from your own link &quot;I made little test code and got same stutters when you have XNA's IsFixedTimeStep setting on.&#xA;Then made my own fixed timestep loop and didn't use IsFixedTimeStep setting and test code run smooth.&quot;" CreationDate="2011-05-26T16:46:59.807" UserId="962" />
  <row Id="17303" PostId="12750" Text="What is a fixed function fallback?" CreationDate="2011-05-26T16:53:10.777" UserId="3128" />
  <row Id="17304" PostId="12742" Text="I tried with my &quot;target&quot; collider way ahead of the boss, with only a debug.log in the OnCollisionEnter of the target. The debug is never read. If i do the same with both collision method (the boss and his child target) or only the boss method, it is the boss's collider code that is executed.&#xA;&#xA;Of course each time i comment the whole method and not only it's content." CreationDate="2011-05-26T16:55:36.643" UserId="7050" />
  <row Id="17305" PostId="12657" Text="@didito: In that case, I would go with Lunin's solution.  Good luck." CreationDate="2011-05-26T17:19:12.123" UserId="7384" />
  <row Id="17306" PostId="12406" Text="I will give those a look over, thanks." CreationDate="2011-05-26T17:34:26.513" UserId="6381" />
  <row Id="17307" PostId="12750" Score="1" Text="A fixed function fallback is a rendering path (think different rendering system) that does not use shaders during rendering, and instead uses the fixed-function pipeline to achieve similar effects (for example, only uses OpenGL calls up to version 1.5 or some such)." CreationDate="2011-05-26T17:51:44.617" UserId="5259" />
  <row Id="17308" PostId="12742" Text="Are you sure the &quot;target&quot; collider is marked as being a trigger?  And that the bullet or whatever you're using is actually hitting it?" CreationDate="2011-05-26T19:13:42.893" UserId="51" />
  <row Id="17309" PostId="12742" Text="Nothing use isTrigger but i have found the answer, my target collider needed a Rigidbody to work. Now i can have distinct response depending on the hitbox, YAY!" CreationDate="2011-05-26T19:23:49.527" UserId="7050" />
  <row Id="17310" PostId="12742" Text="Since you solved the problem I'm going to go ahead and close this then." CreationDate="2011-05-26T19:58:48.927" UserId="51" />
  <row Id="17311" PostId="12742" Text="@Tetrad, you should probably just let him put the answer in an answer instead of the comments. I thought we allowed people to answer there own questions." CreationDate="2011-05-26T20:29:05.317" UserId="962" />
  <row Id="17312" PostId="12754" Score="2" Text="ticks being logic ticks? So your update fps &lt; rendering fps?" CreationDate="2011-05-26T20:45:00.593" UserId="1156" />
  <row Id="17313" PostId="12754" Text="I changed the term. But yes logic ticks. And no, I want completely free the rendering from the updating, so the game can render at 120HZ or 22.8HZ and the updating will still run the same speed, provided the user meets the system requirements." CreationDate="2011-05-26T20:52:06.667" UserId="962" />
  <row Id="17314" PostId="12709" Text="@WebDevHobo, if you answered your question, put it in the answer and mark accept." CreationDate="2011-05-26T21:09:05.703" UserId="962" />
  <row Id="17315" PostId="12754" Text="this might be realy tricky since while rendering all your object positions should stay still (changing them during render process may cause some undifined behavior)" CreationDate="2011-05-26T21:14:21.057" UserId="7328" />
  <row Id="17316" PostId="12754" Text="Interpolation would calculate the state at a time between 2 already calculated update frames. Isn't this question about extrapolation, calculating the state for a time *after* the last update frame? Since the next update is not even capculated yet." CreationDate="2011-05-26T21:19:48.103" UserId="1839" />
  <row Id="17317" PostId="12754" Text="I think that if he has only one thread updating / rendering, it can't happen to re-update just rendering position. You just send positions to the GPU and then re-update." CreationDate="2011-05-26T21:20:07.527" UserId="4947" />
  <row Id="17318" PostId="12754" Text="To AttackingHobo: I don't understand your question. You have latest positions and want to compute new positions? Or interpolate two computed positions? " CreationDate="2011-05-26T21:21:23.700" UserId="4947" />
  <row Id="17319" PostId="12738" Text="@Sean OK, so it appears it was not the frame rate.  I want to keep an eye out for this issue.  Thanks for keeping us informed.  About the game speed: in some games I use a global variable &quot;gamespeed&quot; that is multiplied with all timers and speeds in a game." CreationDate="2011-05-26T21:22:36.080" UserId="7594" />
  <row Id="17320" PostId="12750" Text="@Tetrad I'm not using shaders, just texture mapping and alpha blending, all opengl 1.x stuff.  " CreationDate="2011-05-26T21:28:08.277" UserId="7594" />
  <row Id="17321" PostId="12743" Text="The plot thickens... it appears that the &quot;slow&quot; computer I tested on actually has ATI 3D drivers installed... I'm going to examine this further, I'll keep you informed." CreationDate="2011-05-26T21:31:54.860" UserId="7594" />
  <row Id="17322" PostId="12754" Text="possible duplicate of [Data structures for interpolation and threading?](http://gamedev.stackexchange.com/questions/3656/data-structures-for-interpolation-and-threading)" CreationDate="2011-05-26T21:38:07.727" UserId="744" />
  <row Id="17323" PostId="12743" Text="Keep in mind that Intel sells more graphics hardware than ATI and nVidia combined. By a huge margin. You'd have to make sure things work on plain ol' integrated graphics too." CreationDate="2011-05-26T22:18:27.843" UserId="5564" />
  <row Id="17324" PostId="12754" Text="maybe I'm wrong but I think you'll need at least 3 GameBuffers to do that thing using thread, 2 for CPU to calculate nextframes (read from one and write to another) and a third one for GPU to read with out cpu stop it's updating and attemping to change gpu data." CreationDate="2011-05-26T22:20:09.040" UserId="7328" />
  <row Id="17325" PostId="12748" Text="This is not a helpful answer. Phil needs to fix his graphics, he already has a system to render and update the game. " CreationDate="2011-05-26T22:44:18.337" UserId="962" />
  <row Id="17326" PostId="12674" Text="I started using signals and it does seem to help performance a bit. Now, I am just wondering how many I should use. Right now in my game loop, it checks every frame whether an enemy died or reached the end. Would it be better to leave it like that or should I fire a signal when an enemy died to tell the main class that it happened? If I do this, I will have a signal and listener for every single enemy created. Is that better than just checking every frame?" CreationDate="2011-05-26T22:47:42.457" UserId="6894" />
  <row Id="17327" PostId="12743" Text="Well, the game works fine on a netbook with an Intel Graphics Media Accelerator 950, which must be one of the slowest GPUs around." CreationDate="2011-05-26T23:12:48.180" UserId="7594" />
  <row Id="17328" PostId="12674" Text="In this context, signals should do a better job than checking all enemies state. But no you doesn't need to get a signal and a listener(slot) for every single enemy created, you should have ONE **slot** on the class that deal with enemies life, deaths etc. and 1 **signal** on each enemies. When the enemies dies, or change life etc. it does &quot;.dispatch()&quot; to the registered slot its new state. This is the slot stuff to act correctly using the informations provided by the signal received to know &quot;Who&quot; died etc. The signal will call for the slot (listener) only when the dispatch function is called." CreationDate="2011-05-26T23:19:47.863" UserId="6813" />
  <row Id="17329" PostId="12743" Text="@Borris: The GMA 650 is actually one of the faster GPUs Intel makes -- it's capable of running Aero to my understanding. Much of what they sell can't do that (and don't really provide any form of hardware accelerated graphics)" CreationDate="2011-05-26T23:41:53.417" UserId="5564" />
  <row Id="17330" PostId="12754" Text="Joe: It's not a duplicate IMO." CreationDate="2011-05-27T00:22:03.330" UserId="5021" />
  <row Id="17332" PostId="12754" Text="@Everyone commenting: If he has 1 thread updating, and 1 thread drawing, then he has everything he needs to implement interpolated or extrapolated drawing." CreationDate="2011-05-27T00:25:47.927" UserId="5021" />
  <row Id="17336" PostId="12736" Text="Draw calls can use up a lot of CPU time. E.g. on the XBOX 360, 500 draw calls per frame can easily eat up all of your CPU time. You can be CPU bound with very little apparent &quot;operations&quot; being done on the CPU." CreationDate="2011-05-27T00:32:09.230" UserId="5021" />
  <row Id="17337" PostId="12736" Text="Learn to create paragraphs :) (No offense, it would just help people like me actually read the question.)" CreationDate="2011-05-27T00:32:37.247" UserId="5021" />
  <row Id="17338" PostId="12674" Text="I don't completely understand. Right now, when enemies are created, a signal fires and sends the enemy instance to the main class. The main class then adds the enemy to an array of all enemies. In the enemy class, I will create a signal that dispatches if the enemy dies. However, in the main class, wouldn't I need to loop through each enemy instance and add a listener? The listener would go to the same function, but wouldn't I still need one for every enemy instance?" CreationDate="2011-05-27T01:24:53.437" UserId="6894" />
  <row Id="17339" PostId="12753" Text="What kind of game are you trying to make? Depending on what kind of game it is you could create a class for each different level piece and use arrays to store, load, and edit them. I am not to familiar with XML but I believe it should be similar. Instead on having a script that reads your stage, have a script that reads the xml and then draws it to the stage." CreationDate="2011-05-27T01:36:01.147" UserId="6894" />
  <row Id="17340" PostId="12674" Text="By the way, I have just been using Robert Penner's as3signals. I haven't really looked into turbosignals or anything else." CreationDate="2011-05-27T01:38:00.337" UserId="6894" />
  <row Id="17341" PostId="12674" Text="Yes you need to register each signal to the main slot, but only once. After that, each dispatch call will be handled normally when required (not at each frame), thus you don't have to loop over all the registered enemies. You should take a loot at the 'Usage Example (complex)' in the TurboSignal introduction (linked in my answer), it does fit what you need from what I understand. You should also consider the pertinence of using signals instead of direct function calls... it's up to you the choose the better depending of your current situation." CreationDate="2011-05-27T01:59:31.933" UserId="6813" />
  <row Id="17342" PostId="12674" Text="I just found this video: [Responding to Game Events in the Citrus Engine](http://vimeo.com/10105904). &quot;This tutorial shows you how to listen for events in your game and respond to them accordingly&quot;. I do not have the time to look at it right now, but considering the title and the introduction sentence it could be useful to you (well using signals or whatever you need instead of normal events)." CreationDate="2011-05-27T02:04:01.293" UserId="6813" />
  <row Id="17343" PostId="12762" Text="@notabene: +1, Agreed, and I will modify my code according to your idea. Let me mar yor answer as the _Accepted Answer_ as well." CreationDate="2011-05-27T02:29:25.107" UserId="2229" />
  <row Id="17344" PostId="7478" Text="3. sounds good, but that link leaves much to be desired in how to actually accomplish what I am trying to achieve." CreationDate="2011-05-27T02:39:00.693" UserId="962" />
  <row Id="17346" PostId="12446" Text="Is the problem about the camera &quot;shaking&quot;? If so I might have a solution." CreationDate="2011-05-27T03:41:48.450" UserId="2111" />
  <row Id="17347" PostId="12733" Text="1) Currently we are not using mipmapping since we are not placing objects very far or very close to camera. Of course we have things like background etc. but we calculate their size so that they are pixel-perfect. However, I don't see any reason why mipmapping couldn't be used. 2) As I mentioned in my answer, geometry does _not_ change if the sprites are facing the camera. In this case they are just like billboards and they will not certainly deform." CreationDate="2011-05-27T05:38:18.193" UserId="4241" />
  <row Id="17349" PostId="12760" Text="+1 the same must be done for orientations/rotations and all other states that change over time, i. e. like material animations in particle systems etc." CreationDate="2011-05-27T05:56:02.383" UserId="1839" />
  <row Id="17350" PostId="12733" Text="About the maths: You have to find a plane in view frustum with an area equal to the area of viewport. This is very easy to calculate: plane = (1/2)*viewportHeight/tan(verticalFOV/2). Note that if you are using FOV=90 this simplifies to plane = (1/2)*viewportHeight" CreationDate="2011-05-27T06:01:18.117" UserId="4241" />
  <row Id="17351" PostId="12765" Text="I can see what you're saying but it doesn't really come up with much when google imaged. That doesn't mean it's wrong, but let's see what comes up" CreationDate="2011-05-27T06:17:44.943" UserId="6106" />
  <row Id="17352" PostId="7471" Score="1" Text="Coming back four months later and changing your question completely is kind of poor form. You should have created a new question." CreationDate="2011-05-27T06:38:31.623" UserId="288" />
  <row Id="17354" PostId="268" Text="Funny that you ask for the expert-community's opinion, then accept an answer that is clearly in contradiction with their opinion..." CreationDate="2011-05-27T06:40:39.583" UserId="2061" />
  <row Id="17355" PostId="7478" Text="@AttackingHobo That link was related to your original question, which implied that you wanted to do this when the files changed (ie: automatically at runtime), rather than simply at build-time. To do it at build time, simply create/locate and use an appropriate content pipeline extension. Like the one in the Sprite Sheet sample that I linked." CreationDate="2011-05-27T06:41:52.280" UserId="288" />
  <row Id="17356" PostId="7478" Text="Also: note the [`ContentProcessorContext.AddDependency` method](http://msdn.microsoft.com/en-us/library/microsoft.xna.framework.content.pipeline.contentprocessorcontext.adddependency.aspx), which gives you a mechanism for detecting changes to files (eg: sprite images) that are not directly referenced by your content project." CreationDate="2011-05-27T06:45:33.560" UserId="288" />
  <row Id="17357" PostId="12446" Text="no problem is that you move faster than the map is made so you catch up to the edge" CreationDate="2011-05-27T07:07:17.640" UserId="7437" />
  <row Id="17358" PostId="12765" Text="just out of curiosity, according to the article Tim refered to `top-down`, `birds eye` and `overhead` are same view angles why are you using 3 diffrent words in same question for same thing?" CreationDate="2011-05-27T07:22:42.230" UserId="7328" />
  <row Id="17359" PostId="12763" Text="I'm not sure about the title but if you are usin gXNA there was a question in the 2 past weeks that was asking hte same thing." CreationDate="2011-05-27T07:28:56.417" UserId="7328" />
  <row Id="17360" PostId="12743" Text="@billy thanks for the info.  Really, are computers still sold without any 3D capabilities? I mean, a $250 netbook has the 650, and I've seen older laptops which could also manage 3D graphics." CreationDate="2011-05-27T07:35:26.903" UserId="7594" />
  <row Id="17361" PostId="12769" Score="1" Text="Maybe you could add some relevant code to the question so people won't have to dive into your code to find out what happens." CreationDate="2011-05-27T09:04:03.517" UserId="7618" />
  <row Id="17362" PostId="12769" Text="thanks for the tip, i did" CreationDate="2011-05-27T09:13:44.970" UserId="7437" />
  <row Id="17363" PostId="12769" Score="2" Text="To format larger code blocks, indent 4 spaces instead of using ``" CreationDate="2011-05-27T09:59:47.783" UserId="7618" />
  <row Id="17364" PostId="12752" Text="That fixed the problem on this computer. I'm still interested in other people's experiences though.&#xA;&#xA;I used [OpenGL extensions viewer](http://www.realtech-vr.com/glview/download.html) to check the OpenGL driver.  It reported GDI generic OpenGL 1.1 (= software rendering).&#xA;&#xA;It worked after just re-installing the drivers.  AFAIK the original drivers were installed using the standard installation process (which also finds GPU specific drivers) rather than downloading them directly from the vendor website.  The reported OpenGL version is now 3.3.  My JOGL app now works smoothly as do LWJGL apps.&#xA;" CreationDate="2011-05-27T10:07:13.830" UserId="7594" />
  <row Id="17365" PostId="12733" Text="@user4241: Hi and thank you again for your advices. Regarding point no **2**, I have practical experiecne, that if an object is close to the camera, and if it is moved away **from screen centre into corners**, despite the sprite facet normal is perpendicular to the camera, it is then **viewed from slight angle**. But I think, this is not your case, as the sprites are quite far from the camera, so this angle is not relevant in your case. Thank you very much for your advice." CreationDate="2011-05-27T10:40:28.857" UserId="2229" />
  <row Id="17366" PostId="12777" Score="1" Text="Take a look at http://gameprogrammingpatterns.com/. Programming patterns are explained from a game programming perspective." CreationDate="2011-05-27T11:04:09.670" UserId="2766" />
  <row Id="17367" PostId="12780" Text="Good point ^^.&#xA;&#xA;I do much prefer the Service Locator, only I can't help but think to myself that it's kindof like making your services globals or using Properties to access them, which is horrible :)." CreationDate="2011-05-27T11:18:12.070" UserId="7588" />
  <row Id="17368" PostId="12779" Text="Thanks but my question is more about global architecture, not inheritence." CreationDate="2011-05-27T11:25:34.183" UserId="7588" />
  <row Id="17369" PostId="12781" Text="Why shouldn't I need an InputManager or SoundManager?&#xA;I don't want all Input &amp; Sound code directly in place whenever I need to check someting... Of course encapsulation would be easy if we only have a few classes..." CreationDate="2011-05-27T11:56:34.643" UserId="7588" />
  <row Id="17370" PostId="12446" Text="Oh I see. I'll take a look today and come back to you with my results." CreationDate="2011-05-27T12:05:10.760" UserId="2111" />
  <row Id="17371" PostId="12760" Text="Good point Maik, I just used position as an example. You need to store the &quot;velocity&quot; of any property you wish to extrapolate (i.e. the rate of change over time of that property), if you want to use extrapolation. In the end, I really can't think of a situation where extrapolation is better than interpolation, I only included it because the asker's question requested it. I use interpolation. With interpolation, we need to store the current and previous update results of any properties to interpolate, like you said." CreationDate="2011-05-27T12:05:23.773" UserId="5021" />
  <row Id="17372" PostId="12781" Text="@3nixios: If you make a Sound object, then it is *your* responsibility to keep it around as long as you still need it. Sound-related code goes in the Sound class. What exact function are you hoping for your Manager to achieve? The same is true of Input." CreationDate="2011-05-27T12:08:25.373" UserId="4662" />
  <row Id="17373" PostId="12781" Text="@DeadMG: What I call 'InputManager' will keep the state of which controllers are connected, manage controller vibration, etc.&#xA;My Sound manager simply loads the needed Sound Banks and allows cues to be played. I don't know if you'd qualify them as 'Managers' per se or even 'Helpers', but I find them helpful from a User point of view.&#xA;Ofc, I'd be welcome for any better suggestions." CreationDate="2011-05-27T12:13:12.437" UserId="7588" />
  <row Id="17374" PostId="12781" Text="I use both a sound manager and an input manager. The input manager takes care of the case where a user changes from one controller to another. It exposes methods that allow you to check which button is pressed, and these methods take care of the case where a different controller is suddenly being used. My sound manager manages sound resources (with an object pool) and automatically chooses appropriate sound fading between players in splitscreen. If you don't put this type of functionality in a &quot;SoundManager&quot;, then where do you put it?" CreationDate="2011-05-27T12:15:26.680" UserId="5021" />
  <row Id="17375" PostId="12770" Text="How is the show going to go on while the DB is down? Your gaming servers aren't going to be pulling the messages out of the message queue, are they?" CreationDate="2011-05-27T12:18:16.847" UserId="5020" />
  <row Id="17376" PostId="12781" Text="The sound manager also allows you to &quot;fire-and-forget&quot; sounds, for sounds that are short, so there is no need to get a new sound instance from the object pool and release it when it's done playing. You can simply do `SoundManager.Play(Sounds.Beep2);`." CreationDate="2011-05-27T12:18:38.313" UserId="5021" />
  <row Id="17377" PostId="12781" Text="The sound manager also takes care of global sound and music effect volume, as chosen by the player." CreationDate="2011-05-27T12:19:49.263" UserId="5021" />
  <row Id="17378" PostId="12781" Text="@Olhovsky This is the same sort of architecture I'm using.&#xA;How do you manage these classes? As Singletons? Services? Gloabls? xD" CreationDate="2011-05-27T12:19:52.447" UserId="7588" />
  <row Id="17379" PostId="12781" Score="1" Text="@3nixios: So make a SoundBank class that holds a SoundBank, and have it create Sound objects from cues within that bank. There's still no need for global data- if you can't conceive of a manager-less design, then pass the managers as references." CreationDate="2011-05-27T12:23:21.357" UserId="4662" />
  <row Id="17380" PostId="12446" Text="thanks man ;) i realy appreciate it" CreationDate="2011-05-27T12:25:59.580" UserId="7437" />
  <row Id="17381" PostId="12760" Text="This is a restatement of the problem and the difference between interpolation and extrapolation; it is not an answer." CreationDate="2011-05-27T12:27:41.483" UserId="744" />
  <row Id="17382" PostId="12777" Text="3nixios: I added an answer to answer the question you asked in someone's answer's comments." CreationDate="2011-05-27T12:30:25.083" UserId="5021" />
  <row Id="17383" PostId="12781" Text="DeadMG: So that SoundBank would expose public static methods?" CreationDate="2011-05-27T12:31:35.707" UserId="5021" />
  <row Id="17384" PostId="12760" Text="Joe Wreshnig: I thought I gave enought to perform an implementation. But alright, I'll explain how to do linear interpolation in my answer, although the link in my answer to wikipedia's article would probably be sufficient, or you could just use the Lerp function in whatever library you have access to. In any case, this certainly was not just a &quot;restatement of the problem&quot;." CreationDate="2011-05-27T12:33:12.350" UserId="5021" />
  <row Id="17385" PostId="12781" Text="@Olhovsky: No, it would be an instance, for which you would create an instance of it for a specific bank." CreationDate="2011-05-27T12:33:24.880" UserId="4662" />
  <row Id="17386" PostId="12781" Text="@DeadMG: I wouldn't call a class SoundBank if it did more than what would be 'expected' from a sound bank, any sort of data management or logic, such as with Sound Objects, and imho it becomes a manager.&#xA;&#xA;My question was initially to ask if there were better ways to handle my Managers, not wheter their existence or their names were justified, I believe that is another topic. Indeed I do NOT want to use global varaibles so I was wondering if there was a 'better' way that the ones I proposed in my question.&#xA;&#xA;In any case, this is so far off topic :P" CreationDate="2011-05-27T12:33:59.103" UserId="7588" />
  <row Id="17388" PostId="12779" Text="and that's what my answer is all about, for all your resources you have a base class that can use that, and every class that need to use resources, should inherit from classes that provide them, in these architecture there is no need for singleton but you still have some static variables in your code. in this approch the keyboard value in KeyboardReader is once initialized by some class, (for example main function) and after that it's that value is shared with all the classes that inherit KeyboardReader. without passing keyboard to them or defineing Keyboard as a singleton." CreationDate="2011-05-27T12:41:09.890" UserId="7328" />
  <row Id="17389" PostId="12784" Text="@Andrew Russel: I do believe sir that I like your view on things.&#xA;I would agree in general but the idea is to make an architecture for rapid gameplay prototyping, it is therefore much easier for me to have Managers that are accessible via Properties for example. So I guess this is answered.&#xA;I have now reached a sense of tranquility." CreationDate="2011-05-27T12:43:33.430" UserId="7588" />
  <row Id="17391" PostId="12781" Text="@DeadMg: Singletons and global variables aren't always somthing, for example when you are trying to write somthing you are just accessing some global data, or as far as I tested every game engine has singletons for resource managing, which can be sound bank, renderer, input Manager, physics controller, and some event have some class director which controls game's application flow." CreationDate="2011-05-27T12:48:43.470" UserId="7328" />
  <row Id="17392" PostId="12784" Text="Andrew Russell: Since you asked about the need for a sound manager... My sound manager manages sound resources (with an object pool) and automatically chooses appropriate sound fading between players in splitscreen. The sound manager also allows you to &quot;fire-and-forget&quot; sounds, for sounds that are short, so there is no need to get a new sound instance from the object pool and release it when it's done playing. You can simply do `SoundManager.Play(Sounds.Beep2)`; If you don't put this type of functionality in a &quot;SoundManager&quot;, then where do you put it? " CreationDate="2011-05-27T12:51:33.170" UserId="5021" />
  <row Id="17393" PostId="12674" Text="I haven't looked at your video yet since I am at work, but looking at the 'Usage Example (complex)' in your previous post, it looks like there is a slot for each button. Using just as3signals, I was thinking I would have in the enemy class: `public var EnemyDied:Signal` which will dispatch whenever the enemy dies. In my main class, whenever an enemy is created, I will have `enemyInstance.EnemyDied.add(EnemyDiedHandler)`. So what I meant earlier, is that I would have a signal and a listener for each enemy. Is there a way so I could have one signal that listens for any EnemyDied dispatch?" CreationDate="2011-05-27T12:51:50.923" UserId="6894" />
  <row Id="17394" PostId="12784" Text="@Olhovsky: It sounds like your use of a sound manager is appropriate, if XNA's built-in fire-and-forget functionality does not meet your needs. Whether you make this a simple `static` class with a static pool, or you make it instanceable (and then what &quot;owns&quot; it), will depend on your game." CreationDate="2011-05-27T13:00:10.527" UserId="288" />
  <row Id="17396" PostId="12760" Text="Joe Wreshnig: I expanded on my answer to explain how double buffering and linear interpolation are done. Let me know if there's anything else that I should add." CreationDate="2011-05-27T13:04:35.993" UserId="5021" />
  <row Id="17397" PostId="12781" Text="@Gajet I would *seriously* avoid making your resource management classes *singletons*! (Global instances are fine.)" CreationDate="2011-05-27T13:05:49.030" UserId="288" />
  <row Id="17398" PostId="12781" Text="@Andrew: are yuo talking about the answer I gave or are you talking about the comment i just put hear? and it's about my answer, it's true that they are global instances but they're not acceble from any where in code (it least they are some protected members of a class, only their children can use them." CreationDate="2011-05-27T13:10:36.487" UserId="7328" />
  <row Id="17399" PostId="12763" Text="This question might help you, though the coordinate system was based on 2d screen to isometric: http://gamedev.stackexchange.com/questions/12362/isometric-rendering-and-picking" CreationDate="2011-05-27T13:29:14.713" UserId="6558" />
  <row Id="17401" PostId="12780" Text="I honestly prefer constructor injection. It makes it clear what dependencies a given object has. With a service locator, it can be hard to know which components depend on which other components." CreationDate="2011-05-27T13:54:46.027" UserId="2766" />
  <row Id="17402" PostId="12770" Text="We use DB to write transactions. While DB is down transactions are in rabbitMQ and when it is back DBWorker starts eating them our of the rabbitMQ - I thought that everybody does it like this..." CreationDate="2011-05-27T14:11:29.203" UserId="7616" />
  <row Id="17403" PostId="12778" Text="agreed. u might also want to try to run perfmon.exe on windows providing you don't have dedicated physics processing. " CreationDate="2011-05-27T14:22:27.883" UserId="6937" />
  <row Id="17404" PostId="12781" Score="1" Text="@Gajet: Your comment. Global accessibility and single-instance objects are really two separate issues. Global accessibility is fine. Single-instance is a very bad idea. Strictly speaking, a class that is &quot;Singleton&quot; is not necessarily globally accessible. (This is the basic thrust of my answer.)" CreationDate="2011-05-27T14:38:32.583" UserId="288" />
  <row Id="17405" PostId="12781" Text="@Andrew: but singletons have their own advantages like when you are creating a game you have to make sure you have only 1 object pool, only once graphic api is initialized, and any other thing that is in direct use with system resouces." CreationDate="2011-05-27T15:06:34.593" UserId="7328" />
  <row Id="17406" PostId="12792" Text="The issue of broad portability is (and should be) generally less of a concern for somebody getting started. It's hard enough to write a game for one platform." CreationDate="2011-05-27T15:24:50.803" UserId="1430" />
  <row Id="17407" PostId="12792" Text="Additionally, it is almost entirely irrelevant that every console has C++ support because *no* console can be developed to using C++ by hobbyists except via unofficial homebrew SDKs which are typically cumbersome and not ideal for a beginner." CreationDate="2011-05-27T15:27:23.690" UserId="1430" />
  <row Id="17408" PostId="12792" Text="@Josh: for just starting first game maybe but I prefer to pick a language for game programing just once, and never change it unless I realy have to, so I think broad portabilty maybe rather important if he doesn't want to change the language he has mastered for every new game with new needs." CreationDate="2011-05-27T15:29:53.113" UserId="7328" />
  <row Id="17409" PostId="12792" Score="4" Text="That's kind of a terrible approach; a good developer will learn and know several languages over the course of his or her career so as to, among other things, be able to choose the one that best fits the problem domain at hand." CreationDate="2011-05-27T15:30:51.613" UserId="1430" />
  <row Id="17410" PostId="12786" Score="1" Text="If you have got multiple servers and need globally unique ids another trick is to use a server number as part of the id, so any game created by server 0 would have an id ending in 00 etc." CreationDate="2011-05-27T15:31:12.677" UserId="3505" />
  <row Id="17411" PostId="12792" Text="@Josh: about your second post, what i meant was not that you can start coding for wii the night you think you want to but at least you know there is a gameengine or sdk to port your code with minimal changes. and I'm agreed to your third comment but also i'm a lazy coder! and that's why I have that approch!" CreationDate="2011-05-27T15:36:35.553" UserId="7328" />
  <row Id="17412" PostId="12789" Text="Amusing. Here is a sentence to pass the char limit on comments." CreationDate="2011-05-27T15:38:48.593" UserId="5021" />
  <row Id="17413" PostId="12674" Text="Hum in the 'Usage Example (complex)' I see a signals on each button (`public var clicked:Signal1 = new Signal1();`) that is dispatched (`clicked.dispatch(this);`) and one slot on the MainMenu (`public class MainMenu implements Slot1`) which register for all the button signals (`button1.clicked.addSlot(this);`). So this is exactly what you are describing with your enemy class." CreationDate="2011-05-27T15:46:46.380" UserId="6813" />
  <row Id="17414" PostId="12674" Text="To answer your last question, no you can't register &quot;all&quot; enemies at once, you have to register each instance one by one. But you can delegate this job to the Enemy class by providing it the reference to the main slot and registering it to the slot in the constructor method (`this.addSlot(theMainSlot);`). This way each time a new Enemy class instance is created, it will auto register its signal to the main slot, and each time it is destroyed it will unregister the signal from the slot." CreationDate="2011-05-27T15:47:01.807" UserId="6813" />
  <row Id="17415" PostId="12787" Text="For question #2, see this: http://gamedev.stackexchange.com/questions/854/what-are-good-games-to-earn-your-wings-with" CreationDate="2011-05-27T16:02:21.280" UserId="51" />
  <row Id="17416" PostId="12787" Score="4" Text="Also, -1 because it's mostly subjective without actually bringing any requirements to the table.  If you're just making a PC game and you don't care about whether it's a web game or a standalone game or whatever, it really doesn't matter too much the language.  What framework you pick is going to make it easier or harder." CreationDate="2011-05-27T16:08:47.803" UserId="51" />
  <row Id="17417" PostId="12789" Score="2" Text="I heard [whitespace](http://en.wikipedia.org/wiki/Whitespace_%28programming_language%29) is pretty good too." CreationDate="2011-05-27T16:08:56.903" UserId="20" />
  <row Id="17419" PostId="7471" Text="I only changed it to completely disambiguate it. You see I asked for something that would automatically update by itself when the game was launched(build). If you read my earlier version, you will see I am asking the same thing, except I have narrowed down what actually needs to happen." CreationDate="2011-05-27T16:42:51.170" UserId="962" />
  <row Id="17420" PostId="12760" Text="Would it be possible to also also use the old speed and the new speed in the iterpolation? I don't think it would matter to much in a high frequency simulation, but it would be extremely helpful for something like a low frequency particle simulation." CreationDate="2011-05-27T16:52:22.140" UserId="962" />
  <row Id="17421" PostId="462" Text="The ClickOnce info is wrong.  The bootstrapper is used if you want to use the automatic update feature.  You can still create a separate installer (just add an installer-project to your solution, it's incredibly simple) which will be a self-contained executable, and have customizable start-menu shortcuts.  You shouldn't use an .msi with clickonce, though, as they don't coorporate together - fortunately, VS installer projects produce both an .exe and an .msi." CreationDate="2011-05-27T16:58:10.720" UserId="2061" />
  <row Id="17422" PostId="12754" Text="@Joe, I added some more details, I hope that it should be enough to differentiate this question from that one." CreationDate="2011-05-27T16:58:10.800" UserId="962" />
  <row Id="17423" PostId="12779" Score="1" Text="-1 because c# doesn't support multiple inheritance " CreationDate="2011-05-27T17:01:43.890" UserId="51" />
  <row Id="17424" PostId="12779" Score="2" Text="Also this is exactly the kind of overuse of inheritance that people have been shying away from.  A game controller should not have a &quot;is a&quot; relationship with an input manager.  At the very least you should make the inheritance private.  But a less messy solution (for example, to avoid multiple inheritance name collision) would be to use composition, but since in this case you're using static instances you'd have to make them public anyway, the composition members wouldn't actually do anything, so you might as well make them globals." CreationDate="2011-05-27T17:16:26.530" UserId="51" />
  <row Id="17425" PostId="12792" Text="Learning only one language will make you more than just a lazy programmer, it will make you a bad programmer. If you learn several languages, you'll find it trivially easy to learn yet another new language/technology. In this industry, the tools change quickly, and you should be prepared to adapt. Concepts known in another language can help you in a different one. For example, functional languages (e.g. Scheme), and logic languages (e.g. Prolog) are completely different from the the only programming paradigm you know -- which is imperative (e.g. C)." CreationDate="2011-05-27T17:34:16.233" UserId="5021" />
  <row Id="17426" PostId="12760" Text="Speed? Velocity contains the &quot;speed&quot; information. I'm not sure what you're asking." CreationDate="2011-05-27T17:36:04.983" UserId="5021" />
  <row Id="17427" PostId="12798" Score="1" Text="He doesn't have a variable update rate. He has a fixed update rate. To be honest, I really don't know what point you're trying to make here :/" CreationDate="2011-05-27T17:37:31.753" UserId="5021" />
  <row Id="17428" PostId="12798" Score="1" Text="???  -1. That is the entire point, I am having a guaranteed update rate, but a variable render rate, and I want it to be smooth with no stuttering." CreationDate="2011-05-27T17:39:45.157" UserId="962" />
  <row Id="17429" PostId="12781" Score="3" Text="Gajet: Actually you usually want more than one object pool (I have dozens typically), and having a singleton isn't really necessary for ensuring that you only have one graphical API. In fact, why do you need to ensure that at all?" CreationDate="2011-05-27T17:40:15.243" UserId="5021" />
  <row Id="17430" PostId="12798" Text="Variable update rates do not work nicely with networked games, competitive games, replay systems, or anything else that relies on the game-play being deterministic." CreationDate="2011-05-27T17:42:14.253" UserId="962" />
  <row Id="17431" PostId="12798" Score="1" Text="Fixed update also allows easy integration of pseudo-friction. E.g. if you want to multiply your speed by 0.9 each frame, how do you figure out how much to multiply by if you have a fast or a slow frame? Fixed update is sometimes greatly preferred -- virtually all physics simulations use a fixed update rate." CreationDate="2011-05-27T17:48:51.020" UserId="5021" />
  <row Id="17432" PostId="12779" Text="-1 What will you do with a Trackball, Multitouch Screen, Gamepad? Inherit from them too? What about a second Game-Pad? Really terrible design! " CreationDate="2011-05-27T17:54:22.060" UserId="1839" />
  <row Id="17433" PostId="12798" Score="1" Text="If I used a variable frame rate, and set up a complex initial state with lots of objects bouncing off of each other, there is no guaranty that it will simulate exactly the same. In fact it will most likely simulate slightly differently each time, with small differences at the start, compounding over a short time into completely different states between each simulation run." CreationDate="2011-05-27T18:02:06.707" UserId="962" />
  <row Id="17434" PostId="12662" Text="After trying various approaches to circumventing this, I've decided the best solution is just to recode the app to recreate the context. This is such a wasteful approach but it doesn't look like there's any good solution http://code.google.com/p/android/issues/detail?id=12774" CreationDate="2011-05-27T18:14:03.513" UserId="788" />
  <row Id="17435" PostId="12777" Text="The term you are looking for for singletons and the like is anti-pattern :)" CreationDate="2011-05-27T18:19:39.897" UserId="1156" />
  <row Id="17436" PostId="12801" Score="2" Text="I believe you can find your answers here http://gamedev.stackexchange.com/questions/90/why-is-it-so-hard-to-develop-a-mmo" CreationDate="2011-05-27T18:26:11.083" UserId="4443" />
  <row Id="17437" PostId="12801" Score="1" Text="This is both the most typical and most concerning statement in your entire post: &quot;So this morning I'm taking a shower, when suddenly I have an epiphany!&quot;" CreationDate="2011-05-27T18:29:37.393" UserId="6588" />
  <row Id="17438" PostId="12779" Text="when you say c# doesn't support multiple inheritence it's a fair point, but at least my answer can meet all the question needs, it's not singleton, almost not a global variable, and it doesn't insult encapsulation," CreationDate="2011-05-27T18:45:13.997" UserId="7328" />
  <row Id="17439" PostId="12779" Text="@Maik, in my design there are some classes that have basic functionality for use of every input, there is no limit why you should define base classes that can use trackball or multitouch Screen, and for the second gamepad there are two approches, you can either define your GamePad Controller to provide support for second gamepad or have a array of 2 or more GamePads in your base `GamepadReader` class." CreationDate="2011-05-27T18:48:52.213" UserId="7328" />
  <row Id="17440" PostId="12792" Text="@Olhovsky: learning only one language is one thing and trying to only learn one is just another, I can write my program (although not always with best design possible) with each of c/c++/c#/java/pascal(delphi)/matlab and it'ss take me less than 2 weeks to start programming with a new language. but when I say I want to only learn c++ it means I'll try to do everything in c++ as much as I could, and c++ has the most potential to adopt to a new framework." CreationDate="2011-05-27T18:55:25.200" UserId="7328" />
  <row Id="17441" PostId="12801" Score="1" Text="+/- 1 both for not shareing your idea and expecting us to help!" CreationDate="2011-05-27T18:59:48.423" UserId="7328" />
  <row Id="17442" PostId="12792" Text="Gajet: All of the languages you listed are imperative languages. Can you write a program in a functional or a logical language?" CreationDate="2011-05-27T19:07:00.740" UserId="5021" />
  <row Id="17443" PostId="12760" Score="1" Text="In my example I stored position and rotation in the state. You can just store velocity (or speed) in the state as well. Then you lerp between speed in the exact same way (`Lerp(previous_speed, current_speed, elapsed/update_tick_length)`). You can do this with any number you want to store in the state. Lerping just gives you a value between two values, given a lerp factor." CreationDate="2011-05-27T19:15:04.897" UserId="5021" />
  <row Id="17444" PostId="12792" Text="@Olhovsky:not realy never feeled any need to use one but I'm sure it won't take long for me to master any of them(accualy it's the first time I've encountered with these terms and I've jsut lookup what they mean." CreationDate="2011-05-27T19:15:43.287" UserId="7328" />
  <row Id="17445" PostId="12802" Text="Thank you much sorenbs. It's a shame that the big game companies aren't branching out - fear of failure at that high of cost - there are so many branches of games left unexplored!" CreationDate="2011-05-27T19:22:39.417" UserId="3971" />
  <row Id="17446" PostId="12792" Text="@Gajet: I wouldn't use the word *master* lightly. It will take you many years to master any of the languages that you've mentioned. And I think that you'll find that Prolog is wildly different from the imperative approach that you're used to. Anyways, learning different language paradigms is one point. Another is that it's not a very good approach to say &quot;oh, I'm going to pick one tool and use that forever&quot;. Even expert C++ programmers sometimes turn to Python or some other scripting language when the need calls for it. Would you write a website in C++? You could -- but it would be wasteful." CreationDate="2011-05-27T19:33:36.743" UserId="5021" />
  <row Id="17447" PostId="12792" Text="World of Warcraft (and other games) use LUA for writing much of the UI, and C++ for the game engine. C++ is not the right tool for every job." CreationDate="2011-05-27T19:35:10.207" UserId="5021" />
  <row Id="17448" PostId="12801" Text="Chances are, if you state what your idea generally is, people here will just say, oh thats just a combination of idea X that this guy published on his blog, and idea Y that some other guy published in some forum. Game ideas are a dime a dozen. Discovering the good ones requires a great deal of time and effort (via prototyping and testing)." CreationDate="2011-05-27T19:39:14.087" UserId="5021" />
  <row Id="17449" PostId="8877" Text="This is probably the most well-known as of 5/2011" CreationDate="2011-05-27T19:40:03.740" UserId="2061" />
  <row Id="17450" PostId="12807" Text="Very helpful, thank you" CreationDate="2011-05-27T19:44:53.497" UserId="3971" />
  <row Id="17451" PostId="12772" Text="You do raise a couple of good points, but ultimately do not answer the question. Also, world of warcraft and the Frostbite engine (used by Battlefield 2) both store texture splatting data in textures. 16 texture registers is a lot. Remember, you don't draw the whole terrain in a single draw call! Your terrain can be composed of tens of thousands of chunks." CreationDate="2011-05-27T19:45:55.107" UserId="5021" />
  <row Id="17452" PostId="12806" Text="I'm building a facebook game (one man show) but I subscribed to your blog just to see what challenges you'll encounter. =) " CreationDate="2011-05-27T19:48:45.397" UserId="5540" />
  <row Id="17453" PostId="12802" Text="My impression is they are branching out but there are technical/logistical barriers. If they successfully branch out they own the market and somehow it becomes normal. See the example of Valve and Portal. Or even something like World of Warcraft. As stated above the ideas are easy in comparison to the actual development." CreationDate="2011-05-27T19:50:13.400" UserId="43" />
  <row Id="17454" PostId="12806" Text="That's a very nice blog. I was thinking about doing the same thing once when I was in a slump - to keep myself coding and motivated." CreationDate="2011-05-27T19:53:58.983" UserId="3971" />
  <row Id="17455" PostId="12779" Text="The controller class interface will be polluted by each and every public method of any inherited device. It's not controlling anything, just being bypassed. Users can simply call Mutitouchscreen-methods on the controller, even though there might not even be such a device on the current machine. Its supposed to be the job of a controller to call methods on the individual device, the user must not even see the devices nor care from which device the input is coming from. Such a class can be called a controller. But the above posted design exposes all devices instead of controlling access to them." CreationDate="2011-05-27T19:59:58.573" UserId="1839" />
  <row Id="17456" PostId="12779" Text="Hence there is no obvious _contract_ (read: clear interface) to the users of the controller-class, just a huge interface mess." CreationDate="2011-05-27T20:02:28.760" UserId="1839" />
  <row Id="17457" PostId="12806" Text="I didn't finish the project on time. But it did keep me motivated, and I did put 500-900 hours into the project in 3 months (6-10 hours/day)." CreationDate="2011-05-27T20:06:24.490" UserId="5021" />
  <row Id="17458" PostId="2950" Text="@Nate: see also http://gamedev.stackexchange.com/questions/5135/3d-game-engines-for-xna-games" CreationDate="2011-05-27T20:10:23.797" UserId="2061" />
  <row Id="17459" PostId="12801" Text="Step 1: Win the lottery.  Step 2: Hire people to make your game.  Step 3: ??? Step 4: Profit?" CreationDate="2011-05-27T20:14:27.270" UserId="6558" />
  <row Id="17460" PostId="12779" Text="It is known as the [BaseBean](http://en.wikipedia.org/wiki/BaseBean) Anti-Pattern." CreationDate="2011-05-27T20:15:21.640" UserId="1839" />
  <row Id="17461" PostId="12587" Text="It appears that you have BBQsauced the crap out of other answerers sir." CreationDate="2011-05-27T20:19:53.410" UserId="5021" />
  <row Id="17462" PostId="12806" Text="+1 Brilliant answer" CreationDate="2011-05-27T20:29:54.660" UserId="1839" />
  <row Id="17463" PostId="12806" Text="Maik: I'm glad you liked it :)" CreationDate="2011-05-27T20:31:59.917" UserId="5021" />
  <row Id="17464" PostId="12806" Text="Kort: Thanks, I'll try to keep it interesting :)" CreationDate="2011-05-27T20:32:10.370" UserId="5021" />
  <row Id="17465" PostId="12792" Text="@Olhovsky: It's true that not every language is suitable for every job, for example I once tried javascript and php for my highschool project(it was a weblog with all normal functionalities that one should have), and I'm not saying I would avoid learning any now language. I'm just saying as long as there are some tools to do somthing with c++ I prefer to do it using that. and when I say master I just mean I can do what ever I want ALMOST without help of others, but again there are many things even in c++ that after 6 years of coding I'm just finding out how they work." CreationDate="2011-05-27T20:37:49.597" UserId="7328" />
  <row Id="17466" PostId="12754" Text="Your edits don't really make sense, or at least miss the point. If you're doing integration in your interpolation it's no longer interpolation, it's integration - the goal of interpolation is to avoid doing integration so much." CreationDate="2011-05-27T20:40:04.930" UserId="744" />
  <row Id="17467" PostId="12792" Text="and i just had an overview of prolog, it's almost the same as firstorder logic that i took this semester in university. but it may take a month to learn how to develop a useful project with it." CreationDate="2011-05-27T20:43:54.380" UserId="7328" />
  <row Id="17468" PostId="12446" Text="I'm sorry I won't be able to take a look at your code before tomorrow.. You can ask a question and see if somebody else can fix it if you want, but I'll check as soon as possible." CreationDate="2011-05-27T20:45:03.280" UserId="2111" />
  <row Id="17469" PostId="12804" Text="as much as I know all touches keep their numbers until they end.&#xA;consider the below senario:&#xA;&#xA;*touchA begin -&gt; index 0&#xA;&#xA;*touchB begin -&gt; A = 0 , B = 1&#xA;&#xA;*touchA end -&gt; B = 1&#xA;&#xA;*touchC begin -&gt; C = 0 , B = 1&#xA;&#xA;*touchB end -&gt; C = 0&#xA;&#xA;&#xA;and their index is always the same for each of touchbegin ,touchmoved, and touch end." CreationDate="2011-05-27T20:51:05.307" UserId="7328" />
  <row Id="17470" PostId="12807" Text="Well said Kort, +1." CreationDate="2011-05-27T20:54:33.057" UserId="5021" />
  <row Id="17471" PostId="12754" Text="What do you mean by integration?" CreationDate="2011-05-27T21:12:39.557" UserId="962" />
  <row Id="17472" PostId="12804" Text="Okay, maybe what I didn't understand was that when you do something like touch = [[[event allTouches] allObjects] objectAtIndex:0];, you're actually SETTING that touch to index 0? I thought that meant the touch equaled the touch event at index 0." CreationDate="2011-05-27T21:20:09.137" UserId="7631" />
  <row Id="17473" PostId="12804" Text="that means touch at index 0, but when the second touch starts and the first touch not ended yet cocos2d will store it in index 1" CreationDate="2011-05-27T21:21:39.793" UserId="7328" />
  <row Id="17474" PostId="12804" Text="Interesting, let me work with this some more and I'll get back to you. Thanks!" CreationDate="2011-05-27T21:24:33.990" UserId="7631" />
  <row Id="17475" PostId="7307" Text="[In zelda](http://gamedev.stackexchange.com/questions/8336/how-was-collision-detection-handled-in-the-legend-of-zelda-a-link-to-the-past), there was only one-angle they could be at, so there was no need for calculating normal-vectors, it was just a special case in the code." CreationDate="2011-05-27T21:40:22.373" UserId="2061" />
  <row Id="17476" PostId="9209" Text="I was under the impression they were for [Component-based programming](http://gamedev.stackexchange.com/questions/1684/proper-oo-game-engine-design-how-to-parcel-responsibilities/1687#1687), which is apparently widely used for game programming." CreationDate="2011-05-27T21:50:31.563" UserId="2061" />
  <row Id="17477" PostId="12760" Text="@Olhovsky, getting the lerped speed value won't help me. An example would be a vel_old = 10, vel_new = 20, with linear interpolation, it would travel between pos_old and pos_new at a linear rate. Would there be any way to interpolate the speed change into the interpolation?" CreationDate="2011-05-27T22:27:26.987" UserId="962" />
  <row Id="17478" PostId="12760" Text="Unless you have a really low frequency update rate (i.e. less than 20FPS) then you probably don't want to do that. But if you do for some reason, you could try lerping between the two velocities, and then try integrating velocity into position by adding `velocity*(elapsed/update_tick_length)` to position at each draw call (where `velocity` is lerped). Off the top of my head I'm not 100% sure if that works out. For low frequency coarse detail data like pathfinding search results, biezer curves or cubic splines are used to do a curved interpolation between positions. You could try that approach." CreationDate="2011-05-27T22:46:46.240" UserId="5021" />
  <row Id="17479" PostId="12760" Text="BTW you keep calling it speed. It's not speed, it's velocity." CreationDate="2011-05-27T22:49:16.533" UserId="5021" />
  <row Id="17480" PostId="12811" Score="1" Text="http://gamedev.stackexchange.com/questions/3887/how-can-i-make-a-peer-to-peer-multiplayer-game Here's some more info :)" CreationDate="2011-05-28T00:30:05.790" UserId="3656" />
  <row Id="17481" PostId="12811" Text="Interesting.  That post claims that this is how &quot;most strategy titles&quot; implement networking.  Is this really true?  Is this how eg. *Command and Conquer* and *Starcraft* work?" CreationDate="2011-05-28T02:10:00.167" UserId="2061" />
  <row Id="17482" PostId="12772" Text="You might be right - the original question is a bit vague - but it does imply a request for tutorials, which I haven't given. I'll leave my &quot;overview&quot; answer, because it's still useful." CreationDate="2011-05-28T02:20:18.743" UserId="288" />
  <row Id="17483" PostId="462" Text="Technically: the bootstrapper executable installs the prerequisites (.NET Framework, XNA Framework, Windows Installer) and then launches ClickOnce with a link to your install manifest (so if your clients already have the prerequisites, you could skip the bootstrapper and invoke the manifest directly). ClickOnce then downloads and installs your game files. ClickOnce then sets up your Start Menu entry so that it runs the auto-updater before running your game. The bootstrapper has nothing to do with auto-update. Also: installer projects are not available in the Express edition of VS." CreationDate="2011-05-28T02:33:11.317" UserId="288" />
  <row Id="17484" PostId="7471" Text="**Launch-time** and **build-time** are two *very* different things. Your original question actually implied that you wanted to monitor the files in question and reload them automatically at **run-time**, which is *extremely* different again." CreationDate="2011-05-28T02:37:39.770" UserId="288" />
  <row Id="17485" PostId="7471" Text="If you check out the comments I put on my answer, you'll find enough information to also answer your updated question." CreationDate="2011-05-28T02:40:11.363" UserId="288" />
  <row Id="17486" PostId="9209" Text="The XNA game component classes aren't really directly applicable to that pattern. That pattern is all about composing objects out of multiple components. The XNA classes are geared to one-component-per-object. If they fit perfectly in your design, then by all means use them. But you should *not* build your design around them! See also [my answer here](http://stackoverflow.com/questions/5458760/game-logic-question/5459955#5459955) - look out for where I mention `DrawableGameComponent`." CreationDate="2011-05-28T03:03:40.090" UserId="288" />
  <row Id="17487" PostId="12743" Text="@Boris: Netbooks are actually more likely to have accelerators than low end laptops, because their CPUs aren't powerful enough to handle even basic video tasks. So manufacturers put cheap GPUs into them because they draw almost no power unless you're playing video, and because it lets them not bother putting a fast GPU into the devices." CreationDate="2011-05-28T04:17:31.140" UserId="5564" />
  <row Id="17488" PostId="12801" Text="Hehe... I would have at least gotten dressed before i grabbed the graph paper." CreationDate="2011-05-28T05:21:28.863" UserId="7514" />
  <row Id="17489" PostId="12818" Score="4" Text="This answer is not suited for real time games in a practical size." CreationDate="2011-05-28T06:32:08.070" UserId="962" />
  <row Id="17490" PostId="12815" Text="since you already published your code, code you please provide your entire project files so that it'll make it easy to debug." CreationDate="2011-05-28T07:23:48.680" UserId="7328" />
  <row Id="17491" PostId="12811" Text="@BlueRaja, this is how Starcraft works, yes. In Starcraft there is no authority at all. Warcraft III and Starcraft II have more centralised message exchange model, lag and disconnect handling, but fundamentally the same in that each client hosts its own game state." CreationDate="2011-05-28T07:24:37.993" UserId="7646" />
  <row Id="17492" PostId="12811" Text="The other advantage of this networking model is that it allows to support large consistent shared world state with minimal synchronisation traffic." CreationDate="2011-05-28T07:27:37.460" UserId="7646" />
  <row Id="17493" PostId="12811" Text="The largest disadvantage of this model is its inherent vulnerability to &quot;maphacking&quot;, that is revealing some game state data the player can't normally see." CreationDate="2011-05-28T07:31:34.337" UserId="7646" />
  <row Id="17494" PostId="12815" Text="@Gajet What? That's completely and utterly stupid..it really is not difficult to look over code and see what it does." CreationDate="2011-05-28T08:14:38.340" UserId="1156" />
  <row Id="17495" PostId="12817" Score="6" Text="They have used a homegrown engine, but have included techniques that can be applied using any physics engine en some custom code. The actually gave a very informative talk about their fluid dynamics at GDC (slides here: http://www.gdcvault.com/play/1012447/Go-With-the-Flow-Fluid)" CreationDate="2011-05-28T08:39:06.087" UserId="5508" />
  <row Id="17496" PostId="12818" Score="2" Text="I am not sure why you'd say that, as fluid dynamics are very often modelled as particles. For examples see the nvidia tech videos on fluid particles on youtube, the program Algodoo (formerly called Phun) or the talk Q-Games gave about their PixelJunk Shooter game (slides at http://www.gdcvault.com/play/1012447/Go-With-the-Flow-Fluid). In the latter case, Q-Games shows how they construct a polygon out of a collection of particles. I would think that this verifies that this answer is quite valid for realtime implementations IMHO." CreationDate="2011-05-28T08:45:33.980" UserId="5508" />
  <row Id="17497" PostId="12815" Text="@Griffin and by the way where didi you find NCurses which works on visual studio?" CreationDate="2011-05-28T09:29:34.540" UserId="7328" />
  <row Id="17498" PostId="12821" Text="Would the Blender Engine help me there, too? Unity looks nice, but are they good for a game like Freelancer?" CreationDate="2011-05-28T09:56:48.667" UserId="6054" />
  <row Id="17499" PostId="12763" Text="Hi, I don't think the 2d answer will help. I'm trying to convert a coordinate like (400, 0) from the screen to something like (280, 0, 280) that lives in 3D space. I saw the XNA question,&#xA;&#xA;http://gamedev.stackexchange.com/questions/7060/obtaining-a-world-point-from-a-screen-point-with-an-orthographic-projection&#xA;&#xA;but as far as I could tell it never got answered. I have my screen coordinates in a (-1.0, 1.0) range. Like described in that question, unproject doesn't work for me with orthographic perspective. I'm using Three.js btw. WebGL." CreationDate="2011-05-28T09:58:24.737" UserId="7613" />
  <row Id="17500" PostId="12760" Text="`Would there be any way to interpolate the speed change into the interpolation?` Yes, if you store the acceleration, which is the change of velocity in respect to time. If it is really needed is another question. Would love to hear about your results. Comparisons of the visual experience using different methods." CreationDate="2011-05-28T10:03:16.667" UserId="1839" />
  <row Id="17501" PostId="12760" Text="For the interpolation of angular movement it's recommended to use [slerp](http://en.wikipedia.org/wiki/Slerp) instead of lerp. Easiest would be to store the quaternions of both states and slerp between them. Otherwise the same rules apply for angular velocity and angular acceleration. Do you have a test-case for skeletal animation?" CreationDate="2011-05-28T10:07:34.217" UserId="1839" />
  <row Id="17502" PostId="12821" Text="AFAIK Blender only supports python as stated [here](http://en.wikipedia.org/wiki/List_of_game_engines)" CreationDate="2011-05-28T10:11:21.283" UserId="1839" />
  <row Id="17504" PostId="12821" Text="I don't know freelancer, but [here](http://unity3d.com/gallery/game-list) is a list of games made with Unity, that will give you an idea. A video with a spacecraft-like-game called Zero-Chance and made with Unity can be seen [here](http://zerochance.luftensteiner.org/media1.html)" CreationDate="2011-05-28T10:19:20.373" UserId="1839" />
  <row Id="17505" PostId="12818" Text="WOWOW why the downvotes? I'm not raging, just want to know why. It is a realistic technique and is used." CreationDate="2011-05-28T10:22:00.747" UserId="7514" />
  <row Id="17506" PostId="11710" Score="1" Text="All those if statements look horrible." CreationDate="2011-05-28T12:35:12.120" UserId="1156" />
  <row Id="17507" PostId="12815" Text="@Gajet [pdcurses](http://pdcurses.sourceforge.net/) is good for Windows." CreationDate="2011-05-28T12:41:47.873" UserId="7375" />
  <row Id="17508" PostId="1244" Text="This also suggestss that the in-game currency (e.g. gold) should be seperate from the drop currency (e.g. items, minerals, gems) so that the exchange between the two can be adjusted." CreationDate="2011-05-28T15:00:16.047" UserId="284" />
  <row Id="17509" PostId="12790" Text="-1 for web games being best on java and flash." CreationDate="2011-05-28T15:19:46.880" UserId="284" />
  <row Id="17510" PostId="12826" Score="4" Text="Just calculate the path for all units whenever you place a tower?" CreationDate="2011-05-28T15:34:13.377" UserId="20" />
  <row Id="17511" PostId="12827" Text="And is A* really the most suitable algorithm for this scenario then?" CreationDate="2011-05-28T16:11:59.053" UserId="6867" />
  <row Id="17512" PostId="12790" Score="2" Text="And what would you propose? HTML5 isn't yet supported well enough, JavaScript is flakey at best at a loy of the interpreters are slower than snot. Its easy to criticize - offer an alternative. " CreationDate="2011-05-28T16:44:26.840" UserId="2306" />
  <row Id="17514" PostId="12831" Text="How large is your tile map?" CreationDate="2011-05-28T17:22:46.447" UserId="5818" />
  <row Id="17515" PostId="12811" Text="I am still vastly confused about how this could possibly work.  For instance, in SC, the units use some criteria to determine whom to attack automatically.  What if on my computer, unit A attacked unit B, but on your computer, unit A attacked unit C, because of some minor discrepancy that occurred for a few frames.  How do we resolve that?  Will Unit B's health go back up on my screen if the game takes your side?" CreationDate="2011-05-28T17:41:37.617" UserId="2061" />
  <row Id="17516" PostId="12819" Text="Yeah I pretty much have NO idea on how to organize/plan my code... would you know of any good books/sites that could teach me?" CreationDate="2011-05-28T17:44:33.870" UserId="7640" />
  <row Id="17517" PostId="12831" Score="5" Text="I don't realy get what you meant but this might help first create an `point ad[8]` that has values {{-1,-1},{-1,0},{-1,1},{0,1},{1,1},{1,0},{1,-1},{0,-1}}. then just use one for loop from 1 to 8 to check `Tiles[x+ad[i].x][y+ad[i].y]`. it'll eliminate that one calculate you are trying to avoid." CreationDate="2011-05-28T18:36:15.537" UserId="7328" />
  <row Id="17518" PostId="12837" Score="1" Text="in addition to hist answer I can add,first you just have to change these directions only when a new tower is placed, and second for just a simple game you can use bfs, and if your game is a bit just more complicated (some pathes are prefered to some other due to any tile properties) you can use dijkstra to create that arrows." CreationDate="2011-05-28T19:00:53.587" UserId="7328" />
  <row Id="17519" PostId="11519" Text="@Nate yep, absolutely correct. " CreationDate="2011-05-28T20:00:43.340" UserId="2306" />
  <row Id="17520" PostId="12827" Score="1" Text="@Mathias: Yes, A* is industry-accepted to be the smartest pathfinding algorithm around." CreationDate="2011-05-28T20:10:55.743" UserId="4662" />
  <row Id="17521" PostId="12844" Score="1" Text="Be careful regarding the cheating potential. It's not just packet spoofing; usually in peer-to-peer games, all peers have information about all other peers (or at least, nearby peers), such as their location. This means information that should not be available to the player is sitting locally on their machine - and is thus always obtainable with enough hacking. If you attempt to store no information locally, you hit back on the problem you've already mentioned, of actively manipulating the network messages - only now it's harder to detect / avoid. Also not storing it locally will lead to lag." CreationDate="2011-05-28T20:37:44.153" UserId="102" />
  <row Id="17522" PostId="12844" Text="Which is why, as of now, it's still a medium security concern for our application, as it still presents a risk; however, it does not allow for privilege escalation, remote code execution, and is not likely to expose personal information about the player, and is therefore not regarded as &quot;high&quot; concern." CreationDate="2011-05-28T20:41:36.333" UserId="7077" />
  <row Id="17523" PostId="12844" Text="Also; by design, each peer will need to cache the information locally, in order to reduce lag as you've mentioned, and this tactic is already implemented in the first multiplayer level in the game (each level contains its own executable code, and the game engine itself is only responsible for rendering the graphics, collision checking, audio/video playback, and a few physics calculations)" CreationDate="2011-05-28T20:43:48.657" UserId="7077" />
  <row Id="17524" PostId="12845" Score="1" Text="The P2P technology that we're using does force players with the capability and enough bandwidth to act as &quot;routers&quot; for computers that cannot connect directly P2P. the protocol is implemented in such a way that it is always possible for two computers to connect to each other, as long as they are able to both reach one of the routers." CreationDate="2011-05-28T20:44:58.890" UserId="7077" />
  <row Id="17525" PostId="12844" Score="1" Text="We have a different definition of high concern :) I agree that RCE isn't a risk, all I'm saying is to be careful. Cheating can absolutely ruin an otherwise great online game, unfortunately, and P2P is highly susceptible (though I still believe the future is in P2P!)" CreationDate="2011-05-28T20:45:18.167" UserId="102" />
  <row Id="17526" PostId="12845" Text="Keep in mind, you can't have the &quot;lobby&quot; style server/client relationship in a MMORPG as you can in an FPS, and this game is a combination of the two concepts, so the &quot;lobby&quot;/&quot;dedicated server&quot; idea is out of the question." CreationDate="2011-05-28T20:45:59.123" UserId="7077" />
  <row Id="17527" PostId="12845" Score="2" Text="@IDWMaster: At the cost of how much ping? How much system resources on the part of the &quot;router&quot;? How many players are going to be stuck going through the same router? This kind of idea just isn't appreciating the *scale* of the problem that you'll face." CreationDate="2011-05-28T20:46:29.487" UserId="4662" />
  <row Id="17528" PostId="12845" Text="We've already ran simulations on the effect of several computers connecting through the same router, and have developed methods and limitations to prevent this from causing problems, which are implemented in the protocol that we are using. Only a certain number of clients will be able to connect to the same router, and routers will be randomly selected (to provide an even distribution) using a pseudo-random number generator." CreationDate="2011-05-28T20:49:06.003" UserId="7077" />
  <row Id="17529" PostId="12845" Score="1" Text="@IDWMaster: So you're just going to hope that there's enough routers, placed in the right places, with enough power?" CreationDate="2011-05-28T20:49:36.397" UserId="4662" />
  <row Id="17530" PostId="12844" Text="The question is not what the problems are, but what the best ways around the problem are." CreationDate="2011-05-28T20:49:59.277" UserId="7077" />
  <row Id="17531" PostId="12845" Text="Yes, similar to how a typical FPS would just assume there's enough people willing to host dedicated servers. Routers would be created dynamically, using methods such as UPNP, port hole punching, and other methods of traversing NAT firewalls. The player who is hosting a &quot;router&quot; would likely not even notice it." CreationDate="2011-05-28T20:50:28.623" UserId="7077" />
  <row Id="17532" PostId="12845" Text="@IDWMaster: The difference between this is firstly, many people host many small FPS servers, serving a few people each. You're hoping to create some relatively extremely giant structures- the world of an MMORPG is on a massively bigger scale than `gg_fy_funtimes`. Secondly, FPS developers either have guarantees about server hosting, for example, from previous games in the iteration, or, the developer &amp; publisher host at least a minimal quantity of servers. They don't assume that this works out." CreationDate="2011-05-28T20:55:13.960" UserId="4662" />
  <row Id="17533" PostId="12845" Text="With 90KBPS of upstream bandwidth, you kinda need to assume it &quot;just works out&quot;, and that 82% of players will be able to also serve as routers. The model works out as long as at least 82% of players (on slow DSL connections) will be able to act as routers." CreationDate="2011-05-28T21:01:32.387" UserId="7077" />
  <row Id="17534" PostId="12845" Text="@IDWMaster: The problem isn't just their bandwidth- it's also their software and hardware configurations. In my experience playing a P2P RTS, this would happily exclude more than 18% of people. More than that, I think you underestimate how downstream lopsided many connections are." CreationDate="2011-05-28T21:16:17.333" UserId="4662" />
  <row Id="17535" PostId="12845" Text="In your experience, what was the biggest bottleneck in the game's code, which resulted in this lack of performance?" CreationDate="2011-05-28T21:19:03.950" UserId="7077" />
  <row Id="17536" PostId="12844" Text="Indeed, and that's why I've written it in a comment! My answer below tries to address the actual question." CreationDate="2011-05-28T21:19:28.860" UserId="102" />
  <row Id="17537" PostId="12831" Score="3" Text="Premature optimization?" CreationDate="2011-05-28T21:21:01.500" UserId="7191" />
  <row Id="17538" PostId="12831" Score="1" Text="Shouldn't that || be an &amp;&amp; in your if statement?  Edit: nevermind, I was wrong." CreationDate="2011-05-28T21:21:19.917" UserId="51" />
  <row Id="17539" PostId="12845" Text="@IDWMaster: It was most definitely the P2P connection model, which excluded many players, although I admit that it was not quite as advanced as yours, and the upstream bandwidth required. For those of us for whom it did work, the excessive CPU costs slowed down most games. But then, that was just one single RTS game, and not trying to host something like an MMO." CreationDate="2011-05-28T21:22:52.620" UserId="4662" />
  <row Id="17540" PostId="12841" Text="You should disclose your affiliation with the project if you're involved in it.  http://meta.stackoverflow.com/questions/57497/limit-to-self-promotion-in-answers" CreationDate="2011-05-28T21:23:08.450" UserId="51" />
  <row Id="17541" PostId="12841" Text="@Robert If the only posts you make to the site regard getting people to look into your product, you're going to look like a spammer." CreationDate="2011-05-28T21:33:53.583" UserId="1885" />
  <row Id="17542" PostId="12826" Score="1" Text="Duplicate of http://gamedev.stackexchange.com/questions/1003/dynamic-pathing-algorithm-for-tower-defense-game" CreationDate="2011-05-28T21:35:13.917" UserId="102" />
  <row Id="17543" PostId="12849" Text="Did not get you. Can you please elaborate?" CreationDate="2011-05-28T22:56:01.427" UserId="7546" />
  <row Id="17544" PostId="12833" Text="That is an excellent article full of great points.  And thank you for the endianness Wikipedia article.  It looks like I am fine if I only support modern computers, but not if I plan for consoles." CreationDate="2011-05-29T00:06:10.460" UserId="7652" />
  <row Id="17545" PostId="12831" Score="1" Text="@Tetrad no, that should be an `||`, it could however be reduced to `x || y`." CreationDate="2011-05-29T00:36:09.763" UserId="3505" />
  <row Id="17546" PostId="12819" Text="alright i figured it out: i was &quot;colliding with myself&quot; as the check collision function saw my character sprite in the location it was checking, even if it was still in the wall...  Oops this was supposed to be an answer" CreationDate="2011-05-29T01:30:00.407" UserId="7640" />
  <row Id="17547" PostId="12847" Text="Great idea! Implemented this in the engine just now and it works great, even on the load simulations!" CreationDate="2011-05-29T01:51:14.560" UserId="7077" />
  <row Id="17548" PostId="12856" Text="Wow, literally didn't see this till after I posted..." CreationDate="2011-05-29T02:17:51.440" UserId="3547" />
  <row Id="17549" PostId="12847" Text="@IDWMaster cool, and if you don't mind me asking - how did you end up structuring the graph?" CreationDate="2011-05-29T07:01:49.347" UserId="102" />
  <row Id="17550" PostId="12827" Score="1" Text="@Mathias, A* may be industry-accepted to be good enough, and it may be that many people in the industry haven't heard of better pathfinding algorithms, but they do exist. I've had to implement an extension of A* which uses two heaps when A* wasn't good enough for a game I was developing. However, Gajet is correct to point out in a comment to another answer that breadth-first search may be the most suitable algorithm in this particular scenario." CreationDate="2011-05-29T07:39:36.490" UserId="5020" />
  <row Id="17551" PostId="12862" Text="Exactly! I will implement this with approach I described as an answer. It will eliminate a need of a request for each new number." CreationDate="2011-05-29T08:54:58.050" UserId="7616" />
  <row Id="17552" PostId="12831" Text="You are optimizing very prematurely if 1 extra calculation is too much." CreationDate="2011-05-29T09:00:20.950" UserId="1156" />
  <row Id="17553" PostId="12850" Text="I don' think that this is great idea. Probably you are the happy one with artistic talents and technicals. But in general i'm sure it is always better to bring skilled artists to your project. But thats only my opinion..." CreationDate="2011-05-29T09:20:20.583" UserId="3794" />
  <row Id="17554" PostId="11579" Text="Hi you can see the result, I have just published the app as Kaleido-Magic on Android market. https://market.android.com/details?id=com.lumisvision.games.kaleidolite&amp;feature=search_result &#xA;" CreationDate="2011-05-29T09:26:10.803" UserId="6616" />
  <row Id="17555" PostId="12867" Score="2" Text="I would expect they used polling; [it's the native way provided by the hardware](http://nocash.emubase.de/pandocs.htm#joypadinput), and there wasn't really a lot of processing power to spare with that ~4.2MHz CPU, especially not for a game as complex as this, so I think they'd want to keep it as simple as possible. Of course, you also have to remember that these games were [re-programmed](http://en.wikipedia.org/wiki/Pokémon_Red#Development) to make translation possible at all, so it is even possible that there is a difference between the &quot;old&quot; and the &quot;new&quot; version." CreationDate="2011-05-29T09:40:34.547" UserId="3318" />
  <row Id="17556" PostId="12867" Score="1" Text="I think it doesn't matter weather it was written using input state or based on events, the only thing important is to have a good game control and that can be achived with both methods, also they can be very similar and user might not even feel any difference at all if it's implemented good enough." CreationDate="2011-05-29T10:14:03.950" UserId="7328" />
  <row Id="17557" PostId="12867" Score="5" Text="Does it really matter?" CreationDate="2011-05-29T11:25:40.900" UserId="1156" />
  <row Id="17558" PostId="12827" Text="I would disagree, read my method. It produces a method which only needs one algorithm for every enemy. Which means when your player starts having loads of enemies on the screen at once, there is much less lag than using the A* algorithm." CreationDate="2011-05-29T11:44:56.343" UserId="7514" />
  <row Id="17559" PostId="12847" Text="I used the same proprietary technology which we used for developing our distributed filesystem. We're primarily a networking company, just getting into gaming, so we've already worked on things like this. I already have a patent on a protocol which does this, bypasses firewalls, and creates at least 2 backups of each file on our system as soon as it is updated. I'll explain more about how this works in the next comment, as I'm running out of room for this one." CreationDate="2011-05-29T13:15:12.523" UserId="7077" />
  <row Id="17560" PostId="12847" Text="How it works is each router in the network (which is guaranteed to be reachable from any peer) stores data about any peer which connects to it. The peer will then send a query to the router, asking it for information about other peers that tried to connect to it, and also if it is bound to any of the same services as it. If it is bound to one or more of the same services, it establishes an XStream to the router. Then it connects to any peers it deems necessary (which it found by looking at information from the router) in order to find more information about the state of the system." CreationDate="2011-05-29T13:19:00.323" UserId="7077" />
  <row Id="17561" PostId="12847" Text="Both peers end up caching information about each other, and provide it to other peers when necessary. We use patented algorithms to perform this procedure, as well as the protocol which is &quot;patent pending&quot; right now. There's obviously a huge number of optimizations, and cached data is deleted once it is detected that it's no longer needed, and/or the peer is running low on resources needed to play the game at a high speed. There's also various &quot;access controls&quot; on the system which identify which peer &quot;owns&quot; the data, and information like this can be used to determine which peer can get it" CreationDate="2011-05-29T13:22:15.957" UserId="7077" />
  <row Id="17562" PostId="12847" Text="as the most up-to-date version." CreationDate="2011-05-29T13:22:33.087" UserId="7077" />
  <row Id="17563" PostId="12847" Text="I've also spent several months on protocols such as these tweaking the performance so that they can even run on slow netbooks (yes, I have tested on netbooks, running both Ubuntu Linux, and Windows 7 starter)" CreationDate="2011-05-29T13:24:02.947" UserId="7077" />
  <row Id="17564" PostId="12874" Text="Please add a tag &quot;sneakyinput&quot;." CreationDate="2011-05-29T13:26:15.530" UserId="7199" />
  <row Id="17565" PostId="1271" Text="http://zolomon.com/game-programming-gems-table-of-contents/ contains the complete TOC for all published books." CreationDate="2011-05-29T13:48:04.940" UserId="1199" />
  <row Id="17566" PostId="12873" Text="That reads correctly to me, if `ellipsoid.radii` is a `Vector3` and `norm` is `Vector3.Normalize` (and `vector3` is `Vector3` for that matter). What is with the non-XNA type and function names?" CreationDate="2011-05-29T14:55:14.607" UserId="288" />
  <row Id="17567" PostId="12850" Text="I'm not artistically talented. But I've found that having a technical foundation and being able to play with shapes, colours, lines, etc. goes a long way." CreationDate="2011-05-29T15:20:47.197" UserId="1929" />
  <row Id="17568" PostId="12849" Text="@DeadMG I know how this works and *I* barely understand this answer." CreationDate="2011-05-29T15:34:37.200" UserId="2306" />
  <row Id="17569" PostId="12873" Text="Yeah; and the reason for the non xna stuff, idk... i guess i wasnt gonna originally list it as a xna thing" CreationDate="2011-05-29T15:43:09.217" UserId="3042" />
  <row Id="17570" PostId="12863" Text="Ok so I did that, and now the issue is that the player will go RIGHT through the tile UNLESS the midpoint (midLeft or midRight or midBottom etc..)is touching the wall. For example if I stand under a tile, and I jump, if the midpoint of the player is touching the tile, ONLY then does it collide, but if a corner of the player is touching the tile above, he goes right through it. So this doesn't make for an airtight collision detection. Am I missing something?" CreationDate="2011-05-29T16:17:20.737" UserId="7662" />
  <row Id="17572" PostId="12837" Text="I like this idea, I'd say this is totally worth trying. You'd still have to follow it through to ensure that a valid path existed, but it has some good potential." CreationDate="2011-05-29T17:41:54.897" UserId="7191" />
  <row Id="17573" PostId="12867" Text="@The Communist Duck: why short version of my comment had more votes than mine ? :(" CreationDate="2011-05-29T19:36:28.057" UserId="7328" />
  <row Id="17574" PostId="12867" Score="3" Text="@Gajet Because mine was short and concise and to the point." CreationDate="2011-05-29T20:00:55.327" UserId="1156" />
  <row Id="17575" PostId="12874" Text="Sneakyinput is kind of irrelivant to this question." CreationDate="2011-05-29T20:15:25.480" UserId="962" />
  <row Id="17576" PostId="12872" Text="You are doing something wrong in the export process, its kind of hard to tell what though since you are the one exporting. Maybe you can search online on how to export models properly with the correct keyframes?" CreationDate="2011-05-29T20:22:13.133" UserId="962" />
  <row Id="17577" PostId="12872" Text="@AttackingHobo Well, the Milkshape exporter doesn't have any options, so I don't know what I could be doing wrong. However, I've gathered a bit more information now. It seems the animation was exported at 24 FPS, so I can get a time range this way. But it's not quite right for the moment. I'm really confused :(&#xA;&#xA;Edit: There seem to be a bit more information here: http://forums.create.msdn.com/forums/p/65573/401185.aspx" CreationDate="2011-05-29T20:25:41.583" UserId="2643" />
  <row Id="17578" PostId="12872" Text="I have been looking online and I see that people are having lots of problems with milkshape and XNA. It seems that they can only get a model loaded, but they have to mess with it a lot settings manually in the file and it seems that animations don't get imported correctly. I would try using blender instead of milkshape." CreationDate="2011-05-29T20:37:15.283" UserId="962" />
  <row Id="17579" PostId="12831" Text="@eBusiness it could not be reduced to x || y. " CreationDate="2011-05-29T20:38:50.147" UserId="5818" />
  <row Id="17580" PostId="12873" Text="-1 This is pretty much the same as your other question. Except that you cant figure out how to implement the answer. IF that is the case update your question and ask for additional information." CreationDate="2011-05-29T20:42:31.017" UserId="962" />
  <row Id="17581" PostId="12867" Score="1" Text="@Gajet ...Also because your comment is just one long run-on-sentence." CreationDate="2011-05-29T20:46:19.967" UserId="962" />
  <row Id="17582" PostId="2615" Text="Well its useful at all, and the humor kind of falls flat." CreationDate="2011-05-29T20:53:31.143" UserId="962" />
  <row Id="17583" PostId="12878" Text="I would also recommend tcpdump, but Wireshark might be better because of the UI." CreationDate="2011-05-29T20:57:03.303" UserId="6831" />
  <row Id="17584" PostId="12878" Text="Although they both use &quot;libpcap&quot; to work, an alternative is always interesting to know of. And as I wasn't aware of it, and because I like command-line tools; thank you." CreationDate="2011-05-29T21:16:19.577" UserId="6813" />
  <row Id="17585" PostId="12816" Text="I'm fairly sure that you have never, ever, even met a &quot;pro&quot;." CreationDate="2011-05-29T21:43:09.320" UserId="4662" />
  <row Id="17586" PostId="12863" Text="It's not an *airtight* collision detection by any means (it will obviously never work flawlessly against objects that are smaller than half the size of the player). You could experiment with moving your &quot;sensors&quot;, depending on the current player movement. Otherwise you might want to look into AABB and SAT collision checking. Or read [here](http://gamedev.stackexchange.com/questions/9144/2d-platformer-collision-handling) and [here](http://gamedev.stackexchange.com/questions/7890/2d-object-aligned-bounding-box-intersection-test)." CreationDate="2011-05-29T21:49:46.377" UserId="20" />
  <row Id="17587" PostId="12863" Text="I am learning AABB and SAT from Metanets tutorial right now, although it seems I have to dig deeper in VECTORS and how to use them in order to apply AABB properly. But essentially, you are just looking at the width and height of the overlap rectangle, and then using that to calculate which side the player is coming from and by how much he penetrates the tile, right? (and then using that to push player back in right direction with right amount of pixels) Oh btw, I updated the code and the text with a link, take a look at the SWF and you'll see the new problems." CreationDate="2011-05-29T22:58:46.257" UserId="7662" />
  <row Id="17588" PostId="2615" Text="I don't mind that much. :)" CreationDate="2011-05-29T23:25:37.943" UserId="1101" />
  <row Id="17589" PostId="12831" Score="1" Text="@Qua `(x != 0 || y != 0)` =&gt; `(x || y)`, that seems pretty basic to me, both code pieces will return 1 for every case but x=0, y=0." CreationDate="2011-05-29T23:45:15.210" UserId="3505" />
  <row Id="17590" PostId="12872" Text="@AttackingHobo well, it must not be the best, but as I said, in the end, the animation looks alright. It's just a matter of finding out how to split all the clips. It seems the SkinnedModelProcessor &quot;bakes&quot; the frames so less has to be calculated. But, it's hard to find the right way to split them up without any stutter and have a real loop. Sure, the &quot;dude&quot;'s animation loops correctly. But, the only animation there is in this file is the walk animation. I didn't have much luck with blender, can't find any model that I can load with the animations :(" CreationDate="2011-05-30T00:15:43.667" UserId="2643" />
  <row Id="17591" PostId="12446" Text="Found the problem! When drawing your tile map, you specify the camera's transformation, which means that ALL tiles will be offset by the camera's position. But when you find the firstSquare and squareOffset you use the offset position, so you're kinda applying the camera's transformation twice, once with the spriteBatch.Begin() call and once with the calculations. To avoid doing this, remove all the occurrences of &quot;firstSquare&quot; and &quot;squareOffset&quot;, since you're not really using them because the camera transformation is doing the job for you. This should fix the problem." CreationDate="2011-05-30T01:02:01.610" UserId="2111" />
  <row Id="17592" PostId="12446" Text="PS: I can post the modified code as an edit if you'd like." CreationDate="2011-05-30T01:02:55.697" UserId="2111" />
  <row Id="17593" PostId="12886" Score="1" Text="Thank you very much. Not only did this answer my question/fix my code, I now have some direction in my studies tonight. :) Thanks again." CreationDate="2011-05-30T02:28:21.663" UserId="7679" />
  <row Id="17594" PostId="12886" Text="No problem, its always nice to help :)" CreationDate="2011-05-30T02:33:44.537" UserId="3794" />
  <row Id="17595" PostId="12818" Text="&quot;particles bouncing around, off surfaces and eachother (faster for gasses)&quot; that sounds like you are describing fluids on the molecular level, and while a naive approach could work with baked simulation, it wont work well for real time games. Particles are fine as long type of simulation is correct, &quot;bouncing arround&quot; does seem like it would work with macro particles. You also grossly misrepresented how to simulate density." CreationDate="2011-05-30T03:54:54.803" UserId="962" />
  <row Id="17596" PostId="12786" Text="eBusiness - good trick!" CreationDate="2011-05-30T05:40:14.657" UserId="7616" />
  <row Id="17597" PostId="12887" Text="*Then you will just have reimplemented TCP on top of UDP, and will get exactly the same symptoms you describe.*  Well Actually I was thinking of not requesting them again, and having the second tcp port take care of the vital info.. However I like your vital over the same port sequence number idea! Oh and thanks for the links!" CreationDate="2011-05-30T05:43:56.110" UserId="5932" />
  <row Id="17598" PostId="12115" Text="problem is that the tmx map was not able to process and change according to our needs when i am changing the tmx map using tiled QT after edting is down it is not possible to load that tmx file" CreationDate="2011-05-30T05:50:08.667" UserId="7001" />
  <row Id="17599" PostId="12818" Text="Particles works good enough http://en.wikipedia.org/wiki/Smoothed-particle_hydrodynamics. Was used in FLT:s latest demo as described in http://directtovideo.wordpress.com/2011/05/03/numb-res/ This implementation might be a bit heavy weight, but simpler approximations as in the Pixel Junk Shooter GDC talk should work fine." CreationDate="2011-05-30T05:52:16.577" UserId="2792" />
  <row Id="17601" PostId="4061" Score="1" Text="@Stephen **Re Update #2:** Your described aim of your point system, simplified: _&quot;I want to reward players who play at least 2.4 times a day on average.&quot;_ Why? Why do you care if they play 2.4 times a day instead of just once? You say &quot;I want to reward those players who like my game&quot;, but whether I log in 5 times a day or just once, that's not a measure of how much I like your game. Consider what you're _actually_ doing here and _why_ you're doing it. Then find a different way to do it so you won't have to come up with a 2.4-times-a-day points system which ENCOURAGES your players to bot." CreationDate="2011-05-30T06:20:58.893" UserId="2698" />
  <row Id="17602" PostId="12733" Text="@bunkai: I really don't know about your case but it seems that you are doing something wrong. I'm 100% sure that you should not get any deformation if your sprites are really perpendicular to the camera. And no, you're not viewing them from &quot;slight angle&quot;. Here is a simple proof (see next comment): " CreationDate="2011-05-30T06:24:58.937" UserId="4241" />
  <row Id="17603" PostId="4061" Score="1" Text="I hope you really recognise that by requiring 2.4 visits/day for optimum play **you _are_ encouraging botting** since many people cannot make that commitment. It's not even necessary: you achieve nothing with it but bots and alienation of potential players! Consider Kingdom of Loathing, a phenomenally successful game which gives you 40 turns/day (boostable with items). With a cap of 200 you can wait up to 5 days at a time. Kingdom of Chaos does something similar. Neither give any particular reward for frequent play, yet both have players which log in multiple times per day regardless." CreationDate="2011-05-30T06:25:42.310" UserId="2698" />
  <row Id="17604" PostId="12733" Text="Set up a perspection projection matrix and multiply following vectors (representing corners of two quads) with it: (-1,-1,1,1), (1,1,1,1) and (-1000, -1000, 1,1), (-998, -998, 1,1). Now, if you calculate differences between first two vectors and last two vectors (and I mean after projection) you will get the same result, meaning that their areas are equal even after the projection (also, remember to divide projected vectors with their w component)." CreationDate="2011-05-30T06:29:22.083" UserId="4241" />
  <row Id="17605" PostId="12892" Text="@EddieV223 Don't forget the book series called **Game Programming Gems**, you can read full table of contents [here](http://zolomon.com/game-programming-gems-table-of-contents/)!" CreationDate="2011-05-30T06:49:22.743" UserId="1199" />
  <row Id="17606" PostId="12863" Text="@Kid that sounds about right. Keep in mind that your AABB check might return several collisions (player could collides with 2 tiles). I think your collision detection as it is now works pretty good though. Maybe you could just increase the bottom and top sensors to one at each corner and be fine?" CreationDate="2011-05-30T06:56:25.823" UserId="20" />
  <row Id="17607" PostId="12446" Text="if you can please do so ;)" CreationDate="2011-05-30T07:16:32.960" UserId="7437" />
  <row Id="17608" PostId="12797" Text="Good Answer :)&#xA;I remember a certain game company that used Google SketchUp for the level designers to desing the levels, which they exported for the artists to then work upon.&#xA;I also recommend C# for any tool creation, there is a lot of doc out there to help you get started." CreationDate="2011-05-30T07:49:49.457" UserId="7588" />
  <row Id="17609" PostId="12818" Text="You can use 'particles' only not on the same 'pixel' level as most particles.&#xA;You can use a group of vertices that can join to each other and move apart depending on forces applied.&#xA;Each vertex, once joined to another, gains a spring and a joint to it, with a maximum of one above, below at the left and right.&#xA;This creates a kind of &quot;mesh&quot; of spaced vertices, the further they are spaced, the less you need but the 'worse' the simulation is." CreationDate="2011-05-30T08:06:10.387" UserId="7588" />
  <row Id="17610" PostId="12892" Text="&quot;Never-Coding to Game-Development&quot;!? Different people will advise you to use different programming languages. In the end, you learn nothing. First, you need to learn at least the alphabet (Syntax and Semantic) of at least 1 programming language. Then, you can select and learn the programming language you need" CreationDate="2011-05-30T08:18:55.300" UserId="7676" />
  <row Id="17612" PostId="12895" Score="1" Text="It would also be useful for the AI to remember what the player is able to take advantage of. The developers may think that he has an 'easy pot' but if he can't pot it, the case tactic should be less used by the AI.&#xA;&#xA;It is also beneficial, because you can train the player, remember what he can't do, and purposely exploit this every so often until he can, this way the player is neither bored, neither frustrated." CreationDate="2011-05-30T08:33:13.693" UserId="7588" />
  <row Id="17613" PostId="12892" Score="3" Text="Should be community wiki since this isn't a real question." CreationDate="2011-05-30T08:34:08.307" UserId="5896" />
  <row Id="17615" PostId="12897" Text="You really should split it into separate questions and go step by step. It doesn't make sense to think about rendering too much, when you don't have a working texture loader. My advice is: start a new question with the most basic of your requests here, I'd start with texture-loading." CreationDate="2011-05-30T09:37:23.017" UserId="1839" />
  <row Id="17616" PostId="10528" Text="@Olhovsky : Any Idea why this is?" CreationDate="2011-05-30T09:57:51.637" UserId="7588" />
  <row Id="17617" PostId="12875" Text="The collision normal and the normal of the colliding face are different things. The collision normal depends on the subtracted velocities of the colliding objects. Whereas calculating the normal of a face is shown in Valkea's answer. For a proper collision response you will need both." CreationDate="2011-05-30T10:04:38.263" UserId="1839" />
  <row Id="17618" PostId="12889" Score="1" Text="-1 .. irrelevant, it was specifically asked for fixed point engines" CreationDate="2011-05-30T10:12:20.317" UserId="1839" />
  <row Id="17619" PostId="12901" Score="2" Text="I believe WM_PAINT is used so that the scene is rendered on all special updates (like maximize, resize, etc.) although I'm not sure." CreationDate="2011-05-30T11:15:49.987" UserId="7588" />
  <row Id="17620" PostId="4064" Text="I remember on RuneScape that there are simple questions asked by a Genie, if you get them right, he gives you a present.&#xA;" CreationDate="2011-05-30T11:32:54.757" UserId="7588" />
  <row Id="17621" PostId="12887" Text="Sequence numbers alone can't 'make sure all packets arrive' as you said - to do that, you would need to re-request the missing packets, because the only way you can be sure everything arrives is for it to keep being sent until the other side has received it. The numbers just let you know which ones you need! :)" CreationDate="2011-05-30T11:48:27.980" UserId="1101" />
  <row Id="17622" PostId="12769" Text="How do you calculate `squaresDown` and `squaresAcross`? Did you try increasing these values by 1?" CreationDate="2011-05-30T11:52:04.623" UserId="20" />
  <row Id="17623" PostId="4061" Text="@Jonathan: Usually the reason you care if people log in x times a day on average is that that's what you need to make your game profitable based on the advertising rates you've got. KoL's monetization strategy is in-game purchases, so that doesn't apply." CreationDate="2011-05-30T12:04:59.633" UserId="744" />
  <row Id="17624" PostId="12895" Text="While I agree with not using the randomization, I don't agree with &quot;helping the player&quot;: that would be like cheating, only much worse because you would be **lying** to the player." CreationDate="2011-05-30T12:05:12.177" UserId="2188" />
  <row Id="17626" PostId="4061" Score="1" Text="@Joe: I would consider an alternative advertising/monetization strategy then, bearing in mind that when I don't alienate players, I might actually display _more_ advertising overall due to the higher player population. If my game is designed successfully, the ones that _would_ visit several times a day _will do so anyway_ - because they like the game and they choose to, not because the game mechanics are transparently pressuring them into doing so (note: this means Stephen is not going to be rewarding _&quot;those people who like my game so much&quot;_, just _&quot;those on whom my pressure mechanic works&quot;_)" CreationDate="2011-05-30T12:31:59.423" UserId="2698" />
  <row Id="17627" PostId="12898" Text="The video you linked to is using much more than just lots of circles.  He uses a technique known as SPH.  The [blaze port](http://www.dsource.org/projects/blaze/browser/trunk/blaze/dynamics/fluid) of [Flui°D°emo](http://rene-schulte.info/ClientBin/data/projects.xml) uses Box2d to find collisions and apply forces but uses SPH methods calculate forces not Box2d's rigid bodies." CreationDate="2011-05-30T12:35:24.323" UserId="370" />
  <row Id="17628" PostId="12813" Text="I've implemented a custom 2d fluid engine.  I was able to get a working example up using [this paper on viscoelastic fluids](http://www.iro.umontreal.ca/labs/infographie/papers/Clavet-2005-PVFS/pvfs.pdf) and the [code from Flui°D°emo](http://rene-schulte.info/ClientBin/data/projects/fluidemo/fluidemo.zip) as a template.  However, the fluids are not as stable as I would like and code could use lots of optimization love (multicore processing, cache friendliness, etc).  What I want is a library that has done all that already, so that I only have to integrate it with Box2d and my game." CreationDate="2011-05-30T12:43:00.097" UserId="370" />
  <row Id="17629" PostId="12895" Text="@Lo'oris: Well, I don't see it as a lie. When the players tells the game to go easy on him, he's expecting the game to be gentle. When you're playing a game you're really good at with a friend who's just discovering it, I feel it's quite okay to give him opportunities. It makes the game more enjoyable for everybody." CreationDate="2011-05-30T12:58:42.277" UserId="674" />
  <row Id="17630" PostId="12446" Text="Edited to show my changes." CreationDate="2011-05-30T12:58:50.193" UserId="2111" />
  <row Id="17631" PostId="10528" Text="On the xbox 360, not binding anything to the color input is probably akin to having a pointer to an uninitialized value. Then you can have random values instead of a default value (zero), which is the case on windows. In fact, it might not be *all* windows GPUs that have that behavior. It's possible that some windows GPUs also exhibit the xbox behavior. Anyway, you don't want to have unused inputs anyway, for performance reasons, so it's not so bad. " CreationDate="2011-05-30T13:20:00.550" UserId="5021" />
  <row Id="17632" PostId="12895" Text="This is exactly the problem I have with simple randomization.  Randomization may be an extreme simplification of the complexity that results from human thought patterns, but simplifies so much that there can be a loss of the potential for analysis of behavior for the player to use intelligent tactics against.  Thanks for putting my intuitive sense of things into words." CreationDate="2011-05-30T13:40:44.510" UserId="284" />
  <row Id="17633" PostId="10528" Text="Agreed.&#xA;Only the output image seems weird to me, as you're not using the color attribute in the actual shader.&#xA;Maybe the output is contiguous after the input, and so the unbinded 'color' overwrites the ouput color? I dunno :p" CreationDate="2011-05-30T14:10:33.887" UserId="7588" />
  <row Id="17634" PostId="12887" Text="Hahahah I know! I was thinking about the unimportant packets, the important ones will most certainly have to be re-requested! =]" CreationDate="2011-05-30T14:29:34.360" UserId="5932" />
  <row Id="17635" PostId="12851" Text="Of course I will pay - I figured that went without saying. Thank you very much for the suggestions" CreationDate="2011-05-30T14:50:30.423" UserId="7657" />
  <row Id="17636" PostId="12850" Text="I'm a really good programmer. And there are a lot of other things I do well. But I suck at art. Really really suck." CreationDate="2011-05-30T14:51:36.130" UserId="7657" />
  <row Id="17637" PostId="12850" Text="Me too. Stock photography/textures/icons with some simple animations can go a long, long way. And you don't need to be good at art to do it. That's my opint." CreationDate="2011-05-30T15:49:59.897" UserId="1929" />
  <row Id="17638" PostId="12818" Text="Particles aren't really suitable without SPH (Smoothed-particle hydrodinamics) in my opinion. Lots of collisions, compressible fluids and don't really behave like particles. And SPH is really intensive too." CreationDate="2011-05-30T16:29:31.933" UserId="4307" />
  <row Id="17639" PostId="12873" Text="+1 This is not the same question. I suggest your reconsider your downvote regardless of your consideration for the poster, because it gives people the wrong idea that the answer is trivial." CreationDate="2011-05-30T16:39:30.800" UserId="5864" />
  <row Id="17640" PostId="12811" Text="&quot;minor discrepancies&quot; are not possible because all the calculations are exact and deterministic. All the seemingly random events are pre-determined using the shared initial seed value. This works perfectly well when all the game state calculations are performed with integral numbers (fixed-point included), but may (will?) break with floating point arithmetic because of its potentially non-deterministic imprecision." CreationDate="2011-05-30T17:09:23.037" UserId="7646" />
  <row Id="17641" PostId="12880" Text="-1 The suggested transformation does not give the correct answer." CreationDate="2011-05-30T17:14:16.937" UserId="5864" />
  <row Id="17642" PostId="12811" Text="It's like when playing chess players make moves by saying &quot;e2-e4&quot; and everyone knows what the board state is without having to communicate it." CreationDate="2011-05-30T17:28:31.077" UserId="7646" />
  <row Id="17644" PostId="12831" Text="Logically it makes sense. Semantically it doesn't. C# does not treat an integer as a boolean expression and thus `(1)` makes as little sense as `(x || y)` does." CreationDate="2011-05-30T18:28:39.847" UserId="5818" />
  <row Id="17645" PostId="12880" Text="@Sam thanks for correction and the interesting paper, highly appreciated :)" CreationDate="2011-05-30T18:33:45.960" UserId="1839" />
  <row Id="17646" PostId="12909" Text="+1 also for the paper" CreationDate="2011-05-30T18:34:57.613" UserId="1839" />
  <row Id="17647" PostId="12851" Text="+1 for PixelJoint, though you must be keenly aware of forum etiquette there (and wherever you go!) so you receive responses from good artists." CreationDate="2011-05-30T19:06:47.800" UserId="2081" />
  <row Id="17648" PostId="1348" Text="Really really great. I had a play this morning and it's taught me actionscript from scratch." CreationDate="2011-05-30T19:16:48.797" UserId="7692" />
  <row Id="17649" PostId="12908" Text="I think the actual game graphics will make much more of an impression on the player than the menu screens. As long as the game looks decent, I would say it's a good idea to release early and get some feedback!" CreationDate="2011-05-30T19:42:30.213" UserId="3327" />
  <row Id="17650" PostId="3402" Text="I agree with this answer, but Android isn't the worse place to get started! My very first programming project was a comic book viewer. Then, I made a puzzle game, and now I'm making a 2D game with OpenGL ES 2.0 graphics. I've learned on one heck of a curve, but in the last 9 months, Android has helped me get a good foundation in Java, SQLite, and OpenGL along with a great start with OOP and game development concepts. I could have done worse than learning how to program with Android." CreationDate="2011-05-30T19:51:02.197" UserId="3327" />
  <row Id="17651" PostId="10528" Text="Now that I look more closely at my shader, my explanation makes little sense. The `color` value is set from a texture before it is used either way, so the initial value of `color` shouldn't matter. I don't know why this happens. The moral though, is not to have unused inputs to your shader function." CreationDate="2011-05-30T19:52:58.787" UserId="5021" />
  <row Id="17652" PostId="11902" Text="@GleasSpty `PlayerIndex? playerIndex` means that the value of playerIndex (that is of type PlayerIndex enumeration) can be null. " CreationDate="2011-05-30T20:07:34.290" UserId="118" />
  <row Id="17653" PostId="12906" Text="Thanks! This clarifies a lot." CreationDate="2011-05-30T20:41:29.413" UserId="4662" />
  <row Id="17654" PostId="12917" Text="Limiting the mouse movement is only one aspect of an exclusive full-screen game." CreationDate="2011-05-30T21:43:41.177" UserId="4662" />
  <row Id="17655" PostId="12913" Text="I removed the ancillary bit about crunch and QOL from your question because it really is a separate topic from the viability of the industry as a whole and, as a sensitive topic, would probably overpower the discussion." CreationDate="2011-05-30T21:47:31.577" UserId="51" />
  <row Id="17656" PostId="12917" Text="@DeadMG The question mainly seems to ask about the mouse aspect. It sounds like your creating your window ok (to cover the screen), then you also need to set &quot;windowed&quot; to false in the present parameters along with the width and height to the size of the screen. I don't have the SDK docs to hand but I'm pretty sure they talk you through all this stuff." CreationDate="2011-05-30T21:59:52.590" UserId="4410" />
  <row Id="17657" PostId="12918" Text="thanks, i would appreciate discussion on one of the above scenarios as i have time constraints; testing on multiple/other setups would be difficult, the reason to ask question is to taking help selecting one, so i create that one setup , and then test on that. BY SUBNET you mean LAN? your  case 2 &gt; will this be d/f from localhost and will your 2 will be different from my 2 two computer network?" CreationDate="2011-05-30T22:02:09.187" UserId="7709" />
  <row Id="17658" PostId="12796" Text="I wasn't looking for an easy way out, I was looking to code something that's more stable and efficient than my previous attempts. I'm hoping to find some references or articles useful to developing such a tool." CreationDate="2011-05-30T22:20:23.517" UserId="7603" />
  <row Id="17659" PostId="12908" Text="@Amplify91: It's not really the type of game that the graphics matter at all. In fact, so far the only graphics are buttons and text, so..." CreationDate="2011-05-30T22:20:31.863" UserId="4039" />
  <row Id="17660" PostId="12918" Text="If I could only chose a single scenario to test, it would be #4. Because it will cover the most bases. You will need at least two computers to test this in an accurate to the real world way." CreationDate="2011-05-30T22:21:30.067" UserId="1198" />
  <row Id="17661" PostId="12794" Text="I'm more interested in coding my own, partly for learning and partly to have any idea for when I need to roll a proper, fast system. Ready mades are convenient but when it comes time to cut loading times down I'd want to have an idea of what makes a map editor, and its levels tick. I found XML to be a poor choice for about the same reasons you stated. Its more or less plain text with markup, and leads to fairly long load times (with my original self made levels stored in XML, they took a good while considering they were relatively small)" CreationDate="2011-05-30T22:22:51.953" UserId="7603" />
  <row Id="17662" PostId="12797" Text="Right. My concern is more about how the information for how a level is structured and stored, how to order it more efficiently. Ready made solutions won't do much to help me get behind the curtain and see how it all goes down. I'm not looking at a particular game genre here as much as theory and general patterns to watch for and relevant solutions." CreationDate="2011-05-30T22:28:32.400" UserId="7603" />
  <row Id="17663" PostId="12918" Text="actually the 4 is blur to me FYI the game is for LAN means not online/not http based.&quot;You will need at least two computers to test this in an accurate to the real world way&quot; yes definitely,you didn't answer my all question, how will you take this if two computer are like this 132.145.20.145 and server 132.145.20.32, for me it's on same LAN.. DO you have same meanings for subnet, what about if my server is on 132.192.67.56 then it will be on d/f LANs." CreationDate="2011-05-30T22:31:36.833" UserId="7709" />
  <row Id="17664" PostId="12753" Text="Well, not so much a specific game. I want to know how to make a good system when I need to. Right now the project I'm working on has all the tools provided, its more just stringing it all together. It just bothers me not knowing WHY or HOW it all works, and I want to get more into that." CreationDate="2011-05-30T22:34:53.780" UserId="7603" />
  <row Id="17665" PostId="12918" Text="Those IPs are routable, so in my mind, that is the Internet. What I mean. The information that you get from test #4 is that you know your application will work when its being routed. This is typically the weak link in networking code because it introduces more packet loss and latency." CreationDate="2011-05-30T22:41:13.240" UserId="1198" />
  <row Id="17666" PostId="12920" Score="5" Text="Most Important Point For Indie Dev: *Do you have the creativity to design a product to fill a market need?*" CreationDate="2011-05-30T22:45:02.117" UserId="5932" />
  <row Id="17667" PostId="12918" Text="what i got you mean this kind of test is enough:client 132.145.20.145  and server 132.145.20.32, (because for me it's on same LAN..) no need to go for using other LAN i.e Server is on e.g 132.192.67.56." CreationDate="2011-05-30T22:55:38.413" UserId="7709" />
  <row Id="17668" PostId="12921" Text="&quot;All the network testing I've done on localhost has been completely misleading. Since it's a perfect environment it's useless... &quot;agreed that's why i am doing this =), im confused by these networking terminologies different subnets, LANs and now routers, no time to revised them" CreationDate="2011-05-30T22:59:00.080" UserId="7709" />
  <row Id="17669" PostId="12919" Score="1" Text="See http://stackoverflow.com/questions/3765679/best-software-product-to-simulate-connectivity-issues-for-mobile-testing for one option which needs a spare PC with two network connections." CreationDate="2011-05-30T23:04:35.403" UserId="5824" />
  <row Id="17674" PostId="12918" Text="Ok Clear, but the setup for different LAN is difficult :-\.  Will this setup will not be sufficient. Client e.g 132.145.20.145 and server 132.145.20.32 (i.e. same LAN), what your stance on this... one more question: Do the same LAN  test can be done by this way: just my own network of two computers? or Do i use the real world LAN e.g on which i am surfing right now?.. will that be different from my two computers network? or they both will have the same effects?. please shed some light on this. " CreationDate="2011-05-30T23:52:06.593" UserId="7709" />
  <row Id="17675" PostId="12863" Text="@bummzack that is what I did at first, just checking each corner. But the issue is, my character kept getting stuck everywhere. Like jumping next to a wall would make the character stick instead of sliding down. And even walking on ground the player would stop at every tile, only thing you could do was to JUMP in order to move forward. This was because the left/bottom corner would detect a non-walkable tile or the right/bottom would. " CreationDate="2011-05-30T23:56:25.217" UserId="7662" />
  <row Id="17676" PostId="12918" Text="It is better than nothing. Your two computers on a single LAN is probably sufficient; you'll just need to know what depending on the network topology at your deployment site, you may see higher latency and higher packet loss." CreationDate="2011-05-31T00:14:27.243" UserId="1198" />
  <row Id="17677" PostId="12863" Text="Heres a link to the SWF, the one where i check the CORNERS: http://dl.dropbox.com/u/28271061/__TileGameFLAfirst.swf" CreationDate="2011-05-31T00:21:31.850" UserId="7662" />
  <row Id="17679" PostId="12918" Text="Nothing is comparable to doing both client and server on localhost, because that is a perfect networking case. In the real world, that never happens. Testing on two different computers, connected by any network (even on the same LAN) is a similar topology to anything else you'll see. Just know that depending on setup, you'll see a wider range of packet loss and latency." CreationDate="2011-05-31T00:45:10.480" UserId="1198" />
  <row Id="17680" PostId="12918" Text="u didn't get my second question, i am repeating, what about the my network of ONLY two computers Not LAN for-example on which  i m surfing now (almost 100 PCs running with internet),that will be equivalent to localhost? =)?" CreationDate="2011-05-31T00:46:22.807" UserId="7709" />
  <row Id="17681" PostId="12908" Text="So go for it! I've played games with just about no graphics (check out Friction Mobile). Leave a comment here with the name of the game when you release it?" CreationDate="2011-05-31T00:56:25.747" UserId="3327" />
  <row Id="17682" PostId="12908" Text="FYI, I decided to release it to the market place, for a few reasons, the largest being that I needed to release it to get an AdMob account. I'm temporarily charging, but I'm not really ready to do a non-free yet, the charging is just to discourage people from downloading it before I've put ads in. Assuming I can get the ads to work, I'll release another version tonight, that's free. https://market.android.com/details?id=pearsonartphoto.AJEG&amp;feature=search_result is the address." CreationDate="2011-05-31T02:46:24.110" UserId="4039" />
  <row Id="17683" PostId="12867" Text="@communistduck - yes, in trying to recreate gameboy controls on the iPhone. " CreationDate="2011-05-31T03:33:26.933" UserId="7199" />
  <row Id="17684" PostId="222" Text="http://www.walkerboystudio.com/html/unity_training___free__.html" CreationDate="2011-05-31T04:16:03.160" UserId="7695" />
  <row Id="17685" PostId="12863" Text="@Kid I wasn't suggesting to use your old model. Keep the mid-points for *left* and *right* collision detection and only use the corners for *top* and *bottom* collision. The two bottom &quot;sensors&quot; would not be used to determine if the character can move forward, but just if he's standing on ground or not." CreationDate="2011-05-31T05:44:20.113" UserId="20" />
  <row Id="17686" PostId="12926" Text="Interesting demographic, but I don't think you should use an indie dev who blatantly copied another game to make money (legitimately or not) as an example. Regardless of how often the 'big boys' do it." CreationDate="2011-05-31T05:52:26.297" UserId="4513" />
  <row Id="17687" PostId="12794" Score="1" Text="Well the good thing about making your own level editor is that you can save your files directly into a binary format, by copying the data from a structure directly from memory, and inversely when you are loading.&#xA;This has the huge advantage of not being user-editable, has very fast saving and loading times (practically no other intervention is needed). The huge downside is that if your format changes, you will have to either continue supporting older versions at load-time or create a converter; this could be done maybe easily with XML." CreationDate="2011-05-31T07:08:14.270" UserId="7588" />
  <row Id="17688" PostId="1325" Text="Don't sell yourself short! You came up with the same thing as bunch of other smart people did. Great minds think alike. :)" CreationDate="2011-05-31T07:17:52.680" UserId="1199" />
  <row Id="17689" PostId="12895" Score="1" Text="There is a good blog post by [Shawn Hargreaves](http://blogs.msdn.com/b/shawnhar/archive/2011/02/09/random-shuffle.aspx) on randomization, and the ability for a human to spot patterns in randomness. This would translate ton, in this case, a player incorrectly judging the tactics of an AI player." CreationDate="2011-05-31T07:29:23.353" UserId="7588" />
  <row Id="17690" PostId="12921" Score="1" Text="When you use the 'localhost' loopback the data you send doesn't go throught the entire Network Card, it stops at the Network layer and hence all the extra time needed for the Data Link and Physical Layers, and then the time needed to go through cables, etc. is obviously not represented.&#xA;If you really want to put you program through it's paces, find a helpful soul that lives on the other side of the world, and see how your Client/Server fares." CreationDate="2011-05-31T07:36:18.133" UserId="7588" />
  <row Id="17691" PostId="12924" Text="sounds good, but increasing the draw makes the game lag thats why i chose not to." CreationDate="2011-05-31T08:24:18.913" UserId="7437" />
  <row Id="17692" PostId="12931" Score="2" Text="-1 because this seems to be a statement just to provoke people. I'll undo my downvote if you provide a link to your company website where we can see these awesome top-selling games of yours." CreationDate="2011-05-31T09:16:19.933" UserId="20" />
  <row Id="17693" PostId="12926" Text="Not to mention, his &quot;pretty darned good&quot; is minuscule compared to the earnings from the game he copied." CreationDate="2011-05-31T09:21:11.840" UserId="744" />
  <row Id="17694" PostId="12920" Text="I don't think that's most important, or at least not what should be emphasized. The game market supports many niches, and it turns out you don't need to be that creative to get a sustainable income. What's usually missing is management and communication ability." CreationDate="2011-05-31T09:24:14.583" UserId="744" />
  <row Id="17695" PostId="12938" Score="4" Text="See: [Voxel Rendering](http://gamedev.stackexchange.com/questions/11976/voxel-rendering), [Working with lots of cubes. Improving performance?](http://gamedev.stackexchange.com/questions/12669/working-with-lots-of-cubes-improving-performance) and [How to get the blocks seen by the player?](http://gamedev.stackexchange.com/questions/8096/how-to-get-the-blocks-seen-by-the-player)" CreationDate="2011-05-31T09:33:48.070" UserId="20" />
  <row Id="17696" PostId="12938" Score="2" Text="So what are you actually asking? Are you asking for good approaches to managing large worlds, or feedback on your particular approach, or opinions on the subject of managing large worlds?" CreationDate="2011-05-31T09:35:45.863" UserId="2698" />
  <row Id="17697" PostId="12939" Score="1" Text="I wish everything were this simple :D" CreationDate="2011-05-31T09:50:14.830" UserId="7588" />
  <row Id="17698" PostId="12922" Score="5" Text="The problem for my friends who work in games development is not the pay but the working conditions. Long hours, intense competition, high stress levels (especially around *crunch* time). Even when you love your job, as they seem to, it does tend to interfere with life outside work. Having said that, stress and crunch isn't exclusive to the gaming industry, in the current economic climate it can happen anywhere." CreationDate="2011-05-31T10:03:53.937" UserId="7704" />
  <row Id="17699" PostId="12816" Text="A &quot;Pro&quot; usually has the ability to have a game go their way in most situations. With a fair start or not, with the ability to balance out a game, it won't be a problem for them." CreationDate="2011-05-31T10:09:49.830" UserId="7514" />
  <row Id="17701" PostId="12938" Text="Should this not be a wiki then?&#xA;I guess instancing would be the way up. The batch rendering would also need to work well. As everything is made of simple blocks, you may make the performance WORSE by doing CPU side calculations for certain types of culling." CreationDate="2011-05-31T10:59:03.670" UserId="7588" />
  <row Id="17702" PostId="8714" Text="Yes, you can store it for the entire level; I would separate background, objects, etc. from the actual hills. For collision detectioning, you can use the alpha layer. +1 for amazing technical art :)" CreationDate="2011-05-31T11:36:21.950" UserId="1929" />
  <row Id="17703" PostId="12931" Score="1" Text="I won't redact my -1 even then - one data point is not an answer." CreationDate="2011-05-31T11:44:58.447" UserId="744" />
  <row Id="17704" PostId="12938" Score="1" Text="Good stuff so far, it is more about what is the most common *common approach* to these sort of things. I am not specifically after feedback on my approach as all I have proposed is what I would logically expect to happen. I just wanted more information on the subject really and there wasn't too much coming up after a couple of searches. I guess my question is not just about rendering performance but about how to manage such a large volume of data... such as chunking the areas etc" CreationDate="2011-05-31T12:23:02.030" UserId="7702" />
  <row Id="17706" PostId="12924" Text="Don't forget that there is a fine balance between over-optimizing CPU side and drawing too much. If you offload too much work to clipping, etc on the CPU, it may harm your performances." CreationDate="2011-05-31T12:34:45.080" UserId="7588" />
  <row Id="17707" PostId="12938" Score="2" Text="So be clear and add a question to your post so we know what question we're answering. ;)" CreationDate="2011-05-31T12:58:31.303" UserId="2698" />
  <row Id="17709" PostId="12938" Score="3" Text="What do you mean by &quot;extremely slow to navigate&quot;?  There's definitely some slow down when the game generates new terrain, but after that, minecraft tends to handle terrain pretty well." CreationDate="2011-05-31T13:32:40.430" UserId="6558" />
  <row Id="17710" PostId="12918" Text="If you can re-route an external port to direct traffic to your server, you should be able to connect to it from outside of your LAN. If you try to connect to it from INSIDE of you LAN using the EXTERNAL IP@, I'm guessing the packets will get no further than the router, as it should know it's own IP@.&#xA;If you want to really test, you must be outside of your LAN.&#xA;Another test would be to use Ad-Hoc WiFi connections, that can be very sluggish and have a high packet loss, which you could increase just by putting a coat hanger near your PC :P" CreationDate="2011-05-31T13:54:44.363" UserId="7588" />
  <row Id="17711" PostId="12923" Score="1" Text="Abstracting control from every game object is FTW!&#xA;" CreationDate="2011-05-31T13:57:30.680" UserId="7588" />
  <row Id="17712" PostId="347" Score="1" Text="For some reason the link doesn't work for me. working link: http://answers.unity3d.com/questions/12321/how-can-i-start-learning-unity-fast-list-of-tutori.html" CreationDate="2011-05-31T14:00:32.110" UserId="6587" />
  <row Id="17713" PostId="12939" Text="i know it has a world importer, Im doing this right now. But the problem is that Im using GLm to load my models...And when doing so, the models that are textured do not line up with the collision meshes that the .bullet file provides.." CreationDate="2011-05-31T14:07:54.873" UserId="6275" />
  <row Id="17714" PostId="12939" Text="Did you compare both data after loading? Use a debugger and compare certain vertices. Other than that it's hard to tell whats wrong. Could be everything. Use the debugger." CreationDate="2011-05-31T14:23:28.057" UserId="1839" />
  <row Id="17715" PostId="12898" Text="You are absolutely correct in that regard. The video was meant to be illustrative instead of an implementation example. Thank you for mentioning my mistake and I have updated the answer to prevent further misunderstandings." CreationDate="2011-05-31T14:31:53.490" UserId="5508" />
  <row Id="17716" PostId="12939" Text="the main way i compared the data is checking if my player is exactly on the spot in the GLM model when colliding with the physics world. And i have multiple &quot;areas&quot; that were put in this physics file...Im wondering if maybe theres a way to use the vertices from the GLM loaded model for the bullet physics mesh. I have attempted this before and it caused the game to crash...i wondering how to do it right.." CreationDate="2011-05-31T14:49:50.157" UserId="6275" />
  <row Id="17717" PostId="12924" Text="You probably want to do some profiling here ... because there's a chance you could make big gains by improving an algorithm or two which would make room for the overdraw" CreationDate="2011-05-31T14:50:09.040" UserId="163" />
  <row Id="17718" PostId="12895" Text="&quot;As soon as the AI gets lucky, the AI will see a strategy in its behavior.&quot; --&gt; &quot;As soon as the AI gets lucky, the **Player** will see a strategy in its behavior.&quot;?" CreationDate="2011-05-31T15:02:43.607" UserId="5060" />
  <row Id="17719" PostId="12446" Text="thanks, works very wel, but any ideas how i could reduce the lag in this if i want to make the map bigger?" CreationDate="2011-05-31T15:05:05.777" UserId="7437" />
  <row Id="17720" PostId="12939" Text="Yes you can use the vertices from GLM. You have to use a [btBvhTriangleMeshShape](http://www.bulletphysics.com/Bullet/BulletFull/classbtBvhTriangleMeshShape.html) and pass this as colision shape when creating the rigid body. You will find some examples when you search in the bullet demos for `btBvhTriangleMeshShape`. I'll edit my answer and add the example usage from a demo" CreationDate="2011-05-31T15:12:44.940" UserId="1839" />
  <row Id="17721" PostId="12804" Text="So in the end, how can you prove what is the latest touch?" CreationDate="2011-05-31T15:14:10.117" UserId="7631" />
  <row Id="17722" PostId="12942" Score="2" Text="There are already several Genesis/Megadrive emulators available. If you're set on writing your own, why not ask the authors of one of those?" CreationDate="2011-05-31T02:02:16.017" UserId="2538" />
  <row Id="17723" PostId="12939" Text="Here is how you can add the vertices on your own to a bullet-mesh: You can either use [btTriangleMesh](http://www.bulletphysics.com/Bullet/BulletFull/classbtTriangleMesh.html) or [btTriangleIndexVertexArray](http://www.bulletphysics.com/Bullet/BulletFull/classbtTriangleIndexVertexArray.html), add the triangles to them, their usage is pretty straight forward. Then create a [btBvhTriangleMeshShape](http://www.bulletphysics.com/Bullet/BulletFull/classbtBvhTriangleMeshShape.html) using the triangle-mesh as constructor parameter, then create the rigid body with it" CreationDate="2011-05-31T15:27:47.370" UserId="1839" />
  <row Id="17724" PostId="12939" Text="You will find some examples in the Bullet Demos, just search for those classes." CreationDate="2011-05-31T15:29:18.927" UserId="1839" />
  <row Id="17725" PostId="12770" Text="bullet-proof counter?  You'd think a kevlar cutting board would be good enough." CreationDate="2011-05-31T15:46:18.877" UserId="370" />
  <row Id="17726" PostId="12939" Text="alright, ill look into that. Thanks" CreationDate="2011-05-31T15:46:19.553" UserId="6275" />
  <row Id="17727" PostId="12939" Text="Please check my new answer concerning: `models that are textured do not line up with the collision meshes that the .bullet file provides`" CreationDate="2011-05-31T15:58:25.957" UserId="1839" />
  <row Id="17728" PostId="12804" Text="I'm going to look into UITouch's timestamp that it can return." CreationDate="2011-05-31T16:05:29.193" UserId="7631" />
  <row Id="17729" PostId="12895" Text="Actually I think randomization on accuracy is a good way to go. With a real player who is not that great, sometimes he will make a mistake and hit a better ball in." CreationDate="2011-05-31T16:09:48.400" UserId="962" />
  <row Id="17730" PostId="12895" Text="@Drackir Yeah, my bad. It's fixed. Thanks :)&#xA;@AttackingHobo Well, that's exactly what I'm suggesting to avoid. :p" CreationDate="2011-05-31T16:11:50.637" UserId="674" />
  <row Id="17731" PostId="12938" Score="1" Text="I agree, I've not found that Minecraft is slow to navigate. It has a pretty good draw distance and excellent frame rates. I'd say they're doing well. Also, this isn't a real question." CreationDate="2011-05-31T16:13:07.980" UserId="7191" />
  <row Id="17732" PostId="12948" Text="Outdated, however." CreationDate="2011-05-31T16:45:19.457" UserId="1156" />
  <row Id="17733" PostId="12945" Text="theyre not off all the same..some of the models could be 2-3 units off, while other models could be exactly on point..im going to attempt the btTriangleMesh again, but im not sure how it will work since i moved the graphics model to another spot(translate) and i also scaled most of the models" CreationDate="2011-05-31T17:21:41.300" UserId="6275" />
  <row Id="17734" PostId="12931" Text="Search Apps4Life on the app store, I develop for the iPhone... Regardless though, I was just trying to provide hope for aspiring game developers, nothing more." CreationDate="2011-05-31T17:24:40.390" UserId="7698" />
  <row Id="17735" PostId="12831" Text="@Qua Holy **** you are right, what are they smoking at MS? In any case, now that we are talking pointless optimizations, you could do `(x | y != 0)`." CreationDate="2011-05-31T18:23:37.373" UserId="3505" />
  <row Id="17736" PostId="12931" Text="He asked if there are any game developers that can vouch for money making, that's why I answered. I was not trying to offend anyone..." CreationDate="2011-05-31T18:25:34.497" UserId="7698" />
  <row Id="17737" PostId="12950" Text="(I hope you have a web site for sneak preview screenshots -- I'm always interested in seeing new games!)" CreationDate="2011-05-31T18:39:12.623" UserId="7548" />
  <row Id="17738" PostId="12938" Text="To me, blaming the programming language for &quot;being slow&quot; isn't very objective because this usually has more to do with coding style (it's easy to set up loops within loops that can grind things to a halt in any language).  From what I've seen of Java3D (and Java2D), the speed doesn't seem to be an issue (but Java does get a bad reputation from its pre-Swing/JFC days).  As an example that supports my point, here's a version of Quake (free and open source) that was written in Java:  http://www.sourceforge.net/projects/jake2/" CreationDate="2011-05-31T18:45:25.453" UserId="7548" />
  <row Id="17739" PostId="12945" Text="You can't scale rigid bodies with bullet. What do you mean you scaled them?" CreationDate="2011-05-31T18:49:03.437" UserId="1839" />
  <row Id="17740" PostId="12945" Text="It sounds more like the rendering is wrong. Like i.e. wrong matrix multiplication order." CreationDate="2011-05-31T18:50:52.327" UserId="1839" />
  <row Id="17741" PostId="12938" Text="-1, 1) What is the actual question here and 2) How is the subject matter different from the 3 questions that bummzack linked to?" CreationDate="2011-05-31T18:59:04.783" UserId="51" />
  <row Id="17742" PostId="12945" Text="hey i managed to get the mesh to transfer to a `btBvhTriangleMesh`, but i think its falling...Im going to edit my question to show the code i used to create the rigid body" CreationDate="2011-05-31T19:00:41.737" UserId="6275" />
  <row Id="17743" PostId="12923" Text="Who moves the player then? My maps? Something else? Does this mean that AI is merely a series of &quot;intents&quot;?" CreationDate="2011-05-31T19:11:29.500" UserId="7199" />
  <row Id="17744" PostId="12945" Text="Take your time, debug the issue, then write a new question with the new information. " CreationDate="2011-05-31T19:11:43.330" UserId="1839" />
  <row Id="17745" PostId="12945" Text="oh i didnt mean i scaled the rigid body, i meant that i scaled the rednering model to make it bigger" CreationDate="2011-05-31T19:11:50.220" UserId="6275" />
  <row Id="17746" PostId="12945" Text="how would I go about debugging info? all i know is how to stop the errors..." CreationDate="2011-05-31T19:18:27.610" UserId="6275" />
  <row Id="17747" PostId="12831" Text="@eBusiness not to break your spirit but `(x | y != 0)` wouldn't compile. `!=` takes precedence to `|` thus you would end up logical OR'ing an int with a bool which is also a compile error." CreationDate="2011-05-31T19:28:18.713" UserId="5818" />
  <row Id="17748" PostId="12945" Text="Well, if you scaled the rendering model, then of course the bullet mesh is off! What did you expect?" CreationDate="2011-05-31T19:29:30.610" UserId="1839" />
  <row Id="17749" PostId="12960" Text="please change to wiki" CreationDate="2011-05-31T19:42:04.703" UserId="890" />
  <row Id="17752" PostId="12960" Score="2" Text="Wikis are to be used where the answers aren't very valuable (i.e. just a link to something else).  Where expertise comes into play there shouldn't be a wiki so people can get points." CreationDate="2011-05-31T19:54:40.993" UserId="51" />
  <row Id="17753" PostId="12964" Text="But, what for example with stairs ? Enemy can attack me there too, make it another nav mesh ?" CreationDate="2011-05-31T19:55:53.270" UserId="4828" />
  <row Id="17754" PostId="12964" Text="It should be part of the nav mesh, being its own convex shape." CreationDate="2011-05-31T19:57:37.593" UserId="51" />
  <row Id="17755" PostId="12964" Score="1" Text="Alternatively you could continue to use your point to point pathing, and fall back onto physics-based steering behaviors when you get &quot;close&quot;." CreationDate="2011-05-31T19:58:00.557" UserId="51" />
  <row Id="17757" PostId="12960" Score="1" Text="Is the game free, or is a subscription / purchase required? Is the online element peer to peer or does it go through a server under your control?" CreationDate="2011-05-31T20:08:34.180" UserId="5824" />
  <row Id="17758" PostId="12960" Score="1" Text="@Tetrad: okay, fair enough" CreationDate="2011-05-31T20:18:44.557" UserId="890" />
  <row Id="17759" PostId="12960" Score="1" Text="@Adam: question edited to answer your questions" CreationDate="2011-05-31T20:19:11.640" UserId="890" />
  <row Id="17760" PostId="12945" Text="i had no choice! everytime i go to export my .obj file, it scales the mesh down until its in a 1 unit radius" CreationDate="2011-05-31T20:31:44.550" UserId="6275" />
  <row Id="17761" PostId="12969" Text="for all 3 approches length of the rope is one of parameters I've used to calculate swinging speed. But I can't guaranty that I've used it correctly. I've just made some physical calculations and applied their solved version to game." CreationDate="2011-05-31T20:32:23.930" UserId="7328" />
  <row Id="17762" PostId="12446" Text="I don't think it is lagging at all, are you talking about the player shaking while moving towards the corners?" CreationDate="2011-05-31T20:37:39.740" UserId="2111" />
  <row Id="17763" PostId="12969" Text="The further away from the centre, the longer the delay before the next movement of the rope swing.  You can also multiply the ABSolute value of the delay by something like 0.28 (you'll have to experiment with this)." CreationDate="2011-05-31T20:41:18.053" UserId="7548" />
  <row Id="17764" PostId="12959" Score="5" Text="+1 for diagrams and screenshots (and a good question). Always useful." CreationDate="2011-05-31T20:51:31.773" UserId="1156" />
  <row Id="17765" PostId="12952" Text="#ifdef doesn't help circular include problems." CreationDate="2011-05-31T20:52:03.117" UserId="1156" />
  <row Id="17766" PostId="12945" Text="I would fix that in the first place, otherwise you will have a chain of ugly hacks and lots of pain, as you already see." CreationDate="2011-05-31T20:55:05.667" UserId="1839" />
  <row Id="17767" PostId="12970" Score="1" Text="Instead of using the hardware device ID which is difficult to validate, I'd go with handing out a unique login ID to customers when they buy the game, and only allow users with a valid one to connect to the server." CreationDate="2011-05-31T21:11:33.657" UserId="5824" />
  <row Id="17768" PostId="12956" Text="The points are voxels with a fixed depth, width and height?" CreationDate="2011-05-31T21:33:00.507" UserId="1839" />
  <row Id="17769" PostId="12945" Text="then maybe i should find another model loader to use? any suggestions??" CreationDate="2011-05-31T21:40:05.530" UserId="6275" />
  <row Id="17770" PostId="12969" Text="I can't get what you are trying to say, when I'm calculating next step I have some constant value for delta_time, and use all the parameters I have (like previus speed, previes position, rope length, etc.) to calculate new velocity, and then add this velocity multiplied by delta_time to the last position to generate new position. if you mean anything else please provide full details in your answer." CreationDate="2011-05-31T21:41:48.977" UserId="7328" />
  <row Id="17771" PostId="12952" Text="Was just covering my basis with expecting that to be in there before tracking down the cyclic includes. Can be a whole other kettle of fish when you have multiple symbol defines as opposed to a file needing to include a file that includes itself. (though from what he described if the includes are in the .CPP files and not the .H files he should be ok with two base objects knowing about each other)" CreationDate="2011-05-31T21:43:38.727" UserId="4443" />
  <row Id="17772" PostId="12972" Score="2" Text="[Cross-post](http://math.stackexchange.com/questions/42395/find-control-point-on-piecewise-quadratic-bezier-curve) from math.SE. @Bezier Guy, this is considered bad etiquette because it increases the chances that someone will spend time coming up with an answer unnecessarily - because they can't see that you already got the same answer elsewhere." CreationDate="2011-05-31T21:43:40.660" UserId="5020" />
  <row Id="17773" PostId="12945" Text="But you were not talking about the loader, you said `everytime i go to export my .obj file, it scales the mesh down`. So the problem is the export, not the loader." CreationDate="2011-05-31T21:44:20.910" UserId="1839" />
  <row Id="17774" PostId="12923" Text="It all boils down to how you create your abstractions. In *my* code, I would never have the map control anything ... because the map shouldn't be concerned with moving entities, it should only be concerned with providing information about the map. Another class, in some cases this can be the physics engine, but it could be simpler depending on the game ... would be concerned with &quot;moving&quot;. It can iterate each entity, grab it's intent, and then compare it against the map data to see if it's a legal move or do collision detection, etc." CreationDate="2011-05-31T21:52:01.493" UserId="163" />
  <row Id="17775" PostId="12918" Text="Thanks a lot all of you for such marvelous feedback =)" CreationDate="2011-05-31T21:54:13.310" UserId="7709" />
  <row Id="17776" PostId="12945" Text="hm..true...maybe theres a setting that i can use...or better yet i can check out the .obj file" CreationDate="2011-05-31T21:56:44.150" UserId="6275" />
  <row Id="17777" PostId="12966" Text="You are correct - my apologies my entire object had been 'mirrored' which I took to be a mirrored texture. Next time I won't use symmetrical objects for testing...&#xA;Thank you!" CreationDate="2011-05-31T22:07:20.630" UserId="5399" />
  <row Id="17778" PostId="274" Text="I was not aware there was a Unity StackExchange site, thanks." CreationDate="2011-05-31T22:17:29.460" UserId="6588" />
  <row Id="17779" PostId="1795" Text="I found these videos extremely helpful as well. I generally don't like video tutorials, and YouTube seems like an odd place to find excellent learning materials, but there ya go." CreationDate="2011-05-31T22:19:46.947" UserId="6588" />
  <row Id="17780" PostId="12972" Text="Sorry, I shouldn't do this." CreationDate="2011-05-31T22:28:20.377" UserId="7722" />
  <row Id="17781" PostId="12975" Text="you answer was my second try but it moves with much more speed that it should i'll edit my question and add my code maybe you can spot where the problem is." CreationDate="2011-05-31T22:34:06.077" UserId="7328" />
  <row Id="17782" PostId="12973" Score="2" Text="well then it's probably an architectural error on my side that they can climb to top 50 ruin others' fun." CreationDate="2011-05-31T23:29:26.683" UserId="890" />
  <row Id="17783" PostId="12963" Score="1" Text="the game is on iOS. If the device is jailbroken all files can be modified on the device. This was one way to get around the login system and register multiple times and play against and them selfs to get more points. so here cracked means modifying files, not the working around the existing rules." CreationDate="2011-05-31T23:33:40.833" UserId="890" />
  <row Id="17784" PostId="12973" Score="1" Text="Probably, yes :)" CreationDate="2011-05-31T23:34:38.997" UserId="3830" />
  <row Id="17785" PostId="12967" Score="1" Text="thanks for you answer. I cannot accept two answers and Randolf was quicker." CreationDate="2011-05-31T23:35:48.853" UserId="890" />
  <row Id="18015" PostId="13097" Score="20" Text="&lt;unhelpful&gt; Have you tried downloading the GOD.dll and executing the CreateUniverse functions under the Life Namespace ;-)&lt;/unhelpful&gt; but +1 for the topic :)" CreationDate="2009-05-06T08:16:20.580" />
  <row Id="18016" PostId="13097" Score="21" Text="Its an interesting solution, but the function isnt very performant. It typically takes 6 days to work and then sleeps for one. It probably need profiling and rewriting in asm." CreationDate="2009-05-06T08:25:55.750" />
  <row Id="18017" PostId="13097" Score="1" Text="@Visage Haha, thanks for that" CreationDate="2009-05-07T18:23:09.160" UserId="5996" />
  <row Id="18018" PostId="13100" Text="Yeah I was considering something like an Lsystem but most information is for plants, although I've also found city rules, but not space rules." CreationDate="2009-05-06T09:12:53.470" UserId="3441" />
  <row Id="18019" PostId="13101" Text="Well I'm not totally sure what I want yet :) doing preliminary investigation, but I was planning on using coordinates to seed random generation, so I can be sure to get the same results in the same location" CreationDate="2009-05-06T09:15:09.113" UserId="3441" />
  <row Id="18020" PostId="13101" Text="You should add some randomness nevertheless to get some variance (of course this only applies if you don't depend on a repeatable identical generation of the universe)" CreationDate="2010-03-22T07:57:41.620" UserId="3517" />
  <row Id="18021" PostId="13102" Text="Well my goal is an artificial universe similar to our own but not the same, however the idea to download it as 1800 suggests is interesting" CreationDate="2009-05-06T09:16:47.393" UserId="3441" />
  <row Id="18022" PostId="13102" Text="I had thought that the Elite writers had open-sourced their code, but that would be a gravity engine rather than a universe simulator. " CreationDate="2009-05-06T09:59:19.897" />
  <row Id="18023" PostId="13102" Text="and beyond computers' skills too." CreationDate="2010-12-04T10:39:17.760" />
  <row Id="18024" PostId="13103" Text="Very interesting alternative. Need to evaluate datasize though, mmm" CreationDate="2009-05-06T09:18:35.983" UserId="3441" />
  <row Id="18025" PostId="13104" Text="Yeah naming is terrible, but I think I'll use mostly categoric names for most planets like (A321) and some markov algorithm for say 1% of the interesting areas" CreationDate="2009-05-06T09:22:05.133" UserId="3441" />
  <row Id="18026" PostId="13105" Score="1" Text="Ok I should have said simulate a plae shadow of the universe then :)" CreationDate="2009-05-06T09:19:38.337" UserId="3441" />
  <row Id="18027" PostId="13106" Text="Indeed now that you mention it Elite is probably terribly underpowered even for what a mobile phone can handle nowadays. " CreationDate="2009-05-06T09:24:04.503" UserId="3441" />
  <row Id="18028" PostId="13106" Score="1" Text="Yes (not that I want to denigrate their achievement in any way!)" CreationDate="2009-05-06T09:27:54.247" />
  <row Id="18029" PostId="13106" Text="ditto - a great achievement!" CreationDate="2009-06-18T14:01:25.977" />
  <row Id="18031" PostId="13108" Score="2" Text="+1: Keeping the seed for an object constant after creation is important. An early JPL animation of a Saturn flyby had a sparkly moon in it because Jim Blinn forgot to reseed the PRNG before each animation frame was computed. Being on a deadline, it went out as it was, but IIRC he rerendered the frames later and used the mistake (as he often did, actually) as a kickoff point for a lecture." CreationDate="2009-05-06T09:31:21.803" UserId="4520" />
</comments>