• Home
  • About
    • Biography
    • Contact Info
  • Projects
    • 2D Map Editor
    • Dodge and Destroy
    • Intruder's Run
    • Procedural Terrain
    • Jim Bob's Jam
Nickpdevelop.net

back to work! 08/08/2011 at 23:43

Well its about time to get back to work on some unfinished projects such as my Tile Editor I talked about way back when I was thinking about doing a tutorial series on it. Opened it up today after probably 10 months of hiatus and some things look great, some things not so much. Tomorrow while its raining and I probably won’t have internet access due to the rain I am probably going to be working to fix up the editor. I already began working on it a little making some key components implement the IDisposable interface for better resource management. After playing around with it a little there are some things that simply do not even need to be on some of the dialog boxes, as well as a bunch of work to do on the main “paint”/tile selector tool. When I get some of these basic things fixed up I will probably post either some screen shots or a video about it on the projects page.

Another thing I worked on a bit today was Dodge And Destroy. Firstly found a memory management error that was bad on my part being niave about the implementation on some STL containers. Fixed that problem! Also while I think a quad tree may cause too much overhead to be worth it, I came up with an algorithm using a hashmap that could help speed up processing collisions when there is a lot on screen. Although right now usually there isn’t a whole lot on screen due to the difficulty(could be just me though!), when there is a lot you can notice a decrease in performance. This is due do the current implementation of collision detection requireing O(nm) time where n is the number of projectiles, and m is the number of enemies. My new algorithm can reduce this significantly by checking each projectile with only a limited number of enemies that are near the projectile. The overhead cost is filling up the hashmap which would be linear, however it reduces the ammount of collision checks significantly, and checking a collision with the player would be nearly constant time, as opposed to a linear search each update now. If I get a lot done on the Tile Editor tomorrow I may work on implementing this algorithm(or tonight if I can’t sleep), as well as test if the added overhead is worth it. I have also been brushing up on design patterns and software engineering practices I am not convinced changing the way classes are in my current implementation would be worth it. If I add more systems to the game however there may be another rewrite in how the game is written.

Anyway, can’t wait to get coding :)!



« woohoo! no more exams, and no more deprecated elements :D Map Editor Info Up »