Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411508 Posts in 69374 Topics- by 58430 Members - Latest Member: Jesse Webb

April 26, 2024, 10:36:07 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsGODHOOD - A rhythm hack'n'slash - On Hiatus
Pages: 1 2 [3] 4 5
Print
Author Topic: GODHOOD - A rhythm hack'n'slash - On Hiatus  (Read 12183 times)
GekidoRising
Level 1
*



View Profile WWW
« Reply #40 on: August 25, 2015, 12:03:34 PM »

Quote
This looks like a really cool game! I'll definitely follow your log and check back later to catch up on the progress you've made. Are you going to open source the engine? I've never worked with dynamic sprites and it would be really cool to see how you're doing things.

In all truth, I would absolutely LOVE to make my engine open source! I very much have plans to release it to the public in the future but there's a lot of work that would need to be done to reach that point. I'd need to weed out all the hard coded stuff I have for my game, write documentation, create actual editors and just generally improve the engine as a whole (FIRE2D in particular has some weird design aspects that I'd like to change entirely). All of those things though are definitely in the cards!

In the mean time, for the actual game itself, I have no intentions of encrypting any of the game files, so anyone who is curious once the game comes out will be free to root through any of the files, graphics or gameplay, and tweak things as they please!

Quote
Your game reminds me of One Finger Death Punch which I've been hooked on lately, and Crypt of the NecroDancer which I've wanted to play forever but I don't have a dance pad. Have you played either of them?

Unfortunately I've never played One Finger Death Punch but I've most certainly seen the game in action. I can see where you would draw the comparison as both games do require getting into a zone to really make good things happen. I probably should pick the game up at some point and give it a try!

Crypt of the NecroDancer, on the other hand, I have definitely played. In all truth though, I never even considered using the dance pad to play it, I just played it with keyboard instead! I do actually have my handy dandy Red Octane Igntion 3 (somewhere at my parent's place) but to me, the thought of playing CotND on pad sounds impossible, at least for me! Maybe it just has to do with the fact that I actually suck really bad at CotND and who knows, maybe dance pad is actually the proper way to play it and I've been playing it wrong the entire time. I'll have to dig that pad out and give it a try! Still a really cool game though, definitely has the most impactful deaths I've ever experienced in a video game. Because you're so focused, every death is like a fist coming out of your monitor and punching you in the face, I literally flinched every time! And it's worth mentioning, I definitely mean that as a compliment, it's fun to get THAT focused for a game.

Anyway, thanks for the support, Natman!
Logged
GekidoRising
Level 1
*



View Profile WWW
« Reply #41 on: September 02, 2015, 12:10:18 PM »

After two years of development, I've finally begun to dabble into the more design oriented parts of game development and I have to say, it is absolutely one of the most bizarre feelings, purely because of how much freedom I have! Back when I was coding the graphics/game engine, I was so used to moving from one monolith of coding to another, but now I'm basically free to work on anything in whatever order I please! The feeling is both pleasant but slightly worrying as I'm constantly stuck wondering if I'm doing thins in the right order or not.

ANYWAY, enough rambling, new features!

One of the first things I implemented once I started the game phase was an audio lag calibration screen:



Admittedly, that does sound like a pretty boring feature but it's extremely important as it's one of the biggest things that's kept me from making a new build available to the public! Before, there was no easy way to adjust your audio lag other than just guessing what it might be, but now that I have this setting it, it makes the game much more portable to other computers which will be important soon when I can start making testable builds!

Besides that and a whole bunch of convenience features that I've added in the past while, I decided I would pull up my sleeves and give an attempt at animation! It's worth mentioning that all of the following animations are only first pass and lack coloring, but fortunately, at least in my work flow, coloring is the fast part.

Starting out small, I decided that I would go for the very first thing the player would likely see: The Idle Animation!



Personally, I'm somewhat proud of how it came out seeing as I have virtually no real experience doing animations! Definitely missing a lot of in between frames, but that is intentional as I think that may be how a lot of the animations in this game end up looking. My plan is to basically get all of the animations done and then add in between frames where ever I see necessary as time is of the essence. Anyway, there is very much a reason why this animation turned out not terrible:

I recorded myself doing the animation first!


This was actually my plan for a lot of the animations but unfortunately, I don't really have the room to run, jump, slash and explode and I don't feel like doing this stuff in public. I think I might still do it some day though if I go out to the country with my camera and tripod!

What I'm getting at though is that the rest of the animations I've implemented are unreferenced and as such, they need a little bit of work.

Anyway, next up, a run animation!



I'm still pretty happy with how this one turned out. Plus it plays a lot better than Waki and Smunch did because Riff runs a whole lot faster.

Lastly, I've implemented a jump animation.



This one I think might need a little bit more work. I might change the position of the legs in the rising part, and the position of the arms in the falling part, but at least it's a good start!

Anyway, that's pretty much all I have in for animations now. Despite these actually taking very little time (the run animation took 2 hours for all four frames), all this drawing is really putting my drawing stamina to the test! It's an interesting feeling, but I shall persist as best I can.

Anyway, with all this game design stuff finally happening, I'm starting to get a sense of how long all this will take. I'm starting to realize with my current timeline, things are probably going to be very tight, but if I only create exactly what I need prior to a kickstarter, than I should still be able to make it just in time. It's still a little early to call as, again, there's still a lot of work to go, but it shall be interesting to find out what the next few months bring!
Logged
nathy after dark
Level 8
***


Open Sourceress


View Profile WWW
« Reply #42 on: September 03, 2015, 08:21:26 AM »

I'd say it looks like you're on the right track, at least, with the animations. They're not half bad. Keep at it, though!

Quote
Admittedly, that does sound like a pretty boring feature

Actually I'm not at all familiar with audio lag calibration, and from a technical standpoint I'd actually be interested in hearing how it works Tongue
Logged

GekidoRising
Level 1
*



View Profile WWW
« Reply #43 on: September 03, 2015, 04:01:20 PM »

Quote
Actually I'm not at all familiar with audio lag calibration, and from a technical standpoint I'd actually be interested in hearing how it works

Whenever you play a sound from code, there's actually a minuscule delay, usually only about a tenth of a second for the sound to actually come out. Now, for most games, this doesn't make a very big difference at all, such a small difference in fact that you would barely notice it. For a rhythm game on the other hand, this makes a huge difference, because the entire point of a rhythm game is to be in perfect sync with the sound! A person tapping to the beat of a song can tap within milliseconds of a perfect beat if they concentrate hard enough, but that doesn't work if the computer when the computer thinks it's 150 milliseconds ahead of what the speakers are actually playing!

A simple example of the problem: My computer has 150 milliseconds of audio lag, so if I were to tap a beat at the 500ms point in a song, the computer would think I actually tapped at 650ms, even though what I'm hearing is the 500ms point in the song.

So, the solution is simple: Simply find the exact audio lag in milliseconds and subtract it from where the computer thinks it is in the song! So in that earlier example, you would take the 650ms mark the computer thinks its at and subract 150ms off to bring it down to 500ms. Then there you go, you're perfectly on beat!

The important thing audio lag however is that it's different on every computer. I'm pretty sure on my laptop, it was actually about 170ms, and when the PERFECT timing window is only 60ms in size, a 20ms gap can make a big difference.



While I'm here, I'll say that I also got some more animating done today! Today I decided I would get started on some slashing animations. This one actually took me a lot of attempts and I did eventually bust out the camera to record myself doing it, but I'm getting closer to what I want. I only have one animation done today as I was deciding on which style works best. I have it narrowed down to two styles:



The only difference between the two are the first frame. For the first one, I thought it looked a little bit too rigid, like he was about to give someone an awkward high five. The second one was the one I ended up trying out in game, but I quickly realized that the animation looked extremely spastic. I think I might just redo the frame and go for something sort of in between.

As I said, I also already started implementing the slash animation into the game but it definitely requires a little cleaning up. The animation plays much faster in game since it's actually going to a beat so I switched back to the first animation because the second one was so spastic. The first one already looks wacky as it is!



The cool thing about these attacks is now that I have the logic written for these attacks, since every other punch animation uses the same logic, all I need to do is do up more slash animations and then copy paste the logic for them.

I have plans for how I want the combos to actually string together but I'll go over that in a later post when I have more art to back it up! By that point, things should at least look a little less flaily.

Also, here, check out this first implementation of the slash animation that totally worked correctly and had no bugs at all:
Logged
nnyei
Level 2
**



View Profile
« Reply #44 on: September 03, 2015, 09:21:36 PM »

This is extremely thorough and well-documented (not to mention the hours worth of video content!), and it's honestly really inspiring to see how passionate you are about this project. It's very obvious that you put in a lot of time and effort into this game, and I think it's really paying off. It certainly oozes personality.

Though, while I'm digging the idea of the art style and concepts, I can't say I'm a big fan of the actual art itself. Shrug (I know a lot of it is still placeholder art, but I mean the mockups and concept art as well. Compared to everything else, this aspect of the game feels a lot more amateurish.) But nevermind that. Anyway, I'm very interested to see where this is going. I'll definitively keep an eye on this. Smiley Hand Thumbs Up Right
Logged
GekidoRising
Level 1
*



View Profile WWW
« Reply #45 on: September 04, 2015, 05:13:49 AM »

Oh nice! It's good to see that you (and possibly others) appreciate the longer posts! I have to admit, from time to time, I've found myself wondering if these huge posts become to exhaustive to read and if I should just convert to the way of "Check out this cool thing: *GIF*." These posts are definitely much more style as they will probably be fun to look back on in the future and I'm practically physically incapable of making non-verbose, rambly posts anyway haha

Also, on the art being, to put in bluntly, bad, I've actually been waiting for someone to say it for ages now! I'm still very new at art and I knew this was going to be a problem going in, so it doesn't come to me as a big surprise or anything. I'm actually happy that someone finally said it because it at least means I'm finally getting some honest opinions about my game now beyond showing it to people I knew off the internet and getting slightly awkward praise in the style of "oh yeah, it looks really cool man, good luck! Hand Thumbs Up Right"

Anyway, I would absolutely love to hire an artist, and after a kickstarter, that may very well be a possibility, but it's just not in the cards at the moment. I'm sure this story's been told a thousand times over so I'll spare the details, but in the end, if a kickstarter fails because the art is lackluster, than at least I'll have a lot of time afterwards to develop my skills further (or just save up for an actual artist) during the cooldown time!
Logged
GekidoRising
Level 1
*



View Profile WWW
« Reply #46 on: September 09, 2015, 03:38:44 PM »

I've got the first game development of GODHOOD up!



Besides, that, I've been making more progress on the animations. Before I post any gifs though, I just want to make a bold statement that has totally never been said before and is a completely original concept:

Animation is hard.

I'll start by saying that I am fully aware that a lot of the animations in the game so far look pretty goofy. Considering I only have a week and a half of animation experience under my belt, I'm actually pretty proud of what I've produced so far! But, obviously, there's still a ton of work left to do.

Anyway, all that preamble was to prep you for the very first Way animation added to the game:



Yikes

The only thing funnier than that animation is the fact that this was my SECOND attempt at it! Looks like this Way is getting good exercise doing a little jig on the spot! In all truth, this is another instance where I recorded myself doing the same action, but I'm guessing the action I was doing doesn't translate to a three frame animation very well.

Another funny little note. I thought that since I was finally moving onto animating the Ways, I would have a much easier time since I'm far more comfortable drawing monsters than I am drawing humans. Looks like the trade off is that human proportions don't work for monsters so I can't just record myself an expect things to translate cleanly.

Thankfully this animation has been long ditched for the third version that I've done:



Still a little bit goofy, but, the Ways are kind of goofy to begin with so this isn't actually too bad. Maybe in the future I will redo it again along with a lot of the other animations I've done so far, but for now, this will have to do while I crank out other animations.

Also added to the game is a hit animation for the Ways as well as another slashing animation for Riff!



This one I'm a little happier with as you can sort of make out the slashing animation (though I might fix one of the frames in there being a little weird). This animation in particular is how it looks if you slash directly to the rhythm of a song, or in other words, slashing to the quarter notes. If I were to slash to the eighth notes, this animation would be much faster. Unfortunately it does look a little bit weird, as it definitely lacks impact.

Now, as tempting as it is to just go and add more frames, before I do that, I want to try something that's much more within my realm: Particle effects! I feel like just having a slash effect, something like a ribbon that traces the path of Riff's hand as he slashes, might really make a difference in conveying movement! I have a few other ideas that I want to test as well but it won't be any fun if I just sit here and describe all of them, so I think I'll start working on these effects tomorrow to see what comes out of it

Anyway, despite the extreme challenge that animation has provided me, even though I've had a few days where all of the animation I had done had to be trashed, I can't help but feel that I've already learned a lot as it is! There are definitely the finer intricacies of animation that I still need to explore, such as creating an animation that isn't just keyframes but I've refined my workflow to the point that I'm working twice as fast as when I started! While it's hard not to be defeatist over the difficulty of animation, I'm at least driven by my curiosity of how my animations are going to look a month down the road!
Logged
GekidoRising
Level 1
*



View Profile WWW
« Reply #47 on: September 10, 2015, 02:01:08 PM »

For once, I only have a quick post this time! I just wanted to do a quick before and after with the work I've done today!

Before:


After:


Man, I have way too much fun doing particle effects. As always, there's still lots of small improvements that I can make, but for now, I'm loving the difference it makes!

I might change up the Way's hit stun animation for a third time actually, as I'm starting to realize that Riff is punching his head more than his gut, so it might be better if the animation for it matched as well!
Logged
GekidoRising
Level 1
*



View Profile WWW
« Reply #48 on: September 23, 2015, 03:55:51 PM »

By god, has it really been two weeks since I've posted in this log!? I could have sworn that it was last week that I made an entry here! I guess it doesn't come as too much of a surprise regarding a certain update I made last week where I basically stared into the void and had it stare back into me. Anyway, before we get to this magical update, let's cover all of the tiny stuff I did first:

  • A whole bunch of animation stuff: Improved Riff's jump animation, added another slashing animation, added walking animations for the Way.
  • Resized the entire game so that one graphical unit is equal to one meter instead of one graphical unit corresponding to pretty much nothing.
  • Edit: Oh yeah, controller support, that's a pretty big one

Now, with that stuff out of the way, la piece de resistance. I basically have an entire graphic novel to chronicle what went into this feature, but before I go crazy, let's let actions speak louder than words:



Check that out! We've got our first real explosion in the game! Let's see that in slow motion!



Awesome! Now let's see a freeze frame!



Kickass!! Now let's see it in reverse for some reason!



Amazing! Now let's- I'm not going to ride this joke out any further. I was honestly tempted to make another one with MLG frag video filters on top but I do not have the editing knowledge or the energy to do that so let's get to the beef of this feature.

First things first, the entire explosion is a particle effect. There is no pre-drawn animation here which, honestly, was my original plan! I figured that to get the core explosive effect, I would need to do a small animation in the center and just have a few extra particle effects to assist it, but no, turns out I can convey the entire effect as a particle effect, which I feel is a much better approach!

Still, the amount of tapdancing that needed to happen in order to get the effect to look like this was insane, at least for a beginner dev like me. I had to add multiple post processing passes to get this effect as well as implement an full extension to Fire2D's particle effect system! I don't want to spend the entire night writing this post though so let's keep this brief:

First step of post processing magic, blending the particles together. The particle for the initial blast actually looks like this:



Notice the fact that basically the purple outline goes all the way around the white. If I were to render this normally like any other particle effect, it would look like this (ignore the floating C):



Looks a little weird! To fix that though, you simply need to render the particles additively instead of "normally." That way, when a purple outline renders over a white center, you still get white, which looks like this (again, ignore the C):



But wait, there's a problem with that! The outlines! They're see through! Well, to fix that, you need to get a little more fancy. What I ended up doing is I changed the explosions to render on their own frame buffer(ie, their own render-texture). With that render-texture, I overlay it overtop of the rest of the game, rendering it normally so that the hard outlines of the explosion are restored!

Next piece of magic, the implementation of a ribbon emitter! To get the strands of fire that blast out of the explosion and flicker about, I implemented a ribbon renderer into my particle effect system, which simply treats particles as list of ribbon segments instead of particles. Essentially what's happening here, is in the initial blast, each particle emits another invisible particle with a velocity oriented in the direction that the original particle is facing. The invisible particle then emits more particles which are rendered as a ribbon, creating the little strands of flames you see above!

Final magic trick, the refraction post processing! In the still and slow motion shots, you should notice that there's basically a half ring blur effect coming out of the explosion. That effect is simply another particle, seen here:



To get this effect, the explosion emits that particle and expands it quickly over time. This particle is rendered to yet another frame buffer referred to as the blur map. The blur map goes into a shader along with a render-texture of the entire scene. Then, the blur map is read such that the color of a given pixel on the blur map determines the offset of the texture coordinate used to access the scene render texture!

And with that said, the result is the explosion we have here!

And you know what?

It'S STILL NOT DONE! While I have to say I am actually very happy with how the explosion already looks, I can't help but feel that something's missing. To that, I spent an entire day experimenting with smoke effects, but I can't say I was ever really satisfied with what came out. In the end, I came up with two more effects. Here's the first one:



Looks... a little funny. I experimented with a LOT of different smoke particles, ones with feathered edges, ones with hard edges, ones that were purple, ones that were black, ones that were perlin noise, ect ect ect. In the end, this was the one I liked the most and it still looked off. That left one option; even more ribbons:



Looks better, but it still strikes me as slightly empty. Perhaps it's because there's nothing really at the origin point to speak off and also, at the origin, all of the other ribbons overlap really weirdly. Perhaps that's a spot where I can try and implement feathered edges.

Regardless, I feel like I've spent long enough on this. I was going to turn to you guys for suggestions actually but then I came to the realization that there isn't enough final art (or any for that matter) in the game to reference how the explosion should look. I've decided that I'm going to leave it to rest for now and come back to it later when I actually have some final character and stage art in. I still have a few tiny ideas that I want to play around with, but again, I have to leave this to rest, otherwise I'll be spending all week on it!

Still, I can't deny that I love the way it looks already! It can improve, but I am VERY happy with how far it's already come! I can't say I expected particle effects to do this much work for me!

Anyway, I realize you're probably exhausted with this post already, so to those that have decided to read this far, I am both impressed and somewhat surprised. With that said, I know this may be an inopportune time to throw this at you, but I'd also like to take the opportunity to say that everything I've talked about in this post is now available in the newest devlog episode as well!



Finally, if you're still reading, please enjoy this first attempt at an explosion effect based entirely off ribbons.
« Last Edit: September 23, 2015, 04:09:04 PM by GekidoRising » Logged
HQ
Level 0
**



View Profile
« Reply #49 on: September 24, 2015, 05:24:02 AM »

Nice progress  Smiley

you can easily edit these animation keyframes with very little effort to have something more fluid  Gentleman
-->
Logged

hhttps://twitter.com/HQ_PixelArtist
GekidoRising
Level 1
*



View Profile WWW
« Reply #50 on: October 14, 2015, 06:45:09 AM »

NNWW, sorry on the late reply, I didn't actually see this until a while back and I figured I would just respond once I had an update ready which ended up taking longer than I expected!

Anyway, thanks a ton for putting in the time to make an example! This is actually really quite fascinating to see the difference it makes! I'll definitely experiment around with the sketches I have and see what I can do to loosen up the animations a bit because that is really quite the difference. The actual slashing effect is quite neat too though that might require some experimentation on my end as the current slashing effect is programmed in kind of weirdly as in, it's a particle effect that emits one static particle haha. Perhaps it's time for me to implement animated particles though.

Anyway, thanks a lot for the cool tip!



SO, where have I been for the past THREE WEEKS!? Good lord, I can't believe it's been that long since I've posted an update! Well, I do have a reason for it at least, but first, let's start with the small stuff!

80% of the first week was spent just implementing a butt load of animations! The Ways now have the ability to walk, jump and slash!



The walking animation could use some work, particularly because the backwards walk animation is just the forward animation reversed, but I really like how the jump and slash animations came out! Anyway, I also implemented the beginnings of the hit and death animations for Riff!



As you can probably tell, they are very much not done. The hit animation very badly needs a particle effect to go with it as well as a few other ideas I have in mind. The death animation looks extremely odd as I very much have plans for what happens when Riff dies. Long story short, I have plans somewhat similar to when you die in Kingdom Hearts, sort of a dramatic slow down followed by a fade out!

Also done in that first week, I've written about 70% of the story script for the first level! As much as I'd love to show what I have right now though, that wouldn't be any fun! I'd much rather show off the story once I get to actually implementing it into the game!

Anyway, if you're keen, you might have noticed that some of the textures looked a bit different in the background of those animation gifs! Well, that's because the other 2 weeks were spent creating final art for the game's background! Here's how it looks so far (about 75% done)(also, it's really sped up to reduce file size):



Let's take a look at some detail shots!







While it still looks a little bit barren, it's a massive improvement over what we had before! I was deleting the old assets as I introduced the new ones so unfortunately no before and after for us, but regardless, we've come a long way from what we had before! In total, there are about 15 different buildings here and let me say that I am absolutely THRILLED about the fact that I don't have to draw any more of them because, good lord, did it get tedious after a while! I may return to it in the future if I don't feel like the stage is populated enough, but for now, I'm happy with the building count.

My only gripe at the moment with the buildings is how most of them are perfectly flat on all sides, which looks peculiar on some of them. As much as I would love to have actual models instead of a bunch of quads though, I don't have any experience creating models and I never programmed any model support for FIRE2D so right now, this is all I've got. I did consider other options, like manually indenting the windows on the buildings, or even creating a height map renderable to generate each of the buildings, but both of those are way overkill and could potentially eat up a lot of time. Anyway, moving on!

One pleasant thing about the stage right now is that it batches wonderfully! About 70% of the buildings as well as all of the road markings are atlased so the whole stage renders in about 10-15 draw calls!



So, now that we've got buildings and roads in place, all that leaves is details! The stage still lacks the clutter required to look like a proper city, stuff like benches, light posts, traffic lights, parking meters, and (something that I am going to dread drawing) trees! Beyond that, we're only missing two final touches:

1) SHADOWS

While I am proud that I actually implemented a working lighting system (literally the most simple lighting system possible: A shader that accepts one directional light and only renders the diffuse + ambient), the fact that almost nothing casts a shadow looks a little bizarre. Since I'm not really an aficionado on shadow rendering, I may very well just cheat and put a whole bunch of transparent grey trapezoids everywhere to give the illusion of shadows!

2) A downtown block that actually looks like it was ravaged by an angry dragon!

You probably noticed that one building there in the middle that's just got a big hole in it. Well, I have it in the script that Avadra essentially explodes a car in front of it, so that will be another detail I'll have to add in to the stage. Also, all of the buildings and roads look surprisingly pristine for an explosive dragon showing up, so I'll probably need to alter some textures here and there as well!

Anyway, I'm so close to finally having the stage done! It's been a huge amount of work but finally having this done will be very exciting as it will be one of the first fully finalized features in the game! Though, I'm sure you all know the reality of game development and that nothing is truly ever final!
Logged
GekidoRising
Level 1
*



View Profile WWW
« Reply #51 on: October 19, 2015, 01:11:20 PM »

IT IS DONE! I can't believe it, but it is finally done! I have finally reached a point where I am content with the progress of the Downtown Core stage! Check it out:







In case you're curious why there's a car on fire in that last picture, it's because Avadra blew it up. I haven't worked out the exact details yet but essentially, when Avadra actually makes her entrance, she isn't quite welcomed with open arms and she isn't too happy about it.

Anyway, on the topic of fire, check out how it looks animated!



I fully realize I am tooting my own horn here but I can't believe how cool I got that fire to look. Honestly, I was only a few minutes away from abandoning my ribbon fire strategy and going back to a more traditional particle fire, but thank god I stuck to it because I am just so happy with how this fire came out!

Anyway, moving on, while I am quite happy with how the shadows look, I am unfortunately not very happy with the way I programmed them, or should I say, the way I didn't program them:



Pretty lame, I know, but I really don't have all the time in the world to write a shadow casting algorithm so this is the best I could do. Kind of sad because the shadows really mess up my batching algorithm!

Apart from that, I'm still very happy with how the whole stage came out! I'm actually somewhat proud of the little trees there as I've previously had a very hard time drawing trees up until I came up with a nice method for those foreground ones!

It's worth mentioning that the stage still isn't 100% done! There's definitely a few little details I'll probably add or change whenever I get bored some weekend. For example, with the roads, I wanted to more closely replicate Canadian roads which are usually much brightly colored and have many more potholes + asphalt patches. This will have the benefit of making the Way much easier to see! Besides that, there are still a few props and shadows that are missing that I can add some time later.

The point is, I'm finally happy with what I've got and after 3 weeks of doing stage art, I am completely fine with moving on at this point! I think I'm going to mess around with the character files for a little while as there are a few things I need to change around architecture wise in order to get the animations to time correctly with the beat. For now, though, I have some videos to show!

Before I show this first video, I'll explain that a few days ago, I was looking through my assets and I noticed something. Through a mathematical error, my road and sidewalk assets were literally twice as wide as they were supposed to be. This immediately made sense because I noticed that the characters felt really small when they were on the road. Because of this, I decided that I would simply change the assets and then rebuild the stage from scratch! Fortunately, this only took about two hours because I had already drawn up all of the assets. They just needed to be placed! With this opportunity, I decided it would be a great opportunity for a time lapse:



Anyway, to finally close out this post, here's the obligatory devlog to accompany all of the work I've done for the past three weeks!

Logged
nathy after dark
Level 8
***


Open Sourceress


View Profile WWW
« Reply #52 on: October 31, 2015, 04:29:53 PM »

Looking good! Personally I think it's nice to hear a developer taking honest pride in their work. Smiley

In my browser, the fire GIF isn't animating, though, so I can't confirm or deny whether it's as good as you say.
Logged

GekidoRising
Level 1
*



View Profile WWW
« Reply #53 on: November 02, 2015, 03:31:29 PM »

Thanks Natman! Weird that the gif doesn't work in your browser but if you still want to see it here's a direct timestamp of the fire in my devlog!



This past week, now that I've finally reached a happy point with the stage, I've moved away from working on monolithic features and instead focused on completing a bunch of smaller tasks with a specific goal in mind:

Create a first playable!

This basically resulted in a decent laundry list of things to do so let's start from the top!

Step 1) Implement the rhythm/accuracy architecture into Riff's attacks!

