Smooth Sailing... Not On My Watch
It has not been a pleasant week. I've been feeling under the weather since Sunday. Probably a combination of the change of season and the fact that I worked like mad late last week. I'm still not feeling all that zippy and I'm going to be working like mad once again starting today... hopefully I don't die. :P
So I decided that I would pursue Physics after considering my options at The Fork (see last entry). Not only would it be fairly simple to put in place (afterall, I had Farseer available, I'd used it in the past and was somewhat familiar with the way it worked, and I didn't have all that many objects in need of physicality just yet...), but it would impact the way I approached some of the other items in my to-do list (level design mostly). I'm nearly done with it at this point, but it hasn't been without it's difficulties.
On a side note quickly, I can sum up my impressions with Farseer in one word: Wow! I guess I'd forgotten how functional it was. But it's also progressed since I used it last. I downloaded all their samples and ran them all and it's quite impressive what the engine can do. It's overkill for my game, but that's just better... I'm provided with this lightning fast, easy to implement, and very stable engine without having to worry about any sort of design of my own (aside from figuring out what physics to give all my objects). Not only that, but perusing it's code kind of opened my eyes a bit to some sloppy choices I've made for my own code lately. They've gone to great lengths to optimise their coding, and I've been pretty obsessive lately about doing so also. It's been very educational.
Progress
Over the past week, I've implemented Farseer Physics to my project. I've set up object pools to speed up the generation and disposal of enemies and bullets. I've allowed for the player, enemies, and bullets to make use of physics. I have not gotten them moving and colliding just yet, but it should be a fairly easy undertaking. I've been derailed somewhat by trying to implement the Farseer Debug View class. This draws overlays for all the physics objects. I've implemented it alright actually, it's really quite easy, but what hasn't been easy is getting it to transform coordinates properly according to the position and zooming of my camera. This is still a work in progress.
Up And Coming...
So I decided that I would pursue Physics after considering my options at The Fork (see last entry). Not only would it be fairly simple to put in place (afterall, I had Farseer available, I'd used it in the past and was somewhat familiar with the way it worked, and I didn't have all that many objects in need of physicality just yet...), but it would impact the way I approached some of the other items in my to-do list (level design mostly). I'm nearly done with it at this point, but it hasn't been without it's difficulties.
On a side note quickly, I can sum up my impressions with Farseer in one word: Wow! I guess I'd forgotten how functional it was. But it's also progressed since I used it last. I downloaded all their samples and ran them all and it's quite impressive what the engine can do. It's overkill for my game, but that's just better... I'm provided with this lightning fast, easy to implement, and very stable engine without having to worry about any sort of design of my own (aside from figuring out what physics to give all my objects). Not only that, but perusing it's code kind of opened my eyes a bit to some sloppy choices I've made for my own code lately. They've gone to great lengths to optimise their coding, and I've been pretty obsessive lately about doing so also. It's been very educational.
Progress
Over the past week, I've implemented Farseer Physics to my project. I've set up object pools to speed up the generation and disposal of enemies and bullets. I've allowed for the player, enemies, and bullets to make use of physics. I have not gotten them moving and colliding just yet, but it should be a fairly easy undertaking. I've been derailed somewhat by trying to implement the Farseer Debug View class. This draws overlays for all the physics objects. I've implemented it alright actually, it's really quite easy, but what hasn't been easy is getting it to transform coordinates properly according to the position and zooming of my camera. This is still a work in progress.
Up And Coming...
- Fix the physics debug viewer.
- Work on moving the physical objects around and handling collision.
- Change the player input/AI so that it adds forces instead of manually rotates or accelerates
- Dispose of bullets when they impact with hostile target
- Spawn explosions
- Maybe particles??
- Track damage
- Kill/crash enemies
