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


  • Content count

  • Joined

  • Last visited

Community Reputation

1066 Excellent

About MrCodeSushi

  • Rank

Personal Information

  • Location
  1. "Anthropologists believe that “modern” humanity appeared about two hundred thousand years ago. Compared to one human life, it may seem old. But in terms of evolutionary cycles, it is in its adolescence and is showing all the characteristics of this, in that it is in search of its identity, is looking for its destiny, is carefree and even reckless, considers itself to be immortal, indulges to excess, defies reason and disregards common sense. This evolutionary stage, with its share of di...
  2. Probably. But i'm not really announcing or promoting a game. More like a sample demo implementation for game programming. The framework developed isn't even for the platformer genre. Its just a generic framework surveying game systems; But it still handled it pretty well i think. Its not even a complete game. Its just a gameplay demo. But the intention was just to share the code used for the demo. Thank you for your feedback though.
  3. Hi Guys,   Just wanted to share a little demo i made for a game programming class i teach in my local university. The class is about exploring game systems and architectures used in developing (2D) games.   I was nearing the end of the course's lecture and i felt a sudden urge to create a concrete example tying all the systems we have covered so far. This way the students will have a better understanding on how these systems interact with one another to form a whole game. Its not much but i think its enough to show its functionality and get their creativity flowing for their game project.    Source and executable is included in the download link below. This was a quick and dirty implementation of the demo so i'm sure there's a ton of bugs and some poor OOP designs and gameplay code but this was just a demo i came up for 2 nights(mostly trying to get the basic collision/physics system to work). I'd like to continue working on this some more but that's the only time i've got.    Enjoy!   Screenshot:  [attachment=19696:platformer screen 2.jpg][attachment=19695:platformer screen.jpg][attachment=19697:Platformer screen 3.jpg]   Link: https://mega.co.nz/#!ClgDQQLB!liGauqpSWu2QjTgRcPf2z1_c17a4wumVk0r06DTMo0A
  4. Thank you for the blessings.
  5. Malice and envy is a very powerful force to destroy your relationship with other people. Bless everyone including your enemies. Appreciate their good-hearted nature or qualities. All your vices including selfishness will dissolve then you will experience these no more but bliss and happiness within yourself. The ultimate love is selflessness; when malice, envy, and selfishness completely disappears, you will only feel divine happiness, joy, light, bliss, and lots of love in seeing others be...
  6. @#$%^&*&^$%%&^*^ Gimbal Lock!!!!
  7. Frustums are frustrating! (pun intended)
  8. lol funny i was actually thinking about that when i posted my answer. Then i realized i was sort of implicitly rebinding shader resources every time i bind a new shader in my engine.     Are there any reason or practical usage to create the buffer with the D3D11_MAP_FLAG_DO_NOT_WAIT flag?
  9. If you're using the same constant buffer then you don't need to keep on re-binding them after the first bind every time you update the constant buffer since its already bound in the pipeline.
  10. i forgot the word anchor so i used the word position locking instead but thanks for bringing that correct word up.
  11. In addition to these UI scene data as what NightCreature83 said. The nodes representing a UI element may have other attributes associated to it. Like position locking and position ratios relative to the screen. This can be useful especially if your game runs on different screen sizes as they can just automatically adjust based on these attributes than having an absolute position values.
  12. How is this brilliant Jimstyle guy getting a negative rep? he's just asking honest questions.
  13. Funny I was just working on weak pointers (developing my own version) last night!    Anyway, weak_ptr has a function called expired() which tells you if the data is still valid or not.     But if you want to get the valid data of the weak_ptr using expired() may cause some problems. Take a look at this code: weak_ptr<SomeSystem> gpSomeSysWPtr; void SomeFunc( void ) { if ( gpSomeSysWPtr.expired() == false ) // This takes one cpu instruction { shared_ptr<SomeSystem> pSystem = gpSomeSysWPtr.Lock(); // This takes another instruction // Between the if statement and lock() something could happend that invalidates gpSomeSysWPtr... } } If that was running on a single-threaded system that'll probably be fine. But if that's being reference and edited in multiple threads, who knows what could happen between the if() and lock() ( I haven't really confirmed this but this is my hunch).   To fix the problem you can do this instead: for(int i = 0; i < renderableObjects.size(); i++) { if( (std::shared_ptr<RenderableObject> r = renderableObjects[i].lock()) == false) { renderableObjects.erase(renderableObjects.begin() + i); i--; } } shared_ptr has a cast operator bool that returns true if the shared_ptr is valid or not.
  14. DX11

    I've read somewhere in this forum that constantly binding the texture every frame even if it doesn't change takes some performance hit i think.   In Jason Zink's graphics engine, his graphics pipeline layer has a state monitoring system that defers the actual binding of GPU resources until the time that's actually needed. The graphics pipeline layer allows the cpu code to bind and change as many resources as it wants in the current frame through caching the resources to be bound then evaluating it when its time to draw the mesh. Once the cpu calls DrawIndexed, the state monitoring system checks the cpu bounded resource and the actual resource that is currently bound in the gpu; It only binds the resource to the GPU if the state monitor detects different cached and GPU bound resources and binds those cached resources.
  15. That would definitely help me a lot; I'll include it in my code. I actually have the Real-Time Rendering Book. I've only read the first few chapters before i laid it off because of work and just totally forgot to get back reading into it. Thanks again for all your help. I really appreciate it.