Jump to content

  • Log In with Google      Sign In   
  • Create Account

Norman Barrows

Member Since 04 Apr 2012
Online Last Active Today, 08:30 AM

#5294139 responsiveness of main game loop designs

Posted by Norman Barrows on Yesterday, 06:31 AM

>> In extreme cases you could improve perceived latency by drawing some things after the main game/simulation graphics, like if your game displays a mouse cursor.


although not explicitly mentioned, this question is mostly with regards to realtime combat (IE FPSRPG type games) - so no mouse cursors.


if it doesn't have to be realtime - who cares? 

#5294137 responsiveness of main game loop designs

Posted by Norman Barrows on Yesterday, 06:26 AM

>> There should also get to be one human player for every core involved, or else the computer is ganging up on the player.


only if you program the AI to do so. having the AI gang up on the player is the oldest form of "cheating" there is.


there are two kinds of games, those that provide a level playing field - and everything else.

#5293897 responsiveness of main game loop designs

Posted by Norman Barrows on 28 May 2016 - 01:02 AM

>> If you accept the argument that there's no need to poll faster than the drawing rate


assuming you update no faster than you poll or render.


just cause you can only draw the screen once every 8 games turns doesn't mean you should let the computer move every turn and only let the user move every 8 game turns.


you have to preserve the fair play of "its my turn, ok, now its your turn, ok now its my turn again."


"i cant draw fast enough to show you whats going on - so you don't get a turn until i can" - that's just silly.


yet from what you say, it seems folks actually do this. no wonder games are such piles of crap these days.

#5293617 responsiveness of main game loop designs

Posted by Norman Barrows on 26 May 2016 - 10:32 AM

>>>> can anyone think of an example that doesn't do this without being less responsive?


>> A game running at 144hz with a 2 frame render lag (~7 ms per frame, or 14ms latency with lag) is still more responsive than a 60hz game (~16ms latency).


that sounds like one right there to me.


thanks all!

#5293611 Are Third Party Game Engines the Future

Posted by Norman Barrows on 26 May 2016 - 10:04 AM

>> I'm talking about a team's decision to use third party or an internal engine. The current trend is that AAA studios make their own


the current trend is an extension of the history. first there were games like wolf3D, quake, and doom. folks discovered you could make similar games with them. thus the birth of the "game engine".  so then studios start licencing engines to save time. like any big library used by a big company, licences with source was often available (and required).  most studios would mod a licensed engine to make a game, or build their own. other middleware such as audio libraries, graphics libraries, and physics libraries began to appear as well. from a purely software engineering standpoint - regardless of software type - the typical big company approach would be to licence what you could, mod what you had to, and write what's left yourself from scratch. that's generally the most productive approach. the labor cost of pro devs far outweighs the licence costs of middleware. so you use middleware to save both time and money. it called design using "off-the-shelf" components, and has been used with great success in both defense and aerospace engineering for reducing both development times and costs. as a standard engineering practice, it applies equally well to software engineering projects - whether they're scientific, business, entertainment, or some other kind of app.



it sounds like you're worried there won't be any jobs for engine developers. first, its a specialized technical field, so it'll never be big.  as the industry matures, there will be consolidation, so the number of "independent" engine companies may shrink, to just a few (if it hasn't already). larger production houses will strive o do things in-house, leveraging exiting assets. so in-house projects like frostbite would be common for every big shop i would think. there are certain pints where its cheaper to do something in-house, and points where its cheaper to farm it out (IE license a relatively turn-key new engine). as the industry mature we may reach the point where engines require less modding - IE more turn-key solutions are available - and 100% farming it out is cheaper - like IT support for fortune 500 companies. but we're not at the point where there's a "big three" of independent engine companies - and everyone - big shops and lone wolf alike - uses their tools.


there will also always be those games that don't fit existing molds which will require a modded or custom engine.

#5293424 responsiveness of main game loop designs

Posted by Norman Barrows on 25 May 2016 - 01:43 PM

>> You're overthinking this.

