Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411679 Posts in 69399 Topics- by 58453 Members - Latest Member: Arktitus

May 17, 2024, 10:00:53 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsBlackfaun - creating a shockwave effect in Unity
Pages: 1 [2]
Print
Author Topic: Blackfaun - creating a shockwave effect in Unity  (Read 11602 times)
tfmcmahon
Level 0
**



View Profile WWW
« Reply #20 on: January 11, 2015, 01:37:12 PM »

No prob, Rebusmind. Different strokes for different folks.  Thanks for checking it out! Smiley
Logged

rek
Level 7
**


View Profile
« Reply #21 on: January 14, 2015, 12:01:16 PM »

Hey, just noticed this devlog for the first time.

I really like your character design style, but I don't think it's coming through in the in-game footage shown. The dark backgrounds and bloom effects blurs their silhouettes.
Logged
tfmcmahon
Level 0
**



View Profile WWW
« Reply #22 on: January 14, 2015, 12:20:46 PM »

Thanks, rek.

The silhouettes definitely pop really well in the gifs. The dark on white affords some high contrast, I see what you're saying. In game I'm attempting to pop the characters off the background by making them lighter and the backgrounds darker ... hmm, maybe that's folly - maybe I need to make the character lighter on the texture side.  Also, interesting note about the bloom, I'll revisit and see if I can't get the characters to read better.
Logged

rek
Level 7
**


View Profile
« Reply #23 on: January 16, 2015, 12:32:53 PM »

Scrolling back up I see what you mean about the brighter colours on characters, but they tend to have a brighter patch (hair or arms, for example) on a body that's dark overall. In the gif of the faun hitting a blue four-armed baddie, the only way to tell the baddie has legs is the red status outline. I'm not sure what to suggest though, because some of that darkness (i.e. lower body) seems to come from the lighting direction rather than colour choice.
Logged
xfry
Level 0
**


JavaScripter, C# Developer, The world is realy 2D


View Profile WWW
« Reply #24 on: January 16, 2015, 07:40:43 PM »

OMG The models, and the use of color is so amazing, this art remember me TorchLight, you are doing an amazing work!  Hand Thumbs Up Right
Logged

Success is not the end of your goals ... Be the beginning of your triumph
tfmcmahon
Level 0
**



View Profile WWW
« Reply #25 on: January 17, 2015, 08:42:14 AM »

xfry - Thanks!! Funny enough, I haven't actually played any of the games in that series. I need to check it out.



Quick boss update -- this guy is called Boulderscale Wum (working). I've only got his idle and spawn loops here since his animation set is really segmented (har har Well, hello there!) since he'll be above and below ground a lot!

This character was one of the more recent models and he kind of pushes the arbitrary limit on scariness/gore that we set for ourselves. I guess as time goes on I'm getting a little bit more lax.


Logged

marcgfx
Level 8
***


if you don't comment, who will?


View Profile WWW
« Reply #26 on: January 17, 2015, 06:26:45 PM »

the art is overall fantastic and i really like that new worm! I saw one tiny thing that kind of seemed wrong: the transition between the wolfs head and neck while walking. the head is nearly motionless while the neck has quite a lot of movement. great job guys.
Logged

tfmcmahon
Level 0
**



View Profile WWW
« Reply #27 on: January 24, 2015, 09:29:51 AM »

Hey marc, thanks for the note - I think my weighting isn't helping the animation as the transition is abrupt from the neck to the head as you say.  I'll add it to the list Smiley



Here's the other half of that palette swap I mentioned earlier when talking about the Goblin Brute. This guy was the original mesh and skeleton for the setup so the animations work more smoothly with him.

The palette swap is beneficial in a couple of ways. First, since a new suite of animations isn't needed when creating the second character, it helps save our small team precious time. It nets us something like 20-25 working hours of animation. Second, from a design perspective, it creates enemy behavior continuity between tilesets.  It's our hope that players will be better prepared to deal with more difficult enemies when they share some of the same movement and attack patterns as previously encountered foes.

This isn't to say that they are exactly the same.  The beast uses has a few extra attacks up it's sleeve to shake things up. Check out the animations (left to right: Idle, Walk, Run, Pain Roar!, Boulder toss! (Boulder sold separately))


