View Single Post
  #4  
Old 03-27-2015, 05:39 PM
bullproofmonk bullproofmonk is offline
Aviak


Join Date: Jun 2011
Posts: 53
Default

If you are truly interested in learning to develop gaming software, then you are going to want to focus on the C's.

C++ and/or C#

C#(Sharp) is going to be way more focused on Win32/64 development, where C++ can more readily be applied to other platforms.

After you get a handle on that, you will need to decide what 'engine' you want to learn to design your games on. OpenGL, or DirectX are the 2 most popular. While these are just classes in a C library, it's like learning a whole new language in itself.

Programming is such a generic term though, as it's like telling someone you want to learn to internet. I would speak with one of the professors, and tell them your goals. They will be able to outline a set of courses that will get you on track.

I'd venture to say you aren't going to walk away from any of these courses with the ability to write games out the door. Programming is like anything else, you get out of it what you put into it. Once you have the basics, it's up to you to continue learning by either experimentation, or looking at other people's code.

I rarely if ever have to write my own code in my particular job function. With the internet so readily available, you can often find that someone has already written a chunk of code that can do what you want, if not better for free.

Also, here is a snippet of code to simply draw a triangle on your screen. Just to let you know what you are getting into!

Code:
 # include <iostream.h>
 # include <graphics.h>
 # include    <conio.h>
 # include     <math.h>

 void show_screen( );

 void Triangle(constint,constint,constint,constint,constint,constint);

 void Line(constint,constint,constint,constint);


 int main( )
    {
       int driver=VGA;
       int mode=VGAHI;

       int x_1=0;
       int y_1=0;

       int x_2=0;
       int y_2=0;

       int x_3=0;
       int y_3=0;

       do
      {
         show_screen( );

         gotoxy(8,10);
         cout<<"Coordinates of Point-I (x1,y1) :";

         gotoxy(8,11);
         cout<<"ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ";

         gotoxy(12,13);
         cout<<"Enter the value of x1 = ";
         cin>>x_1;

         gotoxy(12,14);
         cout<<"Enter the value of y1 = ";
         cin>>y_1;

         gotoxy(8,18);
         cout<<"Coordinates of Point-II (x2,y2) :";

         gotoxy(8,19);
         cout<<"ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ";

         gotoxy(12,21);
         cout<<"Enter the value of x2 = ";
         cin>>x_2;

         gotoxy(12,22);
         cout<<"Enter the value of y2 = ";
         cin>>y_2;

         gotoxy(8,26);
         cout<<"Coordinates of Point-III (x3,y3) :";

         gotoxy(8,27);
         cout<<"ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ";

         gotoxy(12,29);
         cout<<"Enter the value of x3 = ";
         cin>>x_3;

         gotoxy(12,30);
         cout<<"Enter the value of y3 = ";
         cin>>y_3;

         initgraph(&driver,&mode,"..\\Bgi");

         setcolor(15);
           Triangle(x_1,y_1,x_2,y_2,x_3,y_3);

         setcolor(15);
           outtextxy(110,460,"Press <Enter> to continue or any other key to exit.");

         int key=int(getch( ));

         if(key!=13)
        break;
      }
       while(1);

       return 0;
    }


 /*************************************************************************///----------------------------  Triangle( )  ----------------------------///*************************************************************************/void Triangle(constint x_1,constint y_1,constint x_2,constint y_2,
                        constint x_3,constint y_3)
    {
       Line(x_1,y_1,x_2,y_2);
       Line(x_2,y_2,x_3,y_3);
       Line(x_3,y_3,x_1,y_1);
    }

 /*************************************************************************///-------------------------------  Line( )  -----------------------------///*************************************************************************/void Line(constint x_1,constint y_1,constint x_2,constint y_2)
    {
       int color=getcolor( );

       int x1=x_1;
       int y1=y_1;

       int x2=x_2;
       int y2=y_2;

       if(x_1>x_2)
      {
         x1=x_2;
         y1=y_2;

         x2=x_1;
         y2=y_1;
      }

       int dx=abs(x2-x1);
       int dy=abs(y2-y1);
       int inc_dec=((y2>=y1)?1:-1);

       if(dx>dy)
      {
         int two_dy=(2*dy);
         int two_dy_dx=(2*(dy-dx));
         int p=((2*dy)-dx);

         int x=x1;
         int y=y1;

         putpixel(x,y,color);

         while(x<x2)
        {
           x++;

           if(p<0)
              p+=two_dy;

           else
              {
             y+=inc_dec;
             p+=two_dy_dx;
              }

           putpixel(x,y,color);
        }
      }

       else
      {
         int two_dx=(2*dx);
         int two_dx_dy=(2*(dx-dy));
         int p=((2*dx)-dy);

         int x=x1;
         int y=y1;

         putpixel(x,y,color);

         while(y!=y2)
        {
           y+=inc_dec;

           if(p<0)
              p+=two_dx;

           else
              {
             x++;
             p+=two_dx_dy;
              }

           putpixel(x,y,color);
        }
      }
    }

 /*************************************************************************///--------------------------  show_screen( )  ---------------------------///*************************************************************************/void show_screen( )
    {
       restorecrtmode( );
       textmode(C4350);

       cprintf("\n********************************************************************************");
       cprintf("*********************************-            -*********************************");
       cprintf("*--------------------------------- ");

       textbackground(1);
       cprintf(" Triangle ");
       textbackground(8);

       cprintf(" ---------------------------------*");
       cprintf("*********************************-            -*********************************");
       cprintf("*-****************************************************************************-*");

       for(int count=0;count<42;count++)
      cprintf("*-*                                                                          *-*");

       gotoxy(1,46);
       cprintf("*-****************************************************************************-*");
       cprintf("*------------------------------------------------------------------------------*");
       cprintf("********************************************************************************");

       gotoxy(1,2);
    }
Last edited by bullproofmonk; 03-27-2015 at 05:47 PM..