Translation, up until now, all of Riff's attacks assumed that you were hitting them on a quarter note with perfect accuracy. Now with the changes I've made, ever slash is slightly different based on the length of the note you hit it on (quarter, eighth, dotted eighth, sixteenth, etc) as well as the accuracy you hit it with (good, great, perfect, ect)!

These factors affect your attacks in many ways. It affects the damage, hit stun, hit freeze, knock back, and most importantly...

The flow gain!

Step 2) Implement FLOW!

Riff now has a Flow meter! The following visuals are for debug purposes, but for this devlog, flow is conveyed by the white bar here (the red bar being Riff's health):



Flow, simply put, is a representation of Riff's power! It is built by following the beat as closely as you can. The closer you follow the beat along with the more enemies you hit with your attacks, the faster the flow bar builds! Think of it as something similar to a DDR health bar, which goes up as you hit perfect notes, and goes down as you miss them.

The amount of Flow you have determines how powerful your explosive attacks will be! Here are some examples:

50% flow


100% flow


0% flow


That's right, at the moment, if you have literally mashed your entire way through the game, your explosive attacks will do 0 damage and 0 hit stun! Anyway, moving on!

3) Implement all of the missing moves in the game.

I've added a bunch of animations that were necessary for the game to actually be playable! Most of these animations were things that the Way needed, such as:

The ability to run


And the ability to spawn and die


Both of the spawn and death effects make use of Fire2D's alpha based particle emission! This means that when the Ways die, the resulting particle effect explodes in the exact pose they were in when they died. Think of it similar to those cartoons where a character runs away really fast, leaving a character shaped dust cloud behind them! The spawn effect does the opposite, exploding out and then forming the shape that the characters spawn in!

As for Riff, he finally gets a dodge move!


4) Add in AI for the Ways!

This one was pretty quick and dirty, but I've quickly added in an AI where the Ways will do everything they can to surround you:

(this gif is REALLY big, sorry haha)


Right now they're pretty ferocious which might need changing actually because of how easy it is to get them to all stack on top of each other for one giant combo. I'd more rather have them sort of lurking nearby, waiting to strike, but it turns out that this current iteration is already pretty fun!

Finally, I'd just like to end off this devlog with the quintessential video devlog as usual, so basically here's everything I just talked about in video form:



I probably waited a little bit too long to write this devlog as I'm already in a bit of a backlog! I've already worked on some features since the stuff in this post and in all truth, I'm probably going to be writing a pretty down to earth post in the future about what I've got planned for the coming months. For now though, I have more work to do!
Logged
GekidoRising
Level 1
*



View Profile WWW
« Reply #54 on: November 04, 2015, 01:52:17 PM »