Logged

tfmcmahon
Level 0
**



View Profile WWW
« Reply #28 on: February 15, 2015, 06:45:49 AM »

Sorry for the lack of updates in the past few weeks. I've been insanely busy getting ready for PAX - working on the build, the trailer, laying out our Greenlight page, merchandise creation, and sorting through press info.  Coffee

The plan is the launch our Greenlight page, demo, and trailer just before PAX for (hopefully) the most hype we can get. We're planning to do all of that the week of the 23rd.  So I'll have a demo link up pretty shortly!

We ended up cutting the scope of the demo, leaving off the last tileset we had planned to include. Leading up to that decision we were really unsure about what to do, but a few weeks removed from talking through it and I think we made the right choice. We were trying to get too much finished in not enough time and on top of that we were including more than half of the game in the demo.

Anyway here are some pics from the boothcrafting process:




We'll be in booth 11173, some say hi! Fingers crossed! Wish us luck!

I'll sign off with the track for our temple environment, composed by the very talented Varien.



(No YT embedding on TIG?)
Logged

tfmcmahon
Level 0
**



View Profile WWW
« Reply #29 on: February 26, 2015, 08:46:48 AM »

Big updates: Demo + Trailer + Greenlight

Demo!! PC | Mac - Tell me what you think!







@rek - I toned down some of image effects and gave the enemies a kicker light in the latest build.  Hopefully that helps with the silhouette issues you brought up.
Logged

tfmcmahon
Level 0
**



View Profile WWW
« Reply #30 on: March 15, 2015, 11:12:34 AM »

Post PAX write-up

I’m going to treat this as more of a summary of our experience at the conference rather than a Do’s and Don’ts article. There are plenty of great resources around for that. Jamie Sanchez also has a great survival guide here.

Coming off of a hectic two weeks leading up to PAX — which consisted of putting the finishing touches on our announcement trailer and launching our Greenlight campaign — we were slated to arrive in Boston early on Thursday the 5th so that we'd have all day until 5PM to set-up. Sticking with the sibling theme of our game, Paul enlisted the help of his brother, Matt, and I asked my brother Colin to come out. Rounding out the booth team was my wife, Risa (who also wrote the dialogue for the game). The five of us were excited to meet up in Boston to spend some time together and to (wo)man the booth (thanks guys, couldn’t have done it without you!). The night of the 4th, all of our flights were cancelled due to weather! The DC guys (Paul and Matt) were notified that the fee for changing or canceling flights would be waived, so they ended up taking a red-eye train to Boston, whew. The Chicago crew -- Tim, Risa, and Colin -- weren’t so lucky, their 6AM flight was changed to 12PM, which was then delayed until 4PM. On the bright side, all that extra terminal time allowed us to meet and chat with some friendly folks also headed to PAX. One of the guys tweeted to JetBlue which resulted in them sending us some flight vouchers.

Anyway, I’m writing about the flight delays because the convention hall exhibitor set-up hours ended at 5PM on Thursday and the hall wasn't supposed to open up again until Friday an hour before the show, and only for touch-ups! Oh sh--! When the Chicago group arrived in Boston at maximum stress level, we soon found out that the convention center was not adhering to the 5PM closing time and we soon found out why: When we got to the MCCA at around 8PM, the exhibition hall was no where close to being finished! There were crews at a lot of the bigger booths still putting together large fixtures. Bullet dodged! So, the five of us got down to business and set up our booth, verified that all of our electronics were good to go, then headed out to check-in to our hotel rooms and grab a late dinner. We got a short night’s sleep after all was said and done (I know I could hardly sleep - I was bursting with excitement for the show to start!) and we got up early on Friday to get things going!


Here we are setting up and testing on Thursday night

Our booth layout came together nicely on Thursday night. In the months leading up to PAX, I had put together a few diagrams (dungeon master style) which helped us figure out what signage to order. We had heard a lot of advice suggesting we prototype the booth beforehand, which we did, so we had a good idea of how much space things would take up. But at the end of the day, there was no substitute for being in the booth space with all our materials. The one thing we couldn’t account for was the crowd flow, both inside the booth and the aisle just outside of it. We made our best guess at which way the crowd would be coming from and set up our play-monitors accordingly. We ended up being wrong about the direction of Friday's crowd flow, so we rearranged our booth set up slightly on Saturday morning. In the end, without a large screen high up, it’s hard to say how much it mattered for us.


One of the planning layouts Tim did, which is pretty close to how we ended up

An aside for booth crafting — the signage seemed successful, lots of folks mentioned they checked out the booth because of the art, which was a great feeling. Having had previous exhibitor experience where the team ran our of postcards, I ordered 2000 postcards, which, upon arrival seemed like WAY too many. But hey, better to have too many than to run out, right? Turned out, by the end of Sunday we had given out almost all of the postcards, which was awesome. The back of the postcards had a bit of info and some of our character artwork -- I think having the demo posted to our website and the URL on the back of the postcards helped a lot with people grabbing one. One failure we had was ordering way, way too many buttons/pins. This was a combination of a few things: 1) we didn’t give them our freely enough at first because we were limiting them to people who signed up for the mailing list, but we realized at the end of the conference when we had tons of pins left that "rationing" them was a mistake. 2) We got what we paid for from a quality standpoint. The original pin art, although intentionally dark, had distinct background colors for each character. The final pins ended up all looking the same so it was hard to tell at a glance that there were four different designs. We also had a handful that shipped broken. Lesson learned. Finally, the custom dice were a big hit— props to Paul for coming up with that idea. It goes pretty well with the name of our company, Wild Guess, and we’ll definitely be getting more custom dice for future evens.

On to the show!


Here we are, ready to go

Our booth was full throughout the exhibition hours each of the three days. We had butts in seats for almost the entire show. What a great feeling! One thing I’ll say to start off about being in the booth is that the “pitch” will come naturally. It’ll take a few hours to refine it to a sharp point, but I found myself comfortable and eased in by midday on Friday. I knew exactly what points to hit when people walked up to the booth. I'd also note that every member of the team described the game slightly differently, in their own words. So if you’re stressing about how to explain your game in just the right way I’d say don’t worry about it, try to let it come naturally.


Tim describing the game to some gamers

Much to our relief, it was okay to have an alpha to show people. We were a little worried that people would not have patience for an incomplete build. One of our goals at PAX was to see if we had a fun game for people to play. We knew we had fun internally, but we needed proof that other people liked it. We found that people were not just willing, but enthusiastic about playing the demo. With a low barrier to entry (no download and the game running) everyone gave it a shot.


A crowded booth

One thing that came from this is that people have different tolerances for polish level. A few gamers said that the build was “incredibly smooth” which was shockingly great to hear! Others were justifiably quick to point out bugs. It was nice to see a varied level of appreciation for the state of the build. When you work on the game constantly, sometimes the flaws and unfinished things start to become the only thing you see in the game.

We are very appreciative of the press that we got throughout the show. However, I should note that the alpha build doesn’t necessarily work well for all press. We got a lot of requests to resend the game when we are finished. Some people don’t want to cover unfinished games, which is understandable. One place we seemed to get some unexpected attention was from Twitch streamers, which is great! Hopefully we can work with some of them down the road closer to release!

It was really nice to get the game in front of the player base. We got tons of awesome real-time feedback. A few examples:

  • The player level-up effect was unclear to most people — We anticipated this, but wanted to give it a shot in the real world. We were a little weary of adding over the top, annoying reminder effects. Luckily, we got a sweet idea from another dev on how to handle it which we’re working on implementing. The idea is to have some visuals that emanate from the player that travel down to our stat ring the first time the player levels up (or when they have multiple levels stored). An elegant way to explain what’s happening. Genius!
  • People expected the offhand to do damage — We’re really trying to push our offhand mechanic (mana burst push) as we feel it’s a unique mechanic in our game. As a result players would use it often after we explained it (awesome!) but we found that players were expecting it to do damage, weaken enemies, or something else. Although later items buff the mana burst significantly, we are designing ways to make the mana burst as immediately rewarding as possible.
  • Consumables need more visual oomph — Some players were skipping over consumables because they were unaware of them. Unfortunately, players would sometimes leave health pickups behind which is definitely not intended. To remedy this, we’re increasing the size of consumables and adding some periodic idle animations to them.
  • Numerous bugs we were unaware of — One highlight was that our level manager was not resetting between playthroughs. For instance, if one player made it to level 1-3 and then died, the next player would start from scratch on level 1-3. Needless to say this made the game overly difficult for those runs! Whoops!



