• 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.

BUCH Dragon

  • Content count

  • Joined

  • Last visited

Community Reputation

161 Neutral

About BUCH Dragon

  • Rank
  1.   Close call. But I believe that is not correct. Notice that that conditional is within a while loop, and the "frame" actually takes place if there is no input. So it effectively processes all input first, and deals with frame rendering/updating/whatever only if there is no input(if(Peek...) fails).       I appreciate the advice, but there is so much to learn and so little time, that I can not really afford to be browsing around much. To be honest I thought someone would recognise a common design pattern one would usually desire in such a situation and suggest it from their experience. I am more or less satisfied on how I design the structure so far(hoping it stays that way), it is just that one little Input module and handling of input that I raised the question about that concerns me.
  2. Right now, the System class is running the infinite game loop. Inside, after calling Graphics::render(); it checks for the input with Input::doSomethingWithInput(). Is that not a separate subsystem or did you mean something else?   Example: System::run() { MSG msg; memset(&msg, 0, sizeof(MSG)); // Infinite game loop. while (true) { // If there is a message. if (PeekMessage(&msg, 0, 0, 0, PM_REMOVE)) { // If it is a quit message, break out of loop. if (msg.message == WM_QUIT) break; // Translate message. TranslateMessage(&msg); // Dispatch message to message processing function (WndProc). DispatchMessage(&msg); } else { /* Run game code */ // Render frame. graphics->render(); // Get time taken to render the frame... double frameTime = frameTimer.getTimePassed(); // Not sure. input->doSomethingWithInput(frameTime); // Update game. graphics->update(frameTime); } } return msg.wParam; }
  3. Hello gamedev.   I have been wondering for a while now on how to design the structure of my project. Somehow, I don't seem to be quite satisfied with the ideas that come to mind. Perhaps, your opinion might lead me to a solution of my liking.   I have a basic layout:     Now the problem is, I'm not sure on "who" should process the input. For example: the Input class declares DirectInput object and device objects(keyboard and mouse) .   If I make Input class the "processing class", then it will have to include all other classes like Graphics, Networking, etc, etc. Not only that but it will either have to have some GameState class where it stores modified information from processing inputs and everyone would have to include this GameState class to work with it. An alternative to not having a GameState class, would be to pass all references of everyone from the System class to Input class and write lots of modification(setter-like) methods for everyone, so the Input class could push the processed data down their throats using those methods.   If the System is the "processing class", then it would get inputs from the Input class, have lots of processing methods related to everyone, and would either need to provide everyone with access to that data, or like mentioned before, push the data down their throats using lots of setter-like methods written for everyone.   Another option is that everyone, would include the Input class, call it to retrieve inputs(notice how everyone would get the same inputs over and over) and have their own processing methods to deal with the inputs. This seems a bit more organised, in the sense that each class would have their on set of methods on how to deal with the inputs... a modular approach if you will. But I'm not sure I feel it. Note: I refer to "everyone", meaning lots of complex objects(of depth 1) that the System class has/would have.   I feel like there should be something clean(er) that I'm not aware of. Please share your thoughts 
  4. You might want to research a bit on the wait() and notify() methods(here is a hint).   An alternative method is to make a short "sleep loop" checking for a condition to become true, like so: // Sleep until the socket is created or re-opened. try { while(socket == null || socket.isClosed()) Thread.sleep(100); } catch (InterruptedException e) { e.printStackTrace(); } in this case if a socket is created or an existing one closed, this loop would "pass through".   You could also set that 100ms sleep to be shorter if the action should be checked for more frequently, or make a really long sleep and interrupt that Thread from another Thread.
  5.   Sound advice. My experiences were mostly positive though, such as cases where a structure or some part(for technical tutorials) is explained in a more casual way as opposed to lots of formal text.     It's slightly amusing how the very first news post is a game I have played and enjoyed. That website seems similar to what I was looking for, thanks for the suggestion.     Glad that's the case :)
  6.   Thanks for the suggestion. Unfortunately, that channel is pretty much a casual game streaming one, as opposed to review/information oriented one.     Mine is too buddy... mine is too.
  7.   How? It is not like I am doing this every hour so other threads would get moved to another page.     Not all of the community is present 24/7 or even within the same time period the post will stay on the first page(s).       Think of it as logic.
  8. Hello guys.   I am wondering what would be a good, straightforward gaming news source. I have been watching TotalBiscuit on Youtube for a while and enjoyed it quite a bit. I am looking for a similar format where information is important as opposed to humour or entertainment.   Unfortunately his streaming of Starcraft video notifications and childish blocks of Youtube comments annoyed me to the point to seek alternative sources.   Any suggestions?