In the interest of catching up with myself, I decided I would do another update really quick to show off my next goal. Now that I've got a first playable on my hands, it's time to create what I'd like to call "A First Screenshotable"! In other words, I want to take the game to a state where everything is presentable, where I can take screenshots without something looking blatantly unfinished!

So, where else to start then the most obviously unfinished part of my game; the character art!

Before I start spamming gifs, I'd like to give a quick shout out to NNWW for their tip on improving my animations! While I can't say I have enough time to improve all of my animations, I certainly used it to spruce up some of the more important ones, namely the idle animations and the slash animations!

Anyway, commence the gifs!

First off, I've created finalized idle animations for both Riff and the Way!



I've also implemented tentatively finalized albeit somewhat goofy run animations for Riff and the Way!



After that, I've created somewhat finalized jump animations, although I may add another frame between rising and falling.



I've colored all of Riff's slash animations (that I've implemented so far) and also the Way's hit animation



And finally, I've colored the Way's slash animation as well (although I haven't colored Riff's hit or death animations yet)



I have to say, to see this art actually in game has been just one of the most bizarre feelings. I don't know if I've mentioned this already but I've been working on this game for so long now, it's strange to see it in a nearly finished state (even though there is much MUCH more work that needs to be done yet)

So, I should say, why is it that I am suddenly so focused on having the game in a completed looking state when there are still many more animations and explosions that need to be implemented? Well, I'm not kidding when I call it a first screenshotable! The truth is, I want something that I can finally take good pictures of so that I can finally have something to show people, something to post online and to the media, and most importantly...

Something I can show to the people that I need to hire!

For those who have been watching the video logs, I'm sure you're probably getting tired by now of that same 10 second clip playing forever and ever. It's done absolute wonders for me and I'm super thankful to MaxxPlaya100 over at Looperman for creating the sample, but I'm finally approaching a time where I NEED to implement some music actually made for the game.

So, the plan, finish more art for the characters, dress up the stage a little bit with some details and other clutter, take some screenshots, maybe do up another poster art for the game and then...

Post an ad looking for musicians! Or just start looking for artists on my own time, but for the kind of music I'm looking for, I can't say I'm exactly sure where to start looking other than tigsource's own musician section. Whatever the case may be, the reality is I don't have all of the time in the world, and things are starting to get tight, so it's time that I get past my anxieties and pick up the pace a little bit!
Logged
GekidoRising
Level 1
*



View Profile WWW
« Reply #55 on: November 12, 2015, 04:19:01 PM »

Man, the last week has been an absolute whirlwind. So much has happened, yet not much has happened within the game itself! I'll explain later, but first I'll say that after eight months, I've finally drawn up a brand new poster for GODHOOD!


(click for full view)

I don't know if it was clear from the description that I gave for the story, but in Riff's attempts to keep everything under control, things don't go very well.

That said, I should say that with the story being very important to how the actual game plays out, by reading this devlog, you're basically agree to going full bore on the spoilers as this new poster is a depiction of one of the last levels of the game!

Anyway, next up, I did actually do a few updates to the game aesthetically. One of the biggest changes, even though it took two seconds to implement was that I repositioned the rhythm bar to the bottom of the screen, seen here:



People who played the game enjoyed this more as it felt much easier having the character right next to it so that they can still see the action no matter what they focus on.

Also in that screenshot, you'll notice that I've changed the roads now! For a while, I've been meaning to make them more like authentic Canadian roads, not because the game explicitly takes place in Canada, but rather, I just find those roads have the most personality! Also, by brightening up the roads quite a bit, the Ways are no much easier to see, which is definitely a bonus.

Finally, I've done a lot of updating to the explosion art! I'm gonna try my best to record a gif that isn't 39847 MB in size.



Well, I recorded that perfectly on the first try! How bizarre, I didn't even need to retake it or even edit at all, wow! Anyway, you'll note that there are a few changes: Firstly, the Ways now actually have an effect for getting hit by an explosion, complete with what I call "shader-nanigans" for the flashing purple effect. After that, I've changed the initial explosion flash to be a little more explosion like though it still needs some tweaking yet. On top of that, I updated the blur texture a bit and even added some dust effects!

Anyway, the final big change that's happening for GODHOOD... is this: http://forums.tigsource.com/index.php?topic=51367.0

I can't believe I've finally done it. I've actually opened up a job posting for a musician! I actually posted this ad a few days ago, and I've already gotten 27 (I think) applications!

I have to say, going through all of the applications has been an absolutely fascinating experience. One thing I've found so neat about all of the applications is that every musician who has applied so far has turned out to be actually super talented! Listening through that stuff, I have to admit, there are times where I sort of wonder what it would be like if I wasn't working on a game where rhythm wasn't such a central mechanic. So many of those musicians I could hire so very easily, but because I have such specific needs, it makes the task of finding the right artist far more in depth. If I was working on a more conventional title, I could have easily picked my musician right away, but the choice is so much harder than that!

One of the most fascinating aspects about the application process is the sheer amount of work some people are putting into their applications! I've had multiple people compose conceptual tracks for what they imagine the first level sounding like and the idea that people are willing to put that much effort into an application is absolutely incredible, if not just a little bit terrifying! If anything, the amount of effort people are putting into their applications really must be indicative of how hard it is to find work as a musician, which honestly is somewhat saddening as, again, people have applied with some really amazing stuff!

Anyway, I don't want to inflate this post too much, so I'll close it out here, but next post, now that I'm really getting my hands dirty in game development, I think it's finally time that I come clean about my plans for the next few months and what the game's fate may be. For now, that's a little too heavy though and I don't feel like working into the wee hours of the night anyway.

Before I go, I must pull a classic Nick however, and say that everything that I've talked about in the previous two posts I go over in my latest devlog episode!

Logged
GekidoRising
Level 1
*



View Profile WWW
« Reply #56 on: November 26, 2015, 04:24:05 PM »

I RETURN! It's only been two weeks and I'm pretty sure I've waited longer between posting devlogs, but so much has happened that it feels like it's been months since I've posted anything, so again, I RETURN!

This devlog is going to be more or less an entirely textual post as, in my last post, I said that I would need to take some time to talk about a few other topics that are important to the game. As tempting as it is to completely throw that intention out the window and just post gifs and screenshots instead, I've been meaning to do this for a long time now and seeing as this devlog is as much personal as it is informational, I think it's the proper thing to do! I'm actually in the middle of rendering out the devlog video on all the stuff that I've done for the past two weeks but I think it might be best to just do that some time this weekend!

Now, before I get into the messy stuff, I would first like to talk about one positive aspect: The musician hiring process!

I've already penned my feelings towards the musicians who have applied in the last post (and in like a million other places too), but the process has really left its mark on me! I'm so thankful for everyone that's applied, it really was a lot of fun to go through all of the applications that everyone sent in. The fact alone that people applied to be a musician, even to go so far as making demos for the game is really flattering!

After receiving 36 applications in total, this ended up being one of the hardest decisions I've ever had to make, not only in the context of the developing this game, but really, ever! The decision actually ended up being so hard that I literally conducted informal interviews on my top picks which I never expected to happen. I'm so happy that I got the experience to do it though and getting to talk to some of the musicians was a lot of fun! Also, after sending some musicians the game in its current state, it was a lot of fun to see how they reacted to it and played it, especially with them being more musically inclined than some of my other testers.

In the end, I finally made a decision! So, it is with great pleasure that I give a congratulation to Craig S. Barnes, who will be doing the music for GODHOOD's first level!

Check out his music here!

With that said, things are going so fast now that, only having hired him about 9 days ago, we almost have a finalized song for the first level and oh my god, it is sounding so cool! As much as I'd love to show it off, we're still in the process of putting the final touches on it and there's not much point in showing it until it's perfectly ready to blow everyone away!

Again, this whole experience is starting to become surreal. For so long now, well before I started on this game, before I even went into computer science, I had dreamed of making a game with rhythm mechanics. Over the years, the story and even the genres have changed from time to time, but after so many years of dreaming about it, it's actually all right here in front of me. Even working on this game as just a solo experience, I have to admit that I didn't think I would ever make it this far. I figured that I would run out of time or money, or I just wouldn't have enough experience to create all of the code or the art, or maybe there would be some other unforeseen event that would kick me out of the project. Maybe a meteor would have come down and blew up my computer and bitbucket and I would have lost everything, I don't know! What I'm getting at is, I never thought I would get this close, but here I am!

What I'm building up to here though is unfortunately a little more in tune with reality: I'm not out of the woods yet, not even close.

I mentioned in my last post that I wanted to discuss the nature of my plans for the game over the coming months. Anyone who read the job posting might know where I'm going with this but basically, it boils down to this: I only have enough budget to create the first level of the game, and not even that. The only way this game can see completion is to do a kickstarter for it, and not a small one either.

Now, I know a lot of you guys are rolling your eyes right now, and with good reason. I am fully aware that as a first time dev with pretty much no following, my chances of success are paper thin. I've known this since I started on the whole project. Two years ago, I recorded a vlog on the day I started the project saying that I know that there are thousands of other people who have the same dream I do and that I really don't have that much to separate myself from them. I said the same thing when I joined TIGsource too. In any case, then, now and in the future, I've had one rebuttal to this:

It doesn't mean I can't try!

Sure, it may strike some as a little overconfident, maybe even arrogant, but I've come too close to quit now. I made my decision months ago that no matter what, before I run out of funds, I'm at least going to try to kickstart this game.

After spending a moment thinking about it, I almost think this topic could warrant it's own thread from all the questions I have, but I've been away from this community too long to have the gall to ask for help! Perhaps I will contribute a little bit before I do that, but I might as well give a quick rundown of my situation right now.

Cutting out the sob story, my plan is basically: spend the next three weeks working on the final touches of the first level and then put up a kickstarter for it around Dec 18th. Immediately, I know there's some red flags here, notably, the fact that I'm putting up a kickstarter just a few days before Christmas. The other option is to obviously wait until after Christmas to put up a kickstarter, which I only have time to do either in January or February and according to kickstarter's stats that might not go so well either.

Putting these factors together, basically what I'm starting to realize here is the only way a kickstarter in the next few months is going to succeed for me is if I make a project that completely blows people out of the water. And you know what... I actually kind of have high hopes.

I fully realize that perhaps I'm just seeing my project through rose tinted goggles, but I've spent a long time thinking about how I could set this up, and I'm really excited to try this out. Truth be told, I'm also completely mortified, but I can't deny that I can't wait for the time to come! I've been building up to this for so long now that I just want to see what happens.

The important thing is even if it fails, I'll still be happy. It'll mean that I have to unfortunately put this project on hiatus while I find work, but even then, I can't deny that I have learned so much just doing this project! I feel way more proficient at coding and having spent the past two months constantly drawing, my art skills have improved substantially (though they still have a long way to go yet), and I have a feeling that once I do kickstarter, I'll be learning a ton about business as well! On top of that, I have to admit, the last few months has taught me that being a solo indie dev is hard! I think it might be refreshing to find work elsewhere for a while!

Of course, I'd also be overjoyed if the kickstarter succeeded, but I think above all, it's important to be realistic!

Anyway, there's obviously a ton more facets to my plans with doing a kickstarter, but I've rambled on long enough about this topic. I just thought it might be important to get my thoughts down on paper, even if they're really boring and very very typical. To conclude things on a happier note, here is funny keyframe from one of the new animations I've added to the Ways

Logged
GekidoRising
Level 1
*



View Profile WWW
« Reply #57 on: November 29, 2015, 12:55:42 PM »

So! Now that we've got that dreary stuff out of the way, let's get back to the fun stuff!

Now that I've gotten the game into a state where it actually looks like a finished game (assuming you never dash, get hit or die because I haven't done colored those animations yet), it's finally time to get back to what I was doing before: adding things!

