• Announcements

    • khawk

      Download the Game Design and Indie Game Marketing Freebook   07/19/17

      GameDev.net and CRC Press have teamed up to bring a free ebook of content curated from top titles published by CRC Press. The freebook, Practices of Game Design & Indie Game Marketing, includes chapters from The Art of Game Design: A Book of Lenses, A Practical Guide to Indie Game Marketing, and An Architectural Approach to Level Design. The GameDev.net FreeBook is relevant to game designers, developers, and those interested in learning more about the challenges in game development. We know game development can be a tough discipline and business, so we picked several chapters from CRC Press titles that we thought would be of interest to you, the GameDev.net audience, in your journey to design, develop, and market your next game. The free ebook is available through CRC Press by clicking here. The Curated Books The Art of Game Design: A Book of Lenses, Second Edition, by Jesse Schell Presents 100+ sets of questions, or different lenses, for viewing a game’s design, encompassing diverse fields such as psychology, architecture, music, film, software engineering, theme park design, mathematics, anthropology, and more. Written by one of the world's top game designers, this book describes the deepest and most fundamental principles of game design, demonstrating how tactics used in board, card, and athletic games also work in video games. It provides practical instruction on creating world-class games that will be played again and again. View it here. A Practical Guide to Indie Game Marketing, by Joel Dreskin Marketing is an essential but too frequently overlooked or minimized component of the release plan for indie games. A Practical Guide to Indie Game Marketing provides you with the tools needed to build visibility and sell your indie games. With special focus on those developers with small budgets and limited staff and resources, this book is packed with tangible recommendations and techniques that you can put to use immediately. As a seasoned professional of the indie game arena, author Joel Dreskin gives you insight into practical, real-world experiences of marketing numerous successful games and also provides stories of the failures. View it here. An Architectural Approach to Level Design This is one of the first books to integrate architectural and spatial design theory with the field of level design. The book presents architectural techniques and theories for level designers to use in their own work. It connects architecture and level design in different ways that address the practical elements of how designers construct space and the experiential elements of how and why humans interact with this space. Throughout the text, readers learn skills for spatial layout, evoking emotion through gamespaces, and creating better levels through architectural theory. View it here. Learn more and download the ebook by clicking here. Did you know? GameDev.net and CRC Press also recently teamed up to bring GDNet+ Members up to a 20% discount on all CRC Press books. Learn more about this and other benefits here.
Sign in to follow this  
Followers 0
Saint Retro

Books (Long post sorry)

8 posts in this topic

Dear all,

 

I am currently reading the Head First C# 2nd edition book.  It is an excellent book for me and I'm really finding the information to be sticking, although I have dabbled with learning programming before (Visual C++ 6.0 and a book  called 'A complete idiots guide to c++, this was 11 years ago) before so I wasn't totally new.

I see a lot of posts where by someone finishes a book and then think they are a programmer, I am a realist and I know that learning the syntax of a language doesn't make me a programmer.  I am 28, I do not work specifically in IT but I have long had a feeling that it's my calling in life to keep plugging at this because of the way my brain works and how I think of problems that arise daily in my work and life in general.  I am rubbish at Maths, I have been teaching myself what I think I'll need through various great resources, mainly around Trig and Algebra, things I couldn't give two figs about in school but now that I actually want to learn them I find I can quite easily.  

My issue is this, whilst I'm learning some useful things in this book I know what will happen at the end, I'll struggle to work out how to design and implement a game and fall back into the void only to resurface years later again.  I am determined to not allow this to happen again, time is getting on.

I need a book albeit not immediately that doesn't focus on language so much but on the design (code wise) of a game, the  thought process around it.  Ok so I should make pong, not even a clue where I would start, I'd probably work out a few classes for things but no idea how to glue it all together.  This is exactly why I gave up when I was 17, I felt I had a good beginners grasp on C++ and no idea how to implement it into anything game wise, in reality though I knew nothing.  That said I was also guilty of buying lots of advanced books, and then trying to read ahead and not keep focusing on the beginner stuff.  I actually wish I didn't throw away all my books from back then, I genuinely thought I could pick up Game Programming All In One and off I'd go, same with Programming RPG's With DirectX, those books were years ahead of me in terms of my ability.

The difference this time round is I'm finding everything much much easier, I don't know why but I'm not complaining.  I was using an ebook first but I got the paperback as I prefer and find it easier to study around the house.

I prefer books to online resources when it's a lot of material, I like internet articles for shorter things like a small focused article or the Trig I was studying, brilliant.  Before I even think about engines (likely to use Monogame as I had a sneaky look around) I want to understand more about the design, I like books that talk to you like you're an idiot so to speak.  I don't want a book to teach me about making an engine, it's pointless for me as I have no desire to make one and I don't think there would be any point for my goals, I have spent literally weeks reading descriptions, studying content guides and downloading e-books to give myself a preview before deciding to buy.  I am just concerned I may be missing some really good suggestions because a lot of the questions asked on here are akin to "how do I learn to make a game".

I have no idea on state machines, game loops, nothing.  I think I make a simple game in my book later on which may give me a good leg up but it won't be comprehensive.  A good book would be one that presumes you have an intermediate understanding of a language (pref C# but it doesn't mater specifically for this case) and maybe it even uses an already available engine, it focuses purely on the design, how to think about implementing it etc. 

