Saturday, November 29, 2014

Rise of Dagon : Nov 29th 2014



As promised after a week break I have returned with an update.

I was hoping to have been moved the previous week but unfortunately the place I was going to was not ready yet. So that is still at some point in the future for me.

One of the big things that happened was the Unity 5 beta 14 release.  I updated to this release and it made a gigantic difference on the look of the levels to the point where everything looked like it was made out of super-shiny metal!

So I had to refactor a lot of the shader settings and found that they had swapped the default Unity 5 material from 'specular' model to 'metallic' model.

I believe they also massively ramped up the specular levels of everything in general. So you'll find that the screenshots look different due to tweaks I made; however I can't say this is the final look & feel because I expect things to change again as the beta isn't over yet!

Unity 5 Beta aside I've been focusing on some polishing to the core game loop.

The core game loop is in .. in case I hadn't said that before!

So the core game loop being in is great but it was missing a little bit of polish that made some of those things not so easy to see to the player.  For instance if a player had died, the only way for you to know that previously was the red health bar looked 'empty'  , which it could also look pretty darn empty if you had only 1 health left for example.

So I now have a skull replace the player portrait when they are dead to let you actually know that particular character is dead.

Also there are now damage blood splashes on the character portraits, with the amount of damage you have received

Over the next week I plan to add more polishing bits as I mentioned above that provide feedback about what is going on to the player and improve the game play in general.

So now I'm going to be tightening the core game play loop and try to get game play to that really tight and fun spot that it needs to be at.  This is a really exciting point to be at for the project, but there's still lots of work to do that is not part of the core game loop.

So for the past two weeks we have the changelist:
  • first pass character portraits added to GUI
  • animated damage splash on character portraits
  • animated damage number indicator on character portraits
  • monsters now face player when attacking at all angles
  • migrated from legacy animation to mechanim system
  • added monster attack animations
  • added monster death animations
  • added monster miss animations
  • end game condition for party death added
  • skull portrait for dead character condition added
  • end game condition for party victory added
  • first pass end game menu added
Thanks for reading, see you next week.




Saturday, November 15, 2014

Rise of Dagon: Week of Nov 15, 2014

This week was a little low on productivity because Visual Studio 2013 Community Edition came out.

This was a really exciting development for me (and a lot of developers) so naturally I rushed out to download it the first night.

It ended up taking the full night to get installed and slowed my machine down a lot so I didn't get much done.

The next evening when I launched it said it was VS 2013 Express  .. which I though I had removed but I guess not?

So I had to remove that which took most of that evening, and then finally the next evening I reinstalled 2013 Community edition and now it is working properly.

So I thought I was set at that point but then I started experiencing Unity Editor crashes pretty frequently - which was not happening before.

So I swapped back to Monodevelop and the crashes are still happening.  So I started saving every 5 minutes .. which didn't work .. I actually had to make a change, quit Unity, and then load Unity to get anything to save.

Needless to say this was frustrating and very hard to be productive while this was going on.

In any case I persisted and got a few minor things done.

The first thing is I made some small improvements to my level loading code. I had previously implemented this loading with a fairly quick hack and found that it was not loading pillars that were not connected to walls so I went ahead and fixed that.

So the screenshot featured at the top shows a little section of room with freestanding pillars that I made to test that code fix.

Next up I was able to do a bit of work on some of the specular materials.. in Unity 5 beta I am using the new PBR default shader and I've found that something in the specular maps is causing some 'sparkly' artifacts to occur.

I was able to resolve this largely by going through the specular maps and using the Photoshop levels filter and make the whole thing darker by about 70%.

Then as needed in particular areas I did a select by color range and toned down other overly bright areas even further.

The takeaway I'm getting is that specular maps need to be much darker in general to look right in Unity 5 PBR mode!

Finally I was able to get some player targeting code done where I am able to find out which monster(s) are standing directly in front of the player so that when they press their default attack it will target whatever is in front of them.

