Vinyl is done (actually has been for about a week now) and is scheduled to be published this Friday on Desura. It's a huge relief to be done, and it's also very rewarding. I'm looking forward to seeing some of the responses we get once the game goes live. I'll post a link here once it's available.
Link: http://www.desura.com/games/vinyl
All that's left now is to finish up the last little bit of work in my other classes and then graduation in a week.
And then getting a job hopefully.
Tuesday, April 22, 2014
Wednesday, March 12, 2014
Vinyl, Wrapping Up
There hasn't been too much to talk about regarding Vinyl over the past few months as we rush towards our publication date. We've largely been working on fixing bugs and resolving our various messaging issues. We just got the game up on Steam Greenlight for voting, hopefully it does well enough that we actually get to release there. That would be incredible.
Bug fixing has been going very well, we're down to the point where we have almost everything resolved and are trying our best to not make any drastic changes that might result in a whole slew of new bugs to fix. At this point, my primary concern is still messaging as it has been the largest thorn in our side or quite a while now. The in game UI is essentially finalized, we're just trying to figure out the best location on the screen for the energy bar so that the player can easily see it, without it being in the way of anything. I have concerns about our loading screen intro video meant to teach the player how to play the game. It's a vital part of our solution to most of our messaging issues and it's not in the sate I'd like it to be in. I'm sure it will be our primary focus once we get back from GDC next week.
GDC itself should be quite interesting. As opposed to last year I'm now looking for a job as opposed to an internship, and hopefully I manage to find something or at least make some connections. In any event, I'm sure it will be remarkably educational once again.
Bug fixing has been going very well, we're down to the point where we have almost everything resolved and are trying our best to not make any drastic changes that might result in a whole slew of new bugs to fix. At this point, my primary concern is still messaging as it has been the largest thorn in our side or quite a while now. The in game UI is essentially finalized, we're just trying to figure out the best location on the screen for the energy bar so that the player can easily see it, without it being in the way of anything. I have concerns about our loading screen intro video meant to teach the player how to play the game. It's a vital part of our solution to most of our messaging issues and it's not in the sate I'd like it to be in. I'm sure it will be our primary focus once we get back from GDC next week.
GDC itself should be quite interesting. As opposed to last year I'm now looking for a job as opposed to an internship, and hopefully I manage to find something or at least make some connections. In any event, I'm sure it will be remarkably educational once again.
Wednesday, January 22, 2014
Vinyl, Final Semester
There's lots of polishing to go, but Vinyl is in a really great state right now. Over the last two weeks since this semester started my continued focus has been to improve the menus since we've mostly got the gameplay locked down. Top priority has been getting animations into the menus, and we now have the Main Menu almost fully animated. It's incredible how much of a difference it makes. The Pause screen during gameplay is also looking great, but the Song Selection screen is in dire need of updating. I'm hoping to be able to complete that by the end of the week if we can get the rest of the assets.
I also worked on the leaderboards a bit more to ensure that if they do fail we're handling that in a good way so the game continues to run and the player is notified of the problem. We've also been reworking score mechanics trying to come up with a system that feels good and is as understandable to a player as it needs to be. A large part of this was changing how the filters impact score as they were previously far too large of an impact compared to everything else. Our new system simply activates a multiplier, which had the added benefit of us not needing to display as much text on the screen. A side effect of this, however, was that it became harder to tell if you'd managed to hit a filter after the first one or not. To address this, I added another particle effect that plays when you hit one to make it visually obvious.
I also worked on the leaderboards a bit more to ensure that if they do fail we're handling that in a good way so the game continues to run and the player is notified of the problem. We've also been reworking score mechanics trying to come up with a system that feels good and is as understandable to a player as it needs to be. A large part of this was changing how the filters impact score as they were previously far too large of an impact compared to everything else. Our new system simply activates a multiplier, which had the added benefit of us not needing to display as much text on the screen. A side effect of this, however, was that it became harder to tell if you'd managed to hit a filter after the first one or not. To address this, I added another particle effect that plays when you hit one to make it visually obvious.
Saturday, December 14, 2013
Vinyl, End of Semester
The Open House went incredibly well and we got a lot of really good feedback on the game. It naturally demos very well since it's bright and loud so we always had people gathered around the TV for the duration of the open house. Everyone who played the game seemed to really love it, which was awesome, and picked it up really quickly.
We still have quite a bit of polish to do next semester, but considering with how this semester went, I'm extremely happy with where the game has gotten to.
We still have quite a bit of polish to do next semester, but considering with how this semester went, I'm extremely happy with where the game has gotten to.
Tuesday, December 10, 2013
Vinyl, Pre-EAE Day!
This last week was the final build for Vinyl before we're going to be showing it off at EAE Day. As such I worked on a bunch of small tasks we needed to get finished off for the demo, along with a more major feature of actually tying leaderboard functionality in since Cody finished the framework for it last week. Now clicking on the Leaderboard button in the Song Selection screen causes the songs to vanish and most of the buttons as well and the scores for that song scroll upwards. Additionally, once the player reaches the Stats Screen at the end of a song they find out where they placed and if they're in the top 10 they get the option to submit their score by entering their initials.
On top of that I added in the new artwork for the power meter, added a particle effect for when the player collides with an obstacle, and made it so that the particles on the new star filter stay inside of the star. I also fixed two bugs: one was an issue with how sorting songs by high score was working, and the other was making it so that the particles that come out of the player while boosting or after hitting a filter come out of the board the player is on as opposed to their back.
Today I worked on another menu overhaul to get the newest version of the artwork into the game. Everything is looking so much better now.
On top of that I added in the new artwork for the power meter, added a particle effect for when the player collides with an obstacle, and made it so that the particles on the new star filter stay inside of the star. I also fixed two bugs: one was an issue with how sorting songs by high score was working, and the other was making it so that the particles that come out of the player while boosting or after hitting a filter come out of the board the player is on as opposed to their back.
Today I worked on another menu overhaul to get the newest version of the artwork into the game. Everything is looking so much better now.
Sunday, December 1, 2013
Vinyl, Post-Thanksgiving Update
Now that Thanksgiving is over it's time to cover the last two weeks since I fell behind on blogging again. Last week was pretty uneventful since it was Thanksgiving, but I did do a complete overhaul on every single menu since we got the new artwork for them. I think it really helps the game and looks so much better than what we had before. My second task for the week, which I'm going to get done tomorrow, is to get the new filter object and its particle system in to replace the current one. It should be relatively straight forward, but since we want a mesh with the particles contained inside of it I'm going to be figuring out how to do things with Unity's particle engine that I haven't done yet. Should be fun.
The week before last I did a complete overhaul on all of the in-game UI since we got the artwork for that as well and it certainly looks much nicer, although I'm concerned that the power bar has lost a large chunk of its functionality since it's now harder to see in your peripheral vision. Easy to fix at least, and not a huge concern. I also started working on the new feature we added to the game that I mentioned last time to allow the player to change the audio effects of the song. We're calling them Genre Changers and I got the spawning for them all set up so that they're showing up in game. All that's left is to tie functionality into them once Sherly finishes that up on the audio side.
There's only two weeks left until the end of the semester and I'm starting to wonder if we're going to get all the coding done by that point. It's looking like we might have a bit of crunching to do during Finals week.
Sunday, November 17, 2013
Vinyl, Information Overload!
This last week my focus was to improve the flow of information to the player. This happened through two primary means: a new play screen, and a new stats screen.
Play screen:
Instead of the songs being listed on the main menu, they now have their own screen. This allowed for added information on the songs such as duration, difficulty, and high scores. Additionally, players can now sort the song list by any of these parameters making it much easier to find and compare songs.
(Note: This is actually the most recent version of the song selection screen. At the time of writing this blog it was just the inside song buttons and all the other buttons floating in blackness.)
Stats screen:
The stats screen shows up after the player finishes a song and contains the majority of the information dump. It displays the score the player got not he song in addition to the top 10 online high scores for that song. It also tells the player what their maximum streak was, how many obstacles they hit, and how many filters they collected. Finally, it also lets them know how many times they jumped and for how many seconds they used both boosting and scratching.
We also did a bit more designing on Vinyl this week to add in the ability for the player to select the music effect of the filters and the enhancements at the start of the song and at intervals throughout it. This allows the player a bit more agency in listening to their music while playing the game.
Play screen:
Instead of the songs being listed on the main menu, they now have their own screen. This allowed for added information on the songs such as duration, difficulty, and high scores. Additionally, players can now sort the song list by any of these parameters making it much easier to find and compare songs.
(Note: This is actually the most recent version of the song selection screen. At the time of writing this blog it was just the inside song buttons and all the other buttons floating in blackness.)
Stats screen:
The stats screen shows up after the player finishes a song and contains the majority of the information dump. It displays the score the player got not he song in addition to the top 10 online high scores for that song. It also tells the player what their maximum streak was, how many obstacles they hit, and how many filters they collected. Finally, it also lets them know how many times they jumped and for how many seconds they used both boosting and scratching.
We also did a bit more designing on Vinyl this week to add in the ability for the player to select the music effect of the filters and the enhancements at the start of the song and at intervals throughout it. This allows the player a bit more agency in listening to their music while playing the game.
Thursday, November 7, 2013
Vinyl, Break Week
This week has been fairly uneventful since people have been winding down since last week's mad rush. We've spent the majority of your time looking into bugs that crash the game. The vast majority of these seem to be caused by PD failing to launch correctly so we've been trying to come up with a way to deal with this and see if it fixes most of the problems.
Additionally, I've been looking into alternate color schemes for the obstacles so that they're easier to see once the full color effect is in place. The current ones I've settled on that I like are a dusky orange, teal, and green. All of the obstacles are lighter than the streak they leave on the track so it helps pop them out.
Additionally, I've been looking into alternate color schemes for the obstacles so that they're easier to see once the full color effect is in place. The current ones I've settled on that I like are a dusky orange, teal, and green. All of the obstacles are lighter than the streak they leave on the track so it helps pop them out.
I've also started implementing the skeleton of the stats screen we want to display at the end of each song to inform the player of how well they've done, as well as to provide a location where they learn more about the dev team though a link to our web page.
We're aiming for feature complete on Nov 26th, so we have just 3 weeks to wrap up the remainders of the game. We're close to that already, but the few things we do want to add are likely going to be pretty work intensive so there may be some crunching in the coming weeks.
Tuesday, November 5, 2013
Vinyl, now in IGF!!
Last week was a huge week filled with loads of work to get the build ready for IGF. Our first submission went up on Tuesday and was mostly comprised of tweaking and fine tuning all the little issues we could think of. This gave us a posted build that we knew would be in by the deadline, but we hoped to submit another, more polished one on Thursday if we could.
That night I sent out the build to my brother and a friend in France and got a ton of great feedback on the build, mostly relating to future goals since there wouldn't be enough time to get it in for IGF (and because huge changes that close to a deadline is a terrible ideas), but also some excellent feedback from new time users such as how to play a song not being apparent enough.
Thursday the professors sat down with the game and gave us a lot of feedback as well along with a list of changes they felt were mandatory for the IGF submission. Most of these changes related to the menus and UI so I sat down and got all of them into the game within a few hours, allowing us to get the submission in that night, right before the deadline.
The most important of these changes were making so that the first song in the list is automatically selected, making the play button colored differently, making it so that a loaded song is automatically selected and scrolled to in the list, and the addition of a power bar to the in game UI so the player can easily tell how much power they have at any given time.
I'm super happy with the latest build and can see where this game is going at last. I think we're going to have a really awesome final product.
That night I sent out the build to my brother and a friend in France and got a ton of great feedback on the build, mostly relating to future goals since there wouldn't be enough time to get it in for IGF (and because huge changes that close to a deadline is a terrible ideas), but also some excellent feedback from new time users such as how to play a song not being apparent enough.
Thursday the professors sat down with the game and gave us a lot of feedback as well along with a list of changes they felt were mandatory for the IGF submission. Most of these changes related to the menus and UI so I sat down and got all of them into the game within a few hours, allowing us to get the submission in that night, right before the deadline.
The most important of these changes were making so that the first song in the list is automatically selected, making the play button colored differently, making it so that a loaded song is automatically selected and scrolled to in the list, and the addition of a power bar to the in game UI so the player can easily tell how much power they have at any given time.
I'm super happy with the latest build and can see where this game is going at last. I think we're going to have a really awesome final product.
Friday, October 25, 2013
Vinyl, Tweaks and Fixes
Since the IGF submission is coming up in just a week we spent this week focusing on fine tuning and polishing what we have with minimal addition of anything new. I spent most of my time continuing to work on the menus to make them look better. Additionally I spent some more time working with the filters on both their position as well as their appearance. Working together with Zeph we've created a great 8th note filter that really looks awesome.
My addition to the game this week was implementing the streak counter so that it wasn't just a string on the screen. We have some initial artwork for it and it shows up every 25 streak or when you lose your current streak. Since implementing this I've decided to change it so that the streak always shows off to the side of the screen and the pop ups will show still in the middle. This makes it so people can always see what their streak is, while still notifying them clearly of bigger milestones.
My addition to the game this week was implementing the streak counter so that it wasn't just a string on the screen. We have some initial artwork for it and it shows up every 25 streak or when you lose your current streak. Since implementing this I've decided to change it so that the streak always shows off to the side of the screen and the pop ups will show still in the middle. This makes it so people can always see what their streak is, while still notifying them clearly of bigger milestones.
Thursday, October 17, 2013
Vinyl, Last 3 Weeks
Last week was more of a team building week than progress on the game since we were pretty fragmented and still all over the place. We've definitely fixed most of the problems, but I feel like there's still a few that need to be addressed. Hopefully we can take care of those once everyone is back from Fall Break.
Speaking of Fall Break it's been very productive. This week I've:
The menus was easily the most time consuming, but I'm also very proud of them. Especially the changes I made to the song selection list so that it fits with the theme of the game incredibly nicely (if I do say so myself).
No song selected:
Song selected:
Speaking of Fall Break it's been very productive. This week I've:
- Implemented the Main Menu, About Screen, "Loading" Screen, Pause Screen, and set up the framework for the Options Menu.
- Implemented the varying filter effects so that the more in a row you hit the stronger the effect becomes.
- Changed the way filter spawning works so that you have to work a bit to collect them.
- Made it so that when you scratch the filters (and particle effect) will be properly tracked.
- Added a new particle effect for when the player uses the boost.
The menus was easily the most time consuming, but I'm also very proud of them. Especially the changes I made to the song selection list so that it fits with the theme of the game incredibly nicely (if I do say so myself).
No song selected:
Song selected:
The rest of the changes were all smaller and just to get things that were already working to work better. Most of them were new exposure to code I hadn't worked with before though, so that was really nice to learn about how we're doing other aspects of the code.
Thursday, October 3, 2013
Vinyl, Menus!
This week on Vinyl my main focus was to start getting our menus to a more finished state. As a result, I added a new scrolling window to hold all of the songs a user imports as opposed to the simple list we had before (which meant you could only have about 20 songs loaded). I also added functionality so that the user can remove a song from the game's list which also deletes the files the game makes to run with. This was actually slightly more challenging than I thought it would be just because of the way Unity handles scrolling windows and selection. The way it's set up now works perfectly, but it does feel slightly hack-y although I can't think of any other way to do it.
On top of that I also made it so that when you finish a level, instead of just sitting there not knowing what to do (end the game) it returns you back to the song selection screen so that you can continue to play. This should really help with playtesting since people haven't known what to do when they finish a song.
Lastly, I also worked with jumping a bit to give it the "Mario Effect". This means that if you hit jump a little late, the jump will still go off, just like Mario can jump even after he runs off the edge. This helped to make jumping feel more responsive and you never feel like a jump fails when it should have gone off anymore.
On top of that I also made it so that when you finish a level, instead of just sitting there not knowing what to do (end the game) it returns you back to the song selection screen so that you can continue to play. This should really help with playtesting since people haven't known what to do when they finish a song.
Lastly, I also worked with jumping a bit to give it the "Mario Effect". This means that if you hit jump a little late, the jump will still go off, just like Mario can jump even after he runs off the edge. This helped to make jumping feel more responsive and you never feel like a jump fails when it should have gone off anymore.
Thursday, September 26, 2013
Vinyl, Controllers and Art
This week my main focus was getting UI art from Alice into the game. It took much longer than expected mostly because it was tying functionality into the artwork and not just getting it to display. The speedometer in particular was the most challenging since I had to figure out how to set and rotate around a pivot in Unity. In addition to that the scratch bar functions identically as before, but looks far nicer. It has a new button icon to let the player know how to use it, which goes away once they hit E the first time. There's also a new bar to track progress through the song, so that it's easy to tell where in the song you are.
On top of getting all that working I also added controller support to the game, which was a pretty easy task.
Tuesday, September 24, 2013
Vinyl, Now With Score!
I'm on a roll here, 2nd week in a row I kept reminding myself to blog and forgot to. Last week was a pretty productive week for me as well.
The main thing I worked on was implementing the "History of Vinyl" bar visual (temporary for us to test with) and functionality, which functions as our score for the game. Playing well will increase the audio quality and visuals and vice versa. In the end the bar won't be visible at all so that players will hear their score. Hitting obstacles decreases your score, while hitting filters, looping successfully, and avoiding obstacles gives you score. One future change might be to add a streak mechanic where avoiding obstacles without hitting any increases how much they're worth.
I also implemented a scratch resource so that you can now only scratch for 20 seconds. This will likely be a number based off the length of the song and we're also thinking of adding a collectible that would slightly replenish this resource.
Finally, I also made it so that instead of our singular obstacle we now have three distinct ones so that they can all behave and look different.
The main thing I worked on was implementing the "History of Vinyl" bar visual (temporary for us to test with) and functionality, which functions as our score for the game. Playing well will increase the audio quality and visuals and vice versa. In the end the bar won't be visible at all so that players will hear their score. Hitting obstacles decreases your score, while hitting filters, looping successfully, and avoiding obstacles gives you score. One future change might be to add a streak mechanic where avoiding obstacles without hitting any increases how much they're worth.
I also implemented a scratch resource so that you can now only scratch for 20 seconds. This will likely be a number based off the length of the song and we're also thinking of adding a collectible that would slightly replenish this resource.
Finally, I also made it so that instead of our singular obstacle we now have three distinct ones so that they can all behave and look different.
Monday, September 16, 2013
Vinyl, Looping and Mesh Optimization
Oops, forgot to blog what I did on Vinyl last week so here it is a little delayed.
The main thing I did last week was to get the visuals of the looping to work. Before the needle would just teleport to how far away from the player it was supposed to be. Now it continues to move away from the player and then pulls back at the end of each loop. This visual really goes along with the audio very well and helps the player to understand exactly what's going on. There's still a bit of fine tuning that needs to be done on it for certain edge case fail states, which I plan to finish off this week, but it's in a very good state now.
The other task I took on since I needed more things to do was to make it so that the entire track mesh wasn't drawing the entire time. Previously with an hour long song the entire mesh, several sub-meshes really, would be created on loading the song and displayed for the duration of the gameplay. Now I've made it so that only the sub-mesh the player is on and the ones boarding it will be visible. This has less impact on shorter songs that will likely only have three sub-meshes, but will drastically cut down the number of verts that we're drawing on much longer songs.
The last and smallest task I had was to completely remove the power bar since we decided to no longer use that resource.
The main thing I did last week was to get the visuals of the looping to work. Before the needle would just teleport to how far away from the player it was supposed to be. Now it continues to move away from the player and then pulls back at the end of each loop. This visual really goes along with the audio very well and helps the player to understand exactly what's going on. There's still a bit of fine tuning that needs to be done on it for certain edge case fail states, which I plan to finish off this week, but it's in a very good state now.
The other task I took on since I needed more things to do was to make it so that the entire track mesh wasn't drawing the entire time. Previously with an hour long song the entire mesh, several sub-meshes really, would be created on loading the song and displayed for the duration of the gameplay. Now I've made it so that only the sub-mesh the player is on and the ones boarding it will be visible. This has less impact on shorter songs that will likely only have three sub-meshes, but will drastically cut down the number of verts that we're drawing on much longer songs.
The last and smallest task I had was to completely remove the power bar since we decided to no longer use that resource.
Friday, September 6, 2013
Vinyl Gets Particles
This week I worked on adding multiple particle effects to the game in our attempts to get the game to look less programmer-y and more along the lines of what we're shooting for. Obviously I'm still a programmer and not an artist at all, but at least now the particle systems are set up and ready for the artists to test out materials on.
Two of the particle effects I added are fairly similar, they're for the chorus filter and looping "walls" the player runs into to trigger the effect. They're colored differently to make it very easy to distinguish between them, but the chorus filter's one also has a lot of movement involved whereas the looping one is stationary since it stops you for the looping effect.
Additionally I made a particle effect on the player itself that activates when you pass through the chorus filter and lasts for the same duration as the audio effect We had this in the prototype as well and really liked how well the two worked together, it drives home that synesthesia feel we're going for. The particles shoot out from behind the player in a cone and since we're now using a momentum based movement system, you can fling the particles around which looks pretty awesome.
Aside from that I also added more control schemes to the game as opposed to just WASD. I feel like we should have a configuration scheme in an options menu where a user could select which scheme they want, but I suppose just having four options works too (IJKL, arrow keys, and 8456). Everyone called me a nerd for putting IJKL in, but I still remember using that ages ago.
Two of the particle effects I added are fairly similar, they're for the chorus filter and looping "walls" the player runs into to trigger the effect. They're colored differently to make it very easy to distinguish between them, but the chorus filter's one also has a lot of movement involved whereas the looping one is stationary since it stops you for the looping effect.
Additionally I made a particle effect on the player itself that activates when you pass through the chorus filter and lasts for the same duration as the audio effect We had this in the prototype as well and really liked how well the two worked together, it drives home that synesthesia feel we're going for. The particles shoot out from behind the player in a cone and since we're now using a momentum based movement system, you can fling the particles around which looks pretty awesome.
Aside from that I also added more control schemes to the game as opposed to just WASD. I feel like we should have a configuration scheme in an options menu where a user could select which scheme they want, but I suppose just having four options works too (IJKL, arrow keys, and 8456). Everyone called me a nerd for putting IJKL in, but I still remember using that ages ago.
Thursday, August 29, 2013
Back to School, Back to Vinyl
Summer passed in a flash, and while I was unable to work on Vinyl while doing my internship at EA, the game has come a very long way from when I last worked on it. The track generation code I wrote with Sherly after the end of last semester is still being used to generate each song's track. Cody has set up a lot of code to analyze and track data from the song so we know when and what to spawn based off of the music. We have most of the core gameplay set up and working, now we just need to refine the fun and tune everything.
Today I jumped right into the code and fixed the two of the largest bugs that had been plaguing the game for a while. The first was an issue with the track where the half pipe would be created incorrectly with a roof on top of it. Initially it would seem like an issue with the track generation code, but it only happened on certain songs and not all of them. Additionally, while travelling through this makeshift tunnel the camera would freak out for a split second, which didn't match up with the mesh having a problem. Because of all this my initial suspicion was a problem with the spline data that we use to generate the mesh, and not the actual mesh itself. After digging into the code a bit this turned out to be exactly what was wrong and it was an easy fix to adjust the spline.
The second bug was a larger issue, where after starting up the game it would soft lock. We knew that this was happening because Unity and PD were failing to connect. Unity was listening for the connection from PD, but the signal was being requested before PD had finished loading up. To fix this I made it so that instead of sending one signal we send several attempts if we fail in addition to giving a timeout to the connection attempt so there's a window we're sending the signal in instead of a split second. Now in the case of it failing, which has gone from almost always to never so far, the game won't soft lock although it will play incorrectly. The next step is to take care of that fail case in some manner.
Here's the updated look of the game:
Today I jumped right into the code and fixed the two of the largest bugs that had been plaguing the game for a while. The first was an issue with the track where the half pipe would be created incorrectly with a roof on top of it. Initially it would seem like an issue with the track generation code, but it only happened on certain songs and not all of them. Additionally, while travelling through this makeshift tunnel the camera would freak out for a split second, which didn't match up with the mesh having a problem. Because of all this my initial suspicion was a problem with the spline data that we use to generate the mesh, and not the actual mesh itself. After digging into the code a bit this turned out to be exactly what was wrong and it was an easy fix to adjust the spline.
The second bug was a larger issue, where after starting up the game it would soft lock. We knew that this was happening because Unity and PD were failing to connect. Unity was listening for the connection from PD, but the signal was being requested before PD had finished loading up. To fix this I made it so that instead of sending one signal we send several attempts if we fail in addition to giving a timeout to the connection attempt so there's a window we're sending the signal in instead of a split second. Now in the case of it failing, which has gone from almost always to never so far, the game won't soft lock although it will play incorrectly. The next step is to take care of that fail case in some manner.
Here's the updated look of the game:
Friday, April 26, 2013
Semester End
The end of the semester has arrived and Vinyl is pretty much still in Prototype. It's come a long way since the industry panel and we've changed a TON about the game, but we're not anywhere close to Alpha. We're going to be working over the summer, starting completely fresh, to get the game up and running. We've already set up our first sprint and we've assigned tasks, although only myself, Cody, and Sherly are programming. The three others are unable to work on the game immediately for various reasons.
I'll admit to not being overly pleased about this whole setup, not for myself, but for the other engineers. If they're unable to contribute much over the summer, they're going to come back to a game they haven't worked on or contributed much to and that doesn't seem terribly fair to them. Of course, we're kind of forced into this at the same time since we have to have an alpha version of the game working by the start of next semester. i just really hope everyone is able to contribute in a way that they're happy with by the end of the summer. I personally am implementing the obstacles the player deals with since I'm familiar with that code as well as working with Sherly to generate the mesh of the pipe (as opposed to using a pre-made one like we did in the prototype.) I'm particularly interested in this last task as it's been something I've wanted to work on since the start of the project and because it relates to code I've worked on previously (making a 3D reconstruction from data points.)
Aside from all of this, I'm also not terribly thrilled with the direction the game has moved in since the industry panel. I'm not saying the game should have been locked where we had it, and I fully support changing and modifying the game, but I feel we're moving in the wrong direction. A large reason for this, I feel, was our nebulous design and lack of a solid, defining razor for the game. Because of this, stuff starting being cut or added to the game and it was hard to tell if it fit or not since everyone had a different idea of what the game was. For me, Vinyl is all about the integration of game and music and NOT a game that just has music thrown into it. Because of this, the heavy sports game genre influence that emerged really didn't feel right. Parts of it, such as changing movement to be momentum based as opposed to simply moving work very well, but others, such as grinding just feel tacked on. With the removal of a score mechanic the game completely lost its game feel and entered the realm of "not a game". I also felt we were losing a really awesome aspect of our game, that of the online leader-boards which double as a fantastic way of getting word of the game out in addition to providing people a way to compete. If there's one thing people online like to do it's beat other faceless people on the internet.
I started to become more alarmed once SSX was introduced. I understand and support looking at other games and seeing how they do things, but directly yanking remixing the song while grinding, a completely unique feature to SSX, is going too far in my opinion. The questions I keep asking myself is at what point does Vinyl stop being Vinyl and become SSX in the groove of a record? Why do I want to play Vinyl instead of SSX? We have to be careful to not be too heavily influenced by what's already been done and actually make this OUR game. I'm not too concerned about this, but I think it's very important to keep in mind. I'm still not entirely sold on grinding, but I also don't expect the rest of the group to conform to my design ideals. I also feel it can work well in the game, we just need a good reason for it to be there, and it needs to be related to the music.
Finally, I feel we're starting to disregard a lot of the feedback we got from the industry panel. I think the biggest thing about our game that got a lot of really positive feedback was how we make the song sound like crap if you play poorly. No other game does that and it's our USP. Now, as the one who's spent the most time working with filters to make the song sound more awesome I fully support that, but I also think we need to keep the negative aspects and if anything have more of them. Now that we've learned about splines in Engineering we can ensure there's always a "safe" path the player can take so it's possible to reach the end of the song without a section forcing you to mess up the song.
In the last week we've worked to solidify the design of the game and have Mike as the Lead Designer so that we have a more streamlined design as opposed to everyone just throwing stuff into the pot. Everyone is still going to be contributing, of course, but at least there's a filter now. I keep pressing how much we need a razor and I think we'll have one soon which should really help us.
I'll admit to not being overly pleased about this whole setup, not for myself, but for the other engineers. If they're unable to contribute much over the summer, they're going to come back to a game they haven't worked on or contributed much to and that doesn't seem terribly fair to them. Of course, we're kind of forced into this at the same time since we have to have an alpha version of the game working by the start of next semester. i just really hope everyone is able to contribute in a way that they're happy with by the end of the summer. I personally am implementing the obstacles the player deals with since I'm familiar with that code as well as working with Sherly to generate the mesh of the pipe (as opposed to using a pre-made one like we did in the prototype.) I'm particularly interested in this last task as it's been something I've wanted to work on since the start of the project and because it relates to code I've worked on previously (making a 3D reconstruction from data points.)
Aside from all of this, I'm also not terribly thrilled with the direction the game has moved in since the industry panel. I'm not saying the game should have been locked where we had it, and I fully support changing and modifying the game, but I feel we're moving in the wrong direction. A large reason for this, I feel, was our nebulous design and lack of a solid, defining razor for the game. Because of this, stuff starting being cut or added to the game and it was hard to tell if it fit or not since everyone had a different idea of what the game was. For me, Vinyl is all about the integration of game and music and NOT a game that just has music thrown into it. Because of this, the heavy sports game genre influence that emerged really didn't feel right. Parts of it, such as changing movement to be momentum based as opposed to simply moving work very well, but others, such as grinding just feel tacked on. With the removal of a score mechanic the game completely lost its game feel and entered the realm of "not a game". I also felt we were losing a really awesome aspect of our game, that of the online leader-boards which double as a fantastic way of getting word of the game out in addition to providing people a way to compete. If there's one thing people online like to do it's beat other faceless people on the internet.
I started to become more alarmed once SSX was introduced. I understand and support looking at other games and seeing how they do things, but directly yanking remixing the song while grinding, a completely unique feature to SSX, is going too far in my opinion. The questions I keep asking myself is at what point does Vinyl stop being Vinyl and become SSX in the groove of a record? Why do I want to play Vinyl instead of SSX? We have to be careful to not be too heavily influenced by what's already been done and actually make this OUR game. I'm not too concerned about this, but I think it's very important to keep in mind. I'm still not entirely sold on grinding, but I also don't expect the rest of the group to conform to my design ideals. I also feel it can work well in the game, we just need a good reason for it to be there, and it needs to be related to the music.
Finally, I feel we're starting to disregard a lot of the feedback we got from the industry panel. I think the biggest thing about our game that got a lot of really positive feedback was how we make the song sound like crap if you play poorly. No other game does that and it's our USP. Now, as the one who's spent the most time working with filters to make the song sound more awesome I fully support that, but I also think we need to keep the negative aspects and if anything have more of them. Now that we've learned about splines in Engineering we can ensure there's always a "safe" path the player can take so it's possible to reach the end of the song without a section forcing you to mess up the song.
In the last week we've worked to solidify the design of the game and have Mike as the Lead Designer so that we have a more streamlined design as opposed to everyone just throwing stuff into the pot. Everyone is still going to be contributing, of course, but at least there's a filter now. I keep pressing how much we need a razor and I think we'll have one soon which should really help us.
Thursday, April 25, 2013
Graphics Write-Up #12
This was a pretty fun assignment that didn't end up being too tricky to do, but there was a bit of debugging to figure out some issues. All of the coding itself was pretty simple, I pretty much just duplicated my DepthPass and did the same thing for my ShadowPass except from the lights view instead of the camera's. And.... that was pretty much it. Changing the light from a point light to a directional light was surprisingly easy and the movement ended up working identically as before except that instead of updating a position, I just update the direction (and the position is calculated from the direction). The most challenging was setting up the WorldToLightTransform since I just copied what my WorldToViewTransform was doing. Once I double checked with your instructions, however, D3DXMatrixLookAtLH() worked perfectly.
The fragment shader code was a little trickier to figure out since I had to make sure to sample from the right texel of the shadow map to compare against the texel of the mesh's texture (since they're in different spaces.) Talking with Derick, Sherly, and Chris really helped with this.
The end result of this assignment is quite possibly the coolest yet. Seeing shadows working is really awesome.
Here's what the scene looks like:
And here's the shadow map as seen in PIX:
Link to code: http://www.eng.utah.edu/~jthummel/graphics/ThummelGraphicsAssignment12.zip
The fragment shader code was a little trickier to figure out since I had to make sure to sample from the right texel of the shadow map to compare against the texel of the mesh's texture (since they're in different spaces.) Talking with Derick, Sherly, and Chris really helped with this.
The end result of this assignment is quite possibly the coolest yet. Seeing shadows working is really awesome.
Here's what the scene looks like:
And here's the shadow map as seen in PIX:
Link to code: http://www.eng.utah.edu/~jthummel/graphics/ThummelGraphicsAssignment12.zip
Thursday, April 18, 2013
Vinyl Large Progress
I got a lot done on Vinyl this week working with Filter effects to modify the song. Our wall, which I added a nifty little particle effect to, now adds a chorus filter to the song so that when you hit it three more tracks of the song come on. The result is a really nice echo effect that lasts for two seconds. We tested this with a few various types of music, including songs with lyrics, and it pretty much always sounds good, so that's nice.
I spent a lot of time working to get a distortion effect when the player hits a static object, but had a lot of trouble with it. The main issue is that the filter drastically increases the volume, which ends up blasting out of the speakers. I tried various ways of dropping the volume, even cutting the output audio to .1 of it's normal volume, but nothing actually decreased the volume of the filter. This is really unfortunate because the effect of the filter, played for a split second, is a really nice horrible sound that would function great as an obstacle. For now I've shelved this, but I'd like to get back to it in some form since the effect really does work so well.
For now, there's just a small Echo filter on the static so you get a bit of extra echoing.
Finally, I worked with a Reverb filter to play while the player is grinding on one of bJason's rails on the side of the pipe. This ends up sounding like you've plunged underwater and lasts while you grind. We've talked about doing a remixing effect while grinding, but I'm more in favor of us coming up with a unique sounding filter.
I spent a lot of time working to get a distortion effect when the player hits a static object, but had a lot of trouble with it. The main issue is that the filter drastically increases the volume, which ends up blasting out of the speakers. I tried various ways of dropping the volume, even cutting the output audio to .1 of it's normal volume, but nothing actually decreased the volume of the filter. This is really unfortunate because the effect of the filter, played for a split second, is a really nice horrible sound that would function great as an obstacle. For now I've shelved this, but I'd like to get back to it in some form since the effect really does work so well.
For now, there's just a small Echo filter on the static so you get a bit of extra echoing.
Finally, I worked with a Reverb filter to play while the player is grinding on one of bJason's rails on the side of the pipe. This ends up sounding like you've plunged underwater and lasts while you grind. We've talked about doing a remixing effect while grinding, but I'm more in favor of us coming up with a unique sounding filter.
Subscribe to:
Posts (Atom)







