name_here___ wrote:
If distance moved per frame is relatively constant, you can probably use a system something like the following (definitely slower, but avoids doing a square root for distance):

  • Per tank, keep track of x and y (separately) moved since the last tread mark was placed
  • Each frame, check if the sum of the squares of the x and y counters is over some value. If so, place a tread mark
  • Reset x and y movement counters every time a tread mark is placed


Oh, that's really smart! I'll be sure to add that next time I work on the game.
I just came back to this and I must say, wow! It's looking incredible, everything is, and especially nice work on the explosions and tracks too.

What's the status currently?
I was about to say that it's probably in the same status where it usually is, where every few months I'll take another look at it, completely refactor stuff, and one new feature, and then leave again for a few months, but I've realized that it's been almost exactly a year since the last update, so maybe not.

The graphics stuff is really a pain at the moment - it's almost too slow, so I'm limited in terms of what abstractions I can use. I think I determined last time that I might have to write my own routines in assembly for drawing various things. Particularly, I need some way of obscuring objects by blocks that are in front of them. I currently do that by drawing the entire object, then redrawing blocks on top of it as necessary. But I could also do it by giving each object a height (aside from explosions, which would need an entire heightmap), and only drawing the portions of the sprite that are on top of whatever tile is on that section of the screen.

I'm also somewhat lost as for what to do with the AI, as it's also a bit too slow at the moment - I think optimizing the raycasting function is a must, but I'll have to make other changes, too.

I suppose I could just reduce the frame rate again. My goal is 30 at the moment, but it would probably still be playable at 20 or lower.
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 4 of 4
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement