• 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

5397 Excellent

About Endurion

  • Rank

Personal Information

  1. Ouch, you're using managed C++. That's one ugly beast and usually only used for interfacing It's combining C++ with .NET, and therefore has a few warts to transfer data between runtimes. Any reason why you're using this? ^ is a managed reference (somewhat like a * pointer in C/C++). gcnew is the new of C++, creating a managed reference. String( Get) is the constructor of the .NET String class which lets you pass in a char array. So all you do in that line is creating a new managed instance of String, initialised with your char array.
  2. Also, is your project set to UNICODE? TCHAR will either be single byte char or WCHAR. It's probably better to explicitely go for the W versions of the APIs.
  3. I usually do save each member manually. I'm using binary methods in chunks, so I can add data later and still load older formats. However it is annoying There are serializing libraries out there that can help you; in the end it boils down to tackle each member separately. Still if it's only PODs your method should be fine.
  4. If it's PODs all the way down this should be fine. You could however have some weird padding bytes in between. Do you read files written by 2008 in 2013? Make sure the struct/class padding has the same value then! The CRT debug helpers may help you (https://msdn.microsoft.com/en-us/library/974tc9t1.aspx#BKMK_Find_buffer_overruns_with_debug_heap) _CrtCheckMemory might help you locate the problematic piece of code by calling it at relevant locations. If nothing else helps try narrowing the problem down. Comment out bigger blocks of code to see if you can isolate the cause, Just beware though: Memory corruption has the habit to stay hidden in certain circumstances (means, by uncommenting you could think you solved the problem while it is merely not directly visible)
  5. I'm trying hard not to comment on the define usage Are the members of army between endSave and startSave all PODs? PODs are "plain old data", that is, simple types that allow a continuous memory block being accessed like that. No STL containers or complex classes.
  6. Yes, pretty please bring in some markup mode, be it BBCode, Markup, or whatever. I can't simply edit/copy/paste or save my journal posts anymore outside without all the formatting gone. I'm currently (slowly) restoring my 100 step journal entries, I have to re-edit every code piece as the line breaks are gone once I enter edit mode.
  7. Have you debug-stepped through the program? Does it maybe bail out due to some error condition? Check the result codes of all functions that are called.
  8. Is there a question coming with this?
  9. Ahh, sorry, I was just kidding. I have no idea like everybody else
  10. Yeah, enough pixels let you build your custom avatar from it
  11. Regarding issues, one support entry per issue or can we combine? (Hint: I'm not sure you saw #3 in my first support request regarding the offset submenus)
  12. Wow, that old already :) Congrats! Quite an achievement, and especially as you haven't succumbed to the "social" media frenzy yet.   Is now the time to ask for a good functioning message editor? :)   Edit: Fixed typo
  13. The general gist is this: You have three matrices, they're always multiplied and sent to the shader. For every mesh you have a world matrix, that transforms the mesh vertices from object into world space. The camera poses the view matrix, to transform all objects into the camera's view. The projection matrix is then used to transform the objects into screen space. Usually then there's also a viewport that comes into play, but that one's optionally. World matrices are per object, and change when the object is moved/rotated/zoomed/whatever. The view matrix is changed when the camera is moved/rotated/zoomed/whatever. The projection matrix is usually chosen to account for one specific projection (e.g. 3d or ortho), and then is never touched. You never ever modify the meshes directly if you can avoid it.
  14. I'm on vacation during that time, might be hard to get internet. Which actually would be good for productivity. Chalk me up please!
  15. Is the bullet that big? It shouldn't make much of a difference, here what it ought to look then. I also added the angle offset, as you said you hat 0 aiming up and 180 down.   float dx = ( ship_width / 2 ) * cosf( 3.1415926f / 180.0f * ( angleInDegrees - 90 ) ); float dy = ( ship_width / 2 ) * sinf( 3.1415926f / 180.0f * ( angleInDegrees - 90 ) ); x = ship_x + dx - width / 2; y = ship_y + dy - height / 2;