First up on the list: EXPLOSIONS! We've only had the one explosion for so long now that I was getting bored of it, so I decided it was time to add a little bit of variety to the attacks! Even better, seeing as I've already gone over the explosion mechanics, I can skip the boring stuff and go straight to the gifs!

Neutral Explosion:


Down + Forward Explosion:


Down Explosion:


Air Neutral Explosion:


Air Side Explosion:


By now, you're probably thinking, "Okay, okay, I get it, you point in a direction and things blow up! Is there anything more to it!?" I agree, it does seem rather boring that every single explosion is just a point and click blast, so I decided, why not have a little fun and implement a SPECIAL explosion:

Quarter Circle Forward Explosion:


Ohohohh, the smile on my face when I first tested this explosion! It's surprisingly tricky to input at first, trying to get the motion right while keeping up with beat. You have to sort of anticipate the note and do the motion in advance. Admittedly having a background with fighting games helps quite a bit as the quarter circle motion is a mainstay of special moves, but I digress!

The laser beam explosion! This thing HURTS! It hits for a total of four times, followed by another hit for big damage! It also has a massive range and great knockback! Now you're probably wondering, "That's cool and all, but what's stopping the player from doing that every time!" Well, honestly, not much right now, apart from the fact that your back is completely defenceless for two beats, which is plenty of time to get smacked. Besides that, I'm looking to add even more special explosions in the future of all different kinds, but I just wanted to test one quick for now.

