Jump to content

  • Log In with Google      Sign In   
  • Create Account

Banner advertising on our site currently available from just $5!


1. Learn about the promo. 2. Sign up for GDNet+. 3. Set up your advert!


dtkaos

Member Since 16 Feb 2012
Offline Last Active Jul 28 2015 05:34 PM

#5243083 Can game development excel with abstract concepts?

Posted by dtkaos on 27 July 2015 - 06:03 PM


Even if i caught the bug 1/10th down the cycles thats still 160,000 steps/clicks. Just thinking of stepping that many times exhausted my brain immediately. So it meant i would have solve it without data or visual feedback - which is close to (though not quite) solving an abstract problem. Well i never did find the bug.

 

   Well if your assumptions are correct, you have technically already found the bug, but haven't found the cause or fix. I do not understand why debugging through this problem would require so many steps. So you should be able to attach a break point at certain locations so you don't have to walk through so much boil plate code. You may want to consider your tools as part of the issue as well.

 

 

 


The question i was asking myself afterwards (and like to ask others) was would game developers be able to develop successful algorithms if the concepts are abstract? This should still be valid for all ends of the development spectrum in fact moreso for experienced developer

 

I don't think video games is the place for theoires and abstract algorithms unless it is your hobby. On a professional level I believe this idea would be scrapped for something more sound and realistic to bring in revenue.

 

 

 


For instance recently i was iterating through the pixels of some bitmaps (400X800) using nested loops and doing some calculations during the cycles. During one of the cycle something broke To find the root cause I would have put at least 5 break points and to step through with the debugger. That meant i would have to click 400x800x5 (1,600,000) times or less!!!

 

I believe you would have to click "400x800x5(1,600,00) times or more". You would most likely miss this issue the first time you debug this. Debugging isn't about locating the issue the first time but reproducing the issue then fixing which usually takes more than one try.

 

 

 


And do real abstract problems exist in game development?

 

I imagine they do, but why would you want to do that? Programming isn't about being abstract... excepting the OOP sense of abstract. Software either it be video games, web severs, or mobile apps  should be easy to read, perform well, and be scalable. Coming up with an abstract concept and putting it into simple development steps, well that is probably as close as your going to get.

 

 

 


I can see these debugging methodologies clearly now. The disadvantage of a lone wolf like me is i am developing a software that a in a company a team of probably 5-10 programmers develop(where ideas are shared, burden is distributed but i don't have that luxury), so one person doing the job of ten developers, the consequences are that a lot of times, under intense pressure, my brain is exhausted, my eyes are clouded and i see less.

Well you learn everyday

 

I wouldn't compare your skills to 5-10 programmers for many reasons. I don't think you understand how big a project a team of ten developers can create.




#5072373 GO home viking raiders "your drunk"

Posted by dtkaos on 23 June 2013 - 07:28 PM

Tip for your code. Within the switch call methods/functions instead of having the code display there. It will clean it up nice!  If you notice you are repeating yourself... create a method becuase the further you get the more the code blurs together. If you need to change a value... you are going to have to change it 9 times ... I know you don't want to do that. :)

 

Also for the switch statments, use a variable name that has some meaning so when you go back to look at it  say something meaningful like

private static final int DOWN = 0;
private static final int UP = 1;

switch(DIRECTION){

   case DOWN: 
            moveDown();
            break;
    
    case UP:
           moveUp();
           break;

     default:
            System.out.println("Doing something in default, Always good pratice to have a default");
            break;
}

private void moveDown(){
         // move that code from the switch statement here 
}

private void moveUp(){
       //move that code from the switch statement here
}

However,

My first game code was pretty rubish. While yours is nice a neat I do belever everything I wrote was declared public and condensed to one file haha. Felt like a lot of code at the time but I believe it was only 50 -100 lines and I have work projects that spread thousands of line that are easier to read then it was. haha




PARTNERS