A nice, long play session which yielded some good feedback

Overall we had a blast at PAX. It was a great time and we are planning to do it again for launch. The amount of love we received from people was awesome. Special shout out to all of our pre-orders! Thank you!! The sheer amount of gamers that came out to try out indie games was really incredible. PAX seemed to really get the word out on the game nicely. We’re now the top Google result when searching for “Blackfaun” (unless Google is playing tricks on me) and we were also Greenlit shortly after we arrived home. So exciting! And, now we just to finish this thing …
Logged

tfmcmahon
Level 0
**



View Profile WWW
« Reply #31 on: March 28, 2015, 06:17:44 AM »

Here's our first Palace enemy - a Lamia (working name). She'll cast frenzy on other enemies and resurrect fallen friends. I'm trying out smaller gifs this time around, hopefully future pages will load a little quicker!



Idle and walk animations!
Logged

tfmcmahon
Level 0
**



View Profile WWW
« Reply #32 on: September 28, 2015, 08:09:30 AM »

Hey everyone -

We hope you all have been having a great summer! It's been a little while since we've had a blog post, here's what we've been up to:

It’s been 6 months since PAX East, and it feels like it’s only been half that time. We’ve been burning up our keyboards getting Blackfaun closer and closer to completion. We’re doing our very best to stay on track to our previously stated release of the end of 2015, and we’re still pretty close to the target, if not slightly off.

•Equipment The plan for equipment is to have about 100 total items, which comes out to about 20 items per slot (head, chest, weapon, offhand, jewelry). Our process looks like this: First we sit down and roughly design everything (we got a crap ton of great item ideas while at PAX East, thanks to everyone who gave input and suggestions). Then all of the art gets created for each item— 3D asset, inventory icon, visual effects if necessary, GUI icons for weapons and offhands. After that, we do a first pass implementation and do some quick testing and tweaking to make sure that things are functioning on a basic level. Once we are happy with the basics, we gather up a big batch and send it off to our sound designer. As it stands we’re about halfway through implementing the equipment.

We’ve been mostly up to date tweeting the inventory icons, here’s a selection:






•Palace environment Our fourth and final tile set, which we're calling the Court of Thorns, has been implemented! Tile sets have a different process: first we decide on a theme, which we use our plot outline to help create. After we have the basics, we determine what we want the map generator to look like. In this case, we wanted more structured, large shapes that are then divided into smaller rooms. From there it’s a lot of artwork — reference gathering, sketches, color palette, then on to 3D asset creation.
Once we have all of our art assets, they are assembled into prefabs so that they can be slotted into the map generator. At that point, the map generator is refined while the lighting and mood are established via VFX and image processing.
here are some screen shots:






(Woohoo, we’re content complete on our environments!)



•Palace enemies Every environment needs inhabitants! Here our process is very similar to the equipment pipeline: Mechanics are designed — we try to get a cohesive set of enemy mechanics that will live together in a single environment, whether the enemies are in homogenous packs or if they come in mixed groups. From here, 3D assets are made, then rigged, then sent off to an animator, then VFX are created, and finally turned into prefabs in unity. Now it’s Paul’s turn, he takes it from there doing AI, pathfinding, spells, spawning, etc.

Enemies are (unsurprisingly) one of most time consuming parts of development. But we’ve completed all of the regular enemies, self high-fives!

Here are a few shots of the palace enemies:





     

•Talismans Talismans! Our favorite. The talismans are the glue that binds all of your playthroughs together. We knew we needed some way to apply progress and unlocks to your subsequent playthroughs, but we weren't quite sure how to do it at the time - we landed on Talismans.

Here’s how they work: Enemies have a chance to drop a talisman, each enemy has a talisman that is unique to it. For instance, the Lyrewolves drop the Lyrewolf talisman, Stoneblade Grunts drop the Stoneblade Grunt talisman and so forth. These talismans will then be waiting for you to equip before you start a new game. You’ll have three talisman slots to work with. Talismans will provide passive buffs and stat increases when equipped.