Besides the explosions, a ton of other changes have been made. You may have guessed from the fact that there are aerial explosions that there are now aerial combos as well!



Attacking in the air gives you a little bit of upward momentum which I still might increase further yet! It was pretty funny actually as originally, the attacks gave you enough upward momentum that you could stay perfectly suspended in the air indefinitely if you kept attacking, but I thought that might come across as making the game a little too cheese-able. Still, it's there, and with the down + forward explosion, it's actually pretty fun to knock Ways up into the air and try and catch them in an air combo! The only issue with it right now is that it's actually really hard to start an air combo and follow the rhythm at the same time. It basically results in the player needing to perfectly calculate the timing of their jump so that they meet the enemy right when a beat is occurring and that is no simple task. I might need to do some game design magic for this to work out!

Anyway, to counteract all the time that the player could be spending in the air, I've added a way for the Ways to actually combat this! Introducing the jumping slash:



The fancy thing about this is that it calculates the trajectory required so that the Way can make the perfect jump to reach Riff, with a little deviation for some added fun. Currently, there is no upper limit to the speed at which the Way launches meaning that no matter what, the Way will always be able to reach Riff



No matter what.

On a more graphical note, I've made a huge overhaul on the post processing so now it is MUCH easier to see character silhouettes whenever an explosion is occurring. In a last minute test, I've also added a little bit of refraction to the actual explosions themselves to distort the silhouettes a little bit to give the illusion of heat!



