Best computer & video game strategy guides according to redditors

We found 3,128 Reddit comments discussing the best computer & video game strategy guides. We ranked the 830 resulting products by number of redditors who mentioned them. Here are the top 20.

Next page


Computer & video game design books

Top Reddit comments about Computer & Video Game Strategy Guides:

u/praisebjarne · 177 pointsr/learnprogramming

Hey! This is a really cool project idea, especially for a tutorial, but there are some things in the code that concern me.

Before I go any further, a disclaimer: You are not your code.

I work in the industry at a very big studio as a gameplay programmer, and there are a couple parts of this code that I saw right when opening the github that made me want to comment about code quality.

In Animated Sprite - you take in a file path and load an image directly from disk. This, on a large scale, will cause problems at load time. It could be ameliorated by doing all asset loading up front and maintaining a manager to dole out references to them in memory instead of from disk.
Secondly, Enemy inherits from Animated Sprite. This breaks a few rules, specifically the IS-A relationship in inheritance (also covariant problems. This is why the industry as a whole favors composition over inheritance. An enemy that is renderable might have a sprite to render with, but it wouldn’t BE a sprite.

There are other criticisms, but I’ll stop here. What I wanted to say was – Caveat Emptor. This is a fun project to learn what goes into a game, and no one here should quit based on these criticisms, especially if it inspires your passion. Rather, use this as an avenue to learn good software practices that can actually land you a gig in the industry.

A good resource for this project might be Game Programming Patterns or Game Engine Architecture.

Sorry if this came across offensive, but since this is r/learnprogramming, I figured it was a good chance to learn.

EDIT: Formatting

u/Rqller · 128 pointsr/Steam

Interesting, well put together!

EDIT: For anyone who wants even more background info Half-life, in particular Half-life 1 and Half-life 2, I recommend the book called Half-life 2: Raising the Bar.

u/loucksj · 66 pointsr/magicTCG

Oh oh, I get to brag now! Thanks for summoning me, /u/costofanarchy!

I was in his first class there! Characteristics of Games. He and Skaff were working on their book, which I'm thanked in. Likely for my work as their TA the next year, after which Skaff hooked me up with an interview my first game design internship. [Edit: I'm still a game designer to this day! Big thanks to them.]

Fun fact! One day after class they asked me "so how do these new Planeswalker cards work?" It's not every day I get to brag about explaining to Richard Garfield how a new Magic card type works.

Shit, that ten years ago. Time, man...

Anyway, in my memory Richard is a pretty calm teacher. Certainly knowledgeable, but the class was pretty basic and targeted at a wide crowd. A good intro, for sure. I bet he'd shine in a deeper discussion, and at the time he was usually willing to chat before or after class. He's somebody that tends to be careful with his words. Skaff has the stronger personality in that setting, so he tends to stands out more in memory. They're a good team.

u/Aeiorg · 43 pointsr/gamedev

First of all, I wouldn't recommend learning game coding by looking at a codebase, the biggest reason being that all games are different and are using different techniques (obvious one being 2D vs 3D, but you have tons of differences between a FPS, a RTS, an open-world, etc).

I would recommend to find books or articles that explain why a certain technique is usefull, the coding language doesn't really matter, the technique itself is what is important (As you are saying it's for learning purposes and I don't think it's quite interesting to understand data-driven programming, cache optimization or 3D APIs optimization for C++ when you are first trying to understand a game structure).

I can recommend two really good books :

u/DOOMReboot · 42 pointsr/gamedev

I've been working on games for quite a long while so I picked it up here and there.

I haven't gone through this particular series myself, but I've browsed through it and his (thebennybox - everything he makes is high quality) series on creating a software renderer, and they are fantastic!

This is by far my favorite book:

I'd recommend thebennybox's video series first, the book may not be quite as beginner-friendly.

u/Djrewsef · 39 pointsr/DnD

Guy in the picture here: Got her some DnD Setting Candles with a whisky/fireplace Tavern scent and a citrus/fig Farmland scent. We'll use it for more scenery in our games and we love candles. Also a preorder of The Elder Scrolls Cookbook so we'll be making a ton of fantasy food in the future. Lastly, a date to a nearby fancy medieval inspired restaurant

u/MrSamsonite · 35 pointsr/AskReddit

As Jane McGonigal points out in this awesome book about saving the world with video games, the cumulative man-hours its taken to create Wikipedia is about three days of World of Warcraft man-hours. In other words, if WoWers set out to make a Wikipedia-type project, they would accomplish it in three days.

u/Thorbinator · 26 pointsr/Games
u/Aisha11 · 26 pointsr/justneckbeardthings

As an aside, this:

> This will almost guarantee low self esteem because we esteem ourselves for doing esteemable things--accomplishing things, meeting challenges and overcoming them, taking on difficult tasks and succeeding, having a job and paying your way through the world. At the point that you are lazy and don't like yourself very much it becomes really easy to isolate and end up picking up hobbies which tend to isolate you further (video games, obscure and obnoxious media like anime--the seizure-y Japanese cartoons). It becomes natural then to connect with online communities of similarly isolated folks: hence, neckbeard.

Is quite a traditionalist viewpoint which greatly underestimates the potential of the individual. Video games are constantly written off as wastes of time because they do not produce any quantifiable, real world products. But they do have their benefits in developing a person. I can almost guarantee that the games this guy is playing is something like World Of Warcraft/DoTA/miscellaneous fantasy role playing game. These games offer pretty much exactly these things: accomplishing things (levelling, questing), meeting challenges and overcoming them (combat), taking on difficult tasks and succeeding (raids), having a job (role play) and paying your way through the world (economy). Do not underestimate how hard those types of games are, and how skilled the best players are. The AVERAGE young person of today will play 10,000 hours of video games before they are 21. According to Malcolm Gladwell, that makes the average young adult an expert in video games. Imagine how much a person obsessed with games has played. Don't be mistaken in thinking that time would be spent in a state of constant overstimulation, either. There is a lot of hard, repetitive, frustrating, tedious graft involved. But it is pursued because there is a set goal for every action in these games. Every wild boar slain is verifiable as a step towards a greater goal. This is really hard to find in reality, where goals are often ambiguous or non-existent, and your personal progress is not easily judged.

I used to play a hell of a lot of video games in my teens. I wasn't exactly a layabout, I did work (at a mind-numbing job) 8 to 5 on weekdays. All of my spare time was sunk into games though. Honestly, I didn't play them for the sheer enjoyment of the gameplay. I played them because they provided a very obvious framework for personal improvement (albeit virtual) in which I was ALWAYS progressing. I was also one of those students that seemed to have great potential but little motivation. The motivation was lacking because there wasn't I never had that goal-setting and progression framework. I suspect this may be true for many young video game obsessives these days.

I discovered this after making a concerted effort towards getting into shape (I was under 130lbs at 6'1, underweight). I loved how direct the feedback is from working out. Every rep of the dumbbell burns the muscle you want it to. Every finished workout leaves your muscles pumped, and achey the next day. Every week the scales tip in your favour if you worked hard, or against you if you didn't really work (or eat right). This is EXACTLY how many hardcore games work, except they flash the feedback in your face every few minutes of play. With pretty graphic design. And with a congratulatory musical motif. And a badge. And a new piece of armour or weapon skin.

Translating the kind of affirmation framework that games offer into the real world is SO fucking valuable, especially for enlivening obsessive gamers. For me I became so involved with personal development in the real world that games kinda fell by the wayside. I still really enjoy playing. I just don't nearly as much because I also have other pursuits to be getting on with. This book is a fantastic read on the growing obsession with games, and how gamers can translate their in-game experiences into real world value.

u/mrjack92 · 25 pointsr/gaming

this is all from this book I have sitting next to me. Half Life 2: Raising the Bar. it tells you how they went about making this game and the hard work, earlier drawings ETC...

buy one here for a lot of money

u/mysticreddit · 25 pointsr/gamedev

First, I would buy

  • Game Engine Architecture, Second Edition

    What you do next is going to depend on what kind of game you are creating. Remember an game engine is only a tool used to solve a higher level problem: (Em)power a game

  • Without context you won't focus.

    Are you creating a 2D game? A 3D Game? Let's walk through an example. Pick a game to clone. Let's say we want to write a Minecraft-like game but use modern OpenGL. i.e. Using shaders. How would you start?

  • Create an OpenGL window -- windowed mode
  • Add fullscreen support (optional)
  • Load vertex and fragment shaders
  • Draw a triangle using the identity projection matrix and identity modelview matrix
  • Create a Matrix Class
  • Create a Matrix Stack
  • Add support for a Camera
  • Add keyboard support to move the camera, either absolute along the principal X,Y,Z axis or relative along the camera's DOF (Direction of Flight)
  • Add mouse free-look support
  • Draw a cube
  • Bind a texture
  • Draw a textured cube passing uv texture coordinates to your shader
  • Create an initial hard-coded world say 64x64x64 with only 2 block types: Air & Dirt
  • Iterate through the voxel (representation) tessellating into triangles (presentation)
  • Create a texture atlas and add basic font support
  • Create the start of a hud -- print off the camera's location using your font print()
  • Add picking (what block should be highlighted when the user mouses over it)
  • Add support so the player can add blocks --> update the voxel data, re-tesselate the triangles
  • Add support so the player can remove blocks --> update the voxel data, re-tesselate the triangles
  • Add support to render a 3D model (Static Mesh)
  • Import loading a static mesh from disk
  • :
  • Keep adding stuff that you want to see in your game.
  • Audio? Add player footsteps.
  • Multiplayer? Add networking.

    TL:DR; You should always be asking yourself this question:

  • What is the next thing I need to add in order to ship a semi-professional-level quality game?

    Hope this helps.

    Edit: Updated the philosophy.
u/fftb · 24 pointsr/programming

37.95$ or 32.05€ over at Ordering it right now. Fantastic.

u/drakonite · 23 pointsr/gamedev

To expand on what /u/LordNed said...

Your project is too big for a first project. Aim smaller than you think you should. Start with something like pong or tic tac toe, make that work, then do something slightly bigger.

I hate to break it to you, but most of what you learned in school is not going to be applicable to gamedev, and worse, you'll likely have a lot of bad habits you'll need to unlearn. The state of CS education in general is... terrible.

To answer a few of your questions:

  1. GLUT is outdated and terrible at this point. GLFW is a good choice. I personally find SDL a mess, but I've been told SDL2 isn't so bad. If you're directly writing your own rendering code, openGL is the way to go for that. BUT, you should strongly consider looking at existing game engines and libraries. There are a ton of them out there, ranging from full engines like UE4, Unity3D, and OGRE, to basic 2D rendering engines like cocos2d-x, and many in between.

  2. VisualStudio is the best debugger you're going to find, and learning how to debug well is one of the most important things you can learn. A lot of people are not fans of it's text editor and intellesense, so not everyone likes using it as their IDE.

  3. Game Engine Architecture is the best book I've found on the subject and is great as both an introduction to those new to game development, or as a booster for those wanting to be more than a junior programmer. I recommend this book for anyone getting started in game development. I recommend this book even if you're not writing engine tech, just to understand what is going on (and it covers more than just low level engine stuff). (I have more recommendations, but you should really start with this book)

  4. Shaders are a deep rabbit hole. When you eventually get to the point of needing to consider this, start simple. Always start simple with everything. I wouldn't recommend digging in to this type of thing unless you're doing it just because you feel like spending time learning and playing with shaders.

    Start simple!
u/moarthenfeeling · 22 pointsr/gamedev
  • Learning Lua and moving most of game logic in scripts. Iteration is a lot faster and there's a nice degree of separation between the game and the engine
  • Using entity-component-system approach. Gives nice structure to every aspect of game objects and makes it easy to combine them without code duplication
  • Getting rid of code duplication. DRY is incredibly important: it's easier to modify your code and make sure you don't add bugs by changing thing in one place and forgetting to change it in another place
  • Not using non-const globals. I was misled at first by people saying that having global World struct with some common stuff is ok, but I found out that it's a lot cleaner to pass arguments around and using as less references/pointers stored as members in another classes (e.g. if you have a Level class and want RenderingSystem to draw it, it's better to pass Level to draw function than having RenderingSystem store pointer to level). Not using globals help make code a lot less modular and do specific things instead of doing everything. Not to mention bugs that happen when you change some global's state in a function...
  • State Machines. Reusable states are the best for DRY, transition tables are great and readable (a lot more than giant switch/else-if statements everywhere)
  • Actions Lists. It's very easy to express sequences of actions with them without having lots of bools like isMovingToSomePlace, having enums or state machines to describe the state of cutscene/complex action.
  • Reading Game Programming Patterns and Game Engine Architecture. The amount of great information in these two books is just incredible.
  • Learning modern C++ and using it everywhere. The code is cleaner, safer, more readable. Using smart pointers = no memory leaks or who-owns-what confusion, std::algorithms are easier to write and read than some loops, using auto, etc.
u/dominusludi · 22 pointsr/gamedev

I find tutorials to be decent for learning how to perform simple tasks which don't require much variation or novel problem solving. As it turns out, making games is pretty much the exact opposite of that. I know from experience that it can be frustrating to find information on stuff like architecture and system design for games, but a lot of that is pretty much tribal knowledge, learned by professionals on the job or by hobbyists as they make projects.

I recommend reading articles on Gamasutra for more advanced topics, and I also recommend the book Game Engine Architecture by Jason Gregory. I think really the best thing you can do is try to do a more complicated project and as you run into problems you have trouble solving on your own, then research that specific topic. It's worth trying to solve the problem on your own first though, as while it may involve reinventing the wheel somewhat, it's also the best way to learn.

u/SdenPDB · 21 pointsr/skyrim

For anyone looking for them. You can find the others in related items.

u/MrBushido2318 · 20 pointsr/gamedev

You have a long journey ahead of you, but here goes :D


C++ Primer: One of the better introductory books.

The C++ Standard Template Library: A Tutorial and Reference: Goes over the standard template library in fantastic detail, a must if you're going to be spending a lot of time writing C++.

The C++ Programming Language: Now that you have a good idea of how C++ is used, it's time to go over it again. TCPPL is written by the language's creator and is intended as an introductory book for experienced programmers. That said I think it's best read once you're already comfortable with the language so that you can full appreciate his nuggets of wisdom.


Modern C++ Design: Covers how to write reusable C++ code and common design patterns. You can definitely have started game programming by the time you read this book, however it's definitely something you should have on your reading list.

C++ Templates: Touches on some similar material as Modern C++ Design, but will help you get to grips with C++ Template programming and how to write reusable code.

Effective C++: Practical advise about C++ do's and dont's. Again, this isn't mandatory knowledge for gamedev, but it's advice is definitely invaluable.

Design Patterns: Teaches you commonly used design patterns. Especially useful if you're working as part of a team as it gives you a common set of names for design patterns.


C++ Concurrency in Action: Don't be put off by the fact I've put this as an "advanced" topic, it's more that you will get more benefit out of knowing the other subjects first. Concurrency in C++11 is pretty easy and this book is a fantastic guide for learning how its done.

Graphics Programming

OpenGL: A surprisingly well written specification in that it's pretty easy to understand! While it's probably not the best resource for learning OpenGL, it's definitely worth looking at. [edit: Mix it in with and arcsynthesis's tutorials for practical examples and you're off to a good start!]

OpenGL Superbible: The OpenGL superbible is one of the best ways to learn modern OpenGL. Sadly this isn't saying much, in fact the only other book appears to be the "Orange Book", however my sources indicate that is terrible. So you're just going to have suck it up and learn from the OGL Superbible![edit: in retrospect, just stick to free tutorials I've linked above. You'll learn more from them, and be less confused by what is 3rd party code supplied by the book. Substitute the "rendering" techniques you would learn from a 3d book with a good 3d math book and realtime rendering (links below)]

Essential Mathematics for Game Programmers or 3D Math Primer for Graphics and Game Development: 3D programming involves a lot of math, these books cover topics that OpenGL/DirectX books tend to rush over.

Realtime Rendering: A graphics library independent explanation of a number of modern graphical techniques, very useful with teaching you inventive ways to use your newly found 3d graphical talents!

u/whtnymllr · 20 pointsr/Breath_of_the_Wild

The Legend of Zelda: Breath of the Wild The Complete Official Guide: -Expanded Edition

u/johhov · 19 pointsr/learnprogramming

Game Coding Complete was the book we used in my game programming course during my bachelor.

u/Turilas · 19 pointsr/gamedev

Might as well start this with a book for programmers despite not having fully read it but it has given me a lot of insight on many things about game engines and how things should be done.

Game Engine Architecture by Jason Gregory

u/OutlierJoe · 18 pointsr/boardgames

Characteristics of Games - by George Skaff Elias, Richard Garfield, K. Robert Gutschera, and forward by Eric Zimmerman.

(Updated the authors. Thanks to /u/esoteric23.)

u/my_password_is______ · 17 pointsr/gamedev

> do I need to learn one of Unreal/Unity to work for a game company?


build something in C or C++ or even java

have you read this ?


have you learned opengl

have you read any of the books suggested here

are you familiar with the concepts here

you might want to consider watching his videos

^ those are all C++

or the first 43 videos of here

videos "Handmade Hero Day 001 - Setting Up the Windows Build" through "Handmade Hero Day 043 - The Equations of Motion"

^ those are all in C

the important thing is to just start making something

learn, develop skills, and build a portfolio

read the story of Stardew Valley

^ no unity, no unreal .. just a CS grad teaching himself to make games

u/HotelEscapism · 16 pointsr/gamedev

Also for books I really liked Real Time Rendering as in introduction to 3D

u/be_bo_i_am_robot · 16 pointsr/INTP

I don't game anymore myself, save occasionally and rarely.

Of course there's nothing wrong with entertainment and diversions, and certainly nothing wrong with games, of themselves.

But people who get sucked into video games, and spend a good portion of their life and effort in it, are wasting their lives away, in my opinion. And I think it's unfortunate, and all too common.

People who game obsessively do so because they find their real lives unsatisfactory. So, they look for distractions. This is a similar impulse to people who lose themselves excessively in sports, fantasy stories, and so on.

Video games are literally designed to keep one engaged and returning. Just enough challenge to keep things interesting. Too easy, or too difficult, and most people simply walk away. But that sweet spot between easy and difficult, eustress, keeps pressing that dopamine button in the brain. And one gets hooked.

Compared to games, real life is far "too difficult." But here's the thing: the rewards for applied effort in real
life are much greater as well.

I like to think of myself struggling to "level up" in real life. Building a better career, better physical health, better social networks, more wealth, better family life, more knowledge, and so on. Sometimes I do well, and sometimes I struggle and I fall behind; but when I get it right, when I apply myself with the right habits, right disciplines, and correct methods consistently and regularly, the rewards are real, and way, way better than in games.

If I'm a hero in a game, that heroism is over the instant the game ends. But if I become a badass in real life, that's a completely different thing altogether!

Not to say that there's no room at all for games in life, or that we should get rid of them entirely. We should, like anything pleasurable (food, alcohol, etc.) learn to keep our use at a moderate level, lest we become addicted and let it run our lives.

I'm not against video games per say. But I feel it's all-too-easy to get sucked in, and fritter away one's life in them.

I'd rather spend 10,000 hours mastering the guitar, than mastering Guitar Hero.

However, we can learn a thing or two from games. Check out the book Reality is Broken by Jane McGonigal. I don't agree with all her premises, she's far more supportive of gaming than I am, but it's an interesting and well-thought-out read.

u/Redkast · 16 pointsr/gamedev

Not C++ specifically, but if you happen to be developing in any sort of Object-Oriented way then Game Programming Patterns by Bob Nystrom is a must.
It's available for free online if you wanna check it out before dropping money on it.

u/mrstratofish · 15 pointsr/gamedev

For more by Jason Gregory, he wrote the excellent Game Engine Architecture which covers a few of these bits in detail as well.

Not sure I like the no producer thing personally. Isn't their job to make sure you can just get on with the skilled job you are being paid for while they take care of (read: delegate to minions...) the day-to-day generic tasks that would otherwise bog you down?

u/TwinfoxDev · 14 pointsr/gamedesign

There are quite a few good book on this topic, that I would recommend, like Jesse Schell's The Art of Game Design, or Justin Gary's Think like a Game Designer. These books describe the process way better than I ever could, but I'll try anyway.From my personal experience I always start from an idea (hey, wouldn't moving fortresses be awesome?), then I start to think about what exactly fascinates me about that idea. Then I try to capture the awsomeness in game mechanics. From there I create a list of what has to be done to test the mechanics, do that (plus some eye-candy because I'm a visual person) so I have something to test. When I have something to test, I try to analyze what doesn't work and fix that (not in code, but in paper). And start the process again.

So basically once I have an idea, it's this loop of creating/refining mechanics, implementing them, then testing and analyzing them. Then I go back to refining.

If you often suffer from scope creep, there are several methods to battle that. Like setting yourself a deadline, always cutting a mechanic when you add a new one, etc. Don't be afraid to throw something out (it's not lost you can use the idea/mechanic in another project). A game is way better when it knows what it wants to be and throws away everything that doesn't contribute to that core experience (I mean they could add RPG elements to Call Of Duty Campaigns, but they don't because that's not what the game is about).

Also if you don't like your code, that's 100% normal. when you look back at something you've made, you'll always be able to spot something that you would do differently now. That's because you've learned new things since you started . I'm programming for nearly a decade now, and when I look back at code that I've written a few months ago I'm always like "Eww, why would anyone write code like that?". So don't be afraid to make mistakes and don't continuously refactor code. Make something, learn from it and do it better next time.

I hope that helps!


EDIT: spelling

u/karsithe · 14 pointsr/gamedev

I'd recommend Game Engine Architecture.

However I wouldn't worry so much about messing up. If this is a solo project then it's a great learning experience precisely because you have room to learn from your own mistakes-I know there's a classic programming quote which sums this up perfectly but I can't recall it just now.

Things change. Expect to refactor your code and rework your design later, and aim to make it easy on yourself when that happens rather than having a perfect but inflexible solution first time.

u/oddible · 13 pointsr/gamedesign

For design, get the combo of Jesse Schell's Book of Lenses and Deck of Lenses.

For dev get Nystrom's Game Programming Patterns

u/Nuclear-Cheese · 12 pointsr/gamedev

I think Game Engine Architecture by Jason Gregory (Naughty Dogs Lead Programmer) is a really good book for Game Devs working in programming. Not sure how it compares to 3D Game engine Design since I haven't read that. But the book by Gregory is really good and covers a lot in depth.

u/sbsmith · 12 pointsr/gamedev

Hi PizzaPartify,
I believe that different companies/teams will place emphasis on different skills. When I was helping to hire software engineers for EA's motion capture studio, I liked to see candidates who showed a strong aptitude for engineering code to be maintainable. For me, this meant a familiarity with design patterns and software development processes (like Test Driven Development or Extreme Programming). In my department, much of our code was in C++ and Python. However, other departments would use languages like Java, C# or ActionScript - depending on the project.

It would be helpful to know what role you are applying to.