Here are a set of talisman examples (Stat modifiers have been left off for clarity):

Lyrewolf — When you attack, you have a chance to release a fearsome howl. The howl fears nearby enemies for 3 seconds
Stoneblade Grunt — Increases your sprint speed by 25%
Stonebeak Hydra — Enemies that have 3 or more debuffs die instantly

We also have plans to implement a random button, so when players have unlocked everything they can do random talisman runs for zaniness.



Updated inventory page with talisman slots:



We’re art-complete on the talismans and working our way through implementing them in-game.

•Bosses Very similar to enemies but with more complexity! This is the largest of our remaining tasks. We’re a little over halfway done. We’ll be tweeting out boss animations for Screen Shot Saturday, so look out for those.

•Writing What’s a world without plot dialog and flavor text? As Tim nears art completion, he’ll shift over to writing all of the flavor text for each item. Meanwhile, we’ve recruited a sweet guest writer to do all of our dialog. She’s been working with us all along and has done a kick-ass job so far so we’re excited work on the rest with her.

•Misc Lastly, we’ve implemented a lot of miscellaneous things that we discovered through play testing. Here are a few highlights:

•Hallway wisps: We got a lot of feedback about hallways being uninteresting. Our original intention for the hallways was to build in pacing to the game — so that the player could get a quick break before the next room full of baddies. We do agree that we need something in the hallways to make it more interesting. We ended up adding wisps. Wisps appear in hallways, think of them as pac-man food, as you collect them, they have a chance to give you a permanent stat increase. Various items boost wisp bonuses as well.

•Sprint: This ties in with the wisps, we wanted to make backtracking as well as general movement quicker. It’s a pretty straight forward mechanic - hold shift to run. Sprint consumes one mana globe to activate and drains globes slowly over time. In addition, we want sprint to be a travel mechanic so the player can’t attack while sprinting (look out for items and talismans that change your sprint).

•Consumables: We noticed through testing that some players were missing consumables which was ... a problem. To fix this, we added animations and increased the size and VFX of consumables. A minor change on paper, but this really added a lot of life to the world with the new animations - they really add a nice layer of secondary action to the game.



Be back soon with a Palace post.
Logged

tfmcmahon
Level 0
**



View Profile WWW
« Reply #33 on: January 11, 2016, 09:08:34 AM »

TL;DR: We've launched on Early Access!! It's going ... okay!

 It’s been a little while since I last posted, lots of exciting stuff has been happening. We reached a huge milestone in December, we launched Blackfaun on Early Access! The learning process has been like drinking from a firehose — hard to parse everything and often overwhelming. This post is going to focus on our Early Access experience, later on I’ll get back to in-game content. Also, if you could pardon me in advance for switching between the pronouns “I” and “we” throughout, as some of this is my feelings and some of it is our team efforts.



Lead in



 To briefly bridge the gap from my previous post to now: after a short trip through Greenlight (yay!), the many months that lead up to Early Access were filled with frenzied development. With a light at the end of the tunnel, we put our heads down and worked towards finishing the game.

 I've (obviously) been lackluster with posting about the project, both here and on other portals. This has been for a combination of reasons, but admittedly, it's been mostly because the game hasn't been as successful in gaining traction here and in other places. For me, silence is tough to deal with in a similar but different way to negative feedback. Who knew crickets were so powerful? But, as previously noted, we were fortunate enough to blaze through Greenlight which led to me think that our audience existed on Steam itself, rather than elsewhere. So I sort of thought to myself, “Case closed, everything we need is right there on Steam — let’s just focus on our storefront!” In hindsight, not a great line of thinking.

 In all honesty, I’ve been sort of hiding from our other public facing stuff, because, well, it’s hard to put yourself out there and all this social media stuff just doesn’t come naturally to me. I’m more comfortable toiling away behind the scenes. Anyway, it’s a new year and a great time to reflect on the past 12 months and think about how I can do better. I realized that I owe it to my team, our fans, and myself to give it my best effort to talk about the game in a public manner. Onwards and upwards.



Early Access



 After PAX East (March, 2015) we set an internal launch deadline for ourselves of October 2015. We picked October because our hard launch date was “end of 2015” (a very generous date when we set it earlier in the year), at the time we felt an October date would help keep ourselves on track to hit our end goal of finishing the game in 2015. We also wanted to honor the promise we made to our PAX East pre-orderers and get them an official copy of the game by the end of the year. Luckily, we didn’t post the October estimate publicly - we have learned the lesson many times over that development just takes a lot longer than you think it will. However, once we sold those pre-orders, we became officially accountable to deliver something in 2015, and we’re really grateful for that motivation!

 Anyway, October came and went, yielding to an early December Early Access launch. We settled on early December because we wanted to get the game out before the holiday rush knowing that we wouldn’t stand a chance during Game of the Year season. Little did we know that this was pretty poor timing as the holiday season essentially starts during the last week of November, or so it seems (spoiler alert: we did not have a great Early Access launch). In hindsight I think I'd chose around now, mid January, as an Early Access launch date. However, I’m not sure if we would have fared any better launching at another time. Let me explain our thoughts about whether or not to use Early Access and how each thought played out in practice. It had been hotly debated internally whether we should even do it:

  • Pro: Get the game in the hands of a wider testing audience. This was the biggest selling point for me personally. It turns out that paying customers are a lot more vocal. This has been great. We’ve received a huge amount of actionable feedback that, up until Early Access, we've been desperate for. We’ve made several changes to the game that (we think) have made it a lot more fun, which I've posted about on our Steam annoucement board. Basically, we're squeezing the content into a smaller package so that the game can be experienced at a swifter pace. We're also working towards making the game more challenging overall.

  • 


  • Pro: Gauge interest of the project from our Steam audience. We’ve found that the people that try the game generally like it. We have decent review numbers on our store page and the comments on our discussion boards are pretty good. The flip side of that is that it appears so far that the game is not for everyone, and perhaps it only appeals to a narrow audience. I don’t have a lot more to say on this topic yet, as I’d be mostly guessing.

     All along I’ve known that this project is first and foremost a hobby, something that I enjoy spending my free time on, something to learn from. Blackfaun has been that, but I would be lying if I said that I don’t care if the game fails - I do seek the approval of … other gamers? It feels weird to type that but here I am.

  • 


  • Con: Risk the chance to make a strong first impression by releasing an unfinished game. My biggest fear! As the artist on the project, things would be out of my control in terms of being able to address issues when they arise. This turned out to be wrong, we have had bugs - game breaking ones even - and we hear about them right away and can prioritize them. To me, this has really been the heart of Early Access. Interacting with people that want to help shape how the game is made. The suggestions we have received have been great. It’s awesome when someone else thinks about your game. It’s like a weird feeling of camaraderie, I can’t explain it. Going through this process for a month now has helped me to be a little bit more relaxed about things.



 So here we are, a month in to Early Access, and we’re working hard to make the game the best it can be. A couple more miscellaneous thoughts before I close out:



 1) The short description of the game is important, people read it and make purchasing decisions from it. We initially started things out branding our game as an ARPG - we thought (think) that Blackfaun is one part ARPG and one part roguelike, so that’d make us “an ARPG with roguelike elements” or “a roguelike with RPG elements”. Turns out the latter is a more important identifier than the former. We attracted a few players that were interested in playing a more standard ARPG and got some negative feedback about the perma-death aspect  – they felt misled by the description. We have a negative review to show for it, unfortunately. I’m chalking this one up to growing pains. In that past, when people sat down to play the game at our booth at PAX, if they didn’t like that the perma-death, they would just leave. As dying was a natural stopping point and we had a crowded booth, we weren’t interviewing players that had a bad experience when they were finished - after all, how could we? It wasn’t like people would say, “Your game has perma-death! I was mislead!”



 In retrospect, early on when we submitted Blackfaun to contests, we received some comments asking why the game has perma-death. This was a confusing critique, sort of like asking why a game has platforms. The answer seemed obvious to us (because that’s what kind of game we are making: A short, replayable, challenging one). Long story short, we’ve switched to branding the game as a “roguelike with RPG elements” which will hopefully clear things up for prospective players.



2) The amount of scam emails that come through when you launch on Steam is incredible. It’s hard to imagine until you are confronted with the huge volume of emails. A big thanks to Vlambeer for making distribute(). It’s been a huge help in dealing with that stuff.

 3) I’m trying to keep in mind the words of General Custer, “It’s not how many times you get knocked down that count, it’s how many times you get back up.”