This actually was tricky as I was using a physics collider box but it turns out (at least this is what I think) that I couldn't use the colliders when I a manually transforming the object around rather than letting physics do it.

I was able to figure this out eventually by reading the docs and swapped to a Physics.OverlapSphere as shown on the Unity docs and this did the trick!

So that was it for this week.

As an advance notice I am moving next Saturday so I will be skipping the update in favor of doing it the following week of Nov 29.

Thanks for reading, see you in two weeks!

Saturday, November 8, 2014

The Rise of Dagon : Nov 8, 2014 Update

As mentioned last week I was in the middle of evaluating the viability of swapping the project over to Unity 5.0 beta but hadn't quite finished. The question was is: beta was stable enough to allow me to move the project over, or was there some sort of blocker or bug that would break the project?  At this point I've finished and feel satisfied I can go ahead and fully swap over to Unity 5 from this point forward as nothing severe enough to stop the migration was found.


This will make things much simpler as it has always been my goal to utilize the PBR (physically based rendering) approach for the materials.  Being able to cut over to the target approach as early as possible is very desirable as you can imagine.

Code-wise I was able to work on the first pass of path-finding for the monsters. They are now able to navigate through the dungeon on their own making turns down paths, or alternating routes as needed. 

I was also able to get a first pass on line of sight check for the monsters which should enable me to have the monsters seek the player out once they see him.  So that's my goal for this next week!

I've also been working on some additional environment models and art , one of which shows up briefly in the video -- there is a portcullis gate that the skeleton walks through at the end of the video because I haven't put in the code for doors yet! :)

That's it for this week, see you next!

Saturday, November 1, 2014

The Rise of Dagon: Unity 5.0 Beta - Week of Nov 1st

This week was really exciting because the Unity 5.0 Pre-order beta came out!

I spent most of the week converting the project over to Unity 5 beta and testing out if anything had gotten broken and converting materials over to the new Unity 5 default material.


So I made a comparison screenshot (seen above) for your review.

On first past you might not actually notice the difference except for one notable thing and that is the portcullis gate that I was working on can barely be seen on the right scene..

However if you look closely at the ceiling in both pictures you'll notice that they actually look pretty different when it comes to down to it.

The ceiling on the left is very  'sharp' and 'flat' looking with a lot of 'shine' where the light catches it. It almost looks like  newer polished stone? Which is a bit odd for a dungeon right?

 While the ceiling on the right looks more like old stone with dull shine .. more like a cobblestone rock would actually have.  This look is the look I was going for when I made the ceiling so I'm happier with it. The thing is in neither case did I spend much time tweaking it -- I used the default shader in 4.x and 5.x.   I'm still very much in early phases of production and don't want to spend a lot of time tweaking the way things look -- which is one reason I wanted Unity 5 - its PBR (Physically Based Rendering) pipeline was likely to pay off and look more like the way I wanted without a lot of work to tweak the materials manually.

So back to the portcullis.  I agree its much easier to see the one on the left but for a rusted metal its far too shiny!  It looks almost liked a polished metal in Unity 4 and it should look very dull and dark -- like it does on the right.

In the end I might need to adjust my lighting levels up a little bit but as I understand there are still some lighting features they haven't finished yet so I'm tempted to not spend a lot of time tweaking it right now.

There are other more subtle differences.  If you look at the very far right of the image you'll see the stone's there look chiseled and sharp .  Most particularly where the cracks are.  But if you loo to the same area on the left image .. sure the cracks are there but they are missing the highlights that give it that extra edge.  There are a lot of small things like that in the visual area that I like about the new lighting model as well.


Code wise this week I didn't do a lot of work so I am going to roll that discussion in to next week's update.

I will continue to do further testing in Unity 5 to make sure its safe to cut over to this for my project before I make a commitment. I need to vet that everything I've worked on so far either continues to work or can be fixed.  Things look really promising for swapping over to Unity 5 and I should be able to make a call on it in the next few days whether its a go or not.

I'll update you on progress for Unity 5 change over next week, see you then!