This past week was spent adding a new character play-style into the game and updating the way we draw the lines for the ripples.
The new style that was added is dubbed the brute. The brute’s special generates a short thick ripple on the beat when the player holds down. This ripple moves faster than normal ripples, but since the range is short, it encourages the brute player to have a more aggressive play style than the other characters. This character will be tested out our next QA session later this week. the brute is the first character we have where the ripples generated are of a different thickness. That means the thickness needs to be taken into account during the collision checking, so the collision formula will be updated as required.
When adding thickness to the ripples, it became more apparent that with the current way Vectrosity was being used, the lines were being drawn over the characters. So the next goal was figuring out a way to fix this issue. As it turned out the way we were drawing with vectrosity in Unity on the screen space overlay and not within the world space. We ended up using the draw3D function to have them draw within the world space as opposed the using Unity’s canvas. This solved the issue of the ripples being drawn on top, but caused an issue with the way the lines were rendered based on the orientation of the camera that we used in game. After a little experimentation the issue was solved by adding a hidden camera to the world that is positioned directly above the playing field. The vectorlines’ 3D camera was set to this hidden camera so that it rendered correctly in the world as seen by the players camera.