• Advertisement

sss_abaker

Member
  • Content count

    10
  • Joined

  • Last visited

Community Reputation

132 Neutral

About sss_abaker

  • Rank
    Member
  1. "Make Games, Not Engines".. But how?

    Yah this is all good advice, and its something I have been trying to hammer home with my hobby team. It's especially important if you lack experience. My team and I are creating a disposable game at the moment just to see if we have the people to do it. After that we'll decide if we want to make somethign more serious at which point we'll start from scratch and plan it using the mistakes we made as a guideline to creating something a little more all purpose. (Reuse, refactor, rewrite, etc). We'll also have a better idea of what kind of game we're capable of making, besides it being fun ;p
  2. Why Game Programming?

    I'm building my own engine because engines like Unity are unappealing to me.... And not because of the fact that it does or doesn't provide me what I need, but simply because I want to get something more out of it and that is knowledge and experience. If I build an engine, but I stop there and I don't make a game, I'll be happy.
  3. Programming Techniques

    [quote name='bimmy' timestamp='1341597811' post='4956403'] Decompose functions. Every function should be short (2-10 lines) and every statement should be at the same level of abstraction. This will do wonders to avoid duplication and (if you name your functions well) dramatically improve readability. If you have a long function, and you're not sure how to split it up, first just chunk it into blocks, then look at what each of those blocks does. Whenever you end up with two short functions that are similar, try to make them identical and then remove one. [/quote] That's a little extreme. You shouldn't break a function up into many smaller functions unless you need to. You seem to be advocating doing this for the sake of doing it.
  4. C++ Directx 11 CBuffers and HLSL.

    I figured. Thanks for the confirmation. I was nodding my head throughout this thread until I came across that claim and was pretty sure that's not how it worked.
  5. C++ Directx 11 CBuffers and HLSL.

    __declspec(align(16)) seems like a simpler option, but will that translate over to video memory? You're aligning it in system memory just fine, but I'm not sure if it is treated the same way when you map it. Please confirm.
  6. I suppose I came in half cocked. I don't optimize as I code myself and I use polymorphism pretty liberally. I simply code with those thoughts in mind. But I was of the mind that polymorphism's cost was still a determining factor when deciding whether or not to use it and I never did any experiments to confirm. Thanks for setting me straight guys.
  7. Except that the strategy pattern comes with a significant cost and that's the cost of virtual look up every time you call a Strategy's method. Optimized code is not necessarily the best looking and most manageable code. So ask yourself and clarify for us, do you want performance or convenience? With that in mind notice that the examples are written in JAVA. Most Java apps don't care too much about performance on the level required by a game.
  8. Structure of classes in good Game Engine?

    [quote name='Cygon' timestamp='1340101692' post='4950531'][list] [*]Forfeit logging altogether. I've done this in my code. I'm going all-out with assertions for pedantically checking internal states and exceptions for any usage error. Since the point of logging is to help you find the cause of errors quickly, by not letting any inconsistency, bad return code or missing capability slip under the carpet you remove the need for logging. [/list] [/quote] This is what I do. It's easier to find bugs in the debugger, go figure. And Asserts make your program stop and tell you why IMMEDIATELY. There's no combing through log files to find out why your geometry isn't showing up. Simply add an Assert. You can easily remove asserts from release code when you know your stuff works, by using #define.
  9. Structure of classes in good Game Engine?

    I guess hating on globals is the cool thing to do here. LOL Standard function call is the way to go. Hell you can even use your Logger class if you want. Except you keep that hidden. [source lang="cpp"]//basic example yo. void logMessage(string message) { static Logger log; //post log message here using log object. log.log(message); }[/source] This is only really required if Logger keeps any state, such as the file its logging to among other things.
  10. I want to learn.

    Without university you'll only ever be a run of the mill software developer that can write rudimentary engines. When doing university you go from being overwhelmed by the concepts in these articles and articles like these to being able to understand the concepts almost right away. Like someone here said, its a great foundation.
  • Advertisement