(Part 3) Top products from r/gamedev

Jump to the top 20

We found 129 product mentions on r/gamedev. We ranked the 872 resulting products by number of redditors who mentioned them. Here are the products ranked 41-60. You can also go back to the previous section.

Next page

Top comments that mention products on r/gamedev:

u/DiggyDog · 9 pointsr/gamedev

Hey there, I'm a game designer working in AAA and I agree with /u/SuaveZombie that you'll probably be better off with a degree in CS. BUT... don't give up on wanting to be a designer!

 

You should realize that it's not giving up on your dream at all, in fact, it's great advice for how to reach that dream. A designer with an engineering background is going to have a lot more tools at their disposal than one who doesn't.

 

Design is way more than just coming up with a bunch of cool, big ideas. You need to be able to figure out all the details, communicate them clearly to your teammates, and evaluate how well they're working so you can figure out how to make something people will enjoy. In fact, working on a big game often feels like working on a bunch of small games that all connect.

Take your big game idea and start breaking it down into all the pieces that it will need to be complete. For example, GTA has systems for driving and shooting (among many other things). Look at each of those things as its own, smaller game. Even these "small" parts of GTA are actually pretty huge, so try to come up with something as small as possible. Like, super small. Smaller than you think it needs to be. Seriously! You'll eventually be able to make big stuff, but it's not the place to start. Oh, and don't worry if your first game(s) suck. They probably will, and that's fine! The good stuff you make later will be built on the corpses of the small, crappy games you made while you were learning.

 

If you're truly interested in design, you can learn a lot about usability, player psychology, and communication methods without having to shell out $17k for a degree. Same goes for coding (there are tons of free online resources), though a degree will help you get in the door at companies you might be interested in and help provide the structure to keep you going.

 

Here's some books I recommend. Some are specific to games and some aren't, but are relevant for anything where you're designing for someone besides yourself.

 

Universal Principles of Design

The Design of Everyday Things

Rules of Play

The Art of Game Design This and the one below are great books to start with.

A Theory of Fun This is a great one to start with.

Game Feel