I'm talking 2d simple games here, I'm not trying to set myself an unrealistic goal, I want to get educated on the design and implementation so I can manage more ambitious projects in the future perhaps, although to be honest I'd be absolute elated if I ever manage to get Pong going.  If I am missing something obvious I should be looking in to please let me know.  Rest assured I spend hours on this site reading many many similar questions but ultimately I feel they are written with no research or thought going in.  I appreciate any advice here.

 

Edit:  One thing I haven't made clear is that I am not content in simply using something like unity to make pong, I now understand that trying to get low level is pointless for me (I used to want to understand everything below even assembly) and makes my goals unobtainable but I do not want to use something with that level of hand holding, I want to have a bit more control and when I played with unity it seems I could set properties on objects and create something very fast.  This is great for some people but I wouldn't really feel like I created it then.

In some respects I even disliked C# at first because too much was automated but I have to compromise somewhere to achieve anything.

Edited by Saint Retro
0

Share this post


Link to post
Share on other sites

Here's an idea: (shameless plug)

 

http://www.indiegameprogramming.com/BookInformation.php

 

But that being said, there is no magical secret book that will teach you how to make games.  The best way to make games it to make one.  Tetris is actually a good start.  The graphics are squares, which anyone can make, but it ends up being a lot harder than you think.

2

Share this post


Link to post
Share on other sites

Thank you, I know there is no magic book, I suppose I'm asking for a selection of the best on multiple parts to make up to what I need.  I saw one thread where someone asked similar and I looked though a lot of the books but never felt comfortable that I was getting what I wanted.  Too many try to be a jack of all trades and don't cover anything in great depth, not that it may be a bad thing.

I shall look at your link now but the contents 'look right' smile.png

Am I naive to think that Java is fairly easy to translate to C# as well?  It seems a few of the things that are made already exist to my knowledge in the .net standard framework.

Edited by Saint Retro
1

Share this post


Link to post
Share on other sites

Am I naive to think that Java is fairly easy to translate to C# as well?  It seems a few of the things that are made already exist to my knowledge in the .net standard framework.

 

Any language is just a tool to get things done.  They will all have idiosyncrasies that need to be learned and managed.  Writing a Java Swing game will not be the same as C#, but the core stuff you need to do: rendering, sound, input, are a small part of the game.  While those things are different for every language/API/engine, after you figure it out, the real challenge becomes making the game.  

 

The above book does walk you through a complete game from scratch.

Edited by Glass_Knife
2

Share this post


Link to post
Share on other sites

Hi,
 
A game loop is a fairly simple piece of code that look like that for a turn based game

while not GameFinished
- PlayerInput = WaitForPlayerInput
- ApplyToGame(PlayerInput)
- ApplyToGame(GetAIinput)
- Display game board
- GameFinished = CheckForWinner
end

For a real time games, you don't wait for the player's input, you just check if he has the keys pressed or not and refresh. There's plenty of examples around the forum. Also the suggested book from Glass_Knife looks fairly comprehensive, you don't need to know Java to understand the basic ideas. Otherwise I am pretty sure you can find very similar tutorials directly in C#.

 

I'd discourage you from using any sort of engine until you're comfortable with the basics. One common misconception about game engines is that they make things easier. While it's true to those who are already comfortable with a language and with basic game logic, it's quite the opposite for newcomers who have 3 things instead of 2 to learn at the same time (programming, game logic, and inner working of the engine used).

 

It's certainly a bit early form you to learn about AI and pathing, but just in case, here's a book i found useful (mostly C/C++ oriented, but despite coding in another language, I had no problem reading it). No idea if it's still published, though.
 
Programming Game AI by Example by Mat Buckland (Wordware Publishing)
Basic math implied in 2D and 3D games (can be skipped to some extend), basic FSM agents, fuzzy logic, path finding. With many ready to be compiled mini-games and examples. Also goes around explaining game loops, some OO programing and lua scripting. It's probably a bit out of touch with the modern approach to game design (multi threading and so on) but for new to intermediate coders i still think it's a great read.

 

2

Share this post


Link to post
Share on other sites
Thank you all. I'm more than fully aware about where I am but I worry about the future scenario akin to 10 years ago. Fortunately having a full time job means I don't have to limit myself on the amount of materials I can acquire.
Holding off upgrading my laptop for now though :) the indie book looks,great 1-3 week delivery time from amazon UK but that makes no difference. Only downside of all this is now I'm getting curious about Java.
1

Share this post


Link to post
Share on other sites

Another shameless plug:

 

http://packtpub.com/direct3d-rendering-cookbook/book (Direct3D Rendering Cookbook) 

(or on Amazon)

This takes you through using Direct3D with SharpDX and C#. It doesn't go into game design itself, but does give you a good intro into rendering techniques with Direct3D (e.g. tessellation, bone animation/skinning, deferred rendering, etc).

 

Good luck with it, I find programming in general to be a really rewarding activity and I hope you can get out of it what you are after!!

2

Share this post


Link to post
Share on other sites

General programming courses can help in designing code and structure to, MIT and Standford have some awesome open courses you can watch on the internet about this stuff. This also shows you what most university educated programmers have seen so that you can increase your knowledge in areas you werent aware you might needed to know. One of the best topics to read about is logic and set algebra and general algorithm construction and design.

2

Share this post


Link to post
Share on other sites
Thanks for all the suggestions. I have ordered the java indie book but I will try to resist the temptation to read it until I'm a bit more solid with C#. It's hard balancing all the learning especially trying to do maths at the same time after 8 hours at work a day but hey ho :)
0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0