To answer your specific questions:

  1. If you're already familiar with C++, I would highly recommend reading Effective C++ by Scott Meyers ( Every C++ developer should read this.

    Regardless of the language you're working in, I would also recommend Design Patterns by the gang of four (

    A game-specific recommendation is Game Engine Architecture by Jason Gregory ( It doesn't matter if you intend to write an engine or not, it is immensely helpful to understand how they work.

    I own all of the Game Programming Gems books but use them more as a reference library. The books above will be more helpful right now.

  2. I worked with Unity only briefly to prototype a game, so I can't really comment here.

  3. This is tricky. I think you will need to find a passion project in C++ so that you will just naturally learn more about the language. And speaking of passion: you need to really want the job you are applying for. I have seen qualified developers miss out on jobs because you could tell they were just looking for anything (rather than really being enthusiastic about the position).

    I hope that helps.
u/nikknox · 12 pointsr/skyrim

The Elder Scrolls: The Official Cookbook if you get it and start cooking you should post too!

u/goodsirperry · 12 pointsr/skyrim

Bethesda sells it directly from their website, Amazon are the 2 most obvious places I can think of.

The Elder Scrolls: The Official Cookbook

Edit: Barnes and Noble

u/suckers_run · 12 pointsr/videos
u/nfojones · 11 pointsr/politics

Well put. Values that seem intrinsic to unmitigated consumerism which, as you describe, appear to take root at the earliest stages of success/wealth.

Desire for power and money have always been there but we've exponentially multiplied the variety of things to want and have power over and compare ourselves to (your mark of distinction).

I never finished the book Reality is Broken but it begins by detailing the value of using common gaming techniques (points/rewards/achievements) to turn life into a game in places where it can be helpful; like house chores. Maybe she eventually covered this further in the book but it made me realize how much of life already plays out like a game whether we choose to acknowledge it or not. Social media is the poor man's wealth with all the personal validation extracted from likes, retweets and upvotes.

Its no surprise that in a world with billions of people we'd see people competing viciously over money and power. Once having tasted the rewards, humans apparently have a bottomless appetite for competition and personal aggrandizement.

u/jarkyttaa · 11 pointsr/truegaming

Besides the obvious standards, there's quite a bit out there. Reality is Broken is quickly becoming my go-to book for introducing people to talking about video games. If you're less focused specifically on video games, then Hamlet on the Holodeck is basically required reading for any discussions about interactive narrative and Pervasive Games: Theory and Design gives a great introduction to pervasive games, which are definitely different from video games, but there's a fair amount of overlap in good design principles there.

u/lockedcc · 11 pointsr/gamedesign

Personally, I can recommend "The Art of Game Design" to you. It covers a lot of topics and is also a good entry point.

u/againey · 11 pointsr/gamedesign

That sounds like a "kitchen sink" way of development. Keep adding features whenever the play testers sense a gap. It'll never end.

I'd contend that the healthier process would be to have a very clear concept of what the game is about at its core. With NMS, a plausible core could be "exploration". Then, whenever there is a perceived gap, the first question is if filling that gap will contribute strongly to the core. If not (or sometimes even if so), then ask a second question: What is causing the feeling of there being a missing feature? Is it possible to actually cut the feature that leads to the wish for the missing feature? Trim the fat, leave only the leanest meat clinging to the bones, so to speak.

I'm pulling pretty heavily from Jesse Schell's The Art of Game Design, in particular "The Lens of Unification":

> To use this lens, consider the reason behind it all. Ask yourself these questions:

> What is my theme?
Am I using every means possible to reinforce that theme?

u/Mason-B · 11 pointsr/factorio

You're conclusions, and some of your facts, are wrong.

I literally write game engines for a living, I know about everything you just tried to explain, and it has nothing to do with my point. A 3d version of Factorio (e.g. from scratch see edit 2) could have the same number of game updates regardless of how expensive rendering is because they would be on separate threads. Even Unity and Unreal have separate rendering threads, it's been this way for 5+ years.

Vulkan, DX12, and Metal all enable multi-threaded rendering, because older APIs would only allow a single thread to submit commands at a time. But they have nothing to do with the division of rendering and game logic into separate threads.

Edit: I own a copy of a Game Engine Book from 8 years ago that called one render thread, one game logic thread, standard industry practice.

Edit 2: Also, this FFF explains how they do have many different threads, for example, updating game logic and rendering at the same time.

u/whisky_pete · 11 pointsr/EmuDev

You're going to need a lot of the same setup as you would if you were making a game, I think.

Have you seen the ogldev tutorials? They're pretty comprehensive and take you through building a lot of visual effects from the ground up. You'll need to cross-reference with other materials though because some topics on graphics you'll need to know the fundamentals on (like how relative coordinate spaces/scene graphs work conceptually).

Graphics development is hard, and requires a lot of study and conceptual understanding outside of just API usage. I've been picking up OpenGL/Gfx programming for about a year and I'm probably only a beginner-intermediate at this point.

I recommend:

u/MoreOfAnOvalJerk · 10 pointsr/gamedev

Here's my general advice as someone in the AAA field as a programmer doing it for many years.

1 -----------------

If possible, think of your game in modular bits and primarily concentrate on the programming aspects. Block in the visuals with placeholder art if you need to, but a game with good design and mechanics doesn't need fantastic art to be fun (unless your game is animation driven or atmospheric like Dark Souls).

If you break your code into modular bits, you can tackle each part piecemeal and it's a lot more fun to work on. "This week, I feel like making a great input system. Next week, I'll focus on a data-driven AI engine", and so on.

2 -----------------

Keep things realistic. Understand what you can achieve and don't attempt to make a game that can do absolutely everything. Unless you actually want to spend decades making your game, you need to focus on actually finishing the game at a certain point... maybe. If your game follows the dwarf fortress model of being a perpetually unfinished game that you're always working on, that's also fun. Understand what you're getting into though if you go that route.

3 -----------------

Despite what you may think, ideas are not terribly original. It's all about execution. There's TOOOONS of indie games that are extremely successful and use an idea I had been thinking about. Unlike me though, they actually made the game and had the design sense to give it the production value necessary to sell well.

4 -----------------

If you're hungry to make something now, don't lose a hold of that. Keep learning in your spare time. Buy programming books off amazon to supplement your coding ability. I wasted too many years in university playing video games and not enough time learning to be a better programmer. A good high level starting book that can help give you an understanding of the overall picture is this: [Game Engine Architecture by Jason Gregory] (

Just as you need to learn construction before you can build a house, you need to learn how to program properly before you can make a game. Keep focused and try to shorten the years you need to spend learning by reading books.

5 -----------------

most important unless you're working with a large team, don't worry about having perfect code the first time through. No matter what you do, it's not going to be correct. Try to do it to the best of your ability, but if you worry too much about clean code, you'll suffer from "perfection paralysis" and ultimately end up not finishing anything. This was another one of my mistakes when I was younger and I still catch myself doing it nowadays on occasion. Sometimes making mistakes is the only way to learn.

Don't be afraid to do things the wrong way first.

edit: grammar, added a link to a great book (no, I'm not the author)

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/zacyzacy · 10 pointsr/gamedev

3D Math Primer for Graphics and Game Development is really good and covers everything I've ever needed it to. The examples are fun and easy to read/follow.

u/maltezefalkon · 10 pointsr/gamedesign

The best high-level advice I've found on how to make a game comes from Magic: The Gathering's head designer, Mark Rosewater, called "10 Things Every Game Needs":

On the more practical side, you might want to look at Brenda Brathwaite's Challenges for Game Designers:

And in terms of local resources, Toronto is somewhat famous for its board game cafes, especially "Snakes and Lattes". You can try out all different kinds of games there:

Hope that helps!

u/Montigue · 10 pointsr/skyrim
u/kgapc · 10 pointsr/Breath_of_the_Wild

This is what all 900 koroks and 120 shrines look like plotted out on a map. Kind of looks like a splatfest because I just used whatever stickers I had.

In all honesty, it was a complete pain in the arse because I missed 7 koroks at the end, and I ended up using an online map anyways. It was very much an eye test throughout, and it didn't help that 2 weren't even on the map (I think). But I finally got them all.

If you're curious where I got the map, it came with this guide: , and then I had it laminated it.

u/kwo330 · 10 pointsr/botw

The Legend of Zelda: Breath of the Wild The Complete Official Guide: -Expanded Edition

I love this one ! It's got tons of information and beautiful illustrations

u/sipid · 10 pointsr/truegaming

Excerpt from "Reality is Broken: Why Games Make Us Better and How They Can Change the World" by Jane McGonigal.

The book can be found on here: Reality is Broken

Ms. McGonigal's TED Talk can be found here: Gaming can make a better world

> ".... But beyond a certain playing threshold - for most gamers, it seems to be somewhere around twenty hours a week - they start to wonder if they're missing out on real life.

> Technology journalist Clive Thompson has a name for this phenomenon: gamer regret. And he'll be the first to admit that he suffers from it as much as any other gamer. Thompson recalls checking his personal statistics one day - many games keep track of how many hours you've spent playing - and was shocked to see that he had clocked in thirty-six hours playing a single game in one week - as he described it, "a missing-time experience so vast one would normally require a UFO abduction to achieve it." He found himself vacillating between pride in what he's accomplished in the virtual game environment and wondering if all that hard work had really been worth it.

> As Thompson writes: "The dirty secret of gamers is that we werestle with this dilemma all the time. We're often gripped by ... a sudden, horrifying sense of emptiness when we muse on all the other things we could have done with our game time." He admits: "The elation I feel when I finish a game is always slightly tinged with a worrisome sense of hollowness. Wouldn't I have been better off doing something that was difficult and challenging and productive?"

> This internal conflict plays out in discussion forums all over the Web. The twin questions "How much time do you spend playing games?" and "How much time is too much?" are ubiquitous in the gaming community . . .

> ... What's needed is for games to go beyond flow and fiero, which make us happy in the moment, to provide a more lasting kind of emotional reward. We need games that make us happier even when we're not playing. Only then will we find the right balance between playing our favorite games and making the most of our real lives.

> Fortunately, that's exactly what's happening in the computer and video game market today. Games are increasingly teaching us the four secrets of how to make our own happiness - and they're giving us the power to make it anytime, anywhere."

I'm still working my way through the book, but this seemed like a relevant excerpt to this discussion, esp. as to why this type of discussion is common on this subreddit.

Edit As an aside; the way I maintain interest in games is by playing a lot of online multiplayer stuff, mostly Team Fortress 2. As the situation is always changing and evolving it's easier to stay in the flow, and as I'm constantly running into players better them myself (difficult to overcome obstacles) the fiero stays pretty satisfying too.

u/Idoiocracy · 10 pointsr/gamedev

Thanks for the book link. He is also coming out with a 2nd edition in July this year.

As for them not having producers with strictly that job title, I recall a story by a Naughty Dog programmer that he observed one of the senior programming leads working on some basic user interface code close to the game's shipping deadline. He was surprised at the time that the lead was writing code that would typically be done by a junior programmer at other companies. He told the story to illustrate that the idea of doing whatever grunt work it takes to ship a title and a feeling of responsibility for a feature from start to finish is pervasive at Naughty Dog. Jason Gregory also said that you can look at it as them having more producers than any other company, rather than none, since everyone shares the responsibility.

In a similar vein, Valve is famous for having a relatively flat structure with no managers.

Of course, every company is different and Naughty Dog's approach is not necessarily superior. They can get away with it because they hire high caliber employees. What works for them may not work for most.

u/TheAdventMaster · 10 pointsr/learnprogramming

You want example code? View the videos of the guy who rebuilt Cave Story (or at least parts of it, with a level editor, enemies, etc.). Or check out Handmade Hero. I think there's a Handmade Quake now, too. If you're really serious about game engine design, buy the book.

The reason I suggest other people's stuff is I spent a lot of time building code bases I called engines, not building actual games. I've made and published exactly one complete game that has about 10k views on right now.

There are better people to get advice on what to do right from. I'm a professional web developer now and know plenty about where I went wrong.

But I'll gladly chime in more advice if you're willing to hear it. I'd say the biggest difficulty people have when writing any complex code (whether it's games, infrastructure systems or business applications) is you reach a certain point where knowing how to code isn't enough. You have to know how to think critically about problems. That goes back to the problem space vs solution space ways of seeing things, which isn't really taught in school.

Games are a really difficult problem, that also have really difficult solutions. If you just straight into the solution space (let me start coding modules, oh, I probably need something that renders fonts at angles, etc. etc.) you're not going to get anywhere. In order to build complex things like games, you have to get better at programming for sure in order to make so many things work together, but unless you get really good at figuring out your problem space - what exactly it is you're trying to actually solve -you're going to waste a lot of code and time.

And that's one reason most people suggest you start very small. You should be able to code something like Pong in less than a day, probably less than an hour for sure. Even something like Extreme Pong should be mostly easy for you to churn out. But many people struggle with that.

As an aside, I will say that writing a library to perform easings made my life a lot easier. A lot of what takes place in a game can be considered an "tweening animation" of a value from one state to another.

I used those for in-game animations, to stretch and skew objects, etc. but that's often more about bringing out the flavour of a game as opposed to the core mechanics. (Like you want an object that falls, but falls violently and shakes when it hits the ground? Chances are that doesn't make a ton of sense from a physics standpoint, so you have to script it. Easings would be one way to script the y-axis value to mimic that behavior.)

u/jhocking · 10 pointsr/gamedev

> What are the changes between the two editions?

Aside from being updated throughout for new versions of Unity (eg. WebGL deployment barely existed when I wrote the first edition) there's an entirely new chapter about 2D platformers. One of the most common cons in reader feedback (whether or not they liked the book overall) was there wasn't enough about 2D games.

> After finishing your book what book/resource should the reader focus on next?

I would say focus on learning game design. My book teaches how to program a game, but that doesn't necessarily mean you're able to design an original game. The afterword of my book mentions several books about game design (including Art of Game Design by Jesse Schell, who wrote the foreword of my book!)

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/_Philbo_Baggins_ · 9 pointsr/mead

Which Skyrim cookbook is this from? I’ve seen a few different ones, been eyeing this one for a while.

u/FunLevel · 8 pointsr/Games

While I haven't read the books in this bundle yet, you might be interested in looking into Rules of Play. It's also published by the MIT Press and it is definitely a textbook on Game Design. It's currently a bit expensive, but it has gone on sale for much much cheaper in the past.

u/el_stork · 8 pointsr/truegaming

if your interested in an over-all history of video games The Ultimate History of Video Games by Steven L. Kent is a good read with a focus on arcade and early console games while Tristan Donovan's Replay: The History of Video Games has more of a focus on the development of pc games.

u/Deathstyle1 · 8 pointsr/HalfLife

Raising the bar is a book filled with concept art. Unfortunately, its pretty hard to find a new copy, unless you are willing to spend $100+ dollars. Used ones are still viable at $50+/-.
As far as I know, no books exist based on the game.

u/LiThiuMElectro · 8 pointsr/gaming

Nice, still have mine they sell for a good price I believe.



great find :D

u/osetinsky · 8 pointsr/startups

I've learned enough to get by, so I can't say I've really "learned to code." But I love it and am going to continue beating my head against a wall learning it because I find it fascinating and challenging. It also ties into some of my musical interests (I studied computer music in graduate school).

Here are some of the things I've read. It doesn't happen over night. I would recommend reading in this order (or maybe read the first two ruby/rails items and then the first two JavaScript items). Pretty much all of my learning has been by doing, and I have tried to code my own small projects in between books.


  1. Ruby on Rails Tutorial (
  2. Agile Web Development with Rails (
  3. Pickaxe (

  5. Professional JavaScript for Web Developers (
  6. Effective JavaScript (
  7. JavaScript: The Good Parts (people always throw this out as a good resource for beginners because it's short, but I found it to be the most advanced)
u/HardZero · 8 pointsr/gamedev

I found Level Up! by Scott Rogers to be a good book to recommend for people thinking about becoming a dev. Nice, funny writing style that doesn't get too technical.

u/davemakesnachos · 8 pointsr/gamedev

Game Coding Complete has been a great read so far. It covers a lot of "big picture" things and architectural discussion which I haven't seen in a lot of other books.

u/SaxtonHale2112 · 8 pointsr/dwarffortress

i bought the book "getting started with dwarf fortress", i still use it as a quick reference and a good way to get started. if you don't want a physical copy, there are loads of tutorials to get started, i use the wiki quickstart guide if i don't have my book handy

u/Inoka1 · 8 pointsr/CitiesSkylines

If you want, there's a really good book for learning the game. It's outdated (The book is from 34.11, we're on 40.24), but the updates haven't changed anything big from one version to the next. There'll just be some features that you'll have to figure out without the book ;)

And if you're wondering, yes I do own that book :D

u/CodeCodeCodeDurrr · 8 pointsr/gamedev

[Game Engine Architecture] ( is pretty good, and has C++ code in it (I think)!

u/octnoir · 8 pointsr/Games

He's right. One of the 'holy grails' of game development books is "The Art of Game Design - A Book of Lenses"

Jesse Schell starts off by saying before you start designing a video game, start designing a board game because if your mechanics can't be explained or are too complicated for a board game, they just won't work in a video game.

u/5OMA · 8 pointsr/gamedev

For math I highly recommend this book

It breaks things down really simply with pictures and nice explanations.

u/cplr · 8 pointsr/iosgaming

Yeah, you can't just slap a theme on a game though. The game mechanics and the theme need to work off of each other.

I recommend reading some books about game design. These two are both really good:

u/Azhain · 7 pointsr/roguelikedev

People talk about prototyping games a lot. Like, you have an idea so you build out a simple example so you can play it and see if it's fun on a basic level.

But what they don't really talk about, is prototyping code. It's hard to figure out how things fit together in a meaningful way if you don't already know the coding conventions or patterns that can help you build them.

As a self taught programmer whose work includes a good deal of coding now, I've gotten a lot of use out of building out small 'hello world' type examples of more complicated code structures.

Imagine you're trying to build a skyscraper, you wouldn't just try and build it straight out of your head, you'd follow a kind of miniaturized version of it, a blueprint. So that's what you should do as a programmer, make blueprints. Don't just make blueprints for your whole game, make blueprints for even the smallest sections of it if you don't feel like you completely understand it.

My wife is a senior-level project manager for a really large construction firm and her projects typically cost somewhere in the range of $500 million. When she's on the job-site supervising a part of the build, she doesn't refer to the blueprint for the whole project, she uses the blueprint for that specific part of the job. So if you're having trouble figuring out how to properly break a python game out into modules, don't look at coding examples of full games because you'll just find it overwhelming. Look for simple examples of python imports and module structure. But more importantly, build small examples of how that works using those examples to make sure it works how you're expecting.

Think of the game you want to make, and form some basic ideas about how it should fit together. Read up on programming patterns, game engine architecture, or artificial intelligence for games and whatever other topics interest you about game design. Make small code projects prototyping concepts that are interesting. I have a project folder on my computer that is filled with small examples of programming patterns, complicated data structures, skeletal game structures, and anything else that can serve as a blueprint for building something else.

So if you're reading and come across Entity Component Systems (ECS), and you think that theoretically sounds like a good way to build your game, don't start by trying to build a game using ECS. Build a prototype of an ECS pattern. Something really simple and instructive of how you would do it for a larger project, a blueprint.

For example, this is the actual code I wrote when I was prototyping one of my favorite patterns, the Service Locator.

class Service:
_audio = None
_graphics = None

def playermoved():
if Service._audio:
if Service._graphics:

class Audio:
def play_footsteps(self):
print("Pitter Patter")

class Graphics:
def animate_player(self):
print("Look at the player move")

audio_system = Audio()
graphics_system = Graphics()

Service._audio = audio_system
Service._graphics = graphics_system


And if you read the description, you'll see that this example doesn't really fully articulate the pattern as described. But that's okay, because the point of the code blueprint is to experiment with implementing concepts in a way that works for you.

u/HalcyonSoftworks · 7 pointsr/gamedev

I haven't read it, but I've heard good things about Jason Gregory's Game Engine Architecture.

u/[deleted] · 7 pointsr/gamedev

Game Engine Architecture is a great book for learning about engine design.

u/Mokosha · 7 pointsr/gamedev

This book is by far the best introduction to the math necessary for 3D games that I have come across. It gives you the intuition necessary without necessitating being an A++ calculus student (although that helps).

u/DeedleFake · 7 pointsr/tales

Try reading The Ultimate History of Video Games. It goes through how the rating boards came about, and what it was like without them.

u/cheesepencil_dev · 7 pointsr/funny

MDN updates more frequently than a book.

If you just need a reference, stick with MDN. If you want the book as a learning resource, it coud probably be helpful but I looked at both The Definitive Guide and Professional Javascript for Web Developers and liked PJ4WD better. non-affiliate amazon link

u/kyuubikid213 · 7 pointsr/gamedesign

I don't have any games under my belt just yet (working on one for class with a group), but Level Up!: The Guide to Great Video Game Design by Scott Rogers was a solid read.

The guy worked on God of War and the Maximo series among other 3D games, so that'd probably be helpful for you.

u/Daganar · 7 pointsr/GraphicsProgramming

.FBX is one of the most used formats in the industry, what usually happens is the artists output their work into .FBX files and either the engine loads it directly, or will convert it to a proprietary format that's most efficient for their engine. Unfortunately information on .FBX is not publicly available so you have to use their SDK.

.OBJ is not a suitable format for animation it's only good for defining meshes and materials. A very good library that removes all the hassle of format loading is Assimp:

Lastly, animation formats don't store individual vertex positions, it will store matrix transformations. It's worth looking into how animation is done, I don't have any links but I would recommend looking at the following books:

u/Baltazards · 7 pointsr/gamedev

I can only think about "Game Engine Architecture Second Edition" by Jason Gregory Lead programmer at Naughty Dog :

u/kalas_malarious · 7 pointsr/gamedev

Are you looking for how to make games? Not just programming, but actually make them? I have some suggestions, but they often aren't about programming. There is a million books about programming, but finding those that talk about the ideas and ways to successively improve is a better point to start from.

  • The Art of Game Design: A Book of Lenses
  • Game Design Workshop: A Playcentric Approach to Creating Innovative Games
  • Kobold Guide to Board Game Design

    Making video games is easy. Put the pitchfork down and let me explain. Anyone can open unity and load some assets and call it a game. Making good games is difficult, and even if you are not looking at card/board games, you should be prepared to test your game on paper. It is easier to make iterative improvement if you can look for mechanical and mathematical issues by scrawling some notes on paper cards.

    For a book that covers both programming and game design, I also suggest this one.

    These books will cover the psychology, the pitfalls, etc that come with making a game. You do not need a class to make a game portfolio. You can often get things done faster by a book, because it's goal is to teach as you read, not set a timer for 15 weeks. It can assume you will do it over 26 weeks or more if the book is huge.

    Anyway, this is a much larger reply than I intended. Hopefully these are informative. If nothing else, they are significantly cheaper than a class.
u/killthealias · 6 pointsr/Games

One of my favourite game design books actually makes reference to this. In the book Scott Rogers calls it the Triangle of Weirdness and uses it specifically to refer to writing a game's story

Characters - Activities - World
Pick one

He then uses The Wizard of Oz (Characters), Monty Python and the Holy Grail (Activities), and Star Wars (World) to back up his statement.

u/SandorHQ · 6 pointsr/gamedev

On YouTube Brackeys channel looks really useful: short, no-nonsense videos.
Additionally, you can find true gems of wisdom on GDC.

I'd also like to recommend a book about game design (in general): Level Up! -- The Guide to Great Video Game Design by Scott Rogers.

u/NickJVaccaro · 6 pointsr/gamedev

Is this what you mean by "Game Programming Complete"?

I'm asking because I like to backlog books like this and want to make sure it's the right one. I've also seen this one suggested elsewhere.

u/Bibdy · 6 pointsr/gamedev

Alright, in that case it sounds like you can benefit from 'the general advice':

  1. Make a 'vertical slice' of the game as early as possible. Networking, animation, scene loading, GUI, etc. This will ensure that every major library and tool you need gets in there early, and you workaround the conflicts between them before it becomes a burden to insert a new one. One of the big mistakes on one an early projects was to leave the entire GUI to the last minute, but because that 'conflicts' with general user input it was a huge chore to workaround certain issues after a lot of the user input code was in place.

  2. Trello is a handy tool for managing tasks, but I'm sure there are other perfectly good alternatives. Despite what you use, update your task list often and make sure you break things down into bite-size chunks that can be accomplished within between an hour or an entire day. That way you're always making progress and keeping your motivation up as that list gets shorter (although it will inevitably keep getting bigger as you break things down more, or remember things you forgot originally)

  3. If its taking forever and motivation is going down the tubes, cut features. Don't debate, don't haggle, just start cutting features to trim down the workload and get yourself back on track.

  4. Source control. Use it. Git with Bitbucket, or TortoiseSVN and VisualSVN Server Manager are my go-to solutions. It's both a log of your activity and your only saviour when things go wrong.

  5. Don't be afraid to tell people about your project, and never tell yourself someone is going to steal your idea, because you need as much feedback as you can get. And the earlier the better. My wife asked me why I'm so cavalier about telling people about my current project even though I'm only a couple of weeks into it, and its because everyone has their own project that they believe in, and when I mention my project to someone they're more likely to give advice on how to make mine better, or more like their own project (unconsciously giving away their own 'secret sauce' recipe), than they are to steal it and build out a competing product. People will only bother stealing an idea that's already been proven to work.

  6. Read books on game development and clean coding practices (if you haven't already). You'll be amazed what great lessons people are willing to impart for next to nothing, or even free (like I'm doing for you right now, incidentally). Two of my favourites are Game Coding Complete and Clean Code - A Handbook of Agile Software Craftsmanship.
u/CugeltheClever · 6 pointsr/rpg

Yes the learning curve is intense. But this cartoon sums it up nicely...

Edit: and I found this book to be very useful.

u/BaconWraith · 6 pointsr/opengl

If you don't mind reading or shelling out a bit of money, Game Engine Architecture is still a great resource

u/sjbrown · 6 pointsr/RPGdesign

I recommend The Art of Game Design as a great resource for this specific question:

And if you don't want to spend the money, here's a hot tip: download the "Deck of Lenses" app on your mobile device. It's basically an extremely summarized version of the book, organized into a "deck". As you consider your resolution mechanism, flip through cards in the deck and ask yourself, "how does this lens apply? is my mechanism successful or deficient when viewed through this lens?". Not all lenses are going to apply, but it's a very useful exercise.

u/Wussie · 6 pointsr/gamedev

Jason Gregory - 3D Game Engine Architecture is a great book although it does focus on C++, but the majority of the content is language independent and more concerned with architecture rather than implementation details.

And as noted before, Real-Time Rendering is a must-have.

u/rylandgold · 6 pointsr/programming

/u/rampion already made a great recommendation of Charles Petzold's Code that I highly recommend. Another great one is Tao Te Programming which is barely a book (in terms of length), but is available for free online.

I also really loved Game Engine Architecture but obviously that's pretty niche. I have more and will do my best to add them later

u/LuminousP · 6 pointsr/gaming

I kind of sounds like you're whining.

go to /r/gamedev

If you know how to program effectively and you want to do something solo. Learn how to Art. If you know how to Art, learn better programming skills.

here's some of my favorite book recommendations


Game Coding Complete

The fucking bible as far as books on game development goes. Made by one of the senior developers on the Ultima series. Seriously. Good book.

Game Engine Architecture

Also a really good book, teaches you more about usability beyond yourself if you ever find time or reason to expand your team.


Drawing on the Right side of the brain This is a very good text for getting you out of your comfort zone and into the mindset you need to have to do good art. This book won't teach you how to make good art, practice will, but its a good first step.

I'd also start looking around, take a look at Blender, we have a great community at /r/Blender and start learning how to do modelling, theres some great tutorials on the gamedev subreddit, as well as a number of classes on Programming and one on Game Concept art at University of Reddit.

Now get up off your ass and start building a game. Pixel. By. Pixel.

and if you have any questions, shoot me a pm, I'd be glad to help!

u/trkorecky · 6 pointsr/gamedev

I've found Jason Gregory's Game Engine Architecture a great read, was recommended to me by the program director of a game development masters program.

u/bbltn · 6 pointsr/roguelikedev

In terms of "tying it all together" I recommend this book -

It covers game engines in a pretty general way, a light overview of every part and what role it plays in the whole. If you're having trouble figuring out architectural questions like what a game loop should look like, this book will help a lot imo, maybe faster than source diving in other roguelikes.

Outside of resources like that, I'd suggest just starting even simpler than a game loop. Draw a field of '.' to the console. Draw an @ on top of that. Make the @ move. One thing at a time, and your game loop will build itself.

u/bhldev · 6 pointsr/learnprogramming

Bad project to "learn programming" with

Start with something simple like a calculator or even Hello World

If you want to learn some game programming concepts you can take various courses online. Get can be a start, then you can brush up on linear algebra and calculus.

Yes it sucks to have to do the basics first... if you absolutely have to "make games" fast use something prebuilt like Libgdx or Unity or Monogame and you can learn on the go

u/FAtBall00n · 6 pointsr/GraphicsProgramming

I'm not a professional graphics programmer, but I am a CS grad and a senior developer for about 10 years. I haven't yet had the time to dive into fully committing myself, however, here was my personal plan for when that moment came.

This gave some great advice and was my starting point:


Then I was going to read this to learn about game engine architecture:


I have heard that this book is the actual implementation of a game engine and a good follow up to reading game engine architecture:


Then I was going to start diving into the 3D and mathematics

Read first:

Read next:

Then I was just going to try and build my own 3D engine and figure it out as I went along.

I've also heard that implementing actual siggraph papers is super helpful and once you're at that point, you've kind of arrived as far as graphics programming is concerned.

I think what you're experiencing with the analysis paralysis is very normal. I'm going to say that you have this fear because you're thinking about all the things you're going to have to do and it freaks you out. Don't think about all the books and all the work you're going to have to do to reach your destination. Simply sit down each day and work on something. Just improve upon what you did the day before and have a weekly goal or something in mind. This breaks up what you're trying to accomplish into smaller steps and isn't nearly as intimidating. Don't look at everything on the horizon. Just start writing code.

John Carmack said it best when he gave someone advice on becoming a programmer "You should write hundreds of programs".







u/fumkypunpkin_ · 6 pointsr/mead

I think they're from this book:

I got it recently myself and I'll be trying the recipes myself soon.

u/I_Am_Bad_At_Names2 · 6 pointsr/skyrim

Let me see if I can find the link on amazon

Edit: here ya go! The Elder Scrolls: The Official Cookbook

u/ProteanScott · 6 pointsr/tabletopgamedesign

I'm currently midway through Characteristics of Games, written cooperatively by 3 people, probably the most notable of which is Richard Garfield (designer of Magic: the Gathering and RoboRally). It is really good, and has great insights into how games function. Most of what it discusses is focused on board games, though it does discuss videogames at times as well. Highly, highly recommended.

I also find the Ludology Podcast to be invaluable. It's hosted by Ryan Sturm (who also hosts the How to Play Podcast) and Geoff Engelstein (designer of Space Cadets and Space Cadets: Dice Duel). They tend to pick a topic and elaborate on it for an hour or so, and if you start at the beginning, it's a really great way to slowly introduce new things to think about when designing games.

u/trevman · 6 pointsr/tabletopgamedesign

Characteristics of Games Doesn't just talk about board games, but Richard Garfield is one of the authors.

u/invicticide · 6 pointsr/gamedev

An artist. :P

No but seriously, here are some things I'd love to be gifted as an indie game dev (if I didn't have them already):

  • Rules of Play. It's maybe getting a little harder to find at a reasonable price, but is a wonderful resource. Some people pan it as a beginner textbook, but as a 10-year game dev veteran I still go back to it occasionally and it reminds me about fundamentals I've let slip over the years. Worth every penny.
  • Envisioning Information. Not directly game dev related, but it's a definitive resource for the kinds of visual design problems we have to solve every day (and that so, so many game devs simply don't know anything about, sadly).
  • The Design of Everyday Things. You can probably get this in paperback for super cheap. It's old, and it's about industrial design, but more importantly it's usability. The core principles in this book should be the backbone of any game designer's education.
  • Got an excellent card/board game shop in the area? Gift certificate the fuck out of the bitch. (Video game devs loooove tabletop games. Yes, we're even bigger nerds than you thought.)
u/Bacon_Hammers · 6 pointsr/todayilearned

"The Ultimate History of Video Games" is a good one as well, which is where I learned of these events. In that book, you get to see Coleco, Mattel, and Atari's side of things along side Nintendo's.

u/Bliss86 · 6 pointsr/programming

Same in germany. Notice the #1 Bestseller in Game Development tag? Congrats ;)

Edit: Actually #1 in all Computer & Internet related books in a foreign language.

u/The_yulaow · 6 pointsr/programming

The book Professional javascript for web developers link

u/iamktothed · 6 pointsr/Design

An Essential Reading List For Designers


All books have been linked to Amazon for review and possible purchase. Remember to support the authors by purchasing their books. If there are any issues with this listing let me know via comments or pm.


u/mrpopsicleman · 5 pointsr/nintendo

> 1) "Miyamoto hated DKC" : No he didn't, and he has made that clear in interviews. That infamous line was taken out of context, he was pissed that producers were putting pressure on him to make Yoshi's Island look like DKC, and then he complained about people caring more about how a game looks than how it plays.

The Donkey Kong Country Miyamoto quote apparently comes from an interview with Steven L. Kent in the May 1995 issue of Electronic Games magazine. I've never read that issue, but Kent did reprint the quote in his book "The Ultimate History of Video Games" (great book btw).

> An interesting story lies behind Yoshi's Island. When Shigeru Miyamoto first demonstrated the game to Nintendo's marketing department, it was rejected because it had Mario-related graphics rather than the waxy, prerendered graphics of Donkey Kong Country. Rather than change to an artistic look he did not like, Miyamoto made the game even more cartoon-like, giving it a hand-drawn look. The second version was accepted

> Miyamoto, who is rightfully proud of his work, was offended that the first version was rejected. That same month, I interviewed Miyamoto and Tim Stamper, creator of Donkey Kong Country, together and noticed that Miyamoto was a bit hard on Stamper, making such statements as "Donkey Kong Country proves that players will put up with mediocre gameplay as long as the art is good."

> In a later interview, Miyamoto admitted that Yoshi's Island had been a touchy subject at the time:

> I think that it happened after Donkey Kong Country was introduced. In comparison with the graphics of the Super Donkey Kong, there was not enough punch to Yoshi's Island. That was what I was told by the marketing people.

> I intensified my hand-drawn touch on Yoshi's Island from the initial part of the program. Everybody else was saying that they wanted better hardware and more beautiful graphics instead of this art.

> Even while I was working on the Super Mario World, I was thinking that the next hero should be Yoshi. Other people have created games based upon Yoshi. . . . Yoshi's World Hunters, Yoshi's Egg, Yoshi's Cookie, and so forth--games that I don't really like. So I decided that I should make an authentic Yoshi game.

He also repeated it on an episode of G4's Icons about DK.

I was glad that Miyamoto addressed this to IGN in 2010. For years, people used that quote as a lame excuse to hate on the DKC series. Like IGN founder Peer Schneider in the above linked Icons video:

> It's the epitome of bad game design. You're asked to collect all these different things that really don't do anything for the player. 5000 bananas. Yay, what does it get me? Nothing. It's just to keep you occupied and make you walk through the same levels again.

Yeah dipshit, that pretty much describes 95% of all video games.

u/rThoms · 5 pointsr/gaming

Many of these can be found in this book.

u/create_a_new-account · 5 pointsr/learnprogramming

this book is good

the authour has put the entire thing online for free

you could download SFML (a C++ framework that can be used to make games)

and then try and recreate these games

but make them more complete, more advanced and apply the concepts from the book

this book is recommended on stackoverflow

u/eric_weinstein · 5 pointsr/ruby

> Failing that, are there any good cheatsheets/references for JS "gotchas" and unusual features that devs from other languages might not be familiar with?

There are entire books dedicated to this! (Also some entertaining talks.)

Here are some good JS books not aimed at total beginners:

  • JavaScript: The Good Parts
  • Professional JavaScript for Web Developers
  • Effective JavaScript

    Bonus (to give you a sense of the kinds of "gotchas" you'll find in JS):

    // Even though you pass in numbers, JS sorts them lexicographically
    > [5, 1, 10].sort();
    [ 1, 10, 5 ]

    // You "fix" this by passing in a custom comparator
    > [5, 1, 10].sort(function(a, b) { return a - b; });
    [ 1, 5, 10 ]

    // This probably makes sense to someone, somewhere
    > Math.min();

    > Math.max();

    // Some things are best left unknown
    > {} + {};

    > var wat = {} + {}; wat;
    '[object Object][object Object]'

    Here are a bunch more in quiz form.
u/adamzx3 · 5 pointsr/javascript

I can definitely relate, this sounds just like me last year! I've done things the hard way and it took me 5x longer. I also prefer screencasts to books. I always need to create a project to solidify those fresh skills, otherwise they'll be gone in a month. Also tutorials for things like Backbone assume you know how to use jQuery, Underscore, and things like REST, and JSON responses... this can quickly get confusing if your not familiar with all of these. My largest regret is not building enough practice apps in the last year. I really should have applied more by doing, instead of staying in the theoretical world.

Here are some insights that i've made and the courses/tuts/projects that helped me the most:

Learn the language first:

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


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/Esko997 · 5 pointsr/dwarffortress

Honestly I bought the book "Getting Started With Dwarf Fortress" for like $10 on Kindle or something and LOVED it. It was not only a really enjoyable book to read, peppered with good dwarf humor and tragedy, but also walked me through building and maintaining a powerful fortress. It also helped walk me through the more complex aspects of the game like using liquids, machines, and dwarven logic circuits. I highly recommend it.

Heres the link

u/Fremenguy · 5 pointsr/TrollXChromosomes

I wouldn't be able to teach you... But I learned some handy things from this book.

Sometimes you just have to fail a little to have a some FUN. Goodluck!

(Also, if you want something a little more...uh... friendly to start out with, I recommend Rim World. It's on Steam. )

u/saltytaco · 5 pointsr/gamedev

As always one of the most recommended books will help you: Game Engine Architecture by Jason Gregory It does require some programming knowledge however, but it will show you the inner workings of an engine and how they are made.

u/faehnrich · 5 pointsr/learnprogramming

A huge and detailed, but very good video series of an entire game engine and game is Handmade Hero.

I've heard the book Game Engine Architecture on a few lists as being good.

u/pehnn_altura · 5 pointsr/gamedev

That's a fantastic book! And, he just recently released a new version.

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/swirlingdoves · 5 pointsr/Polska

@1. Mysle ze pytanie ktore trzeba zadac sobie najpierw to "czym jest dobry game design". Ile ludzi bedzie gralo w dana gre? Ile pieniedzy gra zarobi? Jaki efekt bedzie miala na graczach? Ogolnie polecam fora czy nawet subreddity typu /r/gamedesign. Sa tez kursy oferowane za darmo online przez powazne uczelnie np MIT. Z ksiazek polecam Theory of Fun i The Art of Game Design

@2 Tak, spojz na Notch'a ;)

@3 Rob male, proste gierki. Polecam "game jams" Nie wiem jakie to popularne w Polsce ale w Internecie jest tego sporo i po krotce chodzi o taki "sprint" (na przyklad 24 godzinny lub jedno-weekendowy) podczas ktorego celem jest zrobienie gdy na podstwie jakiego hasla lub protych ktryteriow. Znajdz innych ludzi i zamiast samotnie, pracuj w grupie powiedzmy trzech osob co by sie wzajemnie motywowac.

u/7tryker · 5 pointsr/gamedev

Have you read Jesse Schell's Art of Game Design book? It's a great read for game designers if you don't have it as a reference.

In it, he gives you some good lenses to look through that encompasses almost every game design decision you should be making for your game. I am positive there is a lens in the book that you can look through for your game that addresses your unwillingness to bend reality to accommodate intriguing game ideas. Remember your audience isn't yourself or your own personal tastes, if something doesn't make sense for you, maybe prototype the idea and playtest it with some folks and then judge whether the idea is indeed enhancing the game experience, if so it shouldn't matter much if it makes sense to you or reality or not.

u/luciensadi · 5 pointsr/MUD

One of the most important aspects of game design is that the story should always be written first, with the design and technology then being informed by the story. What you need to do is come up with the game you want to make (which hopefully is also a game you think other people will have fun playing), after which you can create a design plan / feature list / implementation plan from that.

I suggest you read The Art of Game Design for general game design information and Richard Bartle's Designing Virtual Worlds for MUD-specific information. That's probably a good first step for getting you into serious MUD development.

Edit: link formatting

u/argh6543 · 5 pointsr/learnprogramming

To be honest, I would recommend a low level functional book over a C# or C++ specific book that teaches you APIs. Most of the language/API specific books get hung up on details, work arounds and such rather than focusing on what is really important.
The mathematics of 3D programming or so was really really useful - it shows algorithms and goes into why certain algorithms are fast/slow and give good/bad results.

If you want API/C++ stuff, I'd go with

Very well written and goes into debugging and such as well.

u/thelazydeveloper · 5 pointsr/learnprogramming

The common advice given to those new to game programming that want to develop an engine is to simply make games. Through the process of making a game you'll come across code that can be reused, and refactoring this code into a generic form will allow you to build up a library of useful snippets/classes/what-have-you and eventually an engine.

However, if you're curious about game engine architecture, there's a great book by Jason Gregory, Jeff Lander and Matt Whiting called Game Engine Architecture which describes the components that make up an engine and illustrate some design choices.

u/Madsy9 · 5 pointsr/opengl

I'm no mathematician, so I don't have a good answer. But judging from the math I usually need when messing around with graphics, I rarely need anything more fancy than matrix-vector multiplication and a few scalar products and cross products. You get a pretty intuitive approach to the math after a while.

From a philosophical point of view, I'd say the more the merrier. More knowledge in a field leads to greater understanding and being able to find more elegant solutions, thus saving work.

3D Math Primer for graphics and game development is nice as a quick introduction, although I suspect mathematicians would hate me for recommending it, for similar reasons I objected to mixing the graphics field / OpenGL with game development. For a more serious textbook on linear algebra, I'm afraid you have to ask someone else. The last math books I bought and read was about number theory and introduction to calculus and limits.

u/vertexmachina · 5 pointsr/GraphicsProgramming

3D Math Primer for Graphics and Game Development is a great introduction to 3D math. It presents everything in a very approachable way (rather than a very rigorous mathematical way).

If you want to dive even deeper after that one, a good supplementary text is Essential Mathematics for Games and Interactive Applications. It goes deeper into the topics, but it isn't quite as approachable, so it's a good follow-up.

u/DerekVonSnitzel · 5 pointsr/vfx

Go for it. Your background in comp will help in fx too as most fx peeps can't comp for shit.

Comp requires much less Computer Graphics knowledge so you're probably gonna want to brush up on math, and general CG.

Is a great start.

u/gamerkhang · 5 pointsr/gamedev

To be clear: are you interested in game programming, or game design? (I say this because the other post said you were interested in engineering, and I'm not sure that guy knew what he was talking about) While the two do go hand-in-hand, what discipline you will be practicing is very important to be aware of. If you are interested in game design (theory behind making games, regardless of whether or not they're electronic) then some books you'd be interested in would be Jesse Schell's The Art of Game Design, reinforced by exercises from Challenges for Game Designers.

If you are interested in game programming, that would require some introductory programming knowledge before diving into it, and there are others who would know where to find books for that, like on the sidebar of /r/learnprogramming. I would not recommend diving into a game engine without some basic programming knowledge unless you use an engine like GameMaker (but even that is just putting it off to a degree).

u/NotRobot_Aero · 5 pointsr/gamedev

If you are going the book route, I have a few suggestions for you!

Not sure if he's a reader? Check out Challenges for Game Designers Basically a collection of game problems to solve, flexing those 'be creative within a bounded scenario' muscles that a lot of big dreamers don't have enough experience with.

Another solid choice is this one,
100 Things Every Designer Needs to Know About People (Voices That Matter). In general it's talking about layouts/formatting, but super solid read for our industry as well.

Both of these are light and fun reads. If you think they might be interested in something heavier, I can post some in that vein as well.

u/TartBart · 5 pointsr/mead

It’s the official Skyrim Cookbook

u/psychobilly1 · 5 pointsr/skyrim
u/idealdreams · 5 pointsr/Breath_of_the_Wild

Amazon link here. There's currently a week to two week wait before it ships although some are saying theirs are arriving earlier. I ordered mine from Barnes and Noble and it got here in 3 days and it was only like a dollar more and had free shipping.

u/ohdemx55 · 5 pointsr/Breath_of_the_Wild

The Legend of Zelda Breath of the Wild: The Complete Official Guide

u/thedarklord187 · 5 pointsr/zelda

Anyone happen to have bought this ? If so did you find it worth the $30 price tag was it actually useful?

u/skytomorrownow · 4 pointsr/computergraphics

Despite what you mentioned, anyone interested in real-time graphics, or computer graphics in general should have:

It was updated in 2008. Not cutting edge, but many of today's core ideas are covered well. But, if you want cutting edge, you read SIGGRAPH papers, blogs, or the like. RR is more of a reference. It'll be hard to find a published book that goes into a detailed area of real-time computer graphics.

u/yanalex981 · 4 pointsr/computerscience

I taught myself bits in high school with "C++ for Everyone". Despite its rating, I thought it was good 'cause it has exercises, and I did a lot of them. Works really well for laying foundations. I didn't go through the whole book though, and knowing the language is only part of the battle. You need to know about algorithms and data structures as well. For graphics, trees seem really useful (Binary space partitioning, quadtrees, octrees etc).

After university started, I read parts of "C++ Primer", which was when the language really started making sense to me. You'll get more than enough time to learn the required amount of C++ by next fall, but CG is heavy in math and algorithms. If your CS minor didn't go over them (much), my old algorithms prof wrote a free book specifically for that course.

For using OpenGL, I skimmed the first parts of "OpenGL SuperBible". For general graphics, I've heard good things about "Mathematics for 3D Game Programming and Computer Graphics", and "Real-Time Rendering".

Careful with C++. It may deceptively look like Java, but honestly, trying to write good idiomatic C++ after years of Java took a major paradigm shift

u/quantumproductions_ · 4 pointsr/gamedev

Blaaaaargh quit focusing ideas! Start writing code! Playtest!

/r/gamedev is a heuristic process. You can't just plan out everything and expect to make game from thinking alone. You have to code and then playtest.

This talk is "Going with the grain", comparing gamedev to cutting wood. It helps to go with the grain of what your medium (computer, input methods) are good at. Work with yourself.

Try treating your game as an intelligent artifact eg. . Let your programming be a dialogue with it and see what it wants to say.

If you're still having trouble and feeling stuck in "idea mode", put the programming aside and try "Challenges for Game Designers: non-digital exercises for video game designers" making board games built around mechanics like "Exploration" or "Randomness" or "Deduction".

TL;DR Execution is everything so start writing code and play your game.

u/SkyShadowing · 4 pointsr/Morrowind
u/Scoutdad · 4 pointsr/NintendoSwitch
u/rikkiitikkii · 4 pointsr/Breath_of_the_Wild

The Legend of Zelda: Breath of the Wild The Complete Official Guide: -Expanded Edition

u/woomybii · 4 pointsr/legendofzelda

I’m probably going to write a book here, but I love this game so much and I’ve retained so much knowledge from it, feel free to ask any questions if you ever have any, I’d love to put my useless and specific knowledge to use!

  1. Best beast order (imo) is Ruta, Medoh, Rudania and save Naboris for last
  2. Collect and upgrade the rubber armor for the set perk before trying Naboris if you want it to be easier on yourself
  3. Change the audio to Japanese, save yourself the grief of the horrible english dub (the captions won’t change)
  4. Buy the guide here if you really want help or just something cool to browse!
  5. Master the parry & side jump!
  6. Hearty Durians (found in the faron region, bottom rightish of the map, and theres a plethora of them right next to that regions tower) really help early game because they give you extra hearts
  7. Don’t rush yourself, botw is built so you can go at your own pace
  8. You have to buy your own armor most of the time, so if you can help it, save and don’t spend all your rupees in one place!
  9. Collect as many ingredients as you can! There’s no downside and you have to make your own meals for health, but some ingredients don’t work together and you get pretty much nothing
  10. Always have a torch & korok leaf in your inventory
  11. You have to have 13 hearts before you can get the master sword
  12. Open every shrine you come across for easy fast travel, and if you can’t complete a shrine the way it’s meant to, a little creativity goes a long way! (Tip: in the hateno village shrine I take off my joycons and just flip the puzzle upside down, thank me later ;p)
  13. Buy the dlcs at some point, they’re amazing!
  14. Unless you’re really confident/better than I was, don’t even try and fight the Lynel in Zora’s domain, just sneak around him until you have more hearts... soon you’ll eat those guys for breakfast
  15. It’s worth it to at least discover Gerudo Town if you prefer the bow, they have the biggest selection of arrows in the towns available to you early on
  16. Save every guardian piece you get, you’ll see why later on.
  17. Theres 900 korok seeds. Don’t spend time on finding them right away like I did because I assumed there’d be like... 20
  18. Until you’ve got more hearts, turn and leave any major test of strength shrines... trust me
  19. Amiibos aren’t necessary but that’s how you get some cool armors, items and other things you may see
  20. Don’t be afraid or feel bad to use walkthroughs, Zelda Dungeon makes helpful shrine guides that I used a few times!
  21. They also have a korok seed location playlist if you want it
  22. I wanted to add this earlier but I forgot: weapons break. Pick up most of what you find but don’t be afraid to be picky after you leave the plateau

    I’ll stop here and save you the rest of my botw bible but I hope you have fun!!
u/TallForAStormtrooper · 4 pointsr/rpg

Another good one is Reality is Broken: Why Games Make Us Better and How They Can Change The World by Jane McGonigal. It does focus on video games but it delves into what makes us happy and how games scratch those itches.

u/cjt09 · 4 pointsr/truegaming

If you're interested in this subject, I'd recommend checking out Reality Is Broken: Why Games Make Us Better, a great book detailing many of the ways that video games can convey benefits to people.

u/apreche · 4 pointsr/Netrunner
u/weeklygamingrecap · 4 pointsr/Gaming4Gamers

Here's a few books I can recommend

The Ultimate History of Video Games: From Pong to Pokemon--The Story Behind the Craze That Touched Our Lives and Changed the World

Up Up Down Down Left WRITE: The Freelance Guide to Video Game Journalism

Critical Path: How to Review Videogames for a Living

The Videogame Style Guide and Reference Manual

Hope that helps!

u/SniperGX1 · 4 pointsr/cade

This was my textbook from History of Electronic Gaming in college. Was the only textbook I ever read cover to cover. It covers more than arcades though so it might be a bit more than you're looking for.

u/SkaveRat · 4 pointsr/Vive

> and the bar for what people expect has been raised,

you might say they are... rasing the bar?

u/no_egrets · 4 pointsr/HalfLife

UK prices seem to be around £60 - £150 ($90 - $225), where the highest going price was for a sealed copy.

Might be more results in the US. Hop onto eBay, go to the advanced search, and tick the "completed listings" box as part of your search.

Edit: on Amazon US, the sensible used ones are going for betwen $70 and $190, depending on condition. That doesn't necessarily mean they're actually getting sold at those prices, of course.

u/RoguelikeDevDude · 4 pointsr/gamedev

Book suggestions? Now that's my jam.

Out of all the books i've read, here are my recommendations regarding game programming:

Eric Lengyel's Books (only one out so far). This is aimed at game engine development, but if the 2nd onward are as indepth as the first, they will be amazing fundamental knowledge. Also, they're not thick, and jam packed with information.

Game Programming Patterns. The only book that comes more recommended than this is the one right below it by Jesse Schell. This book is fantastic, but you should write one or two small games to really get the most out of this book. You can also read it online on his website free, but then you don't get a pic of him and his dog on the back cover.

Book of Lenses. This is your intro/intermediate dive into game design. There are a lot of game design books, if you only read one, it should be this one.

Gane AI By Example. This book is a hodgepodge of fantastic techniques and patterns by those in AAA. There are other books on the series (like Game AI Pro) which are similar, but in my opinion (at least when I read AI PRO 3), they're not as good. But more knowledge is never bad.

Truthfully, as I sit here looking over all my books, those are the only ones i'd consider mandatory for any seasoned developer. Of course plenty of developers get by without reading these books, but they likely pick up all the principles listed herein elsewhere, in bits and pieces, and would likely have benefited having read them early on.

Here are a few others that I do recommend but do NOT consider mandatory. Sorry, no links.

Unity in Action. Personally, I recommend this or a more interactive online course version ( if you want to learn unity while having a resource hold your hand. Having read the book, taken the course, AND taken Unity's own tutorials on the matter, i'd order them in order from Course being best, book second, videos from unity third. But none of them are bad.

Game Engine Architecture. This is the king for those who want a very broad introduction to making a game engine. It comes highly recommended from nearly anyone who reads it, just so long as you understand it's from a AAA point of view. Game Code Complete is out of print and unlikely to be revisited, but it is similar. These are behemoths of books.

Realtime rendering. This is one I haven't read, but it comes very highly recommended. It is not an intro book, and is also over 1000 pages, so you want this along side a more introductory book like Fundamentals of computer graphics. Truth be told, both books are used in courses in university at the third and fourth year levels, so keep that in mind before diving in.

Clean code. Yeah yeah it has a java expectation, but I love it. It's small. Read it if you understand Java, and want to listen to one of the biggest preachers on how not to write spaghetti code.

Rimworld guy, Tynaan sylvester I believe, wrote a book called Designing Games. I enjoyed it, but IMO it doesn't hold a candle to Jesse Schell's book. Either way, the guy did write that book after working in AAA for many years, then went on to create one of the most successful sim games in years. But yeah, I enjoyed it.

Last but not least, here are some almost ENTIRELY USELESS but interesting diagrams of what some people think you should read or learn in our field:

u/ErrorUncertainty · 4 pointsr/gamedev

Looks like a great book, I'll have to check it out!

In case you're interested (and didn't already know), here's the price history for your own book. Amazon's prices are all constantly fluctuating, or at least 90% of them are, and algorithms must make 99.999% of those decisions. Sites like Camelcamelcamel allow us consumers to make the best choices despite that...

Edit: just noticed the price change that presumably flagged the guys at @GeekDailyDeal was actually an increase by a few cents, though it's still cheaper than for a long time

u/davidNerdly · 4 pointsr/web_design

Just some I like:


  • [You Don't Know Javascript (series)(] Short and sweet mostly. Well written. Some are still pending publishing but there are a couple available now. I believe you can read them for free online, I just like paper books and wanted to show some support.

  • Elequent Javascript (second release coming in november). Current version here if you are impatient. I have not personally read it yet, waiting for the next revision. I recommend it due to the high regard it has in the web community.

  • Professional JavaScript for Web Developers. Sometimes called the bible of js. Big ole book. I have not read it through and through, but have enjoyed the parts I have perused.


    (I am weak in the design side, so take these recommendation with a grain of salt. I recommend them off of overall industry cred they receive and my own personal taste for them.)

  • The Elements of Typographic Style. Low level detail into the art and science behind typography.

  • Don't Make Me Think, Revisited. I read the original, not the new one that I linked. It is an easy read (morning commute on the train was perfect for it) and covers UX stuff in a very easy to understand way. My non-designer brain really appreciated it.

    below are books I have not read but our generally recommended to people asking this question

  • About Face.

  • The Design of Everyday Things.

  • The Inmates Are Running the Asylum.

    You can see a lot of these are theory based. My 0.02 is that books are good for theory, blogs are good for up to date ways of doing things and tutorial type stuff.

    Hope this helps!

    Battery is about to die so no formatting for you! I'll add note later if I remember.

    EDIT: another real quick.

    EDIT2: Eh, wound up on my computer. Added formatting and some context. Also added more links because I am procrastinating my actual work I have to do (picking icons for buttons is so hard, I never know what icon accurately represents whatever context I am trying to fill).
u/olenbluu · 4 pointsr/gamedev

I would love to add Level up by Scott Rogers ( to the mix. I'm​ also writing for video games on indie scale tho.

Scott Rogers book is also about level design and that's important part of story telling in video game medium. For most, a lot of text is going to be dismissed by a lot of players so lot of the storytelling is good to come from somewhere else. Visuals, level design, character design etc. You need to learn from the start a good script format that is easy to understand for you and someone else reading. You can find a lot of formation online and even BBC scripts to read if you want from

Fundamentals like many here has stated are good place to start. Story crafting, plot devices and analysing your favourite games, movies I and TV series. Maybe check and find your favourite game protagonist and read up what tropes writers used on them and how it shows.

Games as a story telling device are mix of visuals, plain text and user interaction and that mix is what makes a story in a video game. That's why a lot of video games have not so immersive story as script writers are tend to bring to the mix later in the development when level design has maybe been set in stone and coded.

I assume you want to make a story script for a game. I would recommend learning a formation for a basic film script or use straight away because it's easier for you to get into scene thinking and also for your future co-workers. is free script writing tool, you should look up. (

And also read all comments above about learning fundamentals and skills to analyze the story arcs and storytelling. To write you must first read.

u/Chukobyte · 4 pointsr/gamedev

Disclaimer, I haven't personally built a full functioning game engine from scratch but I've been interested in game engine architecture. I recommend two books I'm currently reading, Game Engine Architecture and Game Coding Complete.

u/redux42 · 4 pointsr/patientgamers

There's a book that teaches you how to play:

AFAIK re: graphics, there are alternative tile sets you can install.

u/Orthak · 4 pointsr/mylittleandysonic1

The first thing that I would say is: If you're thinking or making something bigger than a Pong clone, dial it way back. Your not going to make something fantastic, or Hell even good, straight out of the gate. Think of one idea that you have, and stick only to that. Make something very small, you can always build on it as you progress.

As for resources, they're limitless. There are tons of engines, assets, tutorials, book, and anything else you'd want. I'll make a small list of things here to get you started, but I strongly suggest looking for other things that you'd need on your own. Research and critical tinging is paramount in this hobby/profession.


  • Unity - Very powerful and free 2d/3d engine. Uses mainly a JavaScript dialect and C# for scripting. The asset store is a great built-in resource
  • GameMaker - Surprisingly powerful 2d only engine. Uses it's own language for scripting, and has excellent drag-n-drop scripting. It's been a while since I used it, but it was great from what I remember.


  • OpenGameArt - I've used tons of assets from this site. They range in any quality/type that you could need.
  • - Wonderfull asset packs, I've used one of their UI packs and it was great. I think these are also the guys that post free stuff to /r/gamedev every now and then.


  • - Great resources. I've used many sounds from here, and they usually have just what I need.

  • as3sfxr - Create your own chipsounds! I've mad a bunch of stuff here if I needed something that sounded a bit less organic.


  • Cooking With Unity - Is fantastic. I've followed almost all of these, and I loved them. He does a really good job explaining the concepts, and the scale in difficulty isn't too seep.


  • A Book of Lenses - I haven't gotten too far into it, but what I've read so far is great. Wonderful info on game design.

  • Game Programming Patterns - This is an awesome book to get into the programming aspect. The examples are written in C++, but can be implemented in any language. Also: The web version is totally free!

    That's about all I can think of quickly. It should be enough to get you off the ground.

    Have fun, and good luck!
u/BoomBoxCreations · 4 pointsr/oculus

Some people do, but remember also, game engines are hugely complex pieces of code that aren't for the feint of heart. This book shows a good portion of what can go into it.

Remember also that engines such as Unreal, Unity, etc. allows you to actually make a game without worrying too much about the lower level systems. More time spent actually making the game vs planning low-level systems = fun

u/marshray · 4 pointsr/gamedev

I just got a copy of
Jason Gregory - Game Engine Architecture

There is the obligatory few chapters on "how to compile C++ with Visual Studio". I'm an experienced programmer and am just skipping that.

But the amount of depth across a broad range of core game concepts is really impressive. You can tell the author has worked on real production software and is wanting to share his hard-earned wisdom, starting with the important bits rather than the noob bits. For example, there's a great chapter on vectors and matrices, and great chapters on 3D rendering and lighting. A lot of books seem to stop there. But it's not baby talk, it assumes you have a decent high school math background, and for that reason there's room for chapters on many more topics.

A lot of it relates to 3D but 2D is often mentioned. A lot of it relates to C++. The reason is that that's the language used to get the most performance out of consoles and PC games.

This may or may not be what you're looking for, but if it is, I highly recommend it.

u/dwapook · 3 pointsr/gamedev

Here's some stuff to check out..

Challenges for Game Designers- - A good overview and tool for learning various gameplay mechanics..

Level Up: the Guide to Great Video Game Design - - A nice overview of game design in general, which is good to know even if you're only pursuing level design at the moment

Game Maker's Toolkit - - A really good series on game and level design

Reverse Design Series - - Books that deconstruct games in order to learn from them.. I'm going through the Super Mario World one right now and learning some nice things from it..

Some Reddit posts.. - I found this helpful back when I first read it.. o.o; - Nice stuff to keep in mind when designing story flow in levels..

Deviating a bit here.. but.. - A nice breakdown of enemy types in mostly 2D platform style games.. but a good reference - Some game feel videos

u/snikurtv · 3 pointsr/gamedev

Heres the sources I used to create a 3D OpenGL engine.

Use libraries for things you don't understand. Use Box2D or Bullet for example as physics engine.
You can learn as you go, no need to know everything at the start. Start with basic shapes without light or textures. Then add components as needed (component based engine design). Components can be things such as model, material (texture + data), AI, physics, controllers.

u/kcbanner · 3 pointsr/gamedev

Chapter 22 of Game Coding Complete covers this.

u/juggerthunk · 3 pointsr/learnprogramming

I got my start by taking AP CS in high school. However, I had already gone to college and that was a while ago, so I read some books on the commute to/from work.

Initially, I read Sams Teach Yourself PHP, Mysql and Apache all in one to learn PHP.

Immediately afterward, I read Murach's Java Se 6 and Beginning Java Objects to learn Java.

Most recently, I read a portion of C++ Primer Plus, but got very sick of it. I've read most of Accelerated C++

I have a few other books on C# to read when the time comes to actually write code.

By the time I had read all of the above, I felt pretty confident on how to structure a program, regardless of language. As such, I was able to pick up Python and JavaScript quite easily just by reading online documentation at and W3Schools. When I'm writing a web app, I'll rely pretty heavily on PHP's and MySQL's online documentation to help me with whatever syntax quibbles I may have.

I still want to read Game Coding Complete and I'll probably want to find a few resources on programming within XCode.

They all tend to follow the same programming paradigms, to be honest. Java did a good job in getting me into an OOP mindset and C/C++ did a good job at helping me think about how to program things without layer of abstraction. Once I learned these concepts, it was pretty easy to get started with a new language. Programming in PHP can be super sloppy, but taking what I learned from other languages, I'm usually able to write fairly clean code in PHP (especially when I learned how to use classes).

I wouldn't recommend all of the books above, to be honest. I didn't have much ability to do online training at the time and compiled lists of books weren't nearly as useful at the time, so I relied mostly on Amazon book reviews. I'm sure you can find a few choice books on each language you want to learn and go that way. If you were to read books, I think Accelerated C++ is a good book, but works best if you already have some experience programming. I remember like Beginning Java Objects more than Murach's, though both are great as references (which is why they're both still in my bookshelf). C++ Primer Plus spends too much time teaching C and not enough time teaching C++ (you spend pages upon pages learning about C-style strings, aka char arrays, rather than just using the String Class, but I digress).

Ultimately, I could read a bunch about a language, but I never truly learned the language until I started writing in it. I've written a handful of programs just as proofs of concepts and I recommend you do the same while learning any language.

u/LokiNinja · 3 pointsr/gamedev

It seems like you're on the right path. I started working with major engines like unity and UDK. In addition I started writing small game clones (Pong, Pac Man, Asteroids) in C++ using DirectX. Once I was comfortable with all that I started working on my own flexible/reusable engine and writing my own tools. Using Unity and UDK gave me a good idea of what sort of features I needed to support and helped me develop comprehensive use cases. The whole point is that it is really an individual process. I don't have a degree, just been developing in C++ for the past 15 years. Tons of good literature out there too! Those are some of the resources I found particularly helpful.

u/ganjlord · 3 pointsr/gamedev

I'm writing an event manager for my game, and the game dev book i'm reading suggests using hashed strings as a unique identifier for game events. Why is it necessary to hash the strings? Shouldn't the pointer be a sufficient identifier? Aren't hashing functions usually expensive?

u/Dalriata · 3 pointsr/dwarffortress

I bought the book off Amazon a few years ago, back in the days of v0.34.11

I'm not sure if it's been updated since then, I don't think it has been honestly, but it's still a good resource for learning the game since not that much has changed in Fort mode (which the book is about specifically) beyond the changes to trees, and the addition of taverns and libraries.

u/Shamasu · 3 pointsr/Terraria
u/0xfefefefe · 3 pointsr/learnprogramming

I am a game engine programmer in the industry right now, do C++ and pick up Game Engine Architecture for a nice overview of many of the core subsystems of an engine. Java is a cake walk post C++, and still a worthy language - just not the industry standard.

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 and 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/Serious_Casual · 3 pointsr/gamedev

Writing an engine isn't a trivial task. I don't mean to put you down or make you feel bad but it kind of sounds like you don't totally understand what a game engine does.

If you do want to write an engine, I would suggest starting with the renderer and expanding your understanding from there. The features of your engine depend upon what kind of game features you want to support. Particles? Visual effects? 3D sounds? Dynamic Resource management? and all of that behind the gameplay code.

Just get a square to show up on the screen. While you're working on that, check out a few books on game engine programming. There are a ton on amazon. This one is really good:

If you need some more help getting started let me know! Engine programming is fun and rewarding but building one from scratch can be a monumental task.

u/BlackDeath3 · 3 pointsr/Physics

For anybody interested in a discussion on the modern usage of Quaternions with respect to game development, see Jason Gregory's Game Engine Architecture.

u/MightyDodongo · 3 pointsr/Games

Read Jesse schell's book and take everything in it to heart. Pick up game maker or unity/unreal, and start putting the book into practice. Amazon Link

This is going to be a hot take, but I'd consider going a step further and making your own lightweight engine using SDL; it will teach you not only a lot about programming, but also give you a lot more flexibility in the long run. Lazy Foo has an incredible guide on working with SDL Link

Feel free to DM me for advice. I'm not even close to doing this as a career (currently a software engineer and working on engine stuff on the side), but I can at least offer advice on programming and general engine work.

u/daybreaker · 3 pointsr/tabletopgamedesign

There's an app called The Art of Game Design: Deck of Lenses.

Its a deck of cards meant to make you think about different aspects of your game. It goes together with the book Art of Game Design, but can be used separately.

u/Pogotross · 3 pointsr/gamegrumps

I think Arin likes The Art of Game Design: A Book of Lenses, Second Edition and either he or Jon liked Game Feel: A Game Designer's Guide to Virtual Sensation.

Personally my favorite game design resource is either Mark Rosewater's design articles or his podcast. I prefer his podcast but both covers most of the same information. MaRo is the lead designer for Magic: The Gathering so a lot of the articles are about MtG specifically or about tabletop games but nearly all the general design podcasts are worthwhile. Most importantly, he has around twenty years of successful (and unsuccessful) design under his belt, so he isn't just talking in vague generalities or theories. He has examples backing up pretty much everything he talks about including, and maybe most importantly, times he thought he was doing the right then and messed up. I think anyone interested in game design should listen to the "Ten Things Every Game Needs" and "20 Lessons" series. You can hear his GDC version of the 20 Lessons here.

*: But the absolute best thing you can read on game design is a gamemaker tutorial. Theory is useless without execution.

u/GeniDoi · 3 pointsr/gamedev

If you want some more information about what makes a game a game, The Art of Game Design: A Book of Lenses by Jesse Schell covers a lot of game theory such as what makes a game fun amongst many other conceptual ideas. I would highly recommend it.

u/DragoonDM · 3 pointsr/cscareerquestions

Game Engine Architecture provides an excellent overview of how game engines work, from the ground up, in a way that's fairly accessible—that is, I understood most of what I was reading despite not having any experience programming at that level.

Also good:

Real Time Rendering

Real Time Collision Detection

u/jmoeller · 3 pointsr/gamedev

Consider starting with something general like Game Engine Architecture.

It's platform agnostic, so you can follow it using whatever.

Read OpenGL tutorials on the side and use something like SFML, SDL or GLFW to handle input / window management / context creation / etc.

u/DaFox · 3 pointsr/gamedev

Jason Gregory's Game Engine Architecture is basically the de facto standard.

u/silverforest · 3 pointsr/gamedev

Other than Real Time Rendering which /u/horsman has mentioned above, I would also recommend:

u/raging_bool · 3 pointsr/howdidtheycodeit

There's already a lot of great answers, so I won't go over all that again, but if you're interested in writing an engine, this is the book I used as reference material when I wrote mine:

u/SartreToTheHeart · 3 pointsr/gamedev

Not necessarily source code, but Game Engine Architecture is practically the Bible when it comes to this topic.

u/JoeyDeVries · 3 pointsr/opengl

I'm working on a large OpenGL tutorial site that is specifically aimed at beginners trying to learn modern OpenGL with clear samples and easy-to-understand sections. It's not finished yet but should provide a good resource for getting started and getting a hang of shaders. Take a look at and see if it's something that suits your needs :)

Also, take a look at:
Real-Time Rendering: great book on modern OpenGL with a focus on shaders (although not specifically aimed at complete beginners). good resource for starting modern OpenGL. Easy-to-understand.
Arcsynthesis tuts: very extensive OpenGL tutorial that goes into much more detail, making it more rewarding, but also more complicated for beginners.

u/TurkishSquirrel · 3 pointsr/learnprogramming

If this is the book you're referring too, it came out in 2000 and is definitely outdated. From your post it sounds like you're kind of confused on what OpenGL really is. OpenGL is a specification for a graphics API that is implemented by various hardware vendors (AMD/NVIDIA for ex.) which you can use to make their hardware do stuff without having to worry about differences between the platforms. You can read up on the OpenGL spec and documentation at

FreeGLUT isn't a replacement/substitute for OpenGL, it's a library that makes it easy to open up a window and get an OpenGL context for rendering on Windows/Linux/Mac without having to worry about each OS's differences (it also lets you handle input I think). There are many libraries capable of doing this, or do this and provide much more: SDL, SFML, GLFW. GLFW is window/input only I think, but SDL and SFML also have their own simpler rendering APIs along with providing sound playback, networking and so on. Another really useful library is GLEW which lets you get access to various OpenGL extensions and modern functions across OS's.

If you want to learn modern OpenGL (3.3+) (which is the one you want!) the /r/opengl subreddit has some good links on the sidebar, and the 8th edition of the Red book just came out recently covering OpenGL 4.3. Although the Red book's focus is on OpenGL not rendering theory, so I think for a beginner you'd need some supplemental material to cover theory. A book I've found really helpful that focuses on the math/theory behind graphics programming is Real Time Rendering which is API agnostic (ie. just math/theory/algorithms). One of the authors of the book actually put up a course on Udacity: Interactive 3D Graphics, which teaches graphics programming through WebGL (including math/theory!) and you may find that really helpful. WebGL is OpenGL ES 2 in Javascript, and OpenGL ES 2 is based on OpenGL 2 but without the ancient fixed function stuff and looks more similar to OpenGL 3.3, so it's kind of inbetween OpenGL 2.1 and 3.3, so it's certainly modern enough and a course worth taking, even if your plans are to work on the desktop later.

There is a free version of VS, but you can do OpenGL programming on Linux as long as you've got the drivers for your graphics hardware, so no reason to switch unless you want to or can't get the graphics drivers.

u/whackylabs · 3 pointsr/opengl

The best way is to understand the graphics pipeline, what all stages are there, how your geometry data flows through the pipeline and what fixed pipeline does for you. Then you will start appreciating the programmable pipeline more.

If you're serious about understanding the core of Computer Graphics, get Real Time Rendering.

You can read first few pages for free at Amazon where they give a good introduction to the graphics pipeline.

u/dmazzoni · 3 pointsr/learnprogramming

Keep in mind that 99% of video games are developed using a game engine. For 3-D games the primary game engines are Unity and Unreal. Those engines may use OpenGL under the hood, but they give you much easier-to-understand high-level abstractions for working with 3-D objects. OpenGL is extremely low-level.

There are many concepts that are important to know either way, though - such as using a matrix to represent a 3-D transformation. For that, I'd recommend a textbook on computer graphics like Real-Time Rendering.

u/nEmoGrinder · 3 pointsr/vita

Programming is one thing, game programming is another. Get a good handle of the basics first. Build some small tools and get a feel for developing with C#.

After you feel comfortable there (so a solid understanding of design paradigms, efficient development, classes/variables/interfaces, composition over inheritance, etc) then move onto game specific development. I would recommend grabbing some graphics books (I personally can't recommend Real Time Rendering highly enough) and maybe a few basic math books covering linear algebra. Understanding AABBs will also help for more games that involve moving components. Learn to sweep test and test for collisions.

Stay away from writing your own tech when possible. If you want physics in your game (by physics I mean real physics that can't be created by AABBs) then grab an existing library like Box2D and use that. I use Shoebox for creating sprite sheets.

In terms of frameworks, I've been using MonoGame but there are others (libGDX is a great one, obviously there's Unity which is a full engine but I'm not a fan of it for anything other than prototyping).

Basically, take your time. Build things that are realistic for your skill level (don't go off thinking that a Skyrim clone is a good place to start). Think up a basic idea of something small... then cut it in half (because I can guarantee you it'll still be too big in scope).

I'm always a fan of seeing people learning to develop games! Good luck!

u/donalmacc · 3 pointsr/gamedev
u/CFusion · 3 pointsr/programming

Some things:

GPU Pro is the sequel to the ShaderX series, its mainly just a rename not much has else has changed.

GPU Gems 3 is available for free here:

GPU Gems, GPU Pro, and ShaderX(excluding the first 1-2 books) are basically collections of rendering techniques and tricks, they don't cover any basics, so you probably shouldn't buy them if you are looking for an introduction.

While books like the Black book and Graphics Gems are an interesting read, a bit too much stuff in them are somewhat redundant.

The "Must reads" on the site are pretty good, depending on your background you maybe want to also read a Math book. like:

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/Rubuler · 3 pointsr/gamedev
u/Droidaphone · 3 pointsr/tabletopgamedesign

Challenges for game designers is a highly recommended book, although it is not designed to be used with kids. Might have good exercise ideas, though.

Edit: also, will there be time to play games? Playing some simple games and breaking down the mechanics involved, like deduction, set collection, drafting, etc, could really be illuminating.

u/hickory-smoked · 3 pointsr/boardgames

I've just started reading Challenges for Game Designers. It comes highly recommended.

I would also suggest looking into Cheapass Games and their theories on design, which are largely about reusing components common to all games.

u/MITGameLab · 3 pointsr/IAmA

This course is just intended to be introductory, so yes, there's plenty of things to learn after this first step.

The most important goal is to figure out how you can keep practicing, and for that you need to be able to share and discuss your work with others. If you manage to find local game designers while taking this course (e.g. fellow participants of 11.126x) the next step might be to start a project with them. I also love game jams, which are like game hackathons. The Global Game Jam happens every year in late January, and if making a game in 48 hours sounds appealing to you, it's a good challenge.

There are quite a lot of good books I'd recommend. Challenges for Game Designers (Brathwaite/Romero & Schrieber) is probably a good second step after our class, especially if you're focusing on card/board game design. If you're looking for reading that's focused on more digital design, look at Game Design Workshop by Tracy Fullerton.

Also, I have a whole lot of classes on MIT's other online courseware site, OpenCourseWare! Just search for "Philip Tan".

u/Mole12a · 3 pointsr/tabletopgamedesign

Challenges for Games Designers is a book I regularly recommend when people ask me for a book.

Otherwise it's just lots of work, Games Design is like a muscle it gets easier and stronger through use.

u/jlapegna · 3 pointsr/gamedesign

Run through the exercises in this book: They are all non-digital games, but that's they best way to start to understand how to design games. Each chapter goes over some key concepts and then presents challenges that enforce them.

u/SilentBlizzard1 · 3 pointsr/mead

This one is more just baked goods, but Magnus does have a Nordic Cookbook that's also worth a look through.

If you're a gamer at all, the book that brought me to this sub to learn more about mead was The Elder Scrolls Cookbook. Fun recipes, even if you're not trying to recreate something from the game world.

u/Kriv_Dewervutha · 3 pointsr/mead

It is the official Elder Scrolls Cookbook

u/CMDR-Droslash · 3 pointsr/skyrim

For those interested :

The Elder Scrolls V: Skyrim - The...

u/ladynerevar · 3 pointsr/teslore

Check out this baby. It collects a lot of books from the single player games and pairs them with nice artwork. There's an ESO version, too.

u/test_kenmo · 3 pointsr/nintendo_jp




u/Adamantum1 · 3 pointsr/AmiiboCanada

Thanks, ordered the Breath of the Wild CE guide for $27.59. Seemed like a good price.

u/nightsongws · 3 pointsr/Breath_of_the_Wild


In addition to the farming:

Like the original guide, it comes with a map with Korok seed locations -but- I would highly recommend using the atlas unique to this guide instead. I was very, very careful with my poster-sized map but it still wore out fairly quickly. You don't have to worry about the atlas in the expanded guide wearing out nearly as fast.

u/richarizard · 3 pointsr/truegaming

You have quite a bit of research to back you up. James Gee out of Wisconsin is one of the more outspoken advocates of what you just said. Learning takes place through video games, even if it's not the kind found on standardized tests. In fact, the sources are endless. On top of that, don't even be so quick to dismiss edutainment. Some 2004 research suggests that those trivial edutainment games still increase learning. It's probably because even though the content is dry, simply being a video game is enough to increase motivation and self-efficacy. Practically any well-designed video game has potential, with some especially interesting work happening right now with Portal.

u/OldSchoolIsh · 3 pointsr/tabletopgamedesign

This book is great:

Characteristics of Games by George Skaff Elias, Richard Garfield and K. Robert Gutschera

u/spudboy555 · 3 pointsr/tabletopgamedesign

Characteristics of Games is a touch dry but it goes into pretty good depth.

u/logsinh · 3 pointsr/DotA2

Dude earned a Ph.D. in combinatorial mathematics.. I'm going buy his book

u/Slurmsmackenzie8 · 3 pointsr/tabletopgamedesign

I would always suggest starting with Characteristics of Games before diving deeper.

u/gamerhetor · 3 pointsr/Gaming4Gamers

Many of the suggestions on this list are great (Koster's "A Theory of Fun" is especially good in my opinion), but one of the best books I've read is Katie Salen and Eric Zimmerman's "Rules of Play".

In some ways it's an introduction to game design for designers, but it's way more than that - it touches on the philosophy behind "play" and "games," histories of gaming, personal anecdotes, insights from famous designers and way more.

You can ind a PDF of it very easily on Google, but I think buying it is very, very much worth it.

Also, as a shameless self-plug, I did my PhD work on videogames so I'm happy to talk about resources etc. - PM me or reply and we can chat about it!

u/thrakhath · 3 pointsr/gamedev

Rules of Play is an amazing book, it's a shame you haven't read it. Its one big drawback is that it focuses very little on video games in particular and goes in-depth on what separates games from non-games, and how various kinds of games are constructed.

It may not be useful to someone looking to get their hands dirty and start throwing Flash at the Internet, but it's a very good "big picture" book when you want to know more about the philosophy and mindset of building games. How to encourage behaviors, how to subtly direct play so your players don't get lost or confused, how and why you give feedback via play mechanics, and things like that.

u/absolutedestiny · 3 pointsr/gamedev

For basic Ludic principles, you will probably want to read Rules of Play at least.

Software isn't important (yet - you will be led to that by your programming), being able to draw isn't important though it can make things easier when you are on your own (you will need for sure to know how to use Photoshop or Gimp), actually making things and working out what is fun is important. For that, I'd recommend, while you are learning the basics of programming, making card games and board games. Then, once you have some programming basics, try and make a computer game - either an implementation of one of your physical games or to try making your own versions of classic games (lightbikes, pacman, breakout, rtype, pretty much every game made before 1985 that isn't Elite can be made by a beginner). You can also try focusing on making something classic but playing with one element of the gameplay and seeing where that takes you.

u/r0bbie · 3 pointsr/gamedev

Have to add another recommendation for The Art of Game Design by Jesse Schell. A Theory of Fun for Game Design by Raph Koster is also a very good, accessible read (and heavily illustrated, which is always nice!)

Finally, Rules of Play: Game Design Fundamentals is good for a more exhaustive, technical look at game design theories.

u/tanyaxshort · 3 pointsr/gamedev

For game DESIGN, I personally like A Book of Lenses and Rules of Play. I didn't get much out of Theory of Fun, and the internet seems to like Level Up! but I haven't read it.

And none of those teach you really about game DEVELOPMENT -- the process, gameplay architecture philosophies, the pipelines, the team structures, the milestones, the industry jargon. The closest I've seen to that is having a games producer de-code chapters of Rapid Development for how it relates to games, back before I joined the industry and had my trial by fire. :)

Do you know what kind/platform/genre of game you're making, and what size the team is?

u/Jay_Santos · 3 pointsr/brasil

(Re)lendo o Rules of Play, livro sobre game design bem interessante.

u/basecmd · 3 pointsr/letsplay

Great questions!

G4tv's Filter example:
G4tv's Icon example:

While G4 had the ability to have gaming journalist on their shows (with a mix of fans) at this point, we won't, and I don't think they are necessary at this point. That's not exactly what we're looking to develop. You could read books based on the history of video games and get some much more from them than a video could ever provide (, but ours isn't just the facts on the history of video games, it's the stories of those who were playing. I think a roundtable debate-type show would work wonderfully with industry veterans in a podcast, but that's not what we are working at.

We want to build a show that gives you the history and the story of the console/game/company, but also the perspective of the people who were playing the games, following the companies, and the impact it had on them. The countdowns are decided by industry professionals but by the people participating and the viewers themselves.

I really like the idea of what you're talking about, but that's not quite what we're going for at this time.

u/Exl · 3 pointsr/pcgaming

Raising the Bar is pretty good, if somewhat difficult to find a hardcopy of.

u/TVMessiah · 3 pointsr/DotA2

I couldn't find it either, BUT I discovered that there is a book about the Half Life games!!!!!!!!!!!!!!!!!!!
GET ON THIS EFFIN HYPETRAIN BOYS!!!!!!!!!!!!!!!!!!!!!!!!

u/scswift · 3 pointsr/ValveIndex

If you want a book about the making of Half Life 2 with lots of concept art, there is one already:

u/munificent · 3 pointsr/gamedev

Yup! I have limited control over this, but I'll try to get it everywhere I can. has it for sale now.

u/Javin007 · 3 pointsr/gamedev

I'd put them in this order: Experience, Knowledge, Portfolio, College

Nothing beats experience, and with it will come the knowledge. But it always helps to spend your free time reading, too. There's tons you can learn from books that will slip by you, even after decades of experience.

Then, a portfolio of your previous work is always more telling than a piece of paper saying you managed not to party yourself into a failing grade. (I'm a little salty about college.)

Game Patterns are going to be your most important thing to know if you want to get on the coding/development side. There's a book by Robert Nystrum - who worked for EA, and hangs out here on Reddit - that is one of my favorite books on programming patterns to date (and the patterns are not limited to game design). I would strongly recommend this as a starting point for any game dev.

Scrum is fine and dandy if you're working on a small team, but I wouldn't focus too heavily on it, especially not if you intend to work alone. Even if you're going to work on a small team, Scrum is a development lifecycle that you can learn in 6 minutes by looking at a chart. Don't worry about it.

The language of your choice is going to primarily be driven by what platform you're designing for, and what kind of game. Working on a AAA title? You're probably going to be in C++. Working on a game for Facebook? Probably going to be in Flash. Working on a game for cell phones? Probably going to be in Java. Looking to make a simple DirectX (windows only) game? Probably going to be in .NET.

As for anything else (assets / scripting / etc.) this will come with time. I would strongly recommend you start with a very, very simple do-it-yourself game (think Tetris). Even if it's a clone of another game. (But don't clone Tetris. They LOVE to sue people.) Minesweeper is always a good one to start with (being a strictly event driven game, you can whip up a fully functioning mine sweeper in an afternoon).

Then move on to another simplistic 2D game. (I feel like everyone should start by making an Arkanoid clone, though I've also helped people make simple 2D racing games and such.) Finally, move on to making something a bit more complex that would be worthy of your portfolio, without trying to jump into the next great MMO.

And who knows, maybe even one of your tech demos can make you filthy rich. (We all dream of being the next "Notch" with Minesweeper I meant "Minecraft"...)

Edit: I also left out the possibility of using a game engine for your development. Unity is popular, but there are more game engines out there than you can shake a stick at.

Personally, and this is strictly personal preference, I prefer the flexibility given by rolling my own code. Game engines can cut your development time by YEARS, but then you're forced to find, and work around any quirks or limitations the engines have (and they all have them). I find that so unbelievably frustrating to run into a wall like this that I'd rather take the extra eons to roll my own. (But then, I've never managed to release a completed commercial title, so there's that.)

u/philintheblanks · 3 pointsr/webdev

I agree with learning vanilla js, but I would add that you should be looking at things like the DOM specs. To me, it's like building a house. These are the things that all the houses (frameworks) are build from. You don't need to be able to build a house, but knowing the basics can save you from huge mistakes, or just serious time wasting. Knowing the basics means that you know what the frameworks are there to help with, which means that you can evaluate their weaknesses and strengths yourself, and then you won't need to ask other people what they think.

I'm currently working through Professional Javascript for Web Developers, and just the first few chapters I've covered have me blown away at how little I actually knew. I've done tons of online tutorials and courses, and this book blows them all out of the water completely. But keep in mind that I'm the type of guy who really hates not knowing how things work. I don't want to do something just cause "that's how you do it", I want to do something because "that's the best way to do it right now, here's why..."

u/jelleyboy7 · 3 pointsr/gamedev

Level Up! 2nd Edition by Scott Rogers - funny, accessible and packed with knowledge. Much lighter than The Art of Game Design if you're looking for an entry point.

u/thisisatempaccount93 · 3 pointsr/gamedev

I've decided that for my summer project before starting university I'm going to make a game with hopes that it will be somewhat similar to the kingdom hearts series.

As a 3D artist I have a lot of work cut out for me, especially considering I have about 3 and a half months to do this. I hope to do it all using just UE4, 3DS Max and Photoshop, being solo the whole time. Now I just need to go back through my old work to refresh some key aspects to game design and read this book again.

Wish me luck!

u/MeatsNZ · 2 pointsr/suggestmeabook

Reality is Broken by Jane McGonnagal

It's non-fiction about the way video games can impact society.

u/bluo100 · 2 pointsr/IWantToLearn

In short, real life isn't really designed like games are so you don't get as much of the positive feedback sort of stuff in day to day life as you do in games. There are ways to 'gamify' parts of your life though, to make them more enjoyable and such to do. If your interested in this sort of stuff and how you(and the world at large) could incorporate it more, I recommend this book by Jane McGonigal, Reality is Broken.

u/margalicious · 2 pointsr/Random_Acts_Of_Amazon

I draw Good :3 I embraced my inner spirit and really captured my essence.


Item (used)

Thank you for the contest!

u/Hargbarglin · 2 pointsr/classicwow

One of my favorite books is Characteristics of Game Design (

By suggesting the possibility of a system that is absolutely not an inference that I "want" said system or that I think it's "good" or alternatively "bad". I am well aware of what terms I used, what they could mean, etc. but for a conversation like this I didn't think it was worth a whole lot of thought. I was just saying that such a thing "could" exist. But now it's stuck in my head a bit.

A really small "deck" mechanic that could possibly be scaled to mmo action game speeds might be something like the Crusader class from 3.5 D&D in The Book of Nine Swords. I had to refresh myself a bit on how it worked.

They start with five "manuevers" at first level, but when they start combat they only have two of those readied. You "could" use dice or any other random method to determine which ones in table top, but cards were a pretty convenient way to do that. It was a tiny deck, but still a deck. You would get back additional manuevers every turn. Where it got interesting was eventually between some feats (and stances?) and more manuevers at higher levels and some class features they could be played quite a bit like an MMO tank, shrugging off a portion of damage and using that to reset some of their manuevers.

It was a small enough number of decisions that I think you could play something like that pretty quickly. Maybe throw in something like the world of warcraft monks stagger mechanic where as they mitigate damage they add "wound cards" to the deck and they can clear "wounds" with certain manuevers, or take more of them or use them to deal damage with counterattacks.

u/gr9yfox · 2 pointsr/boardgames

I've been meaning to read Characteristics of Games. It's the textbook that Richard Garfield uses in his game design classes.

u/razcrux · 2 pointsr/duelyst

Not sure why my post gets downvoted? Lol, i guess i should just not respond?

anyways, here is one book. It's very general but actually really valuable as a starting point

u/gte910h · 2 pointsr/boardgames

Set additionally REALLY pisses people off because of the hand occlusion cause by the mechanical laying out of the cards.

But things based of mental skills like set are really only fun when played with things that dim those mental skills. Otherwise, it's more a test of "who's best at pattern recognition" by the third game.

In games with too much skill and too little randomness, enjoyable games are really only possible with someone of almost the same skill level. by George Garfield (the creator of Magic) talks about this and many other game topics. Ebook available here

u/ASnugglyBear · 2 pointsr/boardgames


are both great books about dissecting strategic situations. It will really help.

When playing with repeated partners, it's also a problem they know how YOU play. It's important to vary strategies sometime so you don't cede the field to your partner.

u/ClayCrucible · 2 pointsr/boardgames

The book Characteristics of Games does a good job of talking about strict elimination versus logical elimination versus effective elimination. I think this is relevant here.

Strict elimination: The player is literally out of the game.

Logical elimination: The player can't win, but they're still in the game (aka mathematical elimination).

Effective elimination: While there's a theoretical chance the player could win the game, it's not realistically going to happen.

Strict elimination isn't a problem (except for the player who has to twiddle their thumbs while everyone else keeps playing). It can be boring for the eliminated player, but it doesn't break the game.

Logical elimination is horrible. It can lead to kingmaking in multi-sided games.

Effective elimination is almost as bad, because the effectively eliminated player may want to be done, but the other players will want them to play it out since there's still some uncertainty.

So, back to the original question: If the game has reached the "logical elimination" point, as in the original example, I think it's appropriate for the losers to congratulate the winners on their victory. "Ah, good game - you've got the win. Congrats. Another game?" Forcing the eliminated team to go through the motions seems like the worse evil to me than denying the victors the pleasure of the final couple of moves toward the official victory.

Effective elimination would be trickier. One player / team feels that the other has an insurmountable lead, though they theoretically have a shot at victory. In this case, the game should continue, but everyone should try to make it end as soon as possible. (For instance, being down to just a couple of territories in a game of Risk.)

These issues can be a symptom of poor game design. Fortunately, they're rare in most modern board games.

u/Danwarr · 2 pointsr/boardgames

You might want to give a few of these a read before diving right in. Just because you have some experience playing various games does not mean that experience is going to completely transfer over to game design.

Kobold Guide to Board Game Design

Characteristics of Games (MIT Press)

The Art of Game Design: A Book of Lenses, Second Edition

u/jmarquiso · 2 pointsr/truegaming

Rules of Play and The Game Design Reader by Katie Salen and Eric Zimmerman are great reads about the craft and art of play. Here they are attempting to establish a critical vocabulary to handle games as pop culture. If you're serious about taking games as an art, they're very interesting reads. The Game Design Reader is my favorite.

Also, heard some great things about Janet Murray
s Hamlet on the Holodeck. This was written around the time of Star Trek: The Next Generation, as well as a time when Adventure Games were king. It's interesting to me essentially because this futurist look at video games as entertainment actually doesn't follow the progression in the last 20 years. That is, until recently with Quantic Dream and Telltale games. That said, I've become even more interested in looking at Mechanics as vocabulary (see the other front page thread about Mechanics that tell a story).

Hope these help.

u/OpSmash · 2 pointsr/gamedev

A good starting point is to identify what you want to do exactly. Find your focus on what you plan on attempting, then think smaller. Most first projects are very ambitious (while good) can lead to you making something not worth your time, headaches and just frustration.

However with that being said, here’s a few ideas to help get you started. If you want to just jump in and get your hands dirty and start working on a visual level you can try these programs:

  • Game Maker / Studio GameMaker
  • RPG Maker RPG Maker

    More Advanced:

  • Flash Adobe
  • Unity Unity

    Alternatively in conjunction of playing more games in your lifestyle, I would highly recommend you start to read blog posts, writings and articles on game design, theories and practices as well what industry leaders are talking about. While most people who love and have a passion for games watch game reviews, you’re going to want to focus onto sites like:

  • Gamedev
  • Gamasutra Gamasutra

    A book you may want to consider picking up:

  • Rules of play Amazon link
    Back to your original topic about programming. While doing all of these so you understand what it takes to make a game, how a game shapes or how a game can be fun its time to start learning the important type. Which is the programming side. Now before you continue, programming isn’t always for everyone, but don’t let that discourage you. You may find while programming you love it, you may find you don’t like it. Programming is a tool which you can add to your arsenal of design and implementation and its smart to grasp the basics if you plan to get into game development even if you find yourself not savvy in it.
    The game makers I listed above each have a language that works with them. For example Game Maker has GML which is its primary language. RPG Maker has RUBY as a base and they use RGGS3 (I think that’s the current revision). Flash uses a scripting/programming language known as ActionScript 2 or 3 depending on what your accomplishing. Unity 3d uses C# and Mono, Javascript and I think another language but don’t quote me on that.
    Since you want to start from scratch the only advice I can give you is this. Don’t give up. Keep persistant. I would recommend that you start at an entry language that helps break down a lot of the tedious tasks and makes it more adaptable towards learning such as Python.
    Some resources:

  • CodecademyCodeCademy
  • Learn Python the Hard Way Learn Python the Hard Way
  • Invent with Python Invent with Python

    I hope to see questions popping up as your understanding the basics of Game Design and game creation. It is always good to see people entering the field and tragic when people give up. Remember, start small. Do not expect to make a Minecraft clone within the first few days of learning a programming language, you need to practice and start small. Chances are your first few games are going to be clones of Snake / Pong / Tic Tac Toe etc. These are learning tools to help you understand how its created, the logic behind it and building/stepping blocks into a solid foundation.
    Don’t give up and start learning everything you can. Apply yourself and keep moving forward and you will do just fine. Welcome to the club!
u/awkm · 2 pointsr/gamedev

Need more information. Is this a hobby? Are you trying to program a game or are you trying to design a game? And just FYI, programming is hard... programming a game is the hardest. There are many movie parts to game programming. Just be aware of that.

If you're a hobbyist and you want to learn how to make digital games, start with an easy to learn programming language like Processing.

If you want to design games then pick up this book

If you want to jump into 3d, try out I recommend programming in C#.

If you're a hobbyist, you don't need to delve in super deep and use complicated tools. Processing is very friendly and was designed for graphic oriented designers to learn how to program. Unity3d makes it very easy to make 3d games with specialized IDE and interface.

u/kevodoom · 2 pointsr/IAmA

My recommendation for this would be twofold: Grab an Unreal 4 subscription and burrow through the ever-increasing collection of tutorials there. You'll learn the nuts and bolts of level development using the same tool the professionals use. To develop your design skills, there are three books I'd recommend you read, in this order: Raph Koster's A Theory of Fun, Jesse Schell's The Art of Game Design, and Katie Salen and Eric Zimmerman's Rules of Play.

Following these two tracks of learning the practical elements of game development along with the theory of why game design works the way it does will get you started on a good footing.

u/npcdel · 2 pointsr/RPGdesign

> I have no doubt that all of the other ones are amazing games.

Actually a lot of the games I mentioned are terrible or niche. I mentioned them because you need to play bad games to learn why they don't work. Basically, you need to have a vocabulary and literacy in games before you start designing.

Also, the "I'm only designing for my friends" canard (in addition to being the #1 backpedal the instant an amateur is challenged), is a bullshit defense because if you're designing for your friends and don't intend to publish then you don't need advice from us, just do your thing.

E: A few good books that you should read before designing anything: Robin's Laws by Robin Laws, and Rules of Play

u/raydenuni · 2 pointsr/tabletopgamedesign

If you can get away with a required book, I would insist you use Theory of Fun. It's not about boardgames specifically, but more about what is fun and why games are fun. It's quite easy to read (every other page is a drawing), but it's excellent and deep. It would definitely give you a good foundation to go on and talk about games from a more educated standpoint.

"Why do you like this game?" "Ok, do you remember where the book says that's a fun thing to do?"

Or look at some critically acclaimed games and see why they fall under good design, or some popular, yet poorly designed games and why some people don't like them (Monopoly for one).

Scott Nicholson had a great video series called Boardgames With Scott that might have some useful videos. He's currently at MIT on sabbatical doing game design/teaching research (looks like maybe he just finished).

If you're looking for a book for yourself,


    You'll notice a lot of them aren't specifically games, but deal with fun and play. It's important to understand those before you can talk about games. That is also a good topic. What is a game? How do you define it?
    I personally like Chris Crawford's definition, but you get a lot of backlash from the general public for such a strict definition, as if forms of interactive entertainment are somehow inferior if they are not "games."

    I'm just sort of rambling and vomiting thoughts here, but to summarize some topics I would want to go over:

  • History of games
  • Definition of a game
  • What is fun and play and how are those used to make good or bad games
  • Genres of games and how that affects design choices.
  • Pick a different game to teach and play each day/week? Perhaps at the beginning tell your students why a specific game is thought to be fun, and by the end ask them if they can recognize the major mechanics. You could start off a lesson this way and then revisit it at the end.

    Artificial intelligence could be an interesting side topic. Looking at search algorithms and how they are used to solve tic-tac-toe and how you use the EXACT same method to solve checkers or play chess and go (currently unsolved).

    If you do decide to talk about a variety of games, here are some I would suggest you look at:

  • Go, for its simplicity in rules and depth of strategy. I would consider it one of the most pure games.
  • Settlers of Catan for introducing euro-style boardgames to the USA and popularizing board games. Also involves heavy player to player trading.
  • The Resistance as a short-form hidden treachery and secret agenda social game.
  • Dominion as a game that introduced an entirely new genre that is now super successful. Also a good example of a multiplayer solitaire game.
  • Tic-tac-toe as a game whose depth ceiling is too low and complexity space is too small for humans.
  • Pandemic as a completely cooperative game (there might be a simpler game for this, not sure)
  • Can't Stop - a look at chance and how it can be used as an interesting core mechanic and not just a way to make things random

    As you can tell, I love stuff like this. Let me know what you think about my ideas, or if you want to talk more or throw ideas back and forth, feel free.

    Other sources:

u/GreatBlueHarron · 2 pointsr/tabletopgamedesign

Play a ton of games. Try games that are outside of your comfort zone! the Book Rules of Play is great too

u/ElGamerBroChris · 2 pointsr/gamedev

I found "Level Up! The guide to great video game design" to be an interesting book that describes on what you should aim for in your game mechanics, enemies and such. Plus pretty easy to read, both in length and content.

I haven't read this other one, but I've heard Rules of play is a pretty good one too.

Another great source are youtube channels. My personal favorite is Extra Credits. I'm just about to get into the industry so it might be worth keeping that in mind ^^"

u/jag986 · 2 pointsr/news

I'm not going to continue to argue with you because it's clear that we're not going to agree.

However, if you're interested in the evolution of the game industry, there are some good resources for you I can recommend. And yes, oversaturation was a problem but there were many societal factors as well.

This is a fairly concise article that could be a summary of which is more in depth but really recommended. I enjoyed it greatly, its fascinating.

u/namelessted · 2 pointsr/skyrim

Just giving a glance at the full playlist, I can see a couple of one-off filler episodes. I can also understand the need to expand to doing a genre episode, like MMO, instead of just sticking to a single company.

This kind of content in general is the stuff I love. The recent Game Informer has something like a 10 page article on Ubisoft that is absolutely great. One of my favorite books is still The Ultimate History of Video Games

I think I could literally watch 100 hours of content just like "All Your History".

u/abowlofcereal · 2 pointsr/Android

This was also the first arcade game that charged 50 cents instead of the de facto standard 25. Rather controversial, but justified when you consider the technology.

Also pulled out my copy. No mention there, but the Dragon's Lair unit cost $4,300 (which is just under $10,000.00 in today's dollars) which could justify a 100% price increase.

You can also google "dragon's lair 50 cents" and find plenty of other confirmations.

edit: added citation original PDF from Spartanburg

u/toilet_duck · 2 pointsr/gamecollecting

The hardware was licensed out by the creator, Trip Hawkins. If you really want some info on the history of video games, read this.

u/S7evyn · 2 pointsr/gamernews

Older Atari arcade equipment had a pretty interesting testing process. They had the biggest guy in the company try to break them. If he could break it, you had to redesign it.

I think this was the book I read that in.

u/SNESdrunk · 2 pointsr/retrogaming

I love books on gaming history. If you're interested, I'd recommend Steven Kent's Ultimate History of Video Games and David Sheff's Game Over

u/Arctem · 2 pointsr/HalfLife

I think this originally appeared in Half-Life 2: Raising the Bar. It only had a short print run, but PDF copies are floating around the web. It's a pretty neat book on the making of HL2.

u/justatypo · 2 pointsr/gaming

I effing love that book and I'm glad I got a copy while I still could.

u/WhosGotTheBugle · 2 pointsr/gaming
Have a look at that.
The books called 'Half-Life 2-Raising the bar'

u/little_charles · 2 pointsr/gamedev

This may be what you're looking for. I actually have a copy myself but haven't cracked it open yet :P

u/iperez · 2 pointsr/gamedev

Game Programming Patterns by Robert Nystrom. It started as a free online book, but he got it published so it's on Amazon now.

u/8a7e17035d · 2 pointsr/learnprogramming

What kind of games? Mobile games? Browser games? Desktop/console games?

If you're into building games entirely from the scratch and have it run on desktops and mobile devices, I'd suggest trying out the SFML framework (C++). They have some nice tutorials on their GitHub Wiki

Keep in mind that those are just the basics. If you prefer some more comprehensive literature, I'd recommend the following books:
Game Coding Complete
Game Programming Patterns
Game Engine Architecture

u/ryhex · 2 pointsr/gamedev

If you are looking toward application development(games or otherwise) I'd suggest looking at more practical beginning programming books, don't even worry too much about making a game yet or building complex algorithms. I've found the Head First series fairly good in the past, so maybe try out

Once you get your head around basic application development a bit more, I would highly suggest learning design patterns and can fully recommend the Head First book on that topic.
You can follow that up with the Game specific book on patterns,

With all of that you should have enough to start asking more pointed questions and being able to Google up useful answers and tutorials that will get you on the road to building games.

Edit: That said, if you are looking at doing to extensive AI programming, specializing in engine design or other systems type development, start looking for books on the topic that interests you most. It's pretty easy to Google up book lists on these kinds of topics, and from there you can cross reference recommendations and should be able pick out ones that will help you get started.

u/TheEskil · 2 pointsr/gamedev
u/ItsAConspiracy · 2 pointsr/webdev

Game Programming Patterns

Great book. Code samples are concise, mostly in C++ but simple enough to follow without being a C++ expert. Text is so well-written I'm enjoying reading the book cover-to-cover, it flows well and the author comes across as a naturally funny person. But you don't have to read it straight through, each chapter covers one design pattern and stands on its own, with references to the other chapters.

u/jwicked207 · 2 pointsr/learnjavascript

> Professional JavaScript for Web Developers

I don't know of any significant differences between editions but I'm using the 3rd edition(latest) published in Jan of 2012:

u/FooBarBazQ · 2 pointsr/learnjavascript

I've heard great things about Jon Duckett's JavaScript and jQuery - Interactive Front-End Development. Apparently the book's binding completely blows (pages falling out even with very little wear and tear), but the content is supposed to be really great for people just getting started with JavaScript and struggling with some of the core concepts. This book is made for visual learners, who get more out of diagrams, analogies, and examples than from reading long, tedious blocks of text.

In other words, this book seems to be great for JavaScript novices (and programming novices) who just want to jump in, learn some basic concepts from a well designed and easy to read book, and start actually working with some JavaScript in the browser. From the book's Amazon page, each chapter is described as follows:

  • Breaks subjects down into bite-sized chunks with a new topic on each page

  • Contains clear descriptions of syntax, each one demonstrated with inspiring code samples

  • Uses diagrams and photography to explain complex concepts in a visual way

    Once you're a bit more comfortable, the go-to book for beginner to intermediate JavaScript learners is Nicholas Zakas's Professional JavaScript for Web Developers. It's a much thicker tome, but covers more concepts in more depth.

    This book is much more than just "pure JavaScript outside of the browser" (it also contains lots of info/examples for doing real things in the browser), but it does go into great detail about all the intricacies, syntactical oddities, and gotchas of ECMAScript, which you do really need to learn to become a fully competent JavaScript developer. This book is also written well and is easy to read, but it's not designed/presented as nicely or simply as Duckett's book. The Amazon page says the book is written for the following three groups of developers:

  • Experienced object-oriented programming developers looking to learn JavaScript as it relates to traditional OO languages such as Java and C++

  • Web application developers attempting to enhance site usability

  • Novice JavaScript developers
u/schm0 · 2 pointsr/learnjavascript

No, I have not yet approached the instructor about this. The entire book uses inline HTML event handlers. Unfortunately, I am not in charge of choosing the books for our curricula.

I've already started reading about event handlers in javascript, and I have been supplementing my own education by reading Eloquent Javascript and Professional Javascript for Web Developers. However, for my class we're forced to read the book and use its examples.

I've already pointed out that one of the examples, when using the text provided from the textbook and even after converting to HTML5, simply will not work at all in IE. In another instance, we were doing online introductions and I mentioned I was working through EJ and she started asking me about whether or not I thought it would be good as a textbook in class. I'm pretty sure she's aware of the flaws of the book, but just hasn't been able to settle on a modern replacement.

It's driving me crazy to know that I'm not learning standard best practices, but I just don't know how to proceed. Do I really have to be "that guy" that calls the teacher out on their textbook? Is it ok for me to ask that I create all my event handlers properly in javascript instead of the way the book teaches?

u/xbrandnew99 · 2 pointsr/learnjavascript

I guess it really depends on what you want to use it for. Though as it is primarily the programming language for the (front-end) web, i'll assume more or less towards that.

Do you have any html/css knowledge? I'd definitely agree with others that the best way to learn is by doing. This method of learning became a lot easier for me once I was able to start manipulating elements of a webpage; it became much more intuitive and concrete a learning experience. Some basic things to do may include storing html elements in JS variables, attaching events to these elements - for example clicking on en element will execute some code, manipulating other elements' css, creating or removing elements from the page. (the JS library jQuery will be your friend here)

I like this site:
You'll be prompted to complete challenges which actually accomplish a, small, but technically useful goal, such as writing a function which takes a string of text, and returns the string with each word in reverse order. This was a nice 'next level' for me after doing codecademy.

Professional JavaScript for Web Developers, while lengthy, gave me a comprehensive and best-practice-filled ground-up walkthrough of basic JS. If you're comfortable with codecademy's JS course, this may be a good next step. I definitely felt a very distinct difference in my JS knowledge before and after going through this book.

The javascript jabber podcast was also pretty helpful to me in just listening in on experts in the field talk about the current state of JS. While my first months of listening, the discussions were 90% over my head, I picked up on the terminology, some popular tools, and just the JS environment at large. Easy enough to just have on in the background, commuting, whatever.

Finally, this subreddit, and sometimes r/learnprogramming have some helpful discussions to keep an eye out for.

u/ngly · 2 pointsr/web_design

JavaScript books I'd recommend:

JS Good Parts. Short read but interesting and important concepts covered.

Professional JavaScript for Web Developers. Covers every detail of JavaScript in web development. Huge book with about 900 pages of information. This covers all the technical details from syntax to core concepts.

I haven't read the one you linked, but have seen it around. It's probably good.

u/bradcliffe · 2 pointsr/learnprogramming

It will probably serve well enough off as a starting point. It looks to cover a broad range of topics as they pertain to computing, so it certainly wouldn't hurt if you're unfamiliar with those concepts listed in the syllabus. Perhaps such a broad exposure might help some particular facet of computer science really stick out to you as a road you'd like to travel down.

What concerns me is that the course is taught using a stripped down version of JavaScript. I'm not exactly sure what is meant by this--if it's an actual variant of the language or just a "don't bother setting up the template, here's the snippet for this exercise" type deal. CodeAcademy does a lot of the latter--which is fine, but again can leave you with a sense of doing something without truly knowing how to pull all the pieces together.

If you're set on learning just the language of JavaScript really well, bookmark 'JavaScript Is Sexy'. It's maintained by a fellow Redditor and has proven a comprehensive approach to learning the language correctly. Of the two books he recommends, you're definitely better off getting Professional JavaScript for Web Developers by Zakas. Follow the course and advance through it the later stages of intermediate and advanced JavaScript. By then you should be feeling comfortable enough to dabble. Then start looking at frameworks (Ember.js, Angular.js, Knockout.js, Backbone.js) and possibly some server-side stuff like Node.js.

u/saturdayplace · 2 pointsr/javascript

I haven't got more that a handful of chapters in, but so far I really like Professional JavaScript for Web Developers

u/U3011 · 2 pointsr/web_design

Here's a good list I keep posting because people often ask the same question - not like it's a bad thing.

In any case follow the below, but I really suggest for total newbies to first go through the course Codecademy offers. It won't teach you much in how to do things but the syntax education is good. Follow their HTML and CSS courses and when you're done, create a site using just HTML and CSS. Once done, try to emulate a few of your favorite sites using just these two languages.

Once done you should check out the free 30 day Tutsplus courses on HTML/CSS and jQuery. At some point you will want to go back to Codecademy and take their JS course. Syntax and method of doing or starting certain things is important. It's incredibly easy to pickup the actual methods of doing things once your head understands the syntax used.

Any form of education that follows a hierarchical format makes for easy learning.

Codecademy isn't bad. It won't teach you much in the way of doing things but it does teach you the way to type out code, the general process and stuff. I can't speak for myself because I work as a professional developer and have been tinkering with code for 10 years now, but I did give the first lesson to one of my brothers. He's not great with computers or the Internet, but he was able to follow the first two sections of the basic HTML/CSS course and able to make his own site albeit very basic in nature nearly a month later (3 week gap following him doing the lessons). He was able to do a rough basic site of his Facebook profile, and he nailed it. It should open doors for you in terms of having the basic knowledge of how to do things. It'll allow you to read more advanced stuff and pick it up much faster than if you hadn't.

Below is a list I sent to someone on here a while back.


>PHP and MySQL Web Development (4th Edition)
>Beginning PHP and MySQL: From Novice to Professional
>Read the second book, do all the examples, then go back to the first book. Pay a lot of attention toward array manipulation. When you're comfortable with that, get into OOP. Once you do and OOP clicks for you, you'll be able to go to town on anything. I've heard a lot of good about Jefferey Way's video lesson courses over at TutsPlus. I've never used them nor do I need to, but I've never heard a single bad thing about their video courses. Their Javascript and Jquery is a great starting point. This is great stuff too if you're willing to put in the time.
>Professional JavaScript for Web Developers
>JavaScript: The Definitive Guide: Activate Your Web Pages
>Responsive Web Design with HTML5 and CSS3
>The Node Beginner Book
> Professional Node.js: Building Javascript Based Scalable Software
>Paid online "schooling":
>I've got a shit ton (Excuse my French) of books in print and E-Format that I could recommend, but it would span a couple pages. Anything is easy to learn so as long is it's served in a hierarchical format that makes it easy to absorb the information. A year ago I started to learn Ruby and using ROR as a framework. I can say it's been quite fun and I feel confident that I could write a fully complete web app using it. I started node.JS a few months ago, but it's been on break due to being sick and some unexpected events.
>My knowledge is extensive only because I wanted it to be. I'm not gifted by any means nor am I special. Not by a longshot. Some people are gifted when it comes to dev and design, most are not. Most only know one or the other. I forced myself to learn and be good at both. I'm 23, I started when I was about 12. I'm only breathing more comfortably now. I know a load of people on here and other sites who make me look like complete shit.
>Also for what it's worth, sign up to StackOverflow. It's the bible and holy grail rolled up into one site. It's amazing.
>Hattip to /u/ndobie
>> CodeAcademy
Team Treehouse
> CodeSchool. This is more programming but still very useful & has free stuff.
> Google. Probably the best way to find out how to do something specific.
This subreddit. If you have any questions about how to do something, like parallax scrolling, try searching for it, then ask, make sure to include an example of what you want if you don't know what it is called.

u/larprecovery · 2 pointsr/web_design

this book is like a religious experience

Also, look into the Smashing Library

u/torvold · 2 pointsr/web_design
u/seg-fault · 2 pointsr/learnprogramming

No problem. I think I answered all of your questions, then, but if you're still a bit shaky on anything, don't be shy to ask more questions.

If you're serious about good user interaction on your sites, I highly recommend JavaScript. I was in your boat too for a while. I didn't find any value in JS beyond making quick popups or input validation.

However, after working at my current job where I did much more client-side programming in JS, I truly appreciate the value of the language. It has evolved far beyond its initial intentions.

If you want to be a real JS guru, read this book cover to cover. Even if you don't want to be a guru, it is a very helpful reference:

Professional JavaScript for Web Developers

u/Invisig0th · 2 pointsr/gamedesign

Your question is based on some flawed assumptions, which makes it hard to answer. Any game programming 101 course will tell you that strict realism makes a terrible game. That's been known since video games were first invented.

Pretty much nothing you've ever seen in a video game is programmed to be "realistic". Take for example jumping. You've never seen a game where jumping was programmed as authentic jumping for a human body, because that kind of movement feels horribly flat and unresponsive in a video game. So instead, game programmers add things like acceleration curves, sticky platform edges, changing direction in mid-air, etc. None of that is realistic in the slightest, but it makes for a much more fun game. Even the most so-called realistic games routinely take this approach, it's pretty much universal. Realism is generally the first thing sacrificed when trying to make a game more enjoyable to play.

So if you are serious about this, I would strongly recommend you read some of the popular books explaining how to design and program a game. They deal with this issue extensively and early. Here's the one I had in mind regarding this particular question. I believe there's a whole chapter on this very issue.

Level Up! The Guide to Great Video Game Design

u/robtheskygames · 2 pointsr/TGDRT

Not precisely, no. I own Level Up! The Guide to Great Video Game Design which is pretty good, and does cover some building block mechanic type stuff. But it also has a lot on character design, story, and craft (like game design documents and stuff) as well.

u/sthmc · 2 pointsr/gamedev

This book breaks down gameplay mechanics, level design and such. It's a really fun read.

u/BraveNewCurrency · 2 pointsr/ChipCommunity

> I would like your help pointing (pun intended) me in the right direction

No, no, you want some pointers for what to do next.

You can't learn just by looking. You need to pick a goal, then try to implement it. When you have very specific questions, you can ask here or stackoverflow. Don't do something complicated at first: Start with a trivial game like tic-tac-toe. Get it all working end-to-end, then start adding features to transform it into something interesting.

But don't forget this is an entire Linux-based computer, so you don't have to only use the tools that came with it. There are 1000s of games for Linux, and hundreds of game-building environments. Plus, there are lots of languages (Python, Lua, Ruby, Go, NodeJS, etc), and plenty of ways to paint a GUI (i.e. SDL, OpenGL, etc).

In many games, they only use C++ for the low-level bits, then wire up the high-level logic with a scripting language like Lua.

P.S. I've heard this is a good book.

u/Jason_Wanderer · 2 pointsr/u_Jason_Wanderer

There was also another good quote about the "Mexican Pizza" strategy (which referred to some fast food chain having a pizza taco basically), which basically described taking two seemingly unrelated things, tossing them together and making something strangely appealing. Simple concept, but quite effective.

From this book, if you're interested. It discusses the game design process in a streamlined way, definitely helped me when I started learning about it all.

u/dudeman21 · 2 pointsr/gamedev

Game Engine Architecture is a pretty good overview of how to put a game engine together in general, from tools to graphics to game-play systems. You can pretty easily take what's in it and use it to make a 2D game. (3D math is also useful in 2D!)

Edit: Game Coding Complete ( was also a decent read, though not nearly as in-depth as Game Engine Architecture.

u/kzisor · 2 pointsr/gamedev

I've been doing a lot of research lately on the best books in programming in general to start a blog about each one and their importance to an inspiring developer. These are two of the books which will help you greatly getting started on designing your first game.

The first book is completely about design patterns, you will need to learn about these as creating software in general requires knowledge of how specific design patterns work and when you should use those patterns. The second book in the list is a complete guide to creating a small sample game, albeit not in libgdx, it should provide you with enough material to get you started.

  • Design Patterns
  • Game Code Complete

    I also recommend the Game Programming Patterns and Game Engine Architecture books which were stated in a previous comment. I have both these books as well as the Game Code Complete book and will be buying the Design Patterns book I mentioned as it is the most highly recommended book for any developer.
u/CodyDuncan1260 · 2 pointsr/gamedev

Game Engine:

Game Engine Architecture by Jason Gregory, best you can get.

Game Coding Complete by Mike McShaffry. The book goes over the whole of making a game from start to finish, so it's a great way to learn the interaction the engine has with the gameplay code. Though, I admit I also am not a particular fan of his coding style, but have found ways around it. The boost library adds some complexity that makes the code more terse. The 4th edition made a point of not using it after many met with some difficulty with it in the 3rd edition. The book also uses DXUT to abstract the DirectX functionality necessary to render things on screen. Although that is one approach, I found that getting DXUT set up properly can be somewhat of a pain, and the abstraction hides really interesting details about the whole task of 3D rendering. You have a strong background in graphics, so you will probably be better served by more direct access to the DirectX API calls. This leads into my suggestion for Introduction to 3D Game Programming with DirectX10 (or DirectX11).


C++ Pocket Reference by Kyle Loudon
I remember reading that it takes years if not decades to become a master at C++. You have a lot of C++ experience, so you might be better served by a small reference book than a large textbook. I like having this around to reference the features that I use less often. Example:

//code here

is an unnamed namespace, which is a preferred method for declaring functions or variables with file scope. You don't see this too often in sample textbook code, but it will crop up from time to time in samples from other programmers on the web. It's $10 or so, and I find it faster and handier than standard online documentation.


You have a solid graphics background, but just in case you need good references for math:
3D Math Primer
Mathematics for 3D Game Programming

Also, really advanced lighting techniques stretch into the field of Multivariate Calculus. Calculus: Early Transcendentals Chapters >= 11 fall in that field.


Introduction to 3D Game Programming with DirectX10 by Frank. D. Luna.
You should probably get the DirectX11 version when it is available, not because it's newer, not because DirectX10 is obsolete (it's not yet), but because the new DirectX11 book has a chapter on animation. The directX 10 book sorely lacks it. But your solid graphics background may make this obsolete for you.

3D Game Engine Architecture (with Wild Magic) by David H. Eberly is a good book with a lot of parallels to Game Engine Architecture, but focuses much more on the 3D rendering portion of the engine, so you get a better depth of knowledge for rendering in the context of a game engine. I haven't had a chance to read much of this one, so I can't be sure of how useful it is just yet. I also haven't had the pleasure of obtaining its sister book 3D Game Engine Design.

Given your strong graphics background, you will probably want to go past the basics and get to the really nifty stuff. Real-Time Rendering, Third Edition by Tomas Akenine-Moller, Eric Haines, Naty Hoffman is a good book of the more advanced techniques, so you might look there for material to push your graphics knowledge boundaries.

Software Engineering:

I don't have a good book to suggest for this topic, so hopefully another redditor will follow up on this.

If you haven't already, be sure to read about software engineering. It teaches you how to design a process for development, the stages involved, effective methodologies for making and tracking progress, and all sorts of information on things that make programming and software development easier. Not all of it will be useful if you are a one man team, because software engineering is a discipline created around teams, but much of it still applies and will help you stay on track, know when you've been derailed, and help you make decisions that get you back on. Also, patterns. Patterns are great.

Note: I would not suggest Software Engineering for Game Developers. It's an ok book, but I've seen better, the structure doesn't seem to flow well (for me at least), and it seems to be missing some important topics, like user stories, Rational Unified Process, or Feature-Driven Development (I think Mojang does this, but I don't know for sure). Maybe those topics aren't very important for game development directly, but I've always found user stories to be useful.

Software Engineering in general will prove to be a useful field when you are developing your engine, and even more so if you have a team. Take a look at This article to get small taste of what Software Engineering is about.

Why so many books?
Game Engines are a collection of different systems and subsystems used in making games. Each system has its own background, perspective, concepts, and can be referred to from multiple angles. I like Game Engine Architecture's structure for showing an engine as a whole. Luna's DirectX10 book has a better Timer class. The DirectX book also has better explanations of the low-level rendering processes than Coding Complete or Engine Architecture. Engine Architecture and Game Coding Complete touch on Software Engineering, but not in great depth, which is important for team development. So I find that Game Coding Complete and Game Engine Architecture are your go to books, but in some cases only provide a surface layer understanding of some system, which isn't enough to implement your own engine on. The other books are listed here because I feel they provide a valuable supplement and more in depth explanations that will be useful when developing your engine.

tldr: What Valken and SpooderW said.

On the topic of XNA, anyone know a good XNA book? I have XNA Unleashed 3.0, but it's somewhat out of date to the new XNA 4.0. The best looking up-to-date one seems to be Learning XNA 4.0: Game Development for the PC, Xbox 360, and Windows Phone 7 . I have the 3.0 version of this book, and it's well done.

Source: Doing an Independent Study in Game Engine Development. I asked this same question months ago, did my research, got most of the books listed here, and omitted ones that didn't have much usefulness. Thought I would share my research, hope you find it useful.

u/hakura11 · 2 pointsr/gamedev

Game Coding Complete

I have a pdf of this book which covers a lot of the basics and some advances stuff of making games. It is focussed on programming and includes code snippets and lots of examples.

u/DanBrink91 · 2 pointsr/gamedev

I don't know enough to answer you without knowing I'm not completely wrong but I can point you in the right direction.

I recently purchased Game Coding Complete
and it describes a model very similar to what you're talking about (separation of game and rendering). I can't recommend this book enough, I'm only 5 chapters in and I'm already loving it. The fourth edition is freshly updated as well.

Here's the source code from book Maybe you can answer your own question by reading it (its C++ / directx)

Sorry if you have no interest in buying a book but what you described fit the book fairly well, Good luck!

u/Iamblichos · 2 pointsr/dwarffortress

You may want to check out this book:

Getting Started With Dwarf Fortress

He walks you through from the basics of setting out, setting up forts, getting dug in, getting crafting started, beginning a military... so much information! It's also illustrated and very easy to read.

While the information covered is for the last version (0.34.11), it all carries over and will teach you the basics you need to know. Once you understand the fundamentals, THEN the !!FUN!! begins :)

u/Celebrimbor333 · 2 pointsr/pcmasterrace

Well the learning curve is a short book (which you can also read online) but it's fucking awesome after you've defeated the curve

seriously fucking awesome dude go check out /r/dwarffortress

u/plausiblejosh · 2 pointsr/dwarffortress

I found this book, Getting Started with Dwarf Fortress, and thought it'd be an interesting read for a newish player, but it was published way back in 2012, and DF has changed a lot since then, so I don't know if it's worth it.

u/heebejeebes · 2 pointsr/dwarffortress

There is also a novel that helps you learn all the major features.

u/ComputerMystic · 2 pointsr/linuxmasterrace

I've been meaning to get around to it eventually, I just wrote from the stories I've heard about the game.

The simulation in that game is ridiculously detailed, and since it's single-threaded, it brings basically every CPU on Earth to its knees once your fortress starts to grow.

The stories that game generates are insane. The best one I've heard was a bunny that fell down a shaft to Hell and then proceeded to survive and kill multiple demons until the dwarves could mount a rescue.

Just looking on TVTropes I've found one where a dwarf used a heavy coffin as his weapon, and then put the corpses in the coffin to make it even more lethally heavy.

Another one was a fort overrun with demons, the last survivor is a seven-year-old cornered. This child then proceeds to dodge every attack for half a year before starving to death.

At this point I'll just quote directly from TVTropes:

> The key word for describing Dwarf Fortress is "complex". The game attempts to simulate real physics, biology, and even chemistry as accurately as possible, with a surprising degree of success, at the cost of user-friendliness. For example, in lieu of Hit Points, the game has a detailed, IVAN-esque Subsystem Damage mechanic for all dwarves, monsters, and other creatures, and an attack targeting system that allows any unit to attack or grapple any part of its opponent's body with pretty much any still-attached prehensile appendage. The game only gets more convoluted from there, becoming denser with each update. The fans joke that the sole developer, Tarn "Toady One" Adams, will continue to make the game more and more granular until it reaches the subatomic level and begins to simulate quantum mechanics and particle physics. Judging by the way the game is growing, that prediction may become true.

It should say something that this exists and is almost 250 pages long.

u/TheEdgeOfRage · 2 pointsr/dwarffortress

As far as I know this i the only book for DF. It is a bit dated but pretty much everthing still applies today, except maybe for woodcutting, no need for farms anymore

Getting Started Dwarf Fortress

u/CodeTed · 2 pointsr/gamedev

So Game Engine Architecture looks pretty good, although it looks like it is for 3d game programming. Is there something like that, but for 2d game programming?

u/w00tnes · 2 pointsr/learnprogramming

Maybe this book might help you with the essentials:

u/TheBestOpinion · 2 pointsr/gamedev

>Game Engine Architecture, vol 2

Fuuuck that's a pricey book

u/overlysound · 2 pointsr/gamedev

I agree with your sentiments that game programming in Rust is new, so it may slow me down. But I' am in no rush to put out a game. I'd be very interested in really getting to know how game engines work; even bought a book. I' am also interested in learning Rust for its potential utility in my job anyway.

u/ThePopil · 2 pointsr/UofT

Hey! I'm doing the game design focus and have / am working at some indie studios.

The focus isn't nearly enough to get a job in the industry, you need to teach yourself a lot more.

  • Figure out how much dev work you want to do and how much design you want to do. There are positions that are mixtures of both.

  • You can do a one year course in design at some college after you graduate if it interests you. BE WARNED, no one cares about the degree, every design lead I've worked with has said this. This is about connections and making your own projects.

  • If you want to do dev, read this book: It's like the bible for game dev.

  • Triple A studios all use their own engine which is 99% of the time written in C++ so being familiar in that is a must

  • Make your own games! Use Unity or Unreal cause it's so much faster to iterate on and prototype stuff. Building your own engine is great for learning, but don't make games from scratch cause it's a lot of pointless grunt work.

  • Get involved in the community! Seriously this is often overlooked but just working with people of similar interests can be great for experience and connections. Toronto has a huge indie game dev scene.
u/3131961357 · 2 pointsr/gamedev

Books. Game Engine Architecture, for example.

u/Dooskington · 2 pointsr/gamedev

Read books, read through repos on github, and most importantly: write your own!

I recommend Game Engine Architecture if you want a very broad but extremely useful reference guide.

u/echelonIV · 2 pointsr/gamedev

I ordered these for our company library, based on recommendations for/from other programmers (of all levels).

ISBN | Title
978-1568814247 | Real-time Rendering
0321486811 | Compilers: Principles, Techniques, and Tools (2nd Edition)
1482250926 or 0123742978 | Essential Mathematics for Games and Interactive Applications, Third Edition 3rd Edition
978-1482264616 | GPU Pro 6: Advanced Rendering Techniques
1466560010 | Game Engine Architecture, Second Edition
978-1482243567 | Multithreading for Visual Effects
978-0123750792 | Physically Based Rendering: From Theory To Implementation

u/Causeless · 2 pointsr/pcgaming

Consoles and PCs are more alike than ever, but it's still not close enough. For example, the unified memory architecture (with the onion and garlic buses) means that somebody programming on PC versus Xbone/PS4 means that they need to think differently.

> They are also on the same x86 Architecture as modern PC Gaming has been.

100% irrelevant and shows you don't really know what a programmer is doing when they are writing code. We don't use assembly language any more.

Source: I do programming and have read this (brilliant!) book:

u/SunyiNyufi · 2 pointsr/GirlGamers

So as some of the others: I'm not from the gaming industry either (though I plan to make games on the side). And an other disclaimer: I'm over 30.

Let me just say most people in their 20s don't know what they would like to do, and even if they do, your interest will change over time, so just try to say flexible and don't fear making a switch if you are unhappy, of course within reason and financial security.

I recently switched from my regular office job to a less regular one in software development. My official background in software dev before was: none. I picked up coding like a year ago or so, because a C# course for game development was super cheap on Udemy (and by super cheap I mean like 10 or 15 USD), and continued learning coding ever since. Though I was a privileged candidate for my current job, because it was an internal hire, I basically got it by showing them what I can do. And we don't even code in C# in my new role lol

So my point is: learning doesn't have to be expensive, while some jobs require a specialized college degree a lot companies nowadays are more interested in whether or not you can do the job.

Also there are some Game Music courses on Udemy as well, though they might be too basic for you, still worth to check out imho :)

If you are interested in game design I would recommend this book too The Art of Game Design: A Book of Lenses

u/komoro · 2 pointsr/gamedev

Well for game design, I cannot overstate the impact that the book The Art of Game Design has. It lists where to start building a game, how to find mechanics, how to deal with chance and map building, what the players expect, how to engage the player, how to use audio correctly and many many more. Go check it out, if you are already familiar with programming, the more the better. But to be a great game designer takes much more - and a lot of it can be found in the book.

Happy creating :)

u/swordrush · 2 pointsr/TheSilphRoad

You're telling me (I design board games as one of my hobbies, read up on game design, talk about game design with other people designing games, etc). It seems very apparent to me you'd want to hire people specifically for game design aspects. But it's not always completely apparent to everybody. Also, Niantic starting out may not have had the funding available to dedicate somebody to focus on game design.

u/Eldakan · 2 pointsr/GameDevelopment

Technology: What technology are you using to create your game, mostly which engine... Where I read about these four aspects it was reffering to all kinds of games (Which would include card and board games as technology)

Story: The lore, history and narrative told in your game

Mechanics: What are you able to do in a game; e.g: Jump, Dash (for jump an runs) or block and hit (fighting game)

Aesthetics: What makes the game correspond to the players senses: music, visuals, light, shaders etc

Hope that helps (Source: )

u/Wh0_The_Fuck_Cares · 2 pointsr/gamedesign

A lot of people have already talked about going to university for computer science, design, etc... but make sure you're also reading (The Art of Game Design), watching video series (Brackeys), and try participating in clubs or local meetup groups to get to know the industry and get your name out there.

u/alttoafault · 2 pointsr/gamedev

Well it sounds like its time to start prototyping and analyzing what does and doesn't meet your documents/requirements. Getting these out should motivate your team and make you feel a bit more confident in what to do next.

As far as looking for resources, there are quite a few out there. I really recommend checking out The Art of Game Design by Jesse Schell, it's one of the most practical books on game design (a lot like Raph Koster's are way more theoretical). I'd also check out gamasutra for a great design-focused community, there's a lot of resources there that can help you out.

Also, don't worry if everything falls apart. Game design is a lot of work and people can tend to be pretty flaky about it. That's why I've tried to learn every aspect of development so I don't have to depend on others.

u/PukeOfEarl · 2 pointsr/tabletopgamedesign

I highly recommend Jesse Schell's The Art of Game Design: A Book of Lenses. It's primarily focused on videogame design, but the topics are broad enough that most are applicable to boardgame design.

u/OvertechB · 2 pointsr/Unity2D

A lot of the balancing comes from play testing with actual players and a basic understanding of probability math.

Randomness in games can often be a fun addition because it leads to surprises and can make a boring game more interesting. But you also want to use with caution because you want your players to still feel like they are in control. Too much RNG can make people feel that the game is unfair.

Pre-built maps are good if you want people to be able to master them, and generated maps are good if you want people to think on their feet every time. Pre-built can make things predictable, whereas generated can add replayability.

As for symmetrical maps, do you mean both players start with an even playing field? If so, that's ideal for balance. If you do intend to give one player a map advantage, you'd have to properly balance the other player to have some other advantage. Imagine playing golf. The player at a disadvantage might be granted a handicap. The important thing is that both players must feel like they are treated fairly.

Edit: If you're really interested, I'd recommend The Art of Game Design by Jesse Schell. There's 2 excellent chapters in there about game balance that details probability math, good design, and player psychology when dealing with balancing.

u/RaunchySlappy · 2 pointsr/boardgames

Thanks for the great question! I'll answer the way my mother always answer my long emails...

  • Background? My background is in actually more on the visual creative side rather than the game design side! I graduated from the Massachusetts College of Art and Design with a degree in Illustration. My thesis project was to create and illustrate an entire game on my own ("Landfall" mentioned in a couple other places in this thread). Of course I ended up focusing on (and enjoying more) designing the gameplay and player experience aspects of the game.
  • Motivation? I really just want to design games and have people play them! If I'm lucky I'll break even on this project, haha. I've tried to keep everything as minimal and efficient as possible, to get the game to the people is my only real intent. It is incredibly satisfying when demoing the game to watch people truly enjoying something I've poured my blood, sweat, and tears into.
  • What resources did you seek/find? I am lucky enough to have a fantastic day job to afford to keep the lights on (and the 3D printer running), and have done lots, and lots, and lots, and loooots of research. The thing they don't tell you is that when you want to get your game published through KS, its like getting a third whole new job (in addition to my day job and my board game design job). It is so in depth you can practically major in crowdfunding. I read a ton of stuff from Jamey Stegmaier, have been reading this book andthis book, and have done lots and lots of trial and error.
  • Which resources were most helpful to you? Probably the 3D printer was one of my best investments as a tabletop game designer. It reaaaaally helps immerse the player (and myself) in the game I am creating if I can basically instantly create whatever components I want. (I purchased this affordable 3D printer and have had great success with it)
  • What approach worked for you personally, and how is it different from other boardgame designers? This is a really good question. Board game designing isn't typically something that becomes someone's full time job. Each person who has made the leap usually starts somewhere vastly different from game designing, and I believe that gives each designer a very unique perspective to their games and the way they go about creating them. For me, those things are mostly visually creative-related. At work I do illustration, graphic design, photography, videography, video editing etc etc. So making a decent looking prototype is something that I was able to do (mostly) on my own, and similarly making a nice game trailer and digital ads was relatively easy for me. While I had the visual components down, I differ from other designers who have different characteristics that they bring into play like business experience, industry contacts, an in depth understanding of Kickstarter (I am pretty familiar with KS, have backed a few things, but I am by no means a superbacker myself).
  • The biggest challenge you are proud to have overcome? Even though my campaign isn't at its goal just yet, I am proud at the amount of people I have been able to spark some interest and connection with through my game when starting basically from scratch. They say to have a successful campaign you need to have at least 10,000 emails when you launch, I had about 150 (I lucked out when my game trailer ended up blowing up on Reddit about a week before launch). It was very hot in that pigeon suit I wore for 4 days straight at PAX East promoting Crumbs, and it was exhausting taking a 5 day trip to NYC and demoing the game every day, but it was so worth it. This is my first game, and for someone starting with a near zero fanbase, I am proud my game has been able to touch this many people to begin with.
u/corpsmoderne · 2 pointsr/learnprogramming

It seems you're not lacking skills on the technical side, if you want to make games on you own, you may want to gain skills on the game-design side. This is the must-have :

And another must have :

u/MinMacAttack · 2 pointsr/leveldesign

Buying him computer hardware might be nice, but there's a lot of other ways to give something related to games and game design.

There's always a great big pound of dice. It's full of dice of assorted numbers of sides, and a game designer remotely interested in tabletop (which should be all of them) can use a healthy supply of dice for making tabletop games. There's always the fun of just rolling dice giant handfuls of dice. I'm out right now but I'll add the link when I get back home. Here's the link: Pound of dice

I'd also look into games he hasn't tried. BoardGameGeek has a lot of board games listed and reviewed that you could get, and of course there's always steam. For board games I'd recommend:

  • Red Dragon Inn, a fun party game for 2-4 that's best with 3+. You play as a bunch of adventurers after big dungeon raid and now they're spending gold at their local tavern and gambling. Can support more players with its sequels.
  • Monopoly Deal: A card game version of Monopoly, without the bullshit. Unlike it's big board game cousin, it actually plays out fairly quickly while still being focused on building monopolies to win the game. As a game player perspective it's a fun game, but also from a game designer's perspective it's interesting to see how this game re-imagines the original board game while being true to the source material and streamlining many of its game mechanics.
  • Carcassonne: A well known classic game that works well with 2-5 players where players build up a world of castles, farmland, and roads.
  • Bang the Dice Game: A game where the sheriff and his deputies face off against the outlaws but nobody knows who to shoot. At the start of the game players are given their roles in the conflict but only the sheriff shows who they are. The rest of the game involves social deduction to try to figure who everyone is supposed to be shooting, and trying to read past bluffs. The game works great for 5-8 players, and can work for 3-8.

    There's also a lot of books on game design you can get him. You may have to check to see if he owns some of these already, but I've found them to be great reads that I can recommend to anyone interested in game design.

  • Blood, Sweat, and Pixels: This is a book that tells "The Triumphant, turbulent stories behind how video games are made" and talks about the stories behind 10 different games from across the video game industry and what went on during development. I just bought this one and haven't gotten to chance to read it yet, but I'm excited to start it soon.
  • The Art of Game Design: This is one of the most well known books on game design that discusses a lot of what makes games work. I recommend it to anyone interested in game design.
  • Game Design Workshop: A Playcentric Approach to Creating Innovative Games: This book talks about everything that goes into how to design a game and some key differences on how some types of games work. It's more on the beginner/intermediate side, so some of it might be familiar to him.
u/GeoKureli · 2 pointsr/gamedev

The Art of Game Design is a fantastic book focused on exposing all of the different ways to look at game design and all the different options and approaches you can explore. I highly recommend it.

As for me, I look at why a core mechanic works in an existing game break it down into the most abstract components. Like Punchout is about learning timing and sequence recognition. Reacting quickly to an enemy's "tell" makes me feel powerful, and not knowing the "tell" makes me want to explore and try things out and challenge my intuition. So apply it to something else, what else requires reflexes and discovering enemy patterns? I unno... Ping pong? Ping pong requires finess and I want a discreet Turing nature to the success of my volleys, can I simplify the controls? What about that game where I put my hand on top of yours and you have to slap my hand before I pull them away? Whack-a-mole requires reflex but the pattern is random, can I change that?

Just break down games into the smallest components and know that that is something that can be explored and try mixing things up

u/Kyubinin · 2 pointsr/gamedev

I just finished The Art of Game Design: A Book of Lenses by Jesse Schell and thought it was super insightful!

u/8bitshift · 2 pointsr/udk

There are books. Almost all of them suck. The only one that is any decent is mostly all theory so you will have to figure out the implementation details on your own:

The problem is that a game engine very large and complex and often needs to be built with a particular game type in mind. There is a reason all of the UDK games look like UDK games.

Ask yourself this: Do you want to build an engine or a game? You are unlikely to do both in any reasonable amount of time (multiple years). Perhaps you can scale back your design's grand vision of an open world game to something more manageable with an off-the-shelf engine like UDK or Unity rather than build an engine.

u/csp256 · 2 pointsr/cscareerquestions

You need to learn architecture. For this do NAND2Tetris and get some used architecture textbooks from the computer engineering department.

Caches are a big deal. People forget they exist, but you're going to need that knowledge in embedded. DMA's, or even normal memory reads, might only be coherant with some cache levels. That sentence should make you gag.

It gets worse when you start to think about concurrency; which you should, frequently, because it isn't the 90s anymore.

Get used to debugging. A lot. Learn practices that make that easier. I mean both learning archaic shit like ddd and writing unit tests, following best practices, etc. In embedded you're going to be violating best practices often, but it is important that this teaches you "... so the rest of my code is as clean as possible" than "... what's one more sin next to so many?".

Most architectures are the same nowadays but the GPU is a notable exception (though less and less each generation). Learn CUDA - use Udacity's course on the subject.

What every programmer should know about memory.

Start writing projects in C++. Go ahead and become a real C++ nerd. constexpr everything you can. You don't need other languages except maybe barebones Python, Bash, and the Turing complete language known as the Preprocessor. You'll learn ~what you really need to know of C from C++.

Get very familiar with 'Godbolt'.

Write for maximal performance. This is a dying art. You'll have a competitive advantage if you're good at it. If you don't become filled with rage by the word "premature" you're not optimizing enough.

Profile your damn code!

Profile your damn code, but with a different link this time!

Know your latency numbers.

Make SIMD a part of your daily life. You might not always have vectorization, but this is the easiest way to show you're capable of exploiting hardware features.

Computer graphics people are relatively well-respected by the embedded software community, and there is a lot of overlap as they use similar skills. Taking a detour through graphics is a good idea even if you don't plan to work in graphics. It's fun, too!

One way or the other you have to find a relevant application domain and solve problems in it... if not graphics try: video game programming, GPGPU, robotics, control systems, computer vision, animation, networking, VR/AR, and a bunch more.

Do not put VHDL or Verilog on your resume without first being sure you're masochistic enough.

Learn to start being very choosy in what advice you listen to. Most people solve problems under a totally different set of constraints, and what they'll preach until the sun burns out might be pants-on-head stupid for you.

You might already have picked up some of those funny ideas from being a web dev, so be on the watch for that.

The book Game Engine Architecture has a lot of real world wisdom from a much more relevant view, so read it.

Also, most people are taught in a way that is not really beneficial to an aspiring embedded SWE (e.g. Java schools). Most people have to learn that type of stuff as they mature as a programmer... hence the requirements. You can be hired into these types of positions right out of university, but you have to show a knack or focused interest in it.

And to be frank, it is just plain harder than web dev or slapping CRUD apps together, so fewer fresh grads would be able to do the work well even if they followed the 'right' path in university.

You can get some experience by writing on an embedded platform, but unless you want to probably shouldn't. The principles I am describing are more important.

Do one or two solid projects. Not dozens. Not perfect. Not amazing. Just one or two simple-but-pretty-good things in your portfolio, that show that you are not just a web dev or Java School Student.

Get relevant work experience as early as possible. Relevant means same skills, not same application domain.

Remember, it being hard isn't a bad thing. It is a barrier to entry that once you cross becomes a competitive advantage. The harder it is, the greater the advantage. Always double down on the hard technical skills.

u/chocobot · 2 pointsr/gamedev

I would go with <a href="">this one</a>
It does not focus on collision algorithms and graphics basics, instead goes right into message architectures, entity systems and so on. It's my favourite game dev book and I regularly look into it as a reference.

u/GeleRaev · 2 pointsr/learnprogramming

Look into the primitives offered by OpenGL:

Any geometry you want to render has to be represented using those primitives. So you could produce a wireframe by using line strips. The set of points where x = x1 is a line strip, the set of points where x = x2 is another line strip, and so on until x = xn. Then do the same with y held constant at each value on its domain (not a very good explanation, but hopefully you get the gist of it). A surface would have to be represented using triangles - more difficult than wireframes, but there are books like Real-Time Rendering that discuss techniques for subdividing surfaces. If you aren't adamant about implementing that yourself, I'm sure you could find free libraries that can do this for you.

u/SouthernArrowwood · 2 pointsr/GraphicsProgramming

Real Time Rendering was recommended to me by a few professional graphics devs when I asked them the same question. This is NOT a light read, and it won't tell you how to use a specific API (DirectX, OpenGL), but it will give you the foundations to better understand an entire graphics pipeline and the various techniques used.

Other posters have mentioned starting with a software rasterizer. I'd highly suggest this as it helped me a lot when I had to do a very small one in college. There is a more recent version that is likely better(haven't looked yet), but this is the book we used and it can be picked up for dirt cheep!

u/Cynicle · 2 pointsr/cscareerquestions

My bad, I meant the second major in game dev*. I think you're better off just taking maths and learning the physics + maths required for engine development (realtime and 3d rendering). Also, I recommend picking up this book: but it requires knowledge of linear algebra (which shouldn't be too hard to learn, but it definitely will take a while).

Best of luck :)

u/capnramses · 2 pointsr/opengl

part of being a scientist is reviewing a wide range of references - you might be expecting a bit much from one online source. let me suggest this one and this one, and especially this one are going to have the general graphics pipeline explanation chapters that you're looking for. if $$$ is a problem (and it is for most of us with these texts), perhaps you can insist that your local library gets them?
you can also pick up some good ideas by visiting course pages for some of the more well-known university graphics programmes - some of them have slides online, otherwise check out their reading lists - these guys are the best in the world at teaching graphics. read what they read.

but i suspect, your best bet for this sort of stuff is actually Eric Haines' online course, which has a free version. it uses webgl but the main concepts are exactly the same as desktop gl and it's really very good

also, interesting side note - Myers-Briggs has been widely discredited. it's actually based on Jung's germanic mysticism, which comes from ancient European magic. earth/air/wind/fire, alchemy, the four humours, the four personality components etc. etc. not a drop of science in it, but employers insist on you doing it.

u/shamaniacal · 2 pointsr/learnprogramming

This site has some basic tutorials on OpenGL. I've also heard that this book provides a good solid overview without drowning you in minutia. Finally, if you really want to get into graphics, make sure you have a firm grasp of Linear Algebra.

u/MaxieManDanceParty · 2 pointsr/gamedev

I have this book. I haven't even begun to scratch the surface of its contents but it's worth its weight in information. Link here: Real-Time Rendering, Third Edition

u/Ringo48 · 2 pointsr/programming

I can't tell exactly what you want to improve upon. If you just want better intersection algorithms/code, look at:

The real performance gains in ray tracing, though, are parallelization and reducing the number of intersections tests that need to be done at all.

Parallelization is trivial.

For reducing intersection tests, you're best bet is some kind of space partitioning algorithm, like an octtree, k-d tree, or grid. It's not very hard either. The main idea is to pre-process the input into a grid-like data structure and do intersection testing by "walking" along the ray, through the cells. In each cell, do an intersection test with each object in that cell. Find the closest hit, and bail out. Traversing the grid is super easy and a lot faster than intersection testing. And (ideally) grid cells have very few objects, so the number of intersection tests is cut down a bunch, too.

The original paper for that technique, if you can find it, is this:

u/kitsune · 2 pointsr/programming

Some books I enjoyed:

The Algorithm Design Manual by Steve S. Skiena, $61.15

Real Time Rendering, 3rd. Edition by Tomas Akenine-Moller, Eric Haines, Natty Hoffman, $71.20

Structure and Interpretation of Computer Programs, by Hal Abelson's, Jerry Sussman and Julie Sussman, Free

Clean Code by Robert C. Martin, $37.85

u/raze2012 · 2 pointsr/gamedev

in case you are confused, Real Time Rendering being referred to in the post is the title of the book, as well as the name of the sub-domain. Dense read, but it's still one of the best books out there (and a new edition comes out summer!).

u/Lolobear · 2 pointsr/gamedev

I'm reading through and enjoying 3D Math Primer for Graphics and Game Development. It starts you off with simple 2D Cartesian coordinates and progresses to more advanced topics (like the math behind lighting in computer graphics, which I'm currently on).

u/SadakoYamamura · 2 pointsr/godot

If you are curious about matrices I highly recommend this book: 3D Math Primer for Graphics and Game Development

Even a dummy like me was able to write a simple 3D software renderer with the help of this book :)

u/Arahain_ · 2 pointsr/gamedev

The book "3D Math Primer for Graphics and Game Development" covers most of the important topics:

It is also rather fun to read, probably the only math book I have ever read from cover to cover.

u/mickbeaver · 2 pointsr/GraphicsProgramming

Hello Kevin,

Everyone learns at their own pace, so it would really be hard to say how long it would take you. Additionally, real-time rendering is so broad that it is impossible to know it all. As you learn more, you will likely find a sub-area that you'd like to specialize in.

Right now, the majority of work that is done in 3D graphics game programming is usually in C++. That being said, there is a lot that is done in JavaScript via WebGL. Don't worry too much about programming language or API as you start out. There are a lot of concepts to learn first.

To get you started, may I recommend this free online course by Eric Haines, one of the authors of Real-Time Rendering?

u/lgroeni · 2 pointsr/oculus

If you want to do a deep dive, I'd also vote for Linear Algebra. Understanding matrix math, vector spaces, affine transformations, projections, and quaternions is incredibly useful.

In that vein, I highly recommend this book. It's a pretty easy read and covers that stuff plus a ton of other (related) topics that is useful when dealing with game engines or computer graphics. I find myself referring back to it more often than I probably should at this point.

u/OskarSwierad · 2 pointsr/computergraphics

I haven't read it yet, but it was recommended on book list and it's got good reviews on Amazon.
3D Math Primer for Graphics and Game Development, 2nd Edition
by Fletcher Dunn et al.

As for calculus, there is an old book Calculus Made Easy by Silvanus P. Thompson. Free to download at Project Gutenberg.

If you find KhanAcademy's math lessons too long or just want text instead, check out amazing Paul's Notes. This is by a professor, started intially for his students.

More cool resources:

CodingMath on Youtube. Tightly edited. To the point.

3Blue1Brown on Youtube. More general math.

Nature of Code. A book about programming behaviors and forces. Could be an easy first step to understanding physics- and AI-related algorithms.

u/PaddyBrophy · 2 pointsr/tabletopgamedesign

Why not set yourself some challenges and see if you can stick to them? Constraining components can be a great way to spur creativity. For example, create some aspect of your everyday life as a game, but you can only include 20 cards. Next challenge restrict yourself to 10 cards. Then no cards.

Alternatively, maybe try this book? I have it on my bookshelf but have never opened it...

u/Bargeinthelane · 2 pointsr/gamedev

Can't recommend this book highly enough, but to be honest you need to be in a group of people to get the most out of it. I basically built my introductory game design class on it. Great introduction and practice for game design.

u/incognatias · 2 pointsr/AskReddit

Sounds like the challenge that you are having is getting hung up on the technological aspect, which I would bet is incredibly common among aspiring designers. Game design transcends medium. Technology simply enables game play from design. To provide a chance-driven strategic experience, any number of tools can be used: dice, cards, computer, or even just a drop of water and an angled surface. For simulating fast paced combat, a computer provides a number of advantages, but many prefer to use inflatable barriers and paintball markers instead.

Check out Challenges for Designers. It is a practical guide to game design strategies for video game designers, but utilizing non-digital means. It forces you to consider what actually makes a game fun, interesting, or challenging, without getting caught up in rendering engines, input methods, or the myriad other technical considerations that you, as a designer, won't actually have direct control over on a reasonably large game team anyway.

Once you have cohesive ideas about exactly what you want to see in a gaming experience, I think that you'll find learning the how to be a hell of a lot easier. Then you won't just be sitting at the keyboard trying to "design a level," you will be creating the specific player experience that you envision, which will define what tools to use and provide guidance on what questions to ask the pertinent communities for those tools.

When all else fails, build a Tetris clone. :) And no, that's not a joke.

u/PaganBacon · 2 pointsr/boardgames

You should check out the book Challenges for Game Designers: non-digital exercises for video game designers. I know it says it's for video game designers, but! note that it is non-digital exercises: The vast majority of the exercises are actually board game exercises. Plus, they stress that video game design and board game design has a lot in common. Really, there is plenty in the book for both. As the title suggests it focuses on giving the reader practical experience, each chapter has a short introduction to some game design term or concept, and then a bunch of exercises in the end, which are usually an exercise in creating a game prototype in a certain genre, using a certain mechanic, or whatnot. Here's a link to the product page in case you want to look a bit in the book, or order it.

A few of the places in the book really target video game design, from a quick re-skimming of the books chapters: talking about multiplatform, talking about designing UI (Though, I think you could take this as a lesson in designing "UI" on game boards: trackers on the board, and personal player boards), and talking about social networks.

u/megazver · 2 pointsr/gamedev

Buy Challenges for Game Designers or Game Design Workshop, Second Edition. Or both. Do the stuff in them. Basically, both of these books teach you to actually design games, instead of programming, by designing in pen&paper first. It's a good approach.

A few other books there are also a good read for you guys.

u/ZeitlosEisen · 2 pointsr/gaming

This is coming from a student in the game design program at DigiPen, a game development college where the teams behind Portal and Portal 2 both graduated.

Start by introducing yourself to game history. Learn about the different types of game families: racetrack games, war games, positional games, mancala games, dice games, card games. There are thousands of different non-digital games and you should start getting to know them.

I recommend Board and Table Games by R.C. Bell as a handy guide.

Learn the mechanics of paper games. A board game is essentially a level in a digital game. Card games are about information. Learn about the probability curves used in dice games. And above all, design games. When you design games, ask yourself WTF: What's this for? If it's useless or adds nothing, scrap it. Never be afraid to kill a rule or even an entire idea if it's not working right. In the industry, they refer to this as being able to kill your baby.

Some great books on design:

Challenges for Game Designers

An excellent read and it has a ton of great exercises for non-digital design.

Game Design Workshop

Another great read.

If you're young enough to be in public school, why not try out DigiPen's K-12 Game Design summer program?

RPG Maker is a good start, but don't get stuck with it. Try out GameMaker, Unreal Engine, Unity3D, Flash and ActionScript 3.0. You'll need to be able to code or at least script if you want any chance in the industry.

WATCH THIS VIDEO! It is paramount to what it means to be a designer.

u/Zuggy · 2 pointsr/boardgames

TL;DR: Prototype and test your game idea, don't worry about art all for a long time, do not get into game design because you think you'll be able to make a career out of it

I've picked up game design over the last six months and have really been enjoying it, and while I'm not looking for a partner I can give you some pointers to start. I'll try to deconstruct some of what you're saying because I think you're making some incorrect assumptions about game design and how to do it. I think some of this is going to sound cold or mean, but I don't intend it to be. I just want you to go in with realistic expectations, and if you can accept that I'm finding game design to be a lot of fun.

First, think about is why you want to make games. You seem to be trying to use a project as a jumping off point to design games professionally. Honestly, at least as far as board games go, there really isn't much money in designing games for most people. Sure there are a few people who design board games professionally but for most, if you make any money at it, it'll be like a second job. If designing board games is something you want to do, it should be something you do for the joy of designing board games in and of itself, not because it sounds like a cool profession.

Personally, I think everyone who is passionate about board games should try designing their own games, but they need to go into it knowing that they're designing board games because they enjoy the creative process, not because they'll make a living at it. I love the perpetual puzzle of game design and having something in my head manifest itself in the form of paper, cardboard, dice and bits.

Second, how to actually start designing games. You talk about wanting to make a "finished" game. I think what you mean is you want to see a game design taken from beginning to end. Designing any type of game is what's called an iterative design process. If you don't know that means you take your game idea, you make a prototype of it, test it out, realize it's awful but maybe find some gems that are fun, refine it, make a new prototype, rinse and repeat. These first prototypes should be rough. For example, I'm working on a dungeon-crawler card game and my "cards" are just pieces of paper cut up with my text on them and then put in card sleeves with poker cards as a backing. Art is something that should come towards the end of the process because you'll be making so many changes this early in the design process that getting someone to do art would be a waste of time (and probably money).

Eventually, when you think your game is at a stage where it's kind of fun is when you start playtesting with other people. Get people together, have them try your game design and see what they think. If they're friends, tell them to be honest. Realize that they'll point out things you didn't think of and they'll hate bits of your game that you love and it'll feel like getting gut checked. Like I said I'm fairly new to game design, but from what I've heard from professional game designers and from my local game design group, that feeling never goes away. When your baby starts getting torn apart it's one of the worst feelings in the world, but it has to be done to make something better.

The reason you go through all of this is no matter how good you think your game idea is, it definitely won't be good when it first goes from your mind to the paper. It probably still won't be particularly good after you've improved it several times, but hopefully you'll see something good and be able to combine those good bits to make something really enjoyable. If you see no hope in it maybe to shelve it for later and try something else.

Third, you brought up working with an artist to talk about the look of your game and coming up with lore and such. This is something you really shouldn't even worry about until you have a game prototype that's starting to near the final stages. When you're at the point you feel the game is ready for what's called blind playtesting, which is when you feel your game is ready to be tested by complete strangers.

Below I've linked a few videos and a podcast I hope you'll find useful.

One Thousand XP's Board Game Design Time Playlist - It's a small video series discussing different aspects of board game design

The Dice Tower's Top 10 Tips for Game Designers - Some great tips on designing board games that covers some of what I posted here and more

The Game Design Roundtable Podcast - They interview people about how they designed their games and have regular audience Q&A episodes. I think it's enjoyable for anyone who enjoys games (they focus mainly on board games but also do some video game stuff) and essential for anyone just getting started in game design

I've also started going through the book "Challenges for Game Designers" which has chapters talking about different aspects of both board and video game design and at the end of each chapter are challenges for making board games based on the material covered in that chapter.

Finally, I want to reiterate something I said previously. Don't get into board game design thinking you're going to make a career out of it. Maybe someday you'll become the next Alan Moon, Friedemann Friese, Donald X. or Reiner Knizia, but even if you do it'll be a long road before you get there.

When people bring up wanting to get into game design because they're passionate about games and want to make a living doing it I relate the attitude of my dad. As much as I love him, every hobby he's ever been interested in goes in these steps. First, he says, "This looks really cool I'd love to do that." Second, he says, "If I get good enough I could make money at this." Then he tries whatever it is he's interested, realizes he's not good enough out the gate to sell it and gives up. He's 60 years old and has been having a hard time the last couple of years because the closest thing he has to a rewarding hobby is playing Hearts and Spades on his laptop. The problem is he never sticks with a hobby long enough to actually get good and enjoy it because his aim was to try and do something he could sell.

If you get nothing else out of this post I hope this is what sticks with. Make games because you love making games, don't make games to make money. One day your dream might come true and you might be able to design games for a living, but that shouldn't be your primary goal.

u/ya3ya6 · 2 pointsr/gamedesign

actually i tried about 5 engines , and construct 2 is easiest and fastest one.
and there is some tutorials on card game also:

actually it's better to design and prototype card games in paper and cards, even if it's too fancy, you can make a simplified version with cards.

i read some chapteres of this book and it was amazing, read it if you had time.

good luck :D

u/ZeuglinRush · 2 pointsr/gamedev

Challenges for game designers is excellent. The real meat of the book is the set of excercises and projects, with a lot of excellent information and discussion to back it up.

Not directly related to game design, but these days nobody has an excuse not to have read the art of war. There are many free versions of it out there, including an audiobook. Check its wiki page!

u/mauszozo · 2 pointsr/gamedev

Sounds like a fun idea! Some friends and I have been getting together and designing and playing our own games lately for our weekly gaming nights. I'll try and recruit them as well. :)

There's this great book called "Challenges for Game Designers" that might be fun, if you're looking for more inspiration. (though what you've got already is fantastic.) Each chapter in the book discusses a different game design problem, (pacing, puzzles, randomness, etc.) and there are challenges at the end of each section where you create a tabletop game, or at least a design document, detailing how you would make a game that addresses the problem. Anyway, love that book and wanted to mention it, ;-P

Looking forward to seeing where this goes!

u/enalios · 2 pointsr/gamedesign

If you want to be a game designer, just first accept that you're training for a marathon not a sprint.

Start with small exercises, not a full game just, like, quick sketches of game mechanics or ideas.

Do lots of tutorials, like "how to make a shmup in [whatever game engine]" and then when you finish the tutorial just add one or two things to make it your own, then move on to another tutorial.

After a few of those, start participating in 48 hour game jams.

There's a site I participated in for a bit called 1 Game a Month in which the idea was simply to finish one game a month. Not a masterpiece every month, just something finished every month.

It really is worth it to invest time in learning how to actually finish a project as opposed to always thinking about finishing it.

I recommend reading the following short articles:

The Chemistry of Game Design

Understanding Challenge

And I recommend the following books, not necessarily to read cover to cover but to read until the content doesn't seem to interest you, then just kinda skip around to the interesting bits:

Challenges for Game Designers by Brenda Braithwaite

The Art of Game Design by Jesse Schell

And finally I recommend reading this book from cover to cover:

A Theory of Fun by Raph Koster

u/YoshiandAims · 2 pointsr/EatCheapAndHealthy

I have an easy loaded potato soup (stovetop)
An easy twice baked potato
Scalloped potatoes are pretty simple.

I do a good hot sausage pepper pasta.

Crockpot roasts are a great way to start to use it. Even just a roast coated with Onion soup mix comes out amazingly.

I'd also challenge him with some baking, it takes a bit of practice, but it's so easy to make cookies, pretzels, cobbler, biscuits, there are so many simple ones out there that only seem intimidating.

Since he can cook eggs, learning to make an omelet is an easy way to expand on something he already knows. (Scramble, pour into pan, after it sets, top it with whatever toppings, fold it over, and there you go.)
Pancakes and Waffles are fun.
Whipped cream and Butter both are super simple if you have a mixer or whisk.
Message me if any of those peak your interest!

A good way to experiment and learn are those dinner services, like Hello Fresh, Home chef, plated.
They send the ingredients, instructions, and are super easy to follow and learn at the same time.
If you can afford it, it's got recipes from all over the world and is almost like a guided cooking class.

I'd also recommend:
This cookbook is a series, and I had a lot of fun with those!

Also, if your son likes a specific show, game, or pop culture thing, there are many fun cookbooks for that, too! literally it seems like there are thousands of them.

u/LordAdder · 2 pointsr/ElderScrolls

It's only recently been released. I don't know if Reddit auto blocks links, but here is the link to the Amazon page for the cookbook. I hope you get it and try it out!

u/PsychedelicPill · 2 pointsr/skyrim

They have art in them too, a good reason to buy even if you already have an ebook version.

u/JrMods · 2 pointsr/FalloutMods

I would love to see something like this made. Its funny how i hate reading books in real life, but ive spent so many hours reading skyrims books. I actually went out and bought the hard cover versions. I dont know if you know they exist but you should definitely check them out if not:

Some things id love to see are some journals from survivors after the bomb fell. Some raider ones would be cool to, i want to know what there up to.

Vault tech books describing the experiments in the vaults. There is a great description on them all on the wiki.

Love to see some throw backs, to the mojave. Maybe some tall tales like series about the legion.

I personally would love to see books for weapons mods. Make them all locked until you find the book that teaches you how to actually create them. I really miss blueprints from NV. It made scavaging rewarding, when you finally came across that mod you were looking for.

Either way i would be all for a mod like this. You could probably get help from the community for short stories too. Im sure /r/falloutlore would love to write some up for you.

u/Guarkin · 2 pointsr/ElderScrolls

There are the skyrim and elder scrolls online lore books. They have in game books and history. I think there are 5 or so.
Here is one of them

u/Atlas_Alpha · 2 pointsr/Fantasy

I just bought this, this, and this last week and am anxiously awaiting their arrival. TES lore is awesome.

u/DarkoHexar · 2 pointsr/Breath_of_the_Wild

I think minigames being in BotW are a pretty safe bet now - taken directly from the description of the official player's guide (which can be seen on Amazon, among other places), it says:

> Also includes optional challenges, mini-games, unlockables, Easter eggs, and more.

It's not as reliable as seeing the minigames for ourselves, but it'd be kinda weird if the description mentioned them without any reason. So here's hoping!

u/AbideMan · 2 pointsr/Breath_of_the_Wild
u/Tridon64 · 2 pointsr/AmiiboCanada

Hmmm...doesn't include Odyssey. I wonder if there will be an edition that includes it similar to what they did with the Breath of the Wild The Complete Official Guide: Expanded Edition?

u/sadhandjobs · 2 pointsr/Breath_of_the_Wild

My husband bought me this book The Legend of Zelda: Breath of the Wild The Complete Official Guide: -Expanded Edition

And I just restarted the game with the goal of 100%-ing. My plan is basically the same as yours. I got Rivali’s Gale as soon as I could and then unlocked all the towers. Next I’m gonna get the three remaining divine beasts, then the shrines, then all the loot, korok seeds, Hyrule Compendium and mini games.

I’ve played through it so many times but haven’t fully completed it yet.

u/superdownvotemaster · 2 pointsr/Breath_of_the_Wild

The updated hardcover guide with all the info for the DLC as well.

u/kutsen39 · 2 pointsr/ZeldaBotW

The link goes to Twitter, then [Amazon](The Legend of Zelda: Breath of the Wild The Complete Official Guide: -Expanded Edition

u/yash3ahuja · 1 pointr/learnprogramming

I also forgot to mention this in my last comment, but you may want to pick up a copy of Game Design Architecture.

I haven't read it yet, but I hear it's very good.

u/JonTheBold · 1 pointr/gamedev

XNA takes care of most engine requirements for you, I believe, but you'd probably still get some value from reading the book I'm currently working my way through: Game Engine Architecture (Amazon link)

It gives a decent level of information about most components of a game engine, showing the alternative implementations that most engines tend to choose between. It's not overloaded with source code, but that's not the point of the book. It will allow you to understand what XNA (or other engines) may be doing under the hood, so that you can better know how to make use of it.

u/CircleOfLife3 · 1 pointr/gamedev

If you're inexperienced, I'd recommend reading this book. It covers a lot of areas with a professional perspective. It doesn't go that much into details, but the bibliography of that book can be explored for further reading.

u/fixitchris · 1 pointr/Unity3D

there is a chapter in that talks about game objects and components that should help you get your mind on the right track.

u/PrimeFactorization · 1 pointr/opengl
u/jringstad · 1 pointr/books

Real Time Rendering, but I'll probably need another week or two to get through that, it's a bit of a tome.

Very well-written and interesting, though.

u/Finoli · 1 pointr/directx

If you're really serious about getting into 3D-programming with DirectX I recommend getting a good book. A quick search on Amazon will get you the most common ones.
As for online resources my favorite is braynzarsoft.

My favorite books on DirectX:

Introduction to 3D Game Programming with DirectX 11

Practical Rendering and Computation with Direct3D 11

Real-Time Rendering

u/imbcmdth · 1 pointr/programming
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/NihonNoRyu · 1 pointr/cscareerquestions

You could look at 3d graphics programming, threading or distributed programming.


WebGL Programming Guide

OpenGL Programming Guide

Real-Time Rendering

The Art of Multiprocessor Programming

Beej's Guide to Network Programming

u/gemini_ · 1 pointr/gamedev

I haven't really made anything that's screenshot worthy yet. I'm almost done with the world editor so when I get that done I'll finally be able to show off some stuff.

As far as tutorials your probably not going to find anything that's specific to 2d. I mostly do 3d graphics programming so most of my shader knowledge comes from doing that, almost anything you do in 3d translates pretty easily to 2d.

Here are some good books I've read on shaders:

u/Geemge0 · 1 pointr/gamedev

Practical D3D Rendering and Computation
Distills the API quite well and explains a lot of pitfalls with creating buffers and the pipeline usage. I'm working on just reading it so I'm familiar with D3D 11+ even though I don't use it day to day.

Real-time Rendering 3rd edition

Another fantastic reference for graphics with a more theoretical look at things, explains TONS of modern techniques and even older ones such as rasterization on CPU, etc.

u/Inertiatic · 1 pointr/gamedev

I would start with the book Real-Time Rendering. It's pretty much the book on graphics programming. I don't think there's a single graphics programmer at my company who doesn't own a copy.

I'd combine that with the code samples that come with the DirectX SDK. I personally found the DX10 samples to be better learning material than the DX11 samples (which tended to be less beginner-oriented). Your mileage may vary.

Finally, if you have access to an existing code base, a great way to learn things is to just start modifying existing shaders. This frees you from needing to deal with the API calls, etc and lets you get right to learning how shaders work.

u/FredzL · 1 pointr/oculus

Also in the OpenGL Common Mistakes - Triple buffering it's said :

"You cannot control whether a driver does triple buffering. You could try to implement it yourself using a FBO. But if the driver is already doing triple buffering, your code will only turn it into quadruple buffering. Which is usually overkill."

So basically you can't even implement triple buffering in OpenGL, you need to rely on the capability of the GPU driver.

Not that it should help much anyway. From Real-Time Rendering, Third Edition :

"The drawback of triple buffering is that the latency increases up to one entire frame."

u/serados · 1 pointr/gamedev

The book 3D Math Primer for Graphics and Game Development has an accessible and readable treatment of this topic for a beginning self-learner, which I found easier to learn from than the relatively terser Essential Math for Games Programmers.

u/apekke · 1 pointr/gamedev

This book helped me out alot to learning the fundamentals and math behind 3D graphics. I would recommend getting it as a starting point and great foundation, it also has exercises in it.

u/erikbc · 1 pointr/gamedev

3D Math Primer

Game Engine Architecture

I'd like to recommend these two.

u/Broeman · 1 pointr/learnprogramming

Well, I don't know how far he is, I just want to show some tutorials that would work on Linux. They are OpenGL 3.0 and forwards, so if mobile development is the purpose, the old tutorials are propably better.

But I agree, linear algebra is important to actually understand what is done. I read this was good too:

u/MayorAwesome · 1 pointr/gamedev

I usually tell people to check out these tutorials: He's on the Reddits. VR is a heck of a lot of fun to play around in. Get yourself a Vive and do every single one of those tutorials. By the time you're done, you'll have enough knowledge to make your own game.

The other piece of advice is to learn some math. This book has been particularly helpful to me.

u/greebly_weeblies · 1 pointr/vfx

Maths is fundamental to 3d, from everything from the description of geometry or implicits, the transformations of undistorting / distorting images, how renderers operate shaders that model reality, how the resulting images are composited. One good way to get a head around it is to check out Fletcher Dunn's 3D Math Primer for Graphics and Game Development.

As far as how much you have to get into it yourself - hopefully the software you use does most of the heavy lifting. Department by department you might want to be more familiar with different topics. As a Lighter I don't need to get into the weeds of Euler vs. Quarternion rotations (although I know broadstrokes), but if I was a Rigger it might be a lot more practical.

u/SirDrMcHurtz · 1 pointr/gamedev

I found the 3D Math Primer for Graphics and Game Development super useful as a general introduction and reference for a lot of the mathematical concepts used in game development.

Not really specific for any libraries, but always useful to have good mathematical grounding to build on.

u/MrToolBelt · 1 pointr/gamedev

Ah, I could see that. If you grab a calc book you should be able to get lighting etc. And the rest is all linear algebra. There are a lot of really good books on the topic, but one that's really good for graphics beginners is frank Luna's, "introduction to 3d game programming" series. It doesn't matter if you're using glad or directx (you should), its a great math primer for the first few chapters. This is also a great book:

u/Rolalas90 · 1 pointr/boardgames

For my class we have challenges for game designers
It's a decent enough book but not the best it is great though because of the exercises is gives for different game types

u/ashlykos · 1 pointr/tabletopgamedesign

Challenges for Game Designers is full of non-digital game design exercises. One of the authors, Ian Schreiber, put together an accompanying free online class/blog.

u/andersgamedev · 1 pointr/gamedesign

Brenda Braithwaite (Romero) wrote an entire book on this.

Challenges for Game Designers

u/EARink0 · 1 pointr/tabletopgamedesign

Following a problem from a book of game design challenges (this one for those curious), I'm starting a WWII era RPG based on the Brothers in Arms video game series. Game play has a focus on combat (is that bad for an RPG?) so I'm currently working out the details.

The intention is for it to be used in a classroom setting with high school students, which means rules need to be simple and easy to learn. This has proved to be quite the challenge to maintain interesting combat mechanics inspired by the core mechanics of the series, while keeping rolls to a D6 and math to a minimum. Feel pretty excited about it though!

u/mingobob · 1 pointr/mead


How many meads/wines recipes do this book have?

u/Tashar · 1 pointr/skyrim

Every recipe was taken from the Official Elder Scrolls cook book:

  • Imperial Mulled Wine - sweetened white wine with herbal spices. We used fresh picked herbs and it was incredibly flavorful.
  • Meadow Rye Bread - super fast and easy soda bread, and amazingly tasty. Chopped for dipping into our:
  • Elsweyr Fondue - Gruyere, nutmeg, white wine. Amazing
  • And of course the main attraction: Thin Mints...


    Ok, but actually the Sweet Rolls really lived up the the hype. Yeasty, bready pastry with a nice cream cheese icing. Also, fittingly my dog Opalstole 3 sweet rolls off the cooling rack while I ran to the liquor store...
u/Aragorn527 · 1 pointr/skyrim

They aren't based on novels like the Witcher. That said, there's a new lore series that I'm in love with.

Here's the first book link:
The Elder Scrolls V: Skyrim - The Skyrim Library, Vol. I: The Histories

u/joepez · 1 pointr/suggestmeabook

Well there are world canon books such as this: The Elder Scrolls V: Skyrim - The Skyrim Library, Vol. I: The Histories

Or fiction books such as this: The Elder Scrolls: The Infernal City

Sadly there are only two fiction books. They take place before Skyrim and explain why Vvardenfell is a pile of ashes.

u/RabidousPanda · 1 pointr/ElderScrolls

if you go one amazon there are three volumes of books on Skyrim. The first book contains all the books found in game. It's not available for kindle, but might be worth checking out:

u/OriginalPopsy · 1 pointr/skyrim

Etsy have some beautiful gaming prints. I can understand a non gaming wife not wanting an obvious gaming print on the wall. Have you had any luck finding him a gift? If you are still stuck you could take a punt on a Skyrim game guide and hope he hasn't already got it, or have a look at this:
I thought it sounded like a nice thing to have on the book shelf. It's a complilation of all of the little books that you find in Skyrim. You should definitely get youself that print.

u/NaddaTroll · 1 pointr/elderscrollsonline

If you were on the fence like I was, this might convince you to go ahead and pick it up. There's also a Skyrim book they're releasing in June with the same savings.

u/vgskid · 1 pointr/NintendoSwitch

Here's the books:

Legend of Zelda: Art and Artifacts Limited Edition

Legend of Zelda: BotW Official Guide Collector's Edition

Legend of Zelda: BotW Official Guide Deluxe Edition

The Arts book is a collector's item as well as something I'd sift through from time to time. A coffee table book basically. The CE guide arrives on 3/3, so once I beat Zelda once, I'll use it to collect everything. The DE is just another collector's item/coffee table book once it arrives on 3/31.

u/bitemydickallthetime · 1 pointr/zelda

The official BoTW guide book suggests playing in the Zora, Gerudo, Rito and Goron order. Not sure if that reflects the same thinking suggested in the article, but I think it's pretty compelling.

u/breadrising · 1 pointr/zelda
u/seldenb · 1 pointr/Breath_of_the_Wild

Can’t find it now :( google isn’t cooperating.

Hardback is listed on amazon for about $40 but is out of stock “temporarily”.

u/Nathaniel_Wu · 1 pointr/NintendoSwitch

Just out of curiosity, why is the price of Zelda BotW official guide extended edition dropping so quickly? 40 to 25 in just one month? I just got mine, it seems very good.

u/anguswildwood · 1 pointr/Breath_of_the_Wild

The Legend of Zelda: Breath of...

I bought this to help me along the way, and there is a physical map included that I use to cross reference shrines.

I know it's $36 but honestly it gives a ton of insight to the game and is really worth it considering the hours put in.

u/Bryant-Taylor · 1 pointr/Breath_of_the_Wild

Official Complete Guide Expanded Edition. Has everything you ever need to know about the base game plus the dlc. Has been my best friend in my journey.

The Legend of Zelda: Breath of the Wild The Complete Official Guide: -Expanded Edition

u/SozoGen · 1 pointr/botw

I played the game through with my wife and got to 33%.
Second time through I picked master mode and bought this guide.
We're having a blast with this book revealing secrets we didn't know existed.
It provides a strict walkthrough to beat the game with the minimum requirements met. (Towers, Devine beasts, major quest's only)

Then provides a by region quest guide. Then maps galore for farming. Korok locations and tips. I'm still working through it but I love the book and it's quality presentation. I'll be proud to keep it as a memento of our good times playing.

u/RaidenTombs · 1 pointr/zelda

I was going to order the guidebook for $30 ( ) but Amazon didn't even ship it for three weeks. So I chatted with support the other day who told me it never shipped because of a technical error. So I followed their directions and reordered three days ago and they upgraded me to one day shipping. However, I still have not received any update on the order and I am so confused. Has anyone ordered this book and had it actually get delivered? Also, at this point should I even get the book? I'm not very far into the game and playing slow, and I think I would find it useful for info about the game, not necessarily solutions to Shrines. Plus I like collecting.

u/leerm8680 · 1 pointr/Breath_of_the_Wild

Ginormous guidebook with a full sized map of the shrines/koruks.

u/space_noodel · 1 pointr/gamedesign

I use the templates from this book.

u/MirokuOsami · 1 pointr/gamedev

Level Up by Scott Rogers is great! I've had my tattered copy for years and it's by far one of the best game dev books I've read. He also goes over a lot more things than level design, so I'd highly recommend it.

u/emomartian · 1 pointr/gamemaker

Not GML-specific but these are my two favorite game development books.

Try out this one for software architecture, wish I read it earlier
Read this to get thinking about game design

u/MaxPlay · 1 pointr/gamedesign

Game Design has nothing to do with programming. Familiarize yourself with the different roles in development and you will find books for the right topics. r/gamedesign is nice on its own. Depending on your use of technology, you might want to look into the corresponding subs aswell.

Good reads on game design are Level Up! and The Art of Game Design.

u/cparen · 1 pointr/spaceengineers

> It's not about a tutorial, it's about making the early game fun.

Ah, I think I see where I misunderstood. Yeah, first time I played, winter a year ago, I tried to do that. Had the bad luck of getting a starting asteroid that only had iron, nickel and uranium. Dug through it like swiss cheese before I realized I had to trek over to a neighboring asteroid. Still, it was pretty fast.

I think you're right -- it might be nice if it spawned a couple "scripted" asteroids near you that had some tiny deposits of everything (minus U). Then, beyond that, you'd have to search, but at least you could have agency on how you did that search.

In a sense, you're pointing out that walking is not gameplay. You're totally right.

> Sorry, didn't mean to be a dick. Well, I did, but I'm still sorry.

LOL, it's the internet. It's kind of expected. Thanks though!

u/tbone28 · 1 pointr/gamedev
u/reddituser5k · 1 pointr/learnprogramming

I use to recommend skipping straight into game dev since that is what I did but recently I realized it is best to learn programming first. Which is why I stopped gamedev completely to relearn everything about programming.

I have not actually done most of the things I linked because I want to learn a lot more before startin game dev again. I have done (1)'s intro to java part 2 and (2) the first two courses in the coursera python course so I know if you actually do intro to java part 1/2 and the full coursera course you will be ready enough to start game dev tutorials specific to whatever you want to create games on. I created 25+ game prototypes last year with less than those 2 courses teach..

1 is java programming, 2 is python programming but you make some games like asteroids, 3 is just a page describing how a JRPG works, 4 is multiple tutorials about gamedev, 5 is just a reddit post about do not repeat your self which I have learned from ignoring it that it is EXTREMELY important, 6 have not read yet but I am pretty sure it has to do with the reason I stopped gamedev to relearn from the basics, 7 I have not read but I most programmers recommend the book code complete and it has a similar name so it will probably be decent, 8 actual game dev

  1. - do intro to java part 1 and 2
  2. - do everything
  3. - just a quick tutorial to learn some basics of how jrpgs work
  4. - I have only read a few of these tutorials but they are pretty nice


    and.. maybe get a 6 month free pluralsight account from microsoft visual studio dev essential program thing and

    I am not sure how useful the pluralsight encapsulation/solid videos will be yet but it has made me think of OOP differently..

    A quicker version would be just to do 1, 2, then whatever game framework/engine's tutorials you want.
u/HitsABlunt · 1 pointr/factorio

I too am an engineer, been working in the Field for about 6 years, im a professional C++ developer, ive designed and implemented several simple game engines, the basics are: There is an Engine, which handles the graphicss, File IO and the other OS like portions of the game, then there is the Gamelogic, which maintains all the rules and functionality of the game, then on top of that there is game layer which would incorporate all the mods and scripting.

for ease of development, its very likely that the Game logic and game layers are implemented in LUA with the intention of rolling over into actual C++ when they stabilize to 1.0 and since the game is still alpha im willing to bet the "base game" "mod" that is in the mod list is actually a giant piece of LUA code i recommend you read that book

Edit: seeing the devs did reply, looks like just the top layer is in LUA.

u/ingframin · 1 pointr/gamedev

I would recommend game coding complete. It covers many aspects of game development, from code in c++ to crunch working hours.

u/rgehan · 1 pointr/gamedev

I'll take a look at them. Thank you :)

EDIT: Are you referring to this one and you probably mean Game Coding Complete ?

u/ULTRA_LASER · 1 pointr/oculus

thanks. try this 960 page book

it might have something in there :)

u/narshe_ · 1 pointr/gamedev

I would suggest reading "Game Coding Complete: 4th Edition". I just started reading it, and it covers all the things I've wondered about making games. Check out the reviews.

u/Jazzertron · 1 pointr/learnprogramming

Right now I'm reading a mammoth book to help me build a good foundation. Game Coding Complete

I hope to make a 2d sidescroller, and after that I want to make a big retro RPG like Crono Trigger

u/vinnyvicious · 1 pointr/opengl
u/Tarcek · 1 pointr/dwarffortress

^ theres a good resource. Use the wiki at the same time and the weekly questions thread on here and youre all set. If all that SOMEHOW fails, theres the Bay12 forum.

I get that thats all a bit impersonal, and itd be even easier with someone looking over your shoulder, but i for example just dont have the time to dedicate to helping you that directly. Now, if you just wanted to ask random questions over text because its more direct/personal and dont mind timezone differences, thats a different story.

u/Guennor · 1 pointr/dwarffortress

This one. Trust me, it was one of the most tranquil reads in my life.

It's not a narrative book or anything but I deeply enjoyed reading it, I couldn't wait to sleep so I could keep on reading it on the next day - every chapter showed a new possibility that could be done in DF. You can totally learn without it but it is a great learning resource on the game.

It was made in an older version without things like taverns and stuff but the basics still applies.

u/insaniak89 · 1 pointr/patientgamers

That’s what got me through the initial learning curve.

It may be out dated in some ways now, but I did refer to it past time I played (about 6 months ago)

u/ketura · 1 pointr/gamedev

Since some other people are trying to be cute, start with this wikipedia page here: .

I don't know of any online tutorials for the process of game development, but I am aware of a book named Software Engineering for Game Developers which goes over the process, step-by-step, of designing, outlining, and implementing the software part of a game. Note that this is one of the most dry, boring books on games I have ever read, but it's not about game design, it's about game development, and outlining software requirements is not a topic many people get excited about.

Basically, they go through the process of creating a requirements document which is a glorified to-do list of everything that the game needs to do, dividing those specific requirements into "stripes" which are different levels of completeness of your game, and then from there deciding on the best way to chop up the concepts into objects. The book is a monster 1000 page beast, but if you're serious about needing a step-by-step process, you won't get better than this.

My suggestion (if you don't purchase or, ah, otherwise obtain a pdf of the book) would be to simply start with this glorified To-do list that lists every feature your program should have in version 1. Then write up all the subfeatures that those features will require. Then divide all these items into groups where it makes sense and make each group an object (or object hierarchy). Do some research and see what parts might already exist, such as rendering, graphing, input, GUI, or serialization libraries, and incorporate them into the design. If you don't know what, exactly, goes into a game, try looking up a book such as Game Engine Architecture which will outline all the different parts that a game engine needs.

Then write the program.

Note where your design was insufficient or flawed, and don't worry about keeping the list intact--add or remove items as needed. Wash, rinse, repeat: the more you practice this on new programs, the easier it will be as you gain experience with what needs to be written out and what can be ad-libbed. The more advanced tools (such as UML et al) will be useful later, when you have more complex projects with more moving parts, that need to be explained to other programmers.

Until then just stick with lists.

u/The_Sober_Grudge · 1 pointr/gamedev

Hey Big_cow, congrats on your new job - I envy you and hope to join you shortly, as I am currently on a similar path (26, currently not in the industry but working my way in - started about 3-4 months ago).

I have a question/request for advice: I'm a non-gaming software engineer (around 3 years experience, currently doing DevOps at a healthcare-IT startup; no college degree). My current trajectory/plan is to write a few (3-4) games of varying levels of completion (some just for learning, maybe one as the "crown jewel" of my portfolio) with Unity and Unreal, and a game engine (not on par with Unity or Unreal, but one that fundamentally handles the basic functionality like rendering, physics, and AI to the extent that I could write a simple platformer or shooter game to prove it works - I'm currently working my way through this book), then try my luck in the industry.

Do you think that me already having experience programming will make a big difference? I see other game programmers like John Carmack, the Eidos folks who wrote Deus Ex: Mankind Divided, or the GTA V team and feel absolutely intimidated. Do you think I'm in for a serious struggle in terms of finding a job?

u/lazyAgnostic · 1 pointr/santashelpers

For programming, what kind of programming is he into? Here are some cool programming books and things:

  • Automate the Boring Stuff with Python This book has a lot of beginner projects that are actually useful.

  • Arduino A little microprocessor that he can use to make cool projects. I'm a software engineer and I had fun playing aroung with this. Plus, you can use it for actual useful things (I'm planning on making an automatic plant waterer, but you can look online for all the awesome stuff people have made).

  • Raspberry Pi Similar to the arduino but it's a full computer. For more software-heavy projects than the arduino. I'd probably recommend starting with the arduino.

  • Great book about how code and computers actually work that's geared towards the "intelligent layperson" link.

  • If he's already programming and wants to create games I can recommend this one.. Not good for beginners though.

  • If you want to give him a well written tome about game programming here it is. Again, not really for beginners but really good for someone wanting to learn about game programming
u/gavinb · 1 pointr/opengl

Well if you want to be the next Carmack, get cracking! :) You have a lot of ground to cover, such as: mathematics (matrices, linear algebra, etc), physics, artificial intelligence, real-time processing, multithreading, architecture, networking and protocols, rendering, sound, and much more!

It is certainly possible with enough time and dedication to develop your own engine. It's just that there are so many excellent engines already out there, that you would be competing with projects that have already invested many thousands of hours and have loads of titles already developed for them. Why not get involved with an existing project to start?

BTW I really like your idea of creating a FPS with one room and focusing on making that environment the richest possible, exploiting a wide variety of techniques. Do it!!

Is your ultimate goal to create an engine? Or to create a game? Remember, the engine is in many ways a means to an end - it's not much use without a game that uses it!

Either way, I think you would be well advised to get involved with one of the open source game engine projects, and start contributing. Once you've learned how they work, you will be in a much better position to design your own. And realistically, you can't really just design an engine without a game - you need to know how games work in the first place, and what features and architectural decisions and designs make for a good engine.

Consider joining:

u/shizzy0 · 1 pointr/gamedev

There are lots of books that purport to do something like this, but the field is so varied in terms of tools and styles, it's kind of a fool's errand. One merely ends up writing a, Here's How I Did-It/Would-Have-Done It.

One book I like that is very comprehensive when it comes to game design is The Art of Game Design. It does try to address the practical matters of making a game, but that's not its primary focus.

One book I would recommend for finishing is The Game Jam Survival Guide and just doing a game jam like ludum dare. A game jam is a great way to get experience finishing a game, and time is so tightly constrained that it forces a very different, scope-limited mindset. The ideal is never, ever attainable and yet some really creative, amazing games do come out of these jams.

u/Shadow-Master · 1 pointr/gamedev

Don't be suckered by a "Game Design" program. There are VERY few good ones. Most of in, 99% of them...are rip-offs.

Learn programming, 3D-modeling, or animation. Pick one that you're more interested in and then full-speed ahead. These will make you useful in more than just game development roles, thus helping you in the future when you have trouble landing a game dev job. At least you'll still be doing something you like in the meantime, and still building your skill in that area. Many really popular game designers have specialties outside of just "Design". Some are excellent programmers, some are artists, some have excellent business skills (really good at project management), and some are brilliant story-writers. Most game design positions are not entry-level, because you REALLY have to know what you are doing, before someone will trust you enough to let you touch the design. The only real way to prove that you are actually a good game designer is by having games to show off. That proves that you have some idea of the design process and know how to maintain a game from start to finish. This is HARD.

Some like to say that these degree programs for game design help them by giving them the incentive to push through and finish their stuff, otherwise, they might not have the motivation. Well, that's very problematic, because that means that you will not be the type of person who can finish a game. Game development requires you to be highly self-driven.

Most of what "Game Design" programs teach you can be learned by picking up a few game design books and making your own games (alot of them, too). Game design is learned by making games, not by having a professor tell you about it. You have enough mentors in the game development community already. They will always be there to critique what you do and give you tips on how to improve your work. Pick up a couple of books like The Art of Game Design and Designing Games. You can look at other books in whatever other area you want to master and just get started on making games. Turn off your console and just get started. Start small. Make very simple, basic games to start off with (B.A.S.I.C.). It's about learning the process first. Do that while reading a ton of highly-detailed game postmortems online. Just learn the process. THAT will be your real education.

And finally, start working your way up to putting together a portfolio. Portfolios speak much louder than a resume (although, a resume is still important). And that doesn't mean having a bunch of "Game Design docs". Games. Not docs. Games. Then build up your confidence and hook up with a team, so you can fight your way together to the end of making a complete game. (this may be one of the only valuable things that a game design program can provide you out of the box, i.e., a team that you are forced to work on a game with)

The single most important tool you will ever have is discipline. No degree will be able to top that. Give up the idea of being a hardcore gamer, because you are now going to need to become a VERY disciplined person. You're going to need it.

Finally: Don't forget to have fun. Good luck! :)

u/bobbateswriter · 1 pointr/IAmA

The single most important skill a game designer needs is what I call "Player Empathy." You must be able to figure out what the player is thinking, what he/she wants to do next, and how to entertain them while they are playing the game. Beyond that, there are so many different types of games - and therefore game design - that it's pointless to try and summarize in a forum like this. I did write a book about game design, which you can probably get from your local library. The Amazon link is here:

It's been out long enough that it's a bit dated on the production side, although the game design fundamentals still hold true.

But the best book to get, and it's much more current is Jesse Schell's book, which you can find here...

If you're building your very first game, I would advise not waiting for it "to be done" before you show it to people. As soon as you have made any portion of it, get it in front of people to see their reactions. Look up the name Sid Meier and see what he has written about how he develops his games a little piece at a time. Iterative development is where it's at!

u/Xand0r · 1 pointr/IndieDev

Glad my feedback was useful.

Thinking in terms of simplicity doesn't necessarily make for a better game. Fun should probably be more of a focus.

I definitely wouldn't say that I had "fun" or was hooked by your prototype. Creating fun in game design can often mean designing a good game loop. You game loop right now is 5 seconds long, consisting of "press a button for 4 seconds". Not very interesting or rewarding as it stands.

Here's a book I highly recommend:

It's all about game design, independent of coding or anything else.

u/destructor_rph · 1 pointr/gamedev

Which Book is better?

This One or This One?

u/MikeontheJob · 1 pointr/hearthstone

If you want to learn how a company makes a compelling game then read The Art of Game Design

u/RollingCarey · 1 pointr/vancouver

Thank you for the advice. I have learned a bit on my own (shameless portfolio plug here ) The dilemma I am having is the part of Game Development I enjoy most is Game Design the systems mechanics and rules part I have been reading some theory on my own Theory of Fun & The Art of Game Design: A Book of Lenses would recommend both. Anyway I find I learn very well in a class room environment seeing peers work on cool stuff gets me all fired up. Ok life story aside whats applicable as far as "normal degree/certificate" for Game Design?

u/jhpy1024 · 1 pointr/gamedev

You could check out this book.

If I recall correctly, the code is written in C++ but if you know Java reasonably well you shouldn't have too many problems translating the C++ code to Java.

I only read the first chapter in this book so I can't really comment on it, but a lot of people recommend it.

u/_joesavage · 1 pointr/gamedev

I haven't got all that far into it yet, but from what I've read it's pretty much exactly what it promises to be. It's a little expensive for sure, but I've found it useful so far.

I'd suggest taking a look at the 'Look Inside' feature on Amazon for a better idea of what the book offers.

u/TheAmazingSlothman · 1 pointr/gamedev

Things I would recommend and learned during my first two years in Game Development (I'm a gamedeveloper student) is that you should understand the way of how an engine works. How does the gameloop work? What should I put in my constructor? How should I create a new class? Should I use some kind of Design Pattern or do I need a simple class to something else totally unrelated to another object.

What you should do is try to get into Object Oriented Programming or try Component Based Programming (like in Uinty). There are some engines you can take a look at that use some of those simple ideas.

You should learn C++ if you want to get in serious Game Development though. There are a lot of decent books on this topic.

If you want to learn a bit on the standard things of an engine so you get a decent idea how it is build and how you build upon one. you should read this book.

I see there are a lot of answers already but if you want to ask me something else you can always send me a PM and I'd be happy to help you out!

u/Aazadan · 1 pointr/cscareerquestions

So basically, what I do is I work for a large company that has almost no understanding of software.

Said company makes a lot of equipment that for various reasons is hard to provide hands on training for (sorry if I'm being a bit vague here, but I rant about work a lot on Reddit to blow off steam so I don't want to identify myself too much) so what I do is I recreate those things in VR (or sometimes AR depending on what better meets the needs).

By doing this, we have products that can be pulled up on demand, configured however we need, processes can be done in a way that mimics a hands on experience, and a lot of the logistical problems get removed. The end result is better quality training for workers, and a massively reduced cost as we eliminate time delays and travel overhead.

What we primarily work in is Unity. You do not need a game dev specific education to do game dev, but there are a few concepts that are used heavily in game dev that aren't used nearly as much in other areas.

Naturally, algorithms and data structures are still king. Efficiency is everything in game dev because you often can't just throw more servers at something to scale. You have to take your clients hardware into account as well. Poorer performance means your customers need better hardware, and that starts to limit your market. In my case, since I build everything for internal use, I get to basically specify the hardware they use, which makes this a lot more pleasant, it's analogous to making something for a console that's going to be exclusive to just one platform.

The most used data structures are often different as well. I would say that what I use is probably 90% lists, 5% dictionaries, 5% graphs, though the graph portion tends to make up the backbone of everything so it's extremely important.

Other than that, runtimes of algorithms are very important. For the stuff I do, we try to maintain 120fps for our headsets. So that means we need to handle all of the processing and rendering in each frame in 8.33ms.

Even mediocre code can typically execute in that time, and the real bottlenecks are on the CPU load side of things like lighting calculations and collisions, which more often than not fall on the artists unless you're doing graphics programming.

Math wise, there's typically a small amount of linear algebra if you have to deal with 4x4 matrices, but otherwise most of what you deal with tends to be things like vectors, normalization, dot product, and so on. If your university offers a class on 3d math it would be worth taking. If they don't, memorize this book and you're set

Unity and Unreal are the two biggest game engines, both of them use a component based system. So reading up a bit on good component based design patterns is a good idea as well. There are other game engines out there, and those may or may not use components. But, component design is going to be the future.

If you want to know anything else, just ask.

u/gamepin126 · 1 pointr/gamedev Amazing book, after I checked it out from the library I decided I needed it. Nearly every example has a real life implementation, tons of code examples.

u/happyFelix · 1 pointr/howtonotgiveafuck

Read this book and then slap her face with it.

u/StabbyPants · 1 pointr/sysadmin

> Computer broken. Have important meeting in 3 minutes, pleas fix.

giggle sez: read a damn book

u/gianttabby · 1 pointr/Gaming4Gamers

Check out Ian Bogost's How To Do Things with Video Games and Jane McGonigol's Reality is Broken. Both books revolve around exactually what you ask for.

u/brianj5000 · 1 pointr/suggestmeabook

I recommend Reality is Broken. The author also did a TED talk you an check out and see if it's what you're looking for. I really enjoyed it.

u/fififlipper · 1 pointr/gaming

You might check out the book Reality is Broken - I thought it had a lot of useful insight into the 'gamer mindset'.

u/teh_eria · 1 pointr/Guildwars2

Reminds me a bit of Reality Is Broken by Jane McGonigal.

u/glitteredblack · 1 pointr/googleglass

I completely understand and you are more than welcome :)

How are you enjoying Game Arts program? When I was thinking of starting another degree I looked at MICA. I loved the school and the faculty was amazing, but I ultimately I decided that relocating to Maryland for another Bachelors was not in my best interest. I wish they had a graduate program that focused on Games.

If you haven’t read it yet I highly recommend “Reality is Broken” by Jane McGonigal. It opened my eyes to seeing game possibilities in scenarios I would have never associated with gaming prior to reading the book. If you are short for time, or just do better with visual learning, her TEDtalks are also pretty great as well. Are you looking to branch out onto your own past graduation, or even flirting with the idea? If so, you need to read Reddit co-founder’s Alexis Ohanian’s book “Without Their Permission.” I apologize for the unwarranted random book recommendations they just are really great reads, especially for game developers.

u/realityhacker55 · 1 pointr/saraba1st

你説的没錯,這的確是一個扭曲的環境下—個扭曲的表達方式。但一方面,現代社會巳進入遊戲時代,連企業都採gamification (遊戲化)的方式來潛移默化帶領員工節奏。為什麽不進—步用在改變社會上面?

設計遊戲來改變社會創造未來,並不是一個新的概念。不知下面這本經典之作有在國内出版嗎?在多人遊戲中,两岸的玩家可以友善地对談; 在走上街頭搜集宝石的过程中,志同道合者自然集結; 誰知道过関後獲得的武功秘笈裏,竟藏著推倒tg过程的變局十策?傳説中的朱元璋,靠著在月餅裏夾帶訊息,大家约好在同—天起義,全民共振.....總之,我不小看遊戲的潛力。遊戲是先進科技。对tg這种数位極杈,也許只有從黑技術下手來顛覆。


u/sixmill · 1 pointr/truegaming

I have an example: Settlers of Catan the board game. Until I read this book:, I had little to no appreciation for non-skill elements to games. I tended to gravitate toward pure-skill games such as chess. After gaining an understanding for why elements of luck are added to games (bringing new players into a game, mainly), I started to appreciate that aspect and not be bothered by "bad" dice rolls when I played Catan with friends.

u/pjsdev · 1 pointr/gamedesign

Okay, here are 4 suggestions about theory. There are plenty more, but these are a few of my favourites.

Rules of Play: Game Design Fundamentals

  • Chunky theory book and one of my favourites. Also has a companion book of essays

    Characteristics of Games

  • Really nice combination of chapters from various designers (including Richard Garfield of MtG) looking into different aspects of design.

    Game Mechanics: Advanced Game Design

  • All about systems and how resources move through them in games and the affect that has.

    Theory of Fun for Game Design

  • Easy to read, nicely illustrated and conveys a powerful fundamental idea for game design.

    Good luck and happy reading.
u/LocalAmazonBot · 1 pointr/Netrunner

Here are some links for the product in the above comment for different countries:

Amazon Smile Link:

|Country|Link|Charity Links|

To help add charity links, please have a look at this thread.

This bot is currently in testing so let me know what you think by voting (or commenting). The thread for feature requests can be found here.

u/garyhoov · 1 pointr/IAmA

of course the key is developing the game concept and mechanics.
i develop large spreadsheets for my scoring formulas.

this is a very great book. in my amazon review of it, i list all the other books i would recommend on game design. (games of all types)

u/Punt_Rocket · 1 pointr/gamegrumps

Probably this one

Game Theory is mostly math by the way, it doesn't directly pertain to video games.

u/brentknowles · 1 pointr/gamedesign

For an examination of game design at its core, I'd recommend The Rules of Play

I would offer caution about going "too big" on your first outing. Pick your tool to build your first game (or even just mod an existing game) and try to create something small.

And if you just want to prototype rapidly, I was using Scratch for a while before I got up to speed on Unity ( even though I hate visual scripting languages...

u/Dark512 · 1 pointr/gamedev

Not entirely sure if this is what you're after, but this is something that my games art tutors recommend.

u/TheDieIsPodcast · 1 pointr/boardgames

Take a look at this book:

It will provide some pretty good insight, I think.

u/Code_wizard · 1 pointr/rpg

Game design hobbyist here, I think some perspective is needed. If you want to start designing games I suggest you begin with something smaller. Table top RPGs are a complex interconnected web of rules and stats and one of the hardest types of games to design well. The only other type of physical game that is equal in difficulty is a deck building card game (which is what I assume you meant as 'card game'). If this is a hobby you wish to pursue I suggest reading a few books on game theory, flow, and statistics. This textbook can serve as a good introduction to all of these: Rules of Play: Game Design Fundamentals. After that, write a master design document that explains everything you want to accomplish with the game. Next, get some index cards and start play-testing ideas. . . .

u/crash7800 · 1 pointr/battlefield3

Exciting! Just let me know if you ever have any questions or anything :)

The other thing I'd recommend is reading this:

Thank you so much for the compliments. I feel lucky to do what I do, so it means a lot! :D

u/FourSquash · 1 pointr/truegaming

Maybe not a direct study on the medium, but The Ultimate History of Video Games is a very good book with a ton of good content and does address the abstract medium to some degree. It's also just a super interesting book.

u/tortus · 1 pointr/gamecollecting

This book goes over the gory details quite nicely. It was an enjoyable read. Atari had quite a colorful history.

u/insanechipmunk · 1 pointr/gaming

Sega didn't fail because of clinging to former greatness, it failed because of spending ridiculous amounts of money on periphials that forced consumers to pay more money for a slight upgrade in graphics. (It's pretty well documented.)[] I also suggest this (book)[]

That said, the Wii U's success or lack of has nothing to do with Nintendo being the leader in gaming hardware as it is. Simply put, Nintendo, even with lackluster sales of the Wii-U has sold more than 200 million units in total than it's closest competitor.

If you were winning a race by 50% more than your closest rival, there is no way anyone could say you were trying to catch up to anyone unless they were talking about you lapping someone else.

Further more, let me play it your way, where we limit this race to just the current generation of systems. Nintendo has already announced the NX and that they are not supporting the Wii U. I don't know about you, but if I am losing a race and quit, noone can accuse me of trying to catch up. I'm already planning for the next race.

So either way, Nintendo isn't playing catch up.

u/viruselectriko · 1 pointr/gaming

i haven't read this book but i seriously recommend "The Ultimate History of Video Games"

u/shizno2097 · 1 pointr/retrogaming

The ultimate history of videogames is really good, the audiobook has an awesome narrator

u/zydeco100 · 1 pointr/gaming

If you read the Steven Kent book, Chuck E Cheese was a way to get arcades into neighborhoods and jurisdictions that were biased against opening video arcades for various reasons.

u/melotraumatic · 1 pointr/gaming

Ever taken a look at this?

u/smithincanton · 1 pointr/gaming

Been there, done that, bought the book.

u/stry8993 · 1 pointr/todayilearned

I do believe it was the back up that he broke into. I agree, you'd assume they'd have redundant back ups, but it was compromised in such a way (from the Article I read in 'biography' about Half-Life 2 and it's development, that put it behind schedule.) Also, the code stolen, was then compiled, so there was a pretty decent chunk of it.

EDIT: This is the book Half-Life 2: Raising the Bar

u/PaperBlankets · 1 pointr/gaming

This is a screenshot of Raising the Bar.

I was going to bitch about people reposting its content and tell people to buy it. But I see the price has gone from around $30 when I bought it to well over $100.

Can't fault anyone for not buying it at that price.

u/ElMetchio · 1 pointr/italy

Con le basi sono messo abbastanza bene, sono un ingegnere informatico e lavoro praticamente solo in C# sullo stack .NET .. solo che per ora ho programmato praticamente solo webapp e al massimo software piccoli desktop. Quello che mi servirebbe sarebbe una buona introduzione al ciclo di vita e all'architettura dei giochi..

stavo pensando di acquistare questo libro, sembra ottimo!

Game Programming Patterns

u/aethronic_dz · 1 pointr/gamedev

My top three books are:

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

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

u/CasualFrydays · 1 pointr/ProgrammerHumor

So I mostly taught myself programming, but i have an engineering background. For context, im working now as a game developer. What i found most helpful once i became confident with my actual problem solving skills in programming was learning programming patterns.

For me that came in the form of [this book] (, which is really just a rehash of how the design patterns in this book can be applied to game development.

Basically once you're more familiar with design patterns, you'll be able to build more manageable code, and better understand others who are using the same patterns.

u/chaoticroman · 1 pointr/gamedev

One thing you can try to do is learn programming patterns. Patterns can help you get your head around new problems. They are ways of doing things and can be used to solve many diverse problems. This is a great book to read:

u/braingame26 · 1 pointr/IndieGaming

Like others have said you can find tools to make games that don't require coding. However, if you want to learn how to code games, you first need to learn how to code in general. You should learn basic object-oriented principles (inheritance, polymorphism, encapsulation, cohesion, coupling). I'd also strongly recommend learning about design patterns. Write some simpler programs before you try to write a game. When you get to writing a game, start out with a simple game (or maybe clone a simple game you know of, like flappy bird).

Programming Tutorials:

Game Programming - has lots of examples on using design patterns in game development - free book on coding vectors, forces, steering behaviors, and other physics stuff - a pattern you should know if you want to code games

u/KimTiger · 1 pointr/gamedev

I would recommend looking up the book Game Programming Patterns. Another thing that was that has helped me is how to create an finite-state-machine (FSM), with this you can manage game states and AI-states etc. Also I have heard good things about ECS (Entity-Component-System) but have yet to try it myself. Currently I am reading about how to use Lua for modding capabilites. Don't know if this was helpful or not.

u/JasonLiao · 1 pointr/learnjavascript

We all know Professional JavaScript for Web Developers is a fantastic book for the JavaScript beginner. And the author also has a book about ES6 called Understanding ECMAScript 6, hope this help :)

u/codaboom · 1 pointr/javascript

This was an excellent book. Very thorough and got me learning my first few months of JS

u/udiWertheimer · 1 pointr/dogecoders

The book isn't mine :)

You can purchase it here or try out the pdf. I recommend you buy it if you like it.

More info at the introduction post.

u/DotaRageDotComm · 1 pointr/webdev

strap down with a good book, and work through the examples in said book.
For example, a decent one for Javascript would be Professional Javascript for Web Developers. While you get a firm grasp on concepts try building something.

u/jaymz58 · 1 pointr/web_dev

I'm not sure what your level of understanding is for programming in general; but If you're fairly new to programming concepts (creating variables, if then else, loops, functions, classes, etc) I would probably spend some time getting familiar with these concepts first. I think there might be some decent beginner programming/JavaScript vids on to watch. One thing to keep in mind is JavaScript isn't a very rigid language. It allows you to get away with a lot of things that some (I guess we'll call them higher functioning languages) do not. Just keep this in mind if you ever decide to venture to another language.
I'd recommend just learning the basics of JavaScript first, get comfortable with it, understand how it works and then once you start feeling comfortable with it, pick up a framework like JQuery. JQuery is just a bunch of JavaScript functions that shorten the amount of code/time that you have to write and is fairly standard amongst many developers abilities. From here on out, pick up a something like angular or backbone; just keep your eyes on the different user communities, new products, research the pros/cons of each system. They all have things that they are better at and I've found that the type of projects that you want to build really influence the choice of framework that you will use. Also, here is a great book recommendation for JavaScript. I found this on a post in the community a while back and it's been a great resource. Not sure if there is a newer version or not.

u/hmsimha · 1 pointr/learnjavascript

> Professional Javascript for Web Developers (which is like the bible of core JS)

Here's what I don't get about this. I read through some of this book and got shot down on Hacker News in a conversation about ECMAscript vs Javascript.

Apparently, the author's claim that Javascript is composed of 3 distinct parts (Ecmascript, DOM, BOM) is completely false. For anyone interested, you can see what I'm talking about on page 3 of the Amazon preview

Not sure why a book that has such a significant mistake at the very beginning would be held in such high regard.

u/proginprocess · 1 pointr/learnprogramming

Currently Reading:
JavaScript - Professional Javascript for Web Developers

Software Design - Clean Code

Later on, I'll be reading this for Data Structures and Algorithms:
Introduction to Algorithms

Don't know what I'll do for a specific language later on. Probably go back to C# and see what I can churn out there.

u/kmongy · 1 pointr/webdev

The book you recommended is online as well. I know many swear by Eloquent JavaScript. I’ve personally learned the most from Nicholas Zara’s’ book

It is a bit dated, but you can “catch up” relatively quickly. I’m also just starting out. There’s so much out there. Hope this helps!

u/ssosina · 1 pointr/learnjavascript

I'm building sites with, minimal amount of JavaScript. I first read "professional javascript for web developers" by Nicholas Zakas and never really completed it, as it was just boring to look at.

u/robdelorean · 1 pointr/javascript

It's a little dated now but surprised Javascript for Web Developers by Nicholas Zakas isn't on there.

u/marlenaq · 1 pointr/cscareerquestions

First don't feel grossly under-qualified. There is vast amounts of technical knowledge and you will never learn absolutely everything.

I was in a similar position a few years back. The bottom line is, you have to always learn, read and build things. I highly suggest this book, download the e-book version and chip away at it everyday.

This will give you a rounded foundation and fill your head with the terms you will need in the future. Once you understand it broadly, you can start reading further material until you really cement it.

u/NookShotten · 1 pointr/learnprogramming

I started off with and did their front-end developer track, which introduced me to HTML / CSS / Javascript. I had tried Codecademy prior to that, but I felt that it was just teaching me to follow directions, not teaching me to code.

I read the core chapters of Javascript for Professional Web Developers and then did the same for Javascript: The Definitive Guide. This is what really gave me a strong base understanding of the Javascript language (arrays, objects, prototypical inheritance, etc.).

Along the way I started using jQuery for DOM manipulation, which really made things easy, but it felt just...too easy. Like I was cheating myself by using this magical tool that I didn't really understand. So I started reviewing the DOM-related chapters of the two books I mentioned above, which is something I'm currently still undertaking.

As for AngularJS I've been trying to follow this guide which I think has a pretty solid set of resources. I'm by no means an advanced AngularJS user, but hopefully in time I'll continue to grow. My current project is for my wedding, and uses an array of JS objects, each containing hotel information (name, location, description, website, etc). It then plots them on a Leaflet.js map and adds an entry in the list below each time I add a new hotel. I was pretty proud of that.

As for Node.JS, Professional Node.js has been really good so far. I learned enough to implement an XMPP bot at work, which was well received.

I'm continuing my education on Node.js--specifically with Express which I'm learning at the moment through MEAN Web Development

As for Python, I just finished my first course (Programming Fund. I) which was in Python, so I know the basic syntax. PHP I can read well enough, but sort of gave up on learning (for now) once I found server-side Javascript.

It probably seems like I read a lot of books, but I do want to mention that I haven't 'finished' these fully; I usually read it section by section, sometimes jump between books. I just have an erratic reading style, I guess.

I think the most important things are:

  • Find something you're passionate about

    I really enjoy Javascript and I think that has been a major motivator for me. I don't think I could have put the same level of effort into learning, say, PHP, which just doesn't excite me in the same way.

  • Find a solid primary resource

    I know that the accessibility and clarity of a CS-book can be totally subjective, but from what I've found there are almost always a certain set of resources people universally praise (like Definitive Guide / Good Parts / Eloquent Javascript for JS). I spend a good amount of time researching what the community for the language / framework tend to agree is the best resource.

  • Write out the examples from the books

    Especially for big tomes like The Definitive Guide which are just choke full of great snippets, I've found that its super useful to type out each example that you do not 100% understand. I've even found some errors in the books this way, which only served to help me understand how it really works even more.

  • See if there's a problem you can solve along the way

    This was big for me when it came to Node. The company I work for had a lot of traffic in their Jabber rooms and it was difficult to quantify it. I'd like to move to a SW Developer position there someday, so I decided that I'd try to solve the problem by getting a Jabber bot that monitors and records activity based on room, user, time. Having a tangible goal in a real-world context made me more motivated to figure out how I could use my tools to effectively.

  • Establish a good workflow

    Find an IDE you love and learn it inside and out. Get all those fancy-pants plugins and add-ons that make it hyper-functional. Find out which tools really 'click' for you and learn how they work. I've recently found myself very happy using Sublime Text as an IDE, Yeoman for boilerplate (love Grunt so much), and SASS as a CSS preprocessor (with Susy / Bourbon ). It just feels so satisfying having a solid setup, and I think that that kind of satisfaction with your environment makes it easier to learn.

    Overall I still think I have a lot to learn and wouldn't claim that I'm an expert in any realm yet, but eventually--with time--I hope to be.
u/LawrenceMichael · 1 pointr/learnprogramming

I checked this sites content for C and C++. What was there was more so examples than it was well-explained. Since I don't know Javascript too well, I can't say how good the guide is, but if the quality level of their C and C++ content has anything to say for them, I'd say stay away.

Reddit already has recommended places to go for this. The Learn Javascript subreddit suggests one of the following three options:

Learn Javascript from the Mozilla team's resource

Learn Javascript from Code Academy

Learn Javascript from the subreddit's study group which uses this book Professional JavaScript for Web Developers

From a very quick look, Mozilla has a lot of good content that is well-explained. It looks like most people will want to begin with the "JavaScript first steps" section if they choose this route. Compared to CodeAcademy, I think you'll walk away with a better understanding after going through everything MDN has to offer. On the otherhand, I would say CodeAcademy is easier for beginners.

If CodeAcademy stays true to its reputation, I would imagine it is very good for the beginner to get their feet wet.

The Learn Javascript study group's curriculum seems to be using a pretty good book that is supplemented by CodeAcademy and other online resources. This looks to be the most comprehensive of all the choices.

u/chubasco · 1 pointr/learnjavascript

I second CodeSchool. If you are serious about learning web development quickly, it is worth the cost. You probably should supplement it with something heavier like Professional JavaScript for Web Developers.

u/llFLAWLESSll · 1 pointr/learnprogramming

I would advice you to start with Eloquent JavaScript to get the basics down, and then switch to Professional JavaScript for Web Developers, 3rd Edition
which is a book that is very thorough and will teach you A LOT of stuff(warning: it's 960 pages.)

Eloquent JavaScript:

Professional JavaScript for Web Developers 3rd Edition:

u/efefvi · 1 pointr/web_design
u/Mikiz · 1 pointr/learnprogramming

the 2 i used are eloquent javascript . There is a pretty big leap in complexity when it comes it chapter 6. Don't worry if it goes over your head if youàre completely new. It has an epub free download you can convert to mobi for kindle or a kindle version on amazon.

Professional JavaScript for Web Developers is a more indepth book on JS. Explores everything with good examples but doesn't have exercises. I recommend it as a second book.

u/gators1240 · 1 pointr/gamedev
u/AresProductions · 1 pointr/gamedev

Try to find similar games and study how they evolve as you pass the levels etc.

After doing that think what elements can you change in order to make your game feel more unique.
Also try to think about how those elements will appear as the player progresses. Try to combine them in different ways so that he will get challenged even more.

Last, you said that the game is a platformer, you can check out this book,!
It has general thoughts on design but specializes in platformer too!

u/Evey9207 · 1 pointr/gamedev

Hey so I don't know gamedev's opinion on the book Level up!, But that's the first book about game design that I got when I started and it helped me understand a lot about the process of game design.

It is a very frustrating but very rewarding process. In the end when people try your game and you see them have a blast, that is the best feeling ever.

u/JabawaJackson · 1 pointr/gamedesign

I actually got this one for one of my classes and was surprised by how much I enjoyed reading it. I even finished it before my classes started.

u/redmcgibbon · 0 pointsr/AskReddit

Find this book and you will find your answers.

And here's a decent timeline.

u/latticusnon · -1 pointsr/DotA2

Here you go.

I should have said "basic" instead of "simple." As in this is a fundamental thing your game engine should be capable of. It is simple in that it's not a unique problem, it has been solved before and there's no reason you would have to reinvent the wheel here.

u/NondeterministSystem · -2 pointsr/pokemongo

I disagree with the premise of Mr. or Ms. Kubina's statement. Having said that, I think there's a point in their comment worth addressing.

Why isn't hunting for or excelling at a job always at least as engaging as hunting for Pokemon? I mean, the rewards are more useful--the resources necessary to, y'know, eat--but chasing cartoon mushroom-infested bugs is far more fun. I don't think the answer to that is simple, but thinking about the question can be very insightful. I'd recommend game designer Jane McGonigal's book Reality Is Broken. If you're in a pinch for time, consider her TED Talk to start.

u/robvitaro · -4 pointsr/dwarffortress

Peter Tyson's book ( is excellent for getting the basics down. It's based on 34.11, but all of his examples are basic enough to work for 2014 too. Highly recommended.