Jump to content

  • Log In with Google      Sign In   
  • Create Account

Awesome job so far everyone! Please give us your feedback on how our article efforts are going. We still need more finished articles for our May contest theme: Remake the Classics

Acid-Chris

Member Since 22 Jan 2003
Offline Last Active May 23 2013 11:42 PM
-----

Posts I've Made

In Topic: Optimizing entity rendering?

28 March 2013 - 01:54 AM

Hi,

 

Little bit off-topic, sorry about that, but where did you get your "Component" system ideas from?  Is that from a specific framework?

 

best regards


In Topic: Logic error in my code i think

21 January 2013 - 04:24 AM

There is so much wrong in these 3 functions.

 

But one of the biggest issues, besides all the other ones the previous posters mentioned is in your load_map function:

 

map_file *tehMap;


[some weird code here]


return tehMap;

 

 

and thats it? you do nothing with this? no allocation, no assignment of your map data?

There are so many more ways to read your map data, many more EASIER ways. You can read your 100x100 grid all at once, the just use a memcpy or whatever. Why parse it in such a strange way?

You could simply read the whole map_file struct all at once if you had saved it properly.

 

Your comment is nice:

"// i plan on using the function to assign the values from the file to the struct"

but...you never do that!!

 

Please, do yourself a favour and THINK STEP BY STEP on what you do. To me, this looks like you copy and pasted fragments of map loading code you found on google into your program.

 

No offence mate, but please start with a smaller map!  Use a grid of 5x5 tiles for example where you easily can check all contents of the array in the DEBUGGER. If your loading code works, it doesnt matter if you're using a 5x5 or 1000x1000 map.

 

Good luck,

- Christoph -

 


In Topic: Using a pointer to point to a new object every frame

22 December 2012 - 09:37 AM

There's much much more wrong in that piece of code than just a plain pointer issue.

 

Besides the allocations you do every frame, there are also a lot more copy-constructor calls than you might expect.

Get rid of that; it may be just a Vec2 class but clean code doesnt hurt anyone.  use const references, or just pass the position as 2 parameters.

 

Next point is ... why do you want to use a pointer anyway? Sprite classes usually store their position for collision detection or rendering or whatever.

And you do realize that pointers take up memory as well, right?  Depending on the OS, the size is different. On Windows it's 4 byte if i remember correctly.

So basically you win nothing using your method.

 

best regards


In Topic: Source control - branching strategies

21 December 2012 - 03:35 AM

If you can afford it, you should take a look at Clear Case.


In Topic: Using Constants in Headers

23 November 2012 - 02:55 AM

First of all, in your Constants.cpp file you need to write "const int MAX_INTS = 1000; "
The extern keyword means "declare without defining". In other words, it is a way to explicitly declare a variable, or to force a declaration without a definition.

The practice itself (putting the initialization into the cpp file) is a matter of personal taste. I personally like it because if i need to change the value for whatever reason, not every single file which includes the header file is compiled again.

But i wouldnt use "extern" anymore....i like static const uint32 MAX_INTS; in a header file more. ;-)

PARTNERS