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

Kyall

Members
  • Content count

    125
  • Joined

  • Last visited

Community Reputation

287 Neutral

About Kyall

  • Rank
    Member

Personal Information

  1. Header file & separation isn't a problem. I like it, the lack of it is one of many reasons for hating on so many inferior languages. It's not OCD about why can't I organize things the way I want as much as I would like to have headers available when I don't have a sylladex to tell we what every function and it's parameters are. Header/code separation makes programming easier. Many of the advanced features of the c++ language have pretty limited use. And there is the issue that these features can take a bit of time and experience with the language to understand. The problems that exist are when these features become core components that are absolutely necessary to achieve a design, and then that design happens to be a core feature of a game or game engine or a piece of code architecture. This is where it gets to the point that every programmer on the project needs to have an advanced understanding of c++ to be able to do anything. So a solution is to avoid these features and find other simpler solutions. I don't want to hate on less advanced programmers here, but the fact of the matter is that I know a lot more about the c++ language now then I did 5 years ago, and I programmed exclusively in c++ 5 years ago and never failed to build what ever it was I wanted to build. The problem is using these features is an easy and simple alternative to building tools that extend the compilation process to generate metadata about the project to achieve the same purpose - or any other complicated task that can be achieved with the advanced features. And this is the part where it all gets messy. The features are perfectly stable and reliable, it's not necessarily a house of cards, but the code degenerates into something not even reminiscent of what I say c++ code looks like. And use of the system, or at least users using the system comfortably without doubts as to it's quality, becomes dependent upon the relevant skill level in c++ of the programmer. It's a bit like the language itself suffers from something a lot of software suffers from, bloat. And it needs a refactor or refinement to bring it back into sanity. The cx11 I reckon is very good, if you're using the smart pointers you can bring your class design back to what it hypothetically 'should be'. No need to worry about implementing the copy constructor or assignment operator as the new features take care of this for you. A continuation down this path of introducing features to bring things back to sanity would be welcomed by me. This is just one thing though, it seems like there should be more. And no I VILL NOT USE BOOST. Don't even. Just don't. EDIT: -9 points for saying that advanced c++ didn't resemble simple c++, and expressing a general feeling that I don't like the inconsistency. I'm adding this: 127.0.0.1 gamedev.net to my hosts file. Bye everybody.
  2. Got an online SVN server. Probably not great. The rules are always have 2 or more copies of your files. So: 1. Set up an online SVN for ease of use 2. Get an external hard-drive and clone the SVN repository to it, update this hard drive with fresh source from the SVN repository often. 3. Clone your svn repository where ever you need it. The copies on your computers count as copies too.... Or you could get a network accessed external hard drive and use that as a file server, set up git, svn, mercurial on it (if you can), and commit/update from that.
  3. I'm thinking you need a programming application test instead.... A really simple one. That contains a loop requirement...
  4. I'm getting more and more into this D thing. An experienced programmer can write an interface and a unit test using the tools already embedded in the language, then get a junior to build the interface to pass that unit test. As only a mid level programmer myself I'm not the authority on this; but this gets rid of thick skulled juniors (like I was) doing things wrong right?
  5. It's not really hostility if you don't get more replies. We have this unfortunate thing of not posting replies when we're not completely confident we know this answer. So yeah... the best way to get help from programmers is asking directly....
  6. I've been learning D today, and I would like to put forward a request that someone make a D board on these forums. Just because the forums on dlang have so many boards, and so few replies. D for dead as a dodo I guess. I reckon using D for game programming where the D is built on top of c/c++ would be a move worth trialing just because it'll reduce bugs and it suits game programming a little better. I'm trying to say this without insulting myself and other game programmers, but yeah... deadlines vs code quality; getting paid vs writing good code. It has a few interesting features, but the main part will be getting the benefits of all it's scope features & the gc. Normally I would be hating on a gc, eating up cycles when and grrr/rage. But it has the feature that you can use malloc to get around the gcc, and make a custom allocator which also gets around the gc as well as lets you use static memory for short-life objects (or everything if you're not scared of code that should crash, not crashing). Actually come to think of it I wouldn't mind turning off the gc altogether. Could that can't work without GC, shouldn't work, ever. Anyone have any experience with getting C++ and D to work nicely together?
  7. So for a future of clean c++ code, there doesn't necessarily need to be a complete revision of the language, but a definition of a sub set of the language that is the best practice usage. Is there a good wiki describing this available, or should I learn Dlang and then figure out the c++ equivalents and preference that equivalent subset in my coding?
  8. All good answers guys, it was nice to read every single post confirming my biases that there's nothing unnecessary in the language, next time I read an article that has me challenge my assumptions about c++ I'll ignore it. Also using a subset for clarity seems like a good idea.
  9. I always want to improve my C++ knowledge and this time around this means finding out what parts of C++ aren't any good, so I thought I'd field a question to the experts: what parts of the c++ language are too complex to the point they interfere with writing good code and should be avoided as much as possible. Should I always use the stdio and not iostream for example, dynamically allocated memory in classes vs putting it in structs. What's the debate on what parts of c++ improve code, and the other parts that are over complicated and are damaging to code standards.
  10. I've been thinking about setting up a VPS for myself purely for the purpose of building some server-client tech that I could use in the future. My decision for this would be to get a linux debian server and program the server for that operating system. Since debian is pretty common amongst dedicated servers and VPS you can get, so if you get a VPS or dedicated server from a hosting company for the purpose of hosting a game you have pretty good changes of it being a debian. I'm rambling a bit cause I have to leave like 5 seconds ago, so I'll try and explain the rest and maybe you can piece the logic back together afterwards. The user who administrates the server would set the settings for the game on their server, and then the players would pull configuration changes and updates from their server to their client install. This allows for different versions of the game to be run connecting to different servers so that you can gradually release new code to the public for updates and patches etc. Need to run, bye. Probably more to this but yeah. For a real time or any other type of network game where they need to set up their own configuration of the game play for their uses, I would build a Debian based server side application.
  11. I think a better way to describe it is that as an architecture this thing works like a normal processor, it's not a specialized SIMD or MIMD like a graphics processor. From that point of view it is c++ programmable, where as GPU will only support HLSL or OpenGL or OpenCL or what have you because it's si/mi-md rather than a traditional random get/set memory access architecture.
  12. They claim it's C/C++ programmable. (Going off month old memory here) If that's for legits this thing is awesome. Also I have one of their epiphany III boards coming in May next year, just checked. Had forgotten about that. Ask me then if it can be programmed with C/C++ then. (I'm talking on the cores, not the arms)
  13. C# + XNA With C# you don't have to worry about managing memory, you can focus on learning oop (beginner stuff), algorithms and other concepts related to programming. With XNA you can learn how to use a library for building games that will teach you the concepts of rendering/sound/input You can then transfer your skills to C++ and skill up to full c++ knowledge, templates, generic programming, c11, io, etc
  14. So when you said you were looking for which node to start at you meant which node should get the highest priority for searching based on the direction to the player. And then from that point on which node to choose to move to first. I'm going to guess use a dot product of the direction from the starting point to the player and the difference vector between the test node and the previous node to make a straight line focussed heuristic to search with.
  15. You might want to play around with the texture filtering for the sprite batch. Try adding this before the begin call: this.GraphicsDevice.SamplerStates[0] = SamplerState.PointClamp; The default in XNA (according to the interlect) is LinearClamp