I can't deny that I'm really digging the effect! There's still a little more that can be done, I feel, but I definitely like where this is going!

Finally, one of my FAVORITE features that I've added in the last two weeks! If a Way is caught in the epicenter of your explosive attack, this happens now:



Instead of playing a little dinky knock back animation, Ways are know completely blown away and will even bounce off the bounds of the level after they are hit. Let's take a closer look at this!



I am SO pleased with this new feature! I will admit that it might look a little odd seeing as, regarding the walls, they're literally bouncing off nothing, but with a proper camera, it should appear as though they are bouncing off the bounds of the camera! It's actually a massive change to the gameplay and it actually makes for a ton of fun! Every time you perform an explosive attack, it completely shuffles the enemies which, in itself, promotes explosion variety due to the enemies constantly repositioning! This wasn't even on my list of things that needed to be implemented but I'm super happy that I did, even if it did take me an entire day to put together. I'm even considering taking it even further, making it so that the enemies take damage when they bounce, or even knockback other enemies that they collide with! There's a lot that I can play around with here so I'm super happy that I did this!

And now that I have those things done... I'm actually pretty satisfied with the game in its current state! As always, there are a few things that I could touch up, make the explosions a little more impactful yet and maybe even add in some more post processing goodies and above all, tweak the Will's AI a little more, but in terms of gameplay, I think I actually have enough to demonstrate the game's mechanics!

So, now that I'm satisfied with the game's mechanics, that only leaves one big thing:

Story!

After months and months of drawing character art and animation, it's time to sit down and draw EVEN MORE art! With only a few weeks before the proposed kickstarter date, I still have yet to decide what the most time-efficient way to express the story is. As much as I'd like to make the cutscenes I had originally planned, that might not be in the cards given how long it could take. I'm probably going to do up some quick scenes just to demonstrate how they work, but for expressing the whole story, I'll have to find some other way. I'm not entirely decided quite yet how I want to do it so I think I'll leave that for my next update to decide!

As usual though, I'd like to conclude this post with an obligitory link to the video in which you can catch all of the updates in this post in video form!



If there was ever a part of the series that I would recommend watching, it would be 9:50 of that video!
« Last Edit: November 29, 2015, 01:33:00 PM by GekidoRising » Logged
GekidoRising
Level 1
*



View Profile WWW
« Reply #58 on: December 31, 2015, 03:33:51 PM »

I RETURN!!!... AGAIN

I think I've already made a joke about descending into the depths of hell and then crawling back out a changed man but oh dear god, do I return. I return with a completed cutscene!

Having spent so much time on this, I'm about ready to collapse in my chair just writing about it, so for that reason, I'll keep things quick! Funnily enough, I was so busy working on the cutscene that I barely had any time to record it and I ended up doing a post commentary of it instead. I was actually going to link it as a substitute for this devlog post, but would you look at that, the episode ended up being just as long as any other episode lol

Anyway, enough of the rambling and on with the updates!