Note: I’ve cleared out some of the image clutter on the OP so that the page load time is a little faster.
« Last Edit: January 11, 2016, 09:26:05 AM by tfmcmahon » Logged

TitoOliveira
Level 2
**



View Profile WWW
« Reply #34 on: January 11, 2016, 09:17:07 AM »

Nice thread.
The game is looking pretty good and i really enjoy how much you talk abou the things that are going on.
Logged


tfmcmahon
Level 0
**



View Profile WWW
« Reply #35 on: January 13, 2016, 10:33:17 AM »

 In this entry I’ll do a walkthrough of creating a particle system using an animated sprite in Unity. I’ll go through using a 3D package - in this case Modo - to create a short animation using basic dynamics, and then import and apply the sprite sheet in Unity. 

 First, a quick explanation of the upcoming boss character for reference: The Relic Guardian - a static boss that the player will always face on stage 3-3 - will trigger a major plot point when defeated. She’s an important boss to the game! Since she’ll show up on every play through, I gave it my best effort to make her VFX as juicy as possible. The Guardian is a big, slow, hulking golem that swings a huge mace while calling down boulders and releasing powerful shockwaves to thwart the player. She also comes with Dampening Pylons that divert and absorb the player’s attacks.

 I’ll be focusing on the shockwave attack, here’s a work in progress gif that shows the VFX:







 The effect has three main components:



   
  • Boulder splash - this is pure juice layer; these are here to help make the effect feel impactful. Combined with some screen shake and booming sound effects, these should help make both the Guardian and the shockwave feel powerful.
  • Impact cracks - again, more juice. These help add energy and weight to the effect. This is the effect I’ll be going over how in this post.
  • Projectile - the practical part of the effect - this is what deals damage to the player. This component needed to be a ground based projectile to match the overall flavor of the effect. For this component, I used a Unity asset store pack.

 The first step in making the ground shatter was to visualize what the effect should look like. As a VFX beginner, I almost never end up creating exactly what I set out to, but it’s nice to get a game plan going before diving in on a layered effect such as this one. I decided I wanted something that would snake out from a starting area that revealed a glowing energy as it moved.

 Enter Modo. On another project, I had recently been messing around with Modo’s mesh shatter tool which I thought would work well for this purpose. The thought was, if I could use the tool to make a pre-shattered mesh, I could then use some dynamics tools to push them apart gradually to achieve a “growing ground crack” look.

 Let’s hop in to a Modo scene and make some sprites:



 Starting off, we’ve created two cubes and a camera. The larger bottom cube will act as the ground collider when we get to the simulation stage later on. The smaller, slab shaped mesh will be the one that we shatter and create our effect with. For the camera, I made a top orthographic view, since we’re only interested in the two dimensional information from the simulation, as we’ll end up with a sequence of renders that we can plug into a Unity particle system as a mesh-rendered particle. We set the render dimensions at 512 wide by 256 tall. It’s large, but we can always trim down later. To note, I did this at a 2:1 ratio so that we could get a directional effect. I may have been able to use a square, but the thinking was that I’d be able to aim it more easily as a rectangle shape (more on this when we get into Unity). With the basics in place let’s shatter …



 Here’s the location and dialog window that come with the Uniform Shatter tool. After some experimentation, I chose Uniform Shatter because it was the most straightforward of the options while creating the desired shapes. For the shatter, I used all default settings except the number of pieces. I messed around until I got what I thought was a good balance of readability and detail level. Pressing play …



 … you can see the fragmented mesh pieces. Looking good so far, but it needs some more action. Right now the pieces are all very stiff looking since they all have around 4-6 boundary faces. They need a little bit more organic-ness to them. To achieve this, we can apply some noise to the meshes. However, we need  some additional subdivisions in our shard meshes so that the new detail will register. Modo has a Fractal option that comes with its Smooth tool, which will kill two birds with one stone - both adding subdivisions and noise detail to the shard meshes:



 We’ll start by subdividing using the Faceted option with a fractal value of 50%. The Fractal value will give us some jaggedness while the Faceted option will maintain all of the sharp edges of the neighbor-facing sides. After that, I’ll switch to Smooth mode, subdividing again with a Fractal setting of 50%. In the second image above you can see the results. In the end, we’re adding a little bit of character to the edges of the shards. Also, Modo automatically assigns a new material to the edges of the shattered mesh, what a handy feature! Okay, we’re all set up to start dynamics to create our gradually spreading crack. Let’s add a Solver and a force:



 We’ve added a Solver which will control gravity and allow us to … solve the scene. We’ll set the ground mesh as a Static Rigid Body, and the shattered meshes all as Active Rigid Bodies. To get things moving around we need a force. In this case a Radial Force will suit our needs - we’ll animate in a line in order to push the shattered pieces away as it moves over them - nothing fancy here. Now let’s prep for animation and tweak some dynamic values:



 Above, from left to right: First is the Radial Force moved into position in a perspective view for reference, ready to be animated across the shards (disregard the shading errors in this screenshot). Next, we give our Radial Force a value of -150% so that we can push the other Active Bodies away. On the right, for each active shard body, I’ve reduced the Bounce value and upped the Friction value to simulate heavy, slow movement. Lastly, I set the Mass Source to Local Mass with a value of 1kg - I arrived at these settings through trial and error. Essentially I was tuning the simulation so that the shards felt heavy and massive while making sure they still moved enough to register from an estimated in-game camera. All that’s left before solving is to set a couple of keyframes on the Radial Force …



 8 frames of pure ground cracking mayhem! You can see the force pushing the shards away as it moves past. To note, this was a super quick solve! Again, disregard the shading errors on the meshes, I’m not sure what happened here - but it doesn’t matter for the render since all we’ll need is an alpha:



 We’ve assigned an alpha render pass to each material - the shards, the edges of the shards, and the ground plane.  Here you can see the ground plane alpha, which reveals as the shards move across it.  There are some shading errors happening here because of some non-planar quads which allow the ground to show through, but I think it adds to the effect so we won’t mess with it. Now we can take our 8 frame animation into a compositing package of our choice, I’m using After Effects this time around:



 I ended up just using the ground alpha, again through trial and error. The frame composites are essential a light blueish solid layer masked out by the alpha we generated. It has additional layers using the same alpha but with blurs and matte chokes. We ended up with a sort of blooming effect due to the blurs. From here, I cleaned up the left side of the frames as we don’t want that blue vertical line, we need to assemble the frames into a texture sheet for use in a Unity particle emitter.



 The 512x256 images assemble neatly into one 1024x1024 laid out as two columns and four rows. As before, we can resize as needed! The sheet goes left to right, top to bottom. Almost there, on to Unity:



Here we are in Unity, finally. We’ve created an emitter and are tweaking settings: Start Delay is set to a value of .25 because we want the crack effect to appear just after the boulder splash component starts so that it has a bit of time to shine on its own after the boulders die out, but isn’t seen in isolation. The rest of the settings in the top section are scene dependent - size, lifetime, etc. For Emission, we’re doing 1 particle as a Burst right away. If we used the Rate setting instead, we’d have additional built in delay which makes the timing of the particle birth more difficult to control. I find that using Start Delay in combination with a Burst at time: 0.00 gives great control over timing of the emitter. The Color over Lifetime is just a fade in/fade out black to white to black alpha.

For Texture Sheet Animation, we’re plugging in the tile values that we created when we assembled the texture sheet. I made 2 columns (X value) of 4 rows (Y value). So X = 2 and Y = 4, Unity will play the animation going left to right, top to bottom - just as we see it in the compositing package. The rest of the settings in this section are defaults. For the Renderer, we’re using the Mesh setting which is using a flat plane with a 2:1 width to height ratio (this matches our render settings from back in our 3D package). The exact dimensions of the rectangular mesh don't matter - we can control that with Start Size in the emitter - so long as it's 2:1. I’m using Mesh as the Render Mode because I find that meshes can be ‘aimed’ whereas billboards are always camera facing.

Voilà! Here it is again in game again:






That’s it for this post, what do you guys think? How would you have done it? I’m still getting used to writing down my workflow so if anything is unclear or confusing, let me know!
Logged

Pages: 1 [2]
Print
Jump to:  

Theme orange-lt created by panic