<g>  probably a good thing.  i'm one of those people who likes to boil things down to their essence.   sometimes you discover interesting underlying truths.
like it seems you can't monkey around with the basic render-input-update cycle without negatively impacting responsiveness. never even occurred to me, but it appears to be true.
and for a game that doesn't require dx10 or 11 or 12 (pick any one), higher versions of Dx are just a possible optimization method, not a requirement (in retrospect this is pretty obvious).  
and for a game where a single thread can do it all, multi-threading is likewise just a possible optimization method, not a requirement (in retrospect this is pretty obvious too).
and it would seem you should always be developing (testing actually) on the target PC, which will likely be an "above average" game capable PC (depending on game sys reqts and dev time), and always maintain your target FPS at all times on the target machine - IE optimize where needed, when needed, and as needed as you go along. which means nothing is considered to be "done" until its fast enough for release.  this avoids 11th hour optimizations.

#5293413 responsiveness of main game loop designs

Posted by Norman Barrows on 25 May 2016 - 12:23 PM

for maximum responsiveness, it seems you must render after every update, and before each input. 


can anyone think of an example that doesn't do this without being less responsive?


you have to render before each input, so the user knows whats going on, so they can respond to the situation.


you have to get input before or during each update, to update the player entity.


and you have to render after each update to display the results of user input (and update in general) in as timely a manner as possible.


so for maximum responsiveness, i don't see how this could be avoided.


can anybody think of anything that would/could be different, but not less responsive?


i can't think of anything that would not be less responsive.

#5293381 how much PC do you need to build a given game?

Posted by Norman Barrows on 25 May 2016 - 09:41 AM

>> IIRC Dell's 8900 series has a 460 watt power supply and every now and then you can get a coupon on them that saves you a good amount of cash.


so far, i've seen some gtx cards that recommend 600w, and some boxes with 500w, but no 600w.


odds are i'll end up with a PNY GTX 970. i've had a number of PNY GTX cards in the past and have always been pleased with them. 


but it seems there are more fundamental questions to be resolved first. such as does a given title even require an "average PC".  not all games are skyrim.

#5293333 how much PC do you need to build a given game?

Posted by Norman Barrows on 25 May 2016 - 06:09 AM

>> As far as the PC you found did you see how big the PS was? Usually pre-built systems come with 300Watt power supplies.


yes, this is a concern. i may end up having to build my own for maximum value, or buy more than just a cheap case with a 6th gen i7 in it.

#5293191 How should I develop this game?

Posted by Norman Barrows on 24 May 2016 - 06:00 AM

most games engines let you write scripts or code.  usually in a custom language, but sometimes a standard one like c#.  when running, the game engine calls this code. this lets you modify the behavior of the engine (or define it in the first place).


writing a RPG of any significance in just month is a tall order unless you use an engine you don't have to mod, are skilled with it (2+ years experience), and only use pre-made assets. even then it would be very hard, and you would not sleep much. there's just so much to an rpg.  first you need all the things a shooter has, levels and monsters and weapons and combat, then you need classes / skills / perks, magic / techno / artifacts, inventory systems, dialog systems, quest systems, the list goes on....


pong you can do in one man-month.  skyrim is measured in hundreds of man-years (IE about 500 man-years to build skyrim: 100 people and 5 years. or about 2000*500 = 1,000,000 hours of labor - and that's just working 8 hours a day, 5 days a week, 50 weeks a year. you know the folks at bethesda (like all gamedevs) work longer hours than that. 


at their best, a single dev can only average 15 hours a day after sleep, showers, meals, and bathroom stops - no work, no school, no family, no friends, no taking breaks - just game development. that's just 105 hours a week. or 5475 hours a year. while that's not bad compared to the ~2000 hours a year for a 9-5 with vacation, it would still take you 182 years to write skyrim. and that's only if writing skyrim was all you did except eat, shower, sh*t, and sleep. IE if you had no life.

#5293187 how much PC do you need to build a given game?

Posted by Norman Barrows on 24 May 2016 - 05:21 AM

>> If you've designed the game to run on a single core, with 1.3GHz I doubt you need to worry about the system's other processes.


that just happens to be the minimum spec at the moment, and i haven't "cranked up the volume" yet.


from taking a look at steam, it seems the average PC right now is 4 cores at 3+ Ghz, and 2-4 gig vram with a nvidia 900 series or AMD r9 series GPU.


and the next step will be 4 cores at 4+ Ghz, and 4-8 gig vram.


and the step after that will be 6+ cores at 4+ Ghz and 8-16 or 32 gig vram.


so far i've found a 6th gen i7 6700 box at $700 (lenovo - newegg, as i recall - just goto cdw.com - best supplier on the planet), and vidcards are of two basic types: good (GTX 970) for $200-300, and very good (Ti's and other hot stuff) for about twice as much.  the average game ready rig has a "good" card, but not a killer one.


