CAGD 377 - Slippin Away Sprint #3

  During the Sprint kickoff, we discussed various objectives for this sprint. The first thing we wanted was to implement the feedback we received. Another thing that was going to be needed for this sprint was getting a build of the game released to the Play Store. So, at first, our focus was on doing multiple puzzles that the player could complete; however, after discussing it, we decided it would be better to focus on a single puzzle and leave the other mechanics to want instead of a need. Now, the puzzle that we wanted to put our focus on was the cable connecting puzzle. We wanted to expand this puzzle by making it so you can bend around the corners, bend multiple times, retract when needed, and have some kind of collision detection for them.


So, I started developing the cables, and the first thing I did was research what was going to be needed to achieve this bending mechanic. We are using Unity’s line renderer component, so I figured looking through its API would be the best. Certainly, I found multiple methods that would be useful, like adding new positions to the renderer. I found an online resource that did exactly what I was looking for; however, after revising the code to understand the logic, I saw that it was very severely implemented and was updating every frame of the line, as well as adding too many “bend positions” when reaching a corner. Although it was not what I was looking for, it was very useful for understanding its logic.


After completing the research, it was time to implement my own, so I started by making a prototype in which one end of the line renderer was stuck to 0,0,0, acting as the origin and another at the position of a game object. After that, it was time to make the bending mechanic, I figured that I needed the cable to bend when reaching a corner, meaning that the beginning and the end do not see each other; after implementing a simple collision, I figured that I was not going to be efficient because of the possible low framerate that a device could have and skip some physics causing inconsistencies in the logic. So, instead, I made a cable collision object that will not only check when the cable is passing through it to bend but also snap the bend to that position.

           

After having the cable bent correctly, I achieved multiple bending very quickly since, with the extra bending position, the cable wouldn’t touch other collisions. So, something else was achieving the cable retracting. I was able to achieve this mechanic by making the almost-to-last point check if it could see the player; if it could, that meant that the last bend position could be removed; if not, that meant the player was not on sight, and the last bending position could keep in place. This is how bending turned out at the end with the mechanics implemented:


Finally, I made the build for the game, added some UI for the game to be played, and adjusted some of the levels so that they worked with all the coding features. The build also had to include the features the designer wanted tested, so that was a meeting that we had, and it turned out great. We had a build released, and the playtest was done.



Overall, this sprint went great and a lot of the core mechanics were done; it was great looking at all our progress coming together and how everything turned out. We had great information come from the playtest that I’m excited to implement in the next sprint. My team did a great job, and we achieved the object proposed at the start, im looking forward to keep developing Slippin Away.


Comments

Popular posts from this blog

CAGD 373 - Pirate Game Assets Final

CAGD 470 - Locked in Sprint #1

CAGD 495 - Stumble Sprint #3