From the top, I had to make a decision eventually on what kind of cutscene I wanted to do. I had two choices; either I could go with my original intention, a super low keyframed animation (we're talking one frame every few seconds), or I could go with the easier method, a series of comic pages. The low keyframe animation would definitely take longer because it involved a lot more full body, higher detail shots, but it was my plan from the start and if I did it fast enough and had enough money, I could have put some funds towards getting a few sample lines voice acted, just to see how it looked and sounded. The comic would have been much quicker (at least I think it would have been) to draw, and it had the advantage of being able to survive completely without voice acting.

In the end, I actually chose the keyframed animation for one simple reason: once I have it finished, I could just convert to a comic after the fact if need be!

So, with that decision made, it was time to start drawing! Before I could even get started on the final art, I felt it was important to have an idea of where I was going, so I decided to get started on some story boards for the cutscene! Now, since I'm not exactly a master artist or a speed drawer, I figured the best way to get my ideas out on paper (or the computer screen I guess, whatever) was to basically draw it as sketchily and quickly as possible.

The result is that the entire story board looks like this:



Not what I would call my finest work but at least some of the pictures were a good laugh! It turns out actually that drawing these was actually one of the most important, hardest parts of developing the cutscene due to it pretty much being the planning phase of all of the composition, framing and other miscellaneous things that need to be determined. It only took me about a day combined to draw the whole story board but by the end I was exhausted!

So, with the story board out of the way, it was finally time to start drawing out the characters. So I drew...



and I drew...



and I drew.....



This isn't even all of the drawings. There's still a whole bunch of other shots that didn't really atlas well, plus there's a whole ton of custom backgrounds too which is actually an unfortunate product of me being really lazy, but we'll not get too deep into that.

In the end, a grand total of 108 characters were drawn as well as 15 backgrounds (most of which are modified screenshots from within the game itself). And every single shot is scaled to 1440p in game. The result is a lot of 4Kx4K textures which unfortunately take a lot longer to load. I'm considering making a system that dynamically loads different textures based on your resolution, but for now, this will do.

Now, as to how the actually cutscene is constructed, I'm pretty sure I've already gone over that in another one of my posts probably about a page ago or so. To reiterate, the cutscene basically uses the Stage architecture (as in the same thing that the backdrop of the actual game runs on) by having every single frame of animation in a unique stage, and then hot swapping these stages to convey the animation. Obviously, this would become absolutely ridiculous if you had any reasonable amount of animation frames, but since my game is super low keyframe, it doesn't present itself as too much of a problem!

I don't want to get too deep into the trials and tribulations of assembling the cutscene, but it was definitely an interesting experience. Definitely my favorite part of it was actually determining how long the subtitles should display for. How is that fun you ask? Easy! I did it by voice acting it all myself :D Honestly, even if I do have the nerdiest voice ever, it was tons of fun! Storytelling is something I have so much fun with and really, it's nice to get the chance to do it again!

Finally, with the cutscene fully assembled, the total running time for the cutscene ended up being 5 minutes, 10 seconds! I honestly can't believe it ended up being that long! I was expecting it to only be possibly a minute or two but voice acting included, it's a full five minutes!

Anyway, I've spent so much time rambling on about the technicals that I haven't even touched the story yet! You'd think at some point, I'd talk about the plot and I'm getting there, I swear, but there's actually one more hugely important thing that's happened over this past month. What's that you ask?

The music is in the game!

It's finally happened! I've put the 10 second drum loop to rest and I've finally implemented Craig's music into the game and oh my good lord, it...

you know, I should probably just show you it, shouldn't I?

Before I do though, as to GODHOOD's story, you've got two options for how you can experience it! First, as I mentioned earlier in this post, the advantage of doing a cutscene the way I did is that I can convert it into comic form which is exactly what I'm in the process of doing. For now, this might actually be the desired way to read it for now seeing as it I can make it much more presentable! Unfortunately, it does still require work and since I was so busy making the cutscene, I only got around to whipping up the first two pages:



Now that I have the cutscene finished, I'm slated to publish a bunch more of these!

The other option is that I can just show you the entire cutscene as it currently stands! It's a little rough around the edges but it at least features the music that the game is so centered around! Before I link it, I must warn, the cutscene has NO voice acting and very VERY few sound effects, so I like to describe it as deafeningly silent when there's no music playing. There is a video somewhere hidden somewhere else that actually does have my narration, but I could barely even listen to it due to how overtly nerdy it was. That aside, please enjoy the first draft of GODHOOD's first cutscene as well as some early alpha gameplay!



Okay, so I maybe I built up to it a little more dramatically than I should have. Again, this is the first draft cutscene and early alpha gameplay so there's still a ton that needs to happen yet before I can say I'm truly satisfied, but really, I can't deny that I'm so happy to see this even in it's current state. Every day, I get a little farther, and I only grow more surprised that I've actually managed to get there!

Anyway, as mentioned earlier in the post, this wouldn't be a GODHOOD post if I didn't link an obligatory devlog video with it! This time it's a post commentary so things are done a little differently!

Logged
GekidoRising
Level 1
*



View Profile WWW
« Reply #59 on: February 15, 2016, 03:08:35 PM »

IT'S HAPPENING!!!

For a month and a half, I thought that I was going to need to pack this thing in and put it on hiatus. I guess being gone for like a month and a half, that's pretty much exactly what I did, but I figured it might need to be something even longer, something on the magnitude of years.

But if there was ever a time for me to say that I HAVE RETURNED, it would be now (even though that's literally what I did for the past two posts)

A little back story, I figured that for the past month, I would try and find another way to generate funds. I decided I would give freelance art commissions a whirl and unsurprisingly, that turned out not to be so viable. After that, I figured that since there were no quick contracts around to pick up that it would be time for me to get a job. Before I was settled, I figured I would try one final avenue; friends and family! Long story short, after one week and one 22 page business plan, I was able to accrue some investments from some relatives of mine which leads to this:

I've got 5 weeks (4 weeks now) to polish this game as much as possible before taking it to Kickstarter! No matter what happens, I'm so thankful to finally be back on the horse and I want to give a huge shoutout to my friends and family that have supported me! No matter what happens, I'll finally get to see this project to the end, or as the case may be, the beginning!

Now instead of snowballing into a big ramble about all my kickstarter plans, I think I'll keep that stuff a surprise for now! Instead, let's quickly very slowly talk about the two things I've added to the game this week: Depth of Field and Shadows!


Depth of Field

This feature was a request from my roommate regarding a certain section of the cutscene he found quite jarring, seen here:



It does look a little bit janky, indeed. I didn't want to add transition frames because the truth is; I cheated. The blurry sprites are literally just baked textures that were already blurry to begin with. They're just swapped with the focused sprites to give the very very sudden illusion of switching focus. Unfortunately, this didn't fly so well so it had to change!

So, step 1 of Depth of Field: rendering out the depth buffer onto a texture. This texture is required to know how far or how close each pixel is to the camera! Sadly, I ran into a surprising amount of problems doing this, part of which were just some oopsy-daisy bugs while others are still some unsolved mysteries.

One unsolved mystery is the fact that when I finally managed to get it working, whenever I rendered it to the screen, it looked like this:



Every piece of documentation I've read says that the version of GLSL shaders that I'm running should render it out as black and white, but for me, all the depth only went into the red. No matter, just a quick fix in the shader and we're good to go:

Code:
PixelColor = vec4(color.r, color.r, color.r, 1.0);



Great, so now we've got our properly colored depth texture, but it's at this point that I learn that there's one massive caveat with the depth buffer texture:



See that rectangle?

That's a lamp

After all this effort spent getting the depth texture to work, I completely forgot that the depth buffer doesn't actually respect texture transparency. If we tried to use this depth texture for our depth of field shader and tried to focus on said 'lamp', instead of focusing on the lamp, we would be focusing on a square surrounding the lamp because the depth buffer thinks something is there!

So what's the solution?

Once again, we cheat.



Theeeere we go, that looks much better right? Now how did I pull this one off? Easy: We literally draw the entire scene again except with a shader that outputs the object's z value instead of its color. Literally the entire scene needs to get drawn again using these shaders which, I'm pretty sure, brings the scene up to a total of three renders, one for the normal colors, one for the bloom textures, and now a new one to output depth. I kind of wish I could think of a better way to do it, but all my other ideas (rendering the depth to a separate color attachment (which unfortunately really throws a wrench into my current setup)) are starting to get pretty complicated.

At least the depth of field is really easy to turn off if you don't want it and the game still runs at 60 fps on my machine at least. Still definitely needs testing elsewhere though!

Anyway, now that we've finally got the depth texture in place, we just need to apply the blur! This part turned out much quicker because admittedly I used a moderately modified version of a wonderful online resource that basically worked right out of the box!

Here's the result for the cutscene:



And here's how the effect turned out in game!





Shadows

Shadows, I'll admit, were a hell of a beast to tackle and I'm not referring to the Ways, hyuk hyuk, mainly because I actually had no idea how I was going to pull shadows off! In school, we had only learned about stencil shadows and had the option of doing a paper on more complex algorithms which I had foregone in favor of doing a paper on water rendering (AND LOOK WHERE THAT GOT ME).

After searching online for algorithms for making shadows of 2D sprites, turns out that there's not much documentation on it! Apparently 2D sprite shadows isn't even something that Unity has as far as I've searched! So, without any documentation online, what's the best option?

Create my own shadow algorithm!

Now I've had a bad track record of trying to explain how this works in my videos, so instead, I've whipped up some not-so-quick diagrams!

The first two spell it out pretty easy:




The shadow system I created is basically projected textures. Basically, we raytrace from the sun, past the player, onto a plane which receives the shadow. From this, we get the vertices of the shadow and then render it out using a different material.

The system can improved by adding more planes to render on, as shown here:



Now obviously, that doesn't look right at all, so to fix this, we clip off the parts of the shadows that are rendering past the bounds of a given plane, which results in this:



In the end, here is how it looks in game, in combination with the depth of field:



Also, here's a shot of how it looks maneuvering over different planes:



There are unfortunately still a few bugs with it regarding shadows rendering on multiple planes even when one obstructs the other as well as the shadow rendering right next to the active car fire, but those are actually require the player to get into some pretty odd positions, so for now, I'm totally fine with how it looks!



Anyway, if you've been reading through this whole thread, you've seen me do enough speels about how thrilled I am to be doing this, but I have to say that I'm especially excited to be back to doing this knowing how close I was to giving up!

Oh, and it wouldn't be a devlog without an obligatory development video! And would you look at that, it looks like since I've been here, tigsource has implemented youtube embedding so that definitely saves me some work!



Logged
Pages: 1 2 [3] 4 5
Print
Jump to:  

Theme orange-lt created by panic