The Beginning

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • The Beginning

      Hello Everyone,

      This is my first post. I'd like to begin by thanking Rez and Mike for their excellent book. I'd also like to thank the community for providing such valuable feedback and information to support the book's many readers.

      An Introduction

      Before I provide details I wish feedback on, I want to give you some information about myself. I've been working in the IT field since I was 16 (I'm currently 29). I started my venture in breakfix and then finally worked my way up to proactive services. Breakfix focuses on reactive - fixing things, etc. Proactive is the means of preventing something from breaking.

      Last August I transitioned into Software Development. I work for a major company writing applications to support various needs. I mainly write code for web applications such as C#, JavaScript, HTML5, etc. I'm definitely a beginner but yet more of a seasoned one and I'll explain why.

      It all started with my interest in games and the magic that goes on behind the scenes. I'm sure many of you can relate. That being said, back in 2007 I started learning C++ and writing basic console applications. Since then I completed my Bachelor of Science degree in Information Systems. I had two Java classes, one on HTML, SQL, etc. Due to my tinkering with C++, thanks to games, I was able to pass all my classes in programming with nothing less than an A.

      When I graduated college I decided anything but software development had to go. That's when I made my transition to Austin, TX from Florida to work in Software Development. I've been with my company for almost 5 years (it will be 5 years in July). I'm happy they transitioned me into a new role and are allowing me to learn.

      So, my knowledge of software development is that of a high-end beginner, almost ready to hit the intermediate level. It all clicks with me so I feel with time I'll be able to get on the higher levels and really soar.

      However, I just can't stop the game development itch. I know it's a tough business but those who are in it don't care about that. It's about the experience, the passion, the people - not the negatives. So here I am, increasing my general software development knowledge through game programming. Who knows, perhaps I'll decide to do it professionally one day. In order to know if that's the case, I have to start somewhere.

      I am a patient person and would love to build a great engine as a foundation for future projects, be it 2D or 3D (I love both). When I came upon the book I felt it was a great fit for my current skill level and the end goal in mind. But it turns out I need a little guidance.

      Setting Up the Project

      The book doesn't walk you through step-by-step for actually setting up the Visual Studio project. Instead, it offers the source code for a foundation and something to look into as a guide. I managed to create my project in Visual Studio 2012 and used Beyond Compare to copy the project settings from the source code to mine, granted without including the precompiled headers or third-party libraries (I'll add those later).

      My directory is all set and ready to go based upon the book which I really agree with and like. It should makes things much easier moving forward. However, I need to know how to build the engine while I read the book and check my work. I am one of those folks who learns by doing and the reading material complements what I learn or provides clarification.

      By looking at several forum posts, I see recommendations to start with the application layer and then integrate DirectX and start drawing some stuff. Does that mean I can create the source for the application layer and then compile it to ensure it works? Afterward, get DirectX working and compile it and then run it to see the screen output?

      The biggest thing is I want to ensure what I'm doing actually works and is free of errors. I want to build this engine piece by piece, reading the book to understand the material, typing the source, and then reading the book again to understand it even more or get clarification.

      I realize later I'll need to include the third-party libraries when my code needs them. I'll cross that bridge when I get to it. I just want to ensure I'm doing everything right. My goal is to learn by doing and reading but I don't want to get so frustrated I abandon ship.

      I appreciate all your feedback and help.

      Thanks,

      GetchaDEAGLE

      The post was edited 1 time, last by GetchaDEAGLE ().

    • You should be able to create the application layer and compile it to ensure they have no errors without DirectX. You can at least get a basic window to pop up to show that things will at least compile.

      Once DirectX is added you can use it to test the various systems. For example, with just a triangle you can:

      - Test input by moving it around in response to keyboard commands
      - Add different components to the triangle actor depending on the XML (change color, position, etc)
      - Test the event system by having it destroy the triangle
      - Test the process system by having it move the triangle around
      And so on.


      I'm sure there is a better way to test the application layer without DirectX, but I'm still learning myself.
    • Yes, it would be nice for a step by step walkthrough on the compiler setup... unfortunatly, not all of us have Visual Studios (I have DEV C++ : its free) so compiler setup will be different for each different compiler. There are many websites out there that will walk you through your particular compiler setup... I have yet to try it with the addition of directx. I wish you luck, but with your background, it shouldnt be too hard.
      Code Happens...
    • Dev-C++ was a great IDE setup, but I would recommend against using it, it has been unsupported for years now and is quickly losing relevance. If you wan't to use a free compiler, Code::Blocks, Eclipse or CodeLite are good alternatives.
      PC - Custom Built
      CPU: 3rd Gen. Intel i7 3770 3.4Ghz
      GPU: ATI Radeon HD 7959 3GB
      RAM: 16GB

      Laptop - Alienware M17x
      CPU: 3rd Gen. Intel i7 - Ivy Bridge
      GPU: NVIDIA GeForce GTX 660M - 2GB GDDR5
      RAM: 8GB Dual Channel DDR3 @ 1600mhz
    • When I first starting learning C++ I used Dev-C++. I felt it was a great tool and you can't really beat free. Then I discovered Microsoft DreamSpark. It allows anyone who is currently a student to get software for free academic use (non-commercial). I was able to get Visual Studio 2012 Professional from there. Granted, I have an MSDN subscription but that's for work only.

      Also, those of you who are thinking about starting a business, Microsoft also has a program called BizSpark. It allows you to get software free as well for commercial use as long as you meet their requirements.