• Depending on the type of game you're making, some info on level design would be useful too, but I don't have a specific book to recommend (I've found pieces of many books and articles to be useful). Go play through the developer commentary on Half-Life 2 or Portal for a fun way to get started.

 

Sounds like you're having a tough time, so do your best to keep a positive attitude and keep pushing yourself toward your goals. There's nothing to stop you from learning to make games and starting to make them on your own if that's what you really want to do.

Good luck, work hard!

u/Idoiocracy · 2 pointsr/gamedev

I generally agree with the other replies that a vanilla computer science degree is better than a game degree, but let me use the example of the University of California Santa Cruz (UCSC) game degree to offer a balanced comparison.

At UCSC, the only difference with a computer science versus games degree is one class in the senior year. The fundamentals of both degrees are identical - you take the same math, physics, and programming in the game degree as you would in the CS degree. Only in your senior year does it differ, where as a games major you do a 1 year elective working on gaming group projects using Unity. If you did vanilla CS instead, you would use that year to take something like operating systems, artificial intelligence or databases. Deciding which one is a better fit for you partly depends on your philosophy of the purpose of school:

  • Ivory tower camp - If you feel that a university is best served teaching theory and fundamentals, rather than masquerading as a trade school, then you might agree that learning operating systems or databases in a "pure" manner, without worrying about production concerns like working in a group, would be the best use of your time while you have the privilege of being in school.

  • Emphasis on practicality - If instead you concede that while theory is nice and well, the practical needs of the working world sometimes take precedence, then you might feel that the year of working on gaming projects with others and being able to point at a concrete example of something you did would be time well spent in being able to land that first job.

    You can see this difference of philosophy being played out in not just the debate over a gaming degree program, but in things like the programming language of choice for first-year students, where some schools lean toward the practical (UCSC uses Java and C++) and some toward the theoretical (MIT traditionally used Scheme and now uses Python).

    Specifically at UCSC, I would say the pros and cons are as such:

    Pros:

  • Get to study and spend class time on what is presumably your main interest - game development.

  • Dedicated time to a group project that at graduation, you can cite on your resume and be able to say, "I made that."

  • Possibly make contacts with game industry veterans through the program.

    Cons:

  • Spend a one-year class being forced to work in groups and deal with the messiness of production tasks rather than being immersed in 'pure' theory like in a more typical computer science course.

  • Slightly negative connation among the uninformed of having the words "game degree" on your resume and possibly having to defend that your fundamentals are as sound as a vanilla CS major.

    The first question you should ask yourself is whether the school you're looking at has a comprehensive undergraduate education and a good reputation, like UCSC, or if it's a specialized trade school like Fullsail or DeVry (stay away) with a bad reputation. Not all game schools are bad - both Digipen and Guildhall at SMU are notoriously challenging programs and in my experience working with a handful of their graduates, I found them to be quite competent. Allen Chou will be graduating Digipen with his first job at Naughty Dog (which was Naughty Dog's first time they've hired someone straight out of school rather than someone with industry experience, though it should be noted that Allen earned a previous bachelor's in electrical engineering before attending Digipen). And USC's game school is well known for having produced Journey developer thatgamecompany, among others.

    As for the poor working conditions known at most gaming companies - yes, in general you will work more hours for less pay in the gaming industry than you would outside it. Yes, the industry is rife with constant layoffs. It is likely you will need to move all over the country and possibly world as you chase jobs throughout your career. It's up to you to decide if working on games and with other game developers is important enough to you that it's worth that sacrifice. Many people don't find it worth it, and they are not weaker for choosing another path. It's a personal decision of how much it means to you to work on games; alternatives are arguably more sane.

    For working at the kind of companies you mentioned like Bethesda and Blizzard, you will need to be an expert at C++. Because C++ is such a large and complicated language to first tackle, I recommend learning C first. My book of choice is C Programming: A Modern Approach by KN King, which is also highly recommended in the C programming FAQ. Or if you prefer a shorter book, many people have learned from the C Programming Language by Kernighan and Ritchie.

    For learning C++, there is only one book you need to know to start with: C++ Primer by Stanley Lippman, which is also the #1 recommendation of the C++ FAQ and highly reviewed elsewhere. You do not need to worry whatsoever about C++ becoming obsolete by the time you graduate. But you do have plenty to worry about mastering the language, because there is a lot of material to cover.

    I'm a moderator at /r/TheMakingOfGames and I would recommend perusing some of the videos there that show behind the scenes of development companies (though arguably, the bright side of development). Some examples:

  • Behind the scenes of God of War 3 with the programming team

  • Since you mentioned Blizzard, read Patrick Wyatt's articles on the development of Starcraft. He was a lead programmer at Blizzard before leaving to found ArenaNet and making Guild Wars.

  • Nine examples of dirty programming hacks to fix baffling bugs is a Gamasutra article that might give a glimpse at the harried side of game development, when under pressure and lacking time.

  • Naughty Dog's lead programmer Jason Gregory talking about their interview process and culture
u/againey · 1 pointr/gamedev

I think that's a hard enough question even when targeting the general population within that age group. So it can be difficult to find well researched and experientially backed up information even without the more specific target of children with autism. Though I'll also note (as someone with a degree of autism himself), depending on the individual's particular autistic attributes, the condition can actually be a strength for studying something such as game design. The focus on designing rules and working out all the implications for their effects on the gameplay experience can often be a natural fit for someone with autism. At least in my case, the key for effective learning was to grant me the time, space, and tools to explore a subject in my own idiosyncratic way, at which point I could soak up all sorts of knowledge and concepts.

As for concrete recommendations, the one that comes to my mind is to look outside of computers for at least part of your teaching material and activities. I wasn't expecting it initially, but while reading a variety of game design books to improve my own knowledge for making video games, I repeatedly encountered the recommendation to do as much of your early prototyping away from the computer as possible. That is, design board games, card games, sports-like games, party games, and so on. In many cases, you can pull ideas from a variety of game types to build hybrids that do a decent job of replicating the essence of certain video game mechanics, giving you a chance to evaluate how fun the concept is, and if it merits spending time to make a more in depth digital version.

Best of all, it can be free or very cheap, it requires no knowledge of coding, you can do it anywhere (though preferably with a good work table and some craft supplies and standard physical gaming equipment), and you can get results in just a few hours, or maybe even a few minutes depending on the concept. Anything using a standard deck of 52 cards is particularly simple to test, for example.

Two of the books I've already read that had sections helping me think in these terms were:

u/spaghettu · 3 pointsr/gamedev

If you're planning on pursuing this as a career, there are tons of incredible opportunities for people experienced with lower-level 3D APIs. Making your own engine serves as a fantastic learning experience, and would be a huge investment in your future.

Below are some of my favorite books/resources right now that may help you along the way. These might not be immediately useful to you right now, depending on where you're at, but together they have more than enough knowledge for you to go far in 3D Computer Graphics.

  • Game Engine Architecture touches at least a little on all of the knowledge necessary to build a bare-bones 3D engine. It goes over the components of modern 3D engines, and how they work. It even has introductory Linear Algebra and Object-Oriented programming concepts. I think this book is pretty approachable for beginners.
  • The OpenGL SuperBible offers great insight and examples on using OpenGL optimally. Depending on when you start, however, you may want to consider a Vulkan book instead. I think this book is the best way to learn OpenGL as a beginner. There are plenty of free tutorials online on websites like learnopengl.com and open.gl as well.
  • Real-Time Rendering is a fantastic book that dives deep into different algorithms and techniques for modern 3D rendering. It's pretty advanced, but it's a very well-known book and exposes very valuable information on complicated effects found in modern 3D engines.
u/ominoustoad · 1 pointr/gamedev

There is a lot of good stuff already posted, but I'll chime in. Formal education doesn't mean much if you can become a capable programmer on your own. A good interviewer will recognize your ability to produce quality work, period. However, If you are truly serious about becoming a developer you will need to educate yourself and it won't all be fun. If you can buckle down and teach yourself what you would have otherwise learned in college, there is no reason that you'll be less skilled that a college educated programmer. Some employers may view you as less qualified but you can prove them wrong during an interview.

I would suggest a bottom-up approach:

First, learn some of the Comp Sci. nitty gritty. Get familiar with data structures (Heap, Stack), and understand how computers use memory at the most basic level. A lot of this will be painful at first, but it's necessarily to fully grasp what and why we do certain things when programming.

Second, Learn C. The K&R (http://www.amazon.com/C-Programming-Language-2nd-Edition/dp/0131103628) is going to be the best way to to this. The reason C is great to start with is because it runs on nearly all hardware out there, and it will teach you very important concepts, such as pointers, that will mitigate confusion as you move forward. Also, without learning about memory in the previous step, pointers will be difficult to fully grasp.

Third, Learn another language, and another. The funny thing about programmers is that we are essentially linguists. The main difference is that we speak to computers rather than people. With this in mind, it's important to learn multiple languages, rather than attempting to master one. Pick a language that helps you solve the problems you want to solve. Wanna make iOS/OSX apps? Dive into Objective C. Open Source guy? Learn Java. The more you learn, the easier it gets since most languages share similar syntax, keywords, etc. This is why learning C first was a good plan, because lots of other languages borrow heavily from C.

Finally, write code every day. Writing code, compiling it, debugging it, compiling it again, and then watching it run properly is the ONLY way to truly learn. Keep reference books close at hand, and push your comfort level by writing programs that do more and more sophisticated operations. Don't try to memorize everything about a language, and don't get discouraged if you need to re-read sections of a book. It's a fools errand to try and memorize everything about a language, and even decades-long programmers keep reference books on their desks.

u/k_Reign · 1 pointr/gamedev

Thanks a lot! I actually have that first book bookmarked but I forgot to put it on the list.

I'm leaning closer and closer to purchasing a copy of The Art of Game Design: A Book of Lenses and it's one I'm actually really curious about.

On Game Physics Pearls - I peeked into the first few pages and it looks like something that I will pick up once I have a bit of experience in that area...does that sound about right or would you say it could cater to beginners fairly well?

Game Physics seems like it may be a bit more beginner-friendly but you are right about it not being a tutorial, which is kind of important for me at this step. I'm definitely bookmarking this until I know a bit more on the subject, though. I'll be taking a Physics course next September so it may be a good time to look at it after that!

Real-Time Shadows looks very interesting but I'm unsure to the difficulty level of it to a beginner. It sounds like I need to brush up on my math after three years of not using it very often at all.

Thanks a lot for the suggestions!

*I'll be taking a course on Linear Algebra here in the coming semesters, but that book does sound like a good introduction along with how it works within 3D programming. I'll keep a look-out on that for a while; do you think it would be very worthwhile to read that before something like Real-Time Rendering?

u/joeswindell · 5 pointsr/gamedev

I'll start off with some titles that might not be so apparent:

Unexpected Fundamentals

These 2 books provide much needed information about making reusable patterns and objects. These are life saving things! They are not language dependent. You need to know how to do these patterns, and it shouldn't be too hard to figure out how to implement them in your chosen language.

u/InvisibleMan5 · 9 pointsr/gamedev

I highly recommend Real-Time Collision Detection.

This next book might not apply to your field directly, but I believe it is a good idea to be at the very least aware of what it discusses, and it is a very excellent book on its subject: The Art of Game Design: A Book of Lenses

I recommend this book as more of a reference than a tutorial; it will allow you to quickly brush up on those areas of math and physics which you will need while writing (or perhaps working with) a physics engine. I don't recommend attempting to learn the subjects through this book alone though. Game Physics

Reading 3D Math primer for Graphics and Game Development is how I learned linear algebra, although I plan on studying the subject from a textbook when I get the opportunity. I keep the book close for easy reference of the math related to 3D rendering (such as the projection and view matrices), although if you get this book you will want to read the errata document on its website. There may be better books to teach this stuff now, so please don't jump on it too hastily.

A couple books I do not own, but plan to correct that as soon as I can:
Game Physics Pearls and Real-Time Shadows

If I think of any others, I will edit this comment.

u/vblanco · 11 pointsr/gamedev

Dont listen to the people that comment about not making your engine. Making one is a great learning excersise and highly recomended to become a better developer.

I recomend you make sure your C++ is on point, and check this books:

  • Game Engine Architecture Link : Overview of more or less anything about how a entire game engine works. Written by a lead at Naughty Dog and highly educational.
  • Opengl Superbible Link : The best way to learn OpenGL (a graphics API). You can follow this book to learn how to draw stuff in 3d.
  • Real Time Rendering Link : Amazing book about GPU graphics. Its API agnostic, and very in-depth. Explains techniques and effects.

    If you dont want to do the 3d route, you can just do 2d games using the libraries SFML or SDL. SFML is easier to use, for C++, while SDL is a lot more C oriented and runs literally anywhere (including things like nintendo DS or PS4). With those you can try to make some simple games like Snake, which is a great learning project.

    If you are inexperienced, try to avoid OOP designs (do not use inheritance). It will just make things more complicated than they should.
u/RandyGaul · 1 pointr/gamedev

Hi there, TerraNisi was with this stuff. Just a bunch of Windows API C stuff. I'm surprised you like the knight game! I thought it totally sucked and was embarrassed to put it up on the page :)

For C/C++/DirectX I'd recommend trying to look at tigr. tigr has some very advanced code in there, but it's all dense and in one place. Anyone can slowly lookup piece by piece on the internet and learn about the DirectX or OpenGL implementation. The author, Richard Mitton, is a grumpy but generally nice guy. One could probably email him with a well thought out question and he'd be happy to answer. Just recently I was asking a question to him about his PNG loader/saver :)

It takes time to grind through since it's a lot to learn, but it if it's what you want to work on then totally worth it. For books and math I did like this one by Frank Luna. Again, it's a lot to learn, but once you learn it you know it forever.

u/thenameunforgettable · 2 pointsr/gamedev

PS, when you get a chance, read "The C Programming Language" by K&R. Those are the guys that invented C. Ritchie recently died, sadly. ANYWAY just about every modern computer language is written in C. Java, C++, and so on all use it as a base, and C++ really isn't very far off from standard C.

There WILL be obtuse parts in the book you probably won't understand at first, but it's great to understand everything you can do with the language.

I've also seen you're a little confused by why you're doing Hello World stuff... It's mostly because printing a line to the terminal is a way to give you quick feedback with little/no overhead, or what we tend to call boilerplate code. To get a visual set up just to show a message (in Java) is probably around 60 lines of code that will make 0 sense to you right now.

Also, that same feedback - the quick and dirty console print - is a great way to check if your concept is correct. Let's say you write a simple physics engine for your game. You want to make sure you're getting expected values, and you want to do it quickly. Rather than re-launch the entire game EVERY time you tweak the engine, you run a smaller set of code that tests just your physics engine.

Imagine Mario-like movement - jump up and fall in 2d. If you print the Y position every, say, 500 milliseconds (.5 seconds), you would expect values like "0.0, 1.1, 1.5, 2, 1.5, 1.1, 0.0" which would indicate it went up rapidly, stopped at 2, and fell back at the same rate. It's obviously not the same as a visual feedback, but the first time you write the physics engine you might get something like "0.0, 1.1, 1.5, 2, 2, 2, 2" which is CLEARLY incorrect. Something isn't triggering properly! This happens all the time, and a quick check like that helps you diagnose what you did wrong while wasting minimal time running the program.

u/CyricYourGod · 3 pointsr/gamedev

Animation is an art and good animation requires a strong understanding on how things move. A good resource for making both convincing and interesting animation is the Disney Bible: https://www.amazon.com/Illusion-Life-Disney-Animation/dp/0786860707/ and another: https://www.amazon.com/Animators-Survival-Kit-Principles-Classical/dp/086547897X/. But realistically it takes years to understand and make good animation. That's outside of the learning required with tools (such as Maya).

If he doesn't know the principles of animation he should learn them and then your critiques should be focused around 1) does the animation meet the intention -- ie is it usable and 2) how can the animation be improved to make it more interesting and believable.

u/agenten · -1 pointsr/gamedev

For overall C++ I recommend Sams Teach Yourself C++ in 24 Hours. It is a really good book and got me through a few of my introduction modules in Uni. Once you have the basics down, I found the best book for getting started with DirectX 9 was this. The Author really knows his stuff and you start from the absolute basics of graphical programming and work up to some really cool stuff by the end. Again it is book I have used and have had great results from it.
Hope these will help you on your way.

u/mysticreddit · 5 pointsr/gamedev

Every game programmer should have at least one of these books:

  • Mathematics for 3D Game Programming & Computer Graphics by Eric Lengyel
  • Game Physics by David Eberly
  • Real Time Collision Detection by Christer Ericson

    I own all 3. What I love about them is that they are some of the best ones around written by programmers to understand math in a clear and concise fashion; they are not written by some mathematician who loves theory and likes to hand-wave the worries about "implementation details."

    To help provide direction I would recommend these exercises to start; Work on (re) deriving the formulas (from easiest to hardest):

  • Work out how to reflect a vector
  • Derive the formula for how to calculate a 2D perpendicular vector
  • Work out the formula for how to project a vector A onto B.
  • Study how the dot product is used in lighting.
  • Derive the translation, scaling, and rotation 3x3 and 4x4 matrices.
u/bluish_ · 1 pointr/gamedev

I strongly recommend Beginning C++ Through Game Programming.

I'm currently in my second year at university studying games programming and this book has been a great help to me. It teaches you everything you need to know about C++ and does it using relevant and interesting examples, as well as explaining how and why different things would be used for games programming. After learning the basics you start create simple games such as "guess my number" and "tic tac toe" and finish by creating a "blackjack" game using advanced coding techniques.

u/1000Parsecs · 9 pointsr/gamedev

If you've never programmed anything before and you really want to learn coding (if it's your priority) instead of rushing out your first game, I think LÖVE is pretty great for that. You get to learn Lua and an awesome framework. There's also Phaser, which you can learn JavaScript or its variants with it. JavaScript is probably more widely used than Lua because of the World Wide Web.

And when you're done with those, you can try to learn Java and use libGDX, or C# and Unity.

GameFromScratch.com has plenty of tutorials to get you started.

When you've decided you want to be an ultra low-level programmer, buy The C Programming Language. Learn the basics of C, and then follow Handmade Hero.

When you're done with that you're probably on your way to become a godly programmer. You'll probably know how to do some assembly and machine code by then.

But first, you're gonna need lots of discipline to even get to anywhere.

There are no shortcuts.

If you just want to make a game, however, GameMaker and Construct 2 are pretty awesome!

u/ECG_Toriad · 1 pointr/gamedev

The book I read recently thanks to reddit highlights why I am now seeking 3rd party assets as much as I can.

> "Always ask yourself - how many of your working hours are equivalent to the price? How long would it take to code it yourself? Self-made libraries, engines and tools need lots of care. Care equals working hours. Working hours equals cash. Can you afford to do it yourself?"
>
> - Thomas Schwarzi, Game Project Completed: How Successful Indie Game Developers Finish Their Projects. (http://www.amazon.com/Game-Project-Completed-Successful-Developers-ebook/dp/B00INF6MGA)

Earlier in the book he describes the way to tell how much money you are making per hour as a indie, is to take the amount of sales and divide it by your working hours. If you spend extra time because you didn't use the available 3rd party tools, you are only cutting into your hourly wages.

u/Sonic_Dah_Hedgehog · 2 pointsr/gamedev

Challenges for Game Designers is a great book had a ton of fun trying out all the different challenges they give you.

Another book I would add to that list is Beginning C++ programming through game design it does a great job at teaching the basics of C++ through some fun activities.

u/SparkyPantsMcGee · 3 pointsr/gamedev

Here’s a fun exercise: find a simple game you like, but don’t go farther than the SNES/Genesis generation of gaming. Play the game and study it. What makes that game special? Focus on its mechanics, dynamics and aesthetics. Write it all down too. Then take a mechanic and completely change it while also adding a brand new mechanic to the mix as well. Add your own art style and just have fun with it.

Don’t worry about it sucking, this is an exercise for your design skills. If you understand modeling and you understand coding, it seems you are just missing design. Read books on design, I can’t recommend “The Design of Everyday Things” enough. This book covers design as a whole and gets you to think about why we build things the way we do.

https://www.amazon.com/gp/aw/d/0465050654/ref=mp_s_a_1_1?ie=UTF8&qid=1526568855&sr=8-1-spons&pi=AC_SX236_SY340_QL65&keywords=the+design+of+everyday+things&psc=1

u/Lycid · 2 pointsr/gamedev

https://www.amazon.com/Architectural-Approach-Level-Design/dp/1466585412/ref=sr_1_1?ie=UTF8&qid=1497126808&sr=8-1&keywords=architecture+of+level+design

I've not read it, but it's been cited several times by prominent level designers in the industry during talks. It is next on my reading list. I can recommend Totten's other book "Level Design: Processes and Experiences" which I'm half way through and is genuinely great.

It isn't an architecture book in the sense that it'll teach you architecture 101 on how buildings are designed. But it goes into solving practical "door problems" that both architects and level designers face, and how that relates to level design.

u/jasonthe · 1 pointr/gamedev

If you're interested in programming games (which it sounds like you are), I would suggest learning DirectX. Using a pre-made engine will never teach you as much as learning to create the engine yourself (when it comes to programming, that is). Pick up this book, it will explain everything you need to know to create a graphics engine (and there are PDF and CHM versions you can find online).

Make a simple engine based on the book's examples. Then try to do things in your own way. Google for "component-based design" and see if you can implement an engine that uses that.

More specifically, you should use absolutely use C++. You should start with a 2D game (or a text-based game). Don't expect to do anything major design-wise; it's about building your skills.

In addition, you probably haven't learned much in the ways of linear algebra (which is what graphics and a lot of gameplay is based on). I don't know any specific resources, but you should understand vectors (dot and cross products) and matrices (how to create scale, rotation, and translation matrices and how they have those effects on vectors).

Good luck!

u/blindluke · 2 pointsr/gamedev

Game Mechanics is definitely helpful with understanding what the moving parts are, and it introduces a visual notation that I find useful in the planning stages.

By far the best tools to balance game mechanics is a spreadsheet and a working knowledge of math. Book on both might be helpful too.

u/Serapth · 5 pointsr/gamedev

There isn't a completely language agnostic book out there like you'd find with say Code Complete, but there are two books that fit your description but neither is really a beginner text.

 

Game Coding Complete

and

Game Programming Patterns, much of which is available on his website.



Once you get a bit more (ok, a lot more experienced), Game Engine Architecture is another great read.

 

Other than those 3 books, almost everything else is technology or language specific... like Learning Unity 5 or Learning Inverse Kinematics for __, etc.

 

While you are just starting out however, you should consider the beginners guide on Gamefromscratch, followed by various tutorial series or game engine overviews, as you aren't at the point where you really need to buy a book yet.

u/drjeats · 1 pointr/gamedev

The 2nd edition came out in 2014. It's good for an overview of commonly useful systems and what production teams need from them. It doesn't go into great detail. [EDIT] d'oh I was slow.

Real-time Rendering has a 4th Edition coming out soon with more up-to-date info.

Given your experience, it sounds like your math's probably strong, but if you want review Eric Lengyel has a new book out that I heard is good: https://www.amazon.com/Foundations-Game-Engine-Development-Mathematics/dp/0985811749

For AI:

Game AI By Example is an older one that provides a decent baseline if you're not very familiar with game AI: https://www.amazon.com/Programming-Example-Wordware-Developers-Library/dp/1556220782

And a lot of more recent info and course material is on at http://aigamedev.com/ which I guess has turned into https://nucl.ai/

Also some of the old Game Programming Gems have random chapters on AI techniques.

Also go look at the popular engines, do their AI tutorials, then try to look at the code. The Behave plugin for Unity does behavior trees, and UE4 has a behavior tree system you can read about.

Behavior trees aren't the newest thing though, look at the talk catalogue for the GDC 2018 AI Summit.

u/specialistdeluxe · 4 pointsr/gamedev

This is super cool stuff, don't get my wrong! I guess what i'm saying is principles of animation apply regardless of software. It's simply a matter of applying animation techniques using whatever software you have available! Don't be shy looking into other software tutorials (For 2D, Flash, AE, toonboom, etc) even if you're not using it. Alot of what you'll find will translate quite easily and you can start building a toolset of your own!


Also, if you're into animation, especially 2D, I would highly suggest picking up "The Illusion of Life." It's considered the bible in animation and even though it was written by old school Disney animators, literally everything in it applies today.



Cool stuff!

u/orbjuice · 2 pointsr/gamedev

So many things. I was never a competent pixel artist because once I got to semi-proficient I looked at the skill curve and realized that I wasn't making it through all of that.

I really recommend frequenting these two sites:

http://pixelation.org
http://pixeljoint.com

Someone mentioned the classic Disney animator bible:

https://www.amazon.com/Illusion-Life-Disney-Animation/dp/0786860707

It can't be understated how essential this book is to learning the essentials of animation. Further than that there were the Loomis books that were called out time and again as a great art education (palette selection becomes incredibly important in low resolution art). Those books are hard to come by-- scratch that, they used to be now they're just on Amazon.

https://www.amazon.com/dp/1845769287

There's a lot to dive in to. If all of this seems like too much, cribbing from OpenGameArt's better assets is a cheap and easy way to start.

u/nokovo · 15 pointsr/gamedev

It's super simple so you should focus on refining the few details that make up the sprite. You have:

  1. legs
  2. head
  3. eyes

    The animation tries to add depth but it isn't quite there. You could have its right eye (stage left) go from two pixels to three as it moves from profile to 3/4 view (maybe a single frame during that transition could have the third pixel at 50% alpha), and have its left eye only expand to two pixels (never three).


    You could have the shadow on the head move slightly to make the head rotation more obvious. The legs are okay but could look better. If you're really interested in animation, brush up your skills by looking up some tutorials or get a book like The Animator's Survival Kit.

    You may also want to stick with the pink color palette rather than the white so it doesn't look like a ghast.

    EDIT: Just saw your comments regarding magnets. Maybe change the negative to a dark blue instead of white.
u/krahenke · 4 pointsr/gamedev

One of the best resources out there, especially for Patreon supporters. I found this book to go hand-in-hand with this, I'd even go as far to say it's a must read, with great examples and modern practices.

https://www.amazon.com/Multiplayer-Game-Programming-Architecting-Networked/dp/0134034309

u/nonagonx · 3 pointsr/gamedev

>Do it myself

Great idea. Learn to be an animator. There's software (Flash/Photoshop/other) to both draw your animations and then generate sprite sheets, so the process shouldn't take weeks. Here's a list of resources I recommend for animation:

  • The Animator's Survival Guide
  • The Illusion of Life
  • Draw with Jazza

    >but artists (understandably) don't usually donate their time for internet strangers with the promise of a payout down the road

    This wasn't true in my case. I posted an ad on /r/gamedevclassifieds as a coder and got three talented artists emailing me with work they've done.
u/HiroP713 · 2 pointsr/gamedev

I'm a big fan of http://www.amazon.com/Game-Physics-David-H-Eberly/dp/0123749034/ref=pd_sim_b_3

I also have physics for game developers but the Eberly book is superior. How's your physics knowledge already? Do you already have a base of knowledge that you're looking to apply to games or are you pretty much starting from scratch?

u/[deleted] · 3 pointsr/gamedev

I personally just recently started learning C# after using GameMaker for some years. It's actually been a bit easier to understand than I thought (it may be because I have past experience with the GML and DarkBASIC languages).

Java is also very similar to C# and is more portable as it is directly supported by millions of devices, where as with C# you need something like Mono to port games to other operating systems or devices.

I have no experience with C++, but from what I've heard it is probably one of the (if not the) most powerful language available, but I've also heard that it is harder to learn than other languages.

The reason I personally went with C# is because it's (generally) easier to learn than Java from what I've heard, and I don't really mind the non-portability, and also a switch from C# to Java is easy because their syntax is pretty much identical.
Also, here's the C# book I'm currently using

http://www.amazon.com/XNA-4-0-Game-Development-Example/dp/1849690669

I can't really recommend any books for other languages because I haven't read any.

Hope this helped :)

u/Monstr92 · 1 pointr/gamedev

Thanks, for posting this Reddit. Uhm, what helped me out was this book called : "Breaking Into the Game Industry" Breaking into the Game Indusry

It's a really good book that makes great key points that are valid, and its a short read! It'll take you about two hours to read the entire thing. Check it out! :D

u/empyrealhell · 1 pointr/gamedev

As an alternative, I own this book. While it's a bit heavy on the math at times, and the concepts are pretty advanced, it's a solid book. if you have a basic understanding of physics and a good background in math, it's a fantastic reference.

As for writing a physics engine from it, I haven't tried, but it covers the bases pretty well. I used it to write a very simple 2d platformer with any-angle collisions with arbitrary polygons and circles. Nothing fancy like fluid dynamics or variable density and elasticity, but it was a boon getting the rigid body mechanics set up, and I only touched probably the first couple chapters.

u/raydeen · 6 pointsr/gamedev

I'd encourage anyone interested to check out Racing The Beam. It goes into detail how some of the early programmers got as much as they did out of the 2600. The chapter on PitFall! is really great.

u/aethronic_dz · 1 pointr/gamedev

My top three books are:


https://www.amazon.com/Art-Game-Design-Book-Lenses/dp/0123694965

https://www.amazon.com/David-Perry-Game-Design-Brainstorming/dp/1584506687

(more like an index of game design terms, ideal for brainstorming)

https://www.amazon.com/Game-Programming-Patterns-Robert-Nystrom/dp/0990582906

(more related to programming, but can give you a great insight how games should be structured, which can inform some design decisions)

u/Tr1poD · 3 pointsr/gamedev

This is probably the most comprehensive and complete tutorial on making a platformer that you will find but you will need to pay a subscription to watch. Check out the first video anyway and you might get an idea if its worth while.

This book has a pretty decent platformer tutorial as well. Also goes through making a tile based editor for your levels.

u/cslcm · 1 pointr/gamedev

This book is highly recommended: http://www.amazon.co.uk/Beginning-C-Through-Game-Programming/dp/1435457420/ref=sr_1_2?ie=UTF8&qid=1398273399&sr=8-2&keywords=beginning+C%2B%2B+game+programming

But to be honest, the best way to learn is by doing - so google for some simple C++ examples, download the source code, compile, fiddle, recompile, test, keep adding stuff...

u/misatillo · 3 pointsr/gamedev

Thanks a lot! Any chances to get it on amazon.es? My kindle is attached to it and I can't download any of your versions.

EDIT: Nevermind, if I change the address to .es it works! :D THANKS A LOT
In case somebody has the same "issue" this is the link in amazon.es

u/poohshoes · 0 pointsr/gamedev

Everyone is giving some conflicting advice so here's my also conflicting two cents.

  1. C++ is a perfectly valid language to start learning on. BUT don't use any complex language features to start. C is more or less a subset of C++ so consider checking out some C tutorials.

  2. Don't worry about learning OO for now, a large minority of people don't even think it's good.

  3. Just keep working away at it, it takes a lot of time, find a good textbook or website with small problems that you can solve.




    Here are some of the books I learned with:

    https://www.amazon.ca/Programming-Language-2nd-Brian-Kernighan/dp/0131103628

    https://www.amazon.ca/How-Program-10th-Paul-Deitel/dp/0134448235/ref=sr_1_1?ie=UTF8&qid=1501953321&sr=8-1&keywords=deitel+how+to+program
u/antonsem · 1 pointr/gamedev

I only designed levels for my latest game, a short 2D Metroidvania. Before beginning to do anything, I tried to come up with an idea of what I want the player to think/feel as he/she progresses through it. After I have a rough idea drew stuff on the paper. I consider all available mechanics while drawing the layout. Then I create the level in the editor and iterate from there. Also, I recommend reading this book: https://www.amazon.com/Architectural-Approach-Level-Design/dp/1466585412. It is especially useful for FPS and 3d games.

u/PiLLe1974 · 1 pointr/gamedev

Oops, sorry, I missed that short question...

I often revisit those books:

  • The Pragmatic Programmer
  • The Art of Game Design / A Book of Lenses
  • 7 Habits of Highly Effective People (more related to getting things done and right)

    ...so most are not about game dev only. :)

    There's also a book I wanted to read since ages:

    Behavioral Mathematics, by Dave Mark

    Otherwise I use the internet mostly and learn from articles, GDC, and colleagues.

    I guess many around me use other resources apart from books since we're in the industry for so long.

    We got specialized, so most new input comes from playing other games, code or game reviews (programmers or designers giving feedback on features), R&D, iterating on features, etc.
u/hahanoob · 1 pointr/gamedev

Racing The Beam is about the Atari 2600 (though it does mention the NES in passing). And you did say "any early-model game consoles". I hope they do one on the NES sometime, it was great for getting some perspective on modern hardware.

u/ginsweater · 10 pointsr/gamedev

There are a number of resources on early game development. If you're interested in Atari 2600 games (games were 2K or 4K of ROM, the system had 128 bytes of RAM) there's a wonderful book called Racing the Beam:

http://www.amazon.com/Racing-Beam-Computer-Platform-Studies/dp/026201257X

It goes deep into the technical details of several Atari games.

There's also been a lot written about the Apple II Prince of Persia, as Jordan Mechner released the source on Github a couple years ago:

https://github.com/jmechner/Prince-of-Persia-Apple-II

Fabien Sanglard has been doing a detailed code review on his blog.

u/ahorne · 2 pointsr/gamedev

The book Texturing & Modeling: A Procedural Approach is an exceptional introduction to the subject, starting from the basic theory. While this book is worth its price, you might, um, be able to find a copy floating around the internet.... maybe.

Also, this dude is doing a good job sharing the techniques behind his procedural world.

u/glazedkoala · 2 pointsr/gamedev

If you want to learn animation, I recommend picking up the Animator's Workbook or The Animator's Survival Kit. I personally bought the Workbook and it helped me a great deal, but I also had the opportunity to thumb through the Survival Kit once. I'm not sure which is actually better.

Worry about this after learning the basics of 2D drawing.

u/_awful_waffle_ · 1 pointr/gamedev

I read through Multiplayer Game Programming, which covers a pretty generic approach to 'locked timestep' netcode. From that, I was able to build out a basic server/client framework to really grasp the concepts. I enjoyed the book and the approach of writing the system from scratch (figuring out RTT's, how far ahead the server should run, etc). FWIW, I built out my client/server experiment simply using Node and socket.io - you could probably do something similar.

I'd also suggest checking out the recent Overwatch Netcode/ECS GDD talk (around 22:30), which covers the same basic premise as the above mentioned book uses.

u/roycocup · 22 pointsr/gamedev

I totally second that. Its a book full of commonplace ideas and pretty thin for such a collection of platitudes. i bought it and returned it to amazon.

Depending what OP's husband motivation is, I would suggest either "Game programming patterns". If he doesn't have access to a machine, then game design may be the only option, since everything else is machine based.
However, pixel art can be practiced with a pen and paper...

u/argvnaut · 7 pointsr/gamedev

Check out Programming Game AI by Example and Artificial Intelligence for Games. They are both decent game AI books, the former actually develops an AI for a soccer simulation in chapter four. There's also [Behavioral Mathematics for Game AI] (http://www.amazon.com/Behavioral-Mathematics-Game-Dave-Mark/dp/1584506849/), it expands on the concepts of utility and decision making which are only touched upon in the first two books. It's purely theoretical but very interesting.

u/bjw88 · 2 pointsr/gamedev

This is a pretty good book and is also only 4 months old, so very up to date.

u/Jephir · 10 pointsr/gamedev

Seconded, Game Engine Architecture is the best book for an overall view on engine development. I've also found these books useful for implementing engine subsystems:

u/vergyl · 2 pointsr/gamedev

I know that feeling.

I don't know how much you actually worked for a company before starting your indie company( internships?) but that helped me a lot.
The difference between working in a company and alone is that you have to accept the code other people have written. It helped me to adapt this feeling to my code too.

The difference is that you cant rewrite the whole code five or even more devs have written over the last few years even though you dont like it. You don't have the time to do this.

Also maybe you should look into this. I read it over the last two weeks and there is a lot of good advice on this 83 pages.

u/hoover900 · 3 pointsr/gamedev

K there are a couple of thing wrong here. First off, unless you licensed the visual rights to Pixar's Cars, I suggest you change your car models in the game as well as the trailer to the boxier car models you already have. You don't want your product to be confused with Disney, so this change will save you from having to deal with legal trouble with Disney. Second, you can also lose the first 20 seconds of the trailer. You're not showing anything important to the viewer. Does the user even care that the Car is performing in a circus? Is the car upset that he's performing in the circus? Why does he run away and the cops immediately chase him? I highly recommend picking up the The Illusion of Life: Disney Animation and Shot By Shot. Both of these books go over in detail the art of making something entertaining and interesting.

edit: grammar and spelling

u/othellothewise · 2 pointsr/gamedev

Check out Textures and Modelling: A Procedural Approach. This is a great book (although it does have a lot of old-fashioned ideas), but it explains fractals and infinite fractal terrains very well.

u/dancthesexyduck · 3 pointsr/gamedev

The two systems design specific books I'd recommend:

Advanced Game Design: A Systems Approach by Mike Sellers:
An overview to systems design with a deep look into systems thinking.
https://www.amazon.com/Advanced-Game-Design-Systems-Approach-ebook/dp/B076YD21JW

Game Mechanics: Advanced Game Design by Joris Dormans:
https://www.amazon.com/Game-Mechanics-Advanced-Design-Voices/dp/0321820274

u/gamedevmattsuperawsm · 4 pointsr/gamedev

Hey, I've been where you're at. Consider going to school such as University to focus on a niche in the games industry. E.G: Comp Sci for programming, HCI, for design, etc. Or you can go to a specialized game school that teaches you everything. Albeit, these don't prepare you very well for the industry unless you work incredibly hard, and or are a wunderkind.

One thing that helped me is the book by Brenda Romero Breaking Into the Games industry. It's a pretty solid primer for your question.
https://www.amazon.com/Breaking-Into-Game-Industry-Successful/dp/1435458044

Edit: misspelled Brenda

u/Rsloth · 1 pointr/gamedev

I have a few recommendations, but it really depends on what kind of design you're interested in. UX is an umbrella. If you want visual design skills it'll take some practice and not just reading. There's a bunch of stuff out there on graphic design basics.

Here's a few book recommendations that can change how you think about design:

Design of everyday things.


Universal principles of design.

u/tcgeralt · 1 pointr/gamedev

In my opinion, this is the best XNA book out there: http://amzn.com/1849690669

Walks you through 4 complete games and all of the code is in the book, none of that, "here is a snippet of code, download the rest from my site to keep working" stuff.

u/_domZ_ · 3 pointsr/gamedev

There is also that book - Behavioral Mathematics for Game AI - it talks about similar concepts, including Utility theory. I'm reading it right now, liking it a lot - just wanted to share.

u/ryhex · 1 pointr/gamedev

I haven't checked this book out yet but it might be helpful for you
https://www.amazon.com/dp/1466585412

u/KenFlorentino · 2 pointsr/gamedev

I bought this one: https://www.amazon.com/Multiplayer-Game-Programming-Architecting-Networked/dp/0134034309/

It is pretty solid and goes into depth on both RTS and FPS games which require different ways of thinking about how to manage latency, packet loss, and other dynamics.

u/unwary · 2 pointsr/gamedev

XNA 4.0 Game Development by Example - One such example in the book takes you step by step in making a scrolling 2d tank shooting game.

It's in C# using (obviously) the XNA framework, so it's real easy to pick up.

u/johnnyanmac · 3 pointsr/gamedev

personally, I used this book to refresh myself on the basic vector math and finally understand some 3d linear algebra concepts. It probably goes a bit deeper than you'd ever need to know if you're using an engine (how 3d transformations work on the matrix-level, quaternions, polar mathematics), but the book uses extremely accessible language to explain everything, so you rarely feel confused like your typical math textbook.

I haven't read it, but this book is that standard in what people typically refer to for gamedev math. If you want to be experimental, the same author just released the first part of a series for game engine development. while it ultimately goes in a different direction, the first book here should cover the important math needed, and it is under half the length of the other books.

u/hermitC · 2 pointsr/gamedev

The book's availabe on the .ca site. Can't get it on the .com site either, here in Schwarzenegger's Austrian neighborhood. :)

u/RoboticPotatoGames · 1 pointr/gamedev

This book has been really really helpful for me.

https://www.amazon.com/Architectural-Approach-Level-Design/dp/1466585412

I have had the same complaint, level design is often too loosey-goosey in the industry for someone like me.

Using architecture as a starting point for level design has been something of a revelation. These days I'm taking looks at random things..engines, lightswitch plates, building facades and seeing how they could be translated into different geometries for levels.

This book gives you a methodology for outlining and planning levels, similar to how you might outline and plan a script or a novel, breaking down design into discrete steps. It's somewhat complex but very helpful..it takes out a lot of the 'do it by feel' mantra you hear a lot in indie dev.

u/kelna · 8 pointsr/gamedev

The Animator's Survival Kit: https://www.amazon.com/dp/086547897X/

Good book with lots of practical references for animating walk cycles facial expressions etc

u/learc83 · 3 pointsr/gamedev

Sounds like you should check out Beginning C++ Through Game Development.

It's more of an intro to C++ that happens to involve making text based games.

http://www.amazon.com/Beginning-C-Through-Game-Programming/dp/1435457420/ref=dp_ob_title_bk

u/AmericanXer0 · 3 pointsr/gamedev

I second the recommendation for XNA 4.0: Game Development by Example. It helped me out greatly and keeps things fresh by having the reader build multiple mini games, instead of one larger game.

u/Frichjaskla · 3 pointsr/gamedev

http://www.amazon.com/Texturing-Modeling-Third-Edition-Procedural/dp/1558608486 Is the go to resource?

I must admit i have yet to read it, but I have seen it referenced enough that it has made its way to my book shelf.

u/jabberworx · 1 pointr/gamedev

If you want to learn the basics get this book

That is where I started.

u/r41n__ · 2 pointsr/gamedev

There is this book that might help:
https://www.amazon.com/Multiplayer-Game-Programming-Architecting-Networked/dp/0134034309/ref=sr_1_1?ie=UTF8&qid=1497045503&sr=8-1&keywords=multiplayer+game+programming
but this is general and not specific for GameMaker. As I recall GameMaker has some tutorial on this stuff but I am not sure.

u/drunk2407 · 4 pointsr/gamedev

Spend few years with this, then ask questions.

u/Lfcme · 4 pointsr/gamedev

For me "Foundations of Game Engine Development, Volume 1: Mathematics" has been phenomenal

https://www.amazon.co.uk/Foundations-Game-Engine-Development-Mathematics/dp/0985811749

u/havok06 · 1 pointr/gamedev

There is this one that I'm planning to buy and read but still haven't done.

u/Arbitrary_Hobo · 2 pointsr/gamedev

The book that the guy behind voxelfarm reccomended was Texturing & Modeling, A Procedural Approach.

u/Antidote · 5 pointsr/gamedev

If you haven't already I highly recommend Racing the Beam. It goes into detail about how the thing was programmed and how the constraints of the system informed gameplay.

u/Wazowski · 0 pointsr/gamedev

A run cycle where the head and hips don't bob up and down looks very static and unnatural to me. The head should be lowest on the footfalls, and as much as a full head higher a couple frames after the passing position.

This tome is a valuable resource:
The Animator's Survival Kit: A Manual of Methods, Principles and Formulas for Classical, Computer, Games, Stop Motion and Internet Animators

There are full chapters about crafting walk cycles.

u/Chris_Bischoff · 8 pointsr/gamedev

David Perry on Game Design: A Brainstorming ToolBox.

http://www.amazon.com/David-Perry-Game-Design-Brainstorming/dp/1584506687

It is EXCEPTIONAL. Breaks down everything from common RPG stat systems to how to write dialog trees, how to create characters, design weapons, design levels, write design documents, put together art bibles..

u/stephanimal · 2 pointsr/gamedev

Game Physics is a classic reference on physics engines. Be warned however, 'physics' used in games encompasses a lot more than just basic newtonian mechanics.

u/partybusiness · 1 pointr/gamedev

https://www.amazon.ca/Game-Mechanics-Advanced-Design/dp/0321820274

This has an approach to mechanics that views everything as a resource, which I think makes it well-suited for idle games. On the down side, it talks a lot about using their software which was made in Flash, and their replacement is now in closed beta. (And apparently runs server-side so in the future they will charge per-simulation? I'm kind of annoyed they don't just sell it as a standalone product.)