so for Caveman 3.0, recommended should be 3+ Ghz, not 1.3+. and a vidcard comparable in speed to a decent GTX 900 or 700 series GPU, with 2+ gig of vram, not an AMD HD 6310 with 1 gig.


and for the game after that, it should be 3+ Ghz (or maybe 4+), GTX 1080,  and 4gig vram (or maybe 8?).


i need to check the recommended specs for current games again. those numbers may still be low when it comes to vram.


i was surprised to find the 1080 wasn't that much faster with today's games - then again, they aren't designed for it.


as for extra cores and users running multiple apps - that's their problem, not mine.  i really have yet to find a good use for extra cores. you can't really use them for mission critical stuff, which means they're really only useful for BS chrome. and i'll spend dev time on gameplay before chrome - every time. its a better long term value to the customer.

#5293027 how much PC do you need to build a given game?

Posted by Norman Barrows on 23 May 2016 - 04:58 AM

>> Personally I don't believe in CPUs with less than 6 cores. I figure 4 cores for the game, and 2 for the system and background/idle applications.


so if i'm fullscreen dx, and have no background processes running  - not even anti virus - you're saying windows 10 will still be trying to do stuff in the background? so i should get extra cores? and so should my users? i know OS overhead tends to get worse, not better, but it can't have gotten that bad - has it?.


its seems to me that if its just windows and the game running, windows would grab a timeslice from time to time, check the job queue, see there's nothing else that needs doing, and return control to the game.

#5293025 how much PC do you need to build a given game?

Posted by Norman Barrows on 23 May 2016 - 04:53 AM

BTW - are you only going to have recommended spec or min specs as well?




if you define minimum spec as "less than this and its not really playable or wont run at all" - then all games have a minimum spec.


you have the spec the game is designed for, and then you have how much the game can be dialed down and still provide the same basic experience - the minimum spec.


on my current project Caveman 3.0,  i'm in a rather unusual position. the game is largely done except final graphics. so release is within 1 year for sure. so today's mid-range would be the recommended spec.  but right now the recommended spec is just one core at 1.3Ghz and a Dx9 GPU. odds are the minimum spec right now is about the same. not only that, but my target FPS is just 15, not 30, 60 or as fast as possible. a rock solid 15 fps is all that's required for a simulation to be sufficiently responsive. everything else is just smoother animation.  

#5292828 how much PC do you need to build a given game?

Posted by Norman Barrows on 22 May 2016 - 01:08 AM

>> During dev, a game requires much more power because it hasn't been optimized yet, and you may have any number of quick and dirty hacks to get things done.


i always try to keep the framerate at an acceptable speed at all times on the target PC. so i optimize as i go along, as needed, when needed.  in Caveman i only really had to deal with pairwise range checks for target section from hundreds of entities in close proximity (round robin to the rescue), and writing a data oriented render queue.  as the game grows, you get a feel for which bits are probably eventually going to need optimization. when that framerate starts dropping, you take a time out, fix the problem, then move on. this tends to reduce or eliminate last minute optimization during crunch time, allowing you to concentrate on getting as many of those final features in as possible before going gold. right now, realtime collision map and terrain chunk generation are the only two things that look like they may need some attention before all is said and done. and they're not quit bad enough to make me do anything about it yet. so its still wait and see.

#5292825 how much PC do you need to build a given game?

Posted by Norman Barrows on 22 May 2016 - 12:46 AM

>> Do you care for accelerating your compile time?  If so look into 6 or 8 core intel cpu's. 


first i want to determine what i need for testing and development, then i can consider what i want and can afford beyond that for enhanced development.


>>  I would suggest a 500W power supply minimum but 600 watts to be safe especially if you get an AMD video card and get one of the more expensive ones.


yes, i think it was the r9 and fury and fruy x that recommended 600w, and i've only found PCs with 500w so far.


>> Also a good idea would be to check out the steam hardware survey to help you decide on your recommended specs.


one really needs the survey results from 2 to 4 years from now, not from right now - assuming a game with a longer development cycle.  if you're just going to bang out something in six months in unity - sure you can just look at steam to see whats up  today - no problem. it won't change that much by the time you release. for bigger games you have to start with where the market is now (steam survey), and estimate (guess) when the game will be released, and where the market will be at that point in time, as far as what is the "average.game capable PC" when it comes to processor speed, cache speed and size, number of cores, total ram, GPU, and GPU ram.