Author Topic: [video] (And then Chris goes nuts with lots of extra details)  (Read 18823 times)

Offline chemical_art

  • Core Member Mark IV
  • *****
  • Posts: 3,952
  • Fabulous
https://www.youtube.com/watch?v=MB1sjU3ZA1c

(I never would have guessed "hungry chick" to be so hijacked)

(Ok, I am not surprised, but still annoyed!)
« Last Edit: April 13, 2016, 11:13:04 pm by x4000 »
Life is short. Have fun.

Offline Pumpkin

  • Hero Member Mark III
  • *****
  • Posts: 1,201
  • Neinzul Gardener Enclave
Re: [video]
« Reply #1 on: April 12, 2016, 06:22:15 am »
It's not a cat. You won't have many attention on this forum. I think Arcen should rename its next game "In case of emergency, release kittens".
Please excuse my english: I'm not a native speaker. Don't hesitate to correct me.

Offline chemical_art

  • Core Member Mark IV
  • *****
  • Posts: 3,952
  • Fabulous
Re: [video]
« Reply #2 on: April 12, 2016, 06:53:53 am »
It's not a cat. You won't have many attention on this forum. I think Arcen should rename its next game "In case of emergency, release kittens".

I have knowledge of the keywords. I have seen the way. But a warrior does not release the whirlwind when a simple breeze may suffice.

[Please, I would rather not unleash the way]

[Please, feed the bird of knowledge]
« Last Edit: April 12, 2016, 07:36:31 am by chemical_art »
Life is short. Have fun.

Offline x4000

  • Chris McElligott Park, Arcen Founder and Lead Dev
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 31,651
Re: [video]
« Reply #3 on: April 12, 2016, 01:55:29 pm »
I know, I know!  I am so incredibly late with that.  I think I said it was going to be "this week" like 3 weeks ago, wasn't it?

I've been really twitchy about showing this for some reason, partly because I just want to have it be really perfect (relatively speaking) and not have any overt funkiness in there.  At my wife's urging, I've been maintaining a bloopers reel of hilarious things that have gone wrong at various points with physics and animation.

The thing that really takes the longest with this is the non-humanoid shape of the raptor, and making that feel as natural as possible in 3D space.  To really make things feel as natural as possible, it's taking a lot of mecanim animation blending as well as various other components to help with collisions of the head and tail instead of having them cheaply clip through geometry.

I've had a variety of approaches that have worked, using CCD inverse kinematics on the one hand, and ragdoll mapping on the other with puppet master, but both have been very finnicky and have other side effects.  I'm now looking at doing some FABRIK inverse kinematics for the tail in particular.

The camera was also a bugbear for a while, and getting that to work in both small and large spaces in a way that would feel good on both controllers and keyboard+mouse.  I went through about five different camera solutions, customizing each one, before landing on one that works the way I want.

Getting the ability to model outside of unity and then do uv mapping to unity materials in a sensible fashion also was a lot harder than we expected.  Maya LT had a lot of trouble, and blender of all things eventually worked for it.  We are using various assets from the asset store, but Blue is modeling walls and whatnot fresh (and with more dimensions), and so the ability to do complex uv mapping on her models was a big thing.  So that was mainly a matter of finding the ideal toolchain and workflow.

Having an ideal toolchain for animation of the raptor itself was also a problem.  Animation in Maya and blender was surprisingly problematic, and so we've wound up using Skele directly inside unity.  That has its own limitations and is less polished overall, but I've done some custom fixes and additions to that to make it a bit better.  And it was already the best solution in terms of being able to really see exactly what we were getting and have that immediately testable and integrated well.  The fact that it works with both FK and IK modes (for editing) is nice, though we've mostly stuck with FK because the IK feature is a bit wonky.

Really focusing on the visual quality and upping that so that I know fully what my CPU/GPU "budget" is in terms of ms/frame has been a big deal for me, too.  I'm using SSRR for reflections, and have gone through a number of different tools for that to find the one with the best performance and end result in my opinion.  Really working with a variety of things to get PBR materials showing up in an ideal fashion has also been a focus.  Having the most efficient and best-looking pipeline for LUT (color grading) and bloom also was a big deal to me.

A lot of bloom effects look way over the top, and while I do like the dramatic effect it needed to be a bit more complex in its calculations than just using straight luminosity as a base with no other considerations.  Then really hand-tuning that was a bit time consuming.  Tonemapping and other camera effects, which often play into depth of field to some extent, was also a bit of a bugbear.  I wasn't very happy with tonemapping in general, because I can get similar effects with color grading and maintain more control that way.  I looked at a variety of solutions for depth of field, but most of them were not adaptive in quite the way I wanted, or had problems with the near field plane that I couldn't reconcile in a third person game.  The over-simplicity of those algorithms really frustrated me, but the best algorithm was a bit heavy and also tied into some tonemapping in a way I didn't like.  So lots of diving into that to really rip and adjust things, and now it does just what I want (and looks awesome).

Occlusion culling for performance purposes was the biggest bugbear of all.  There are so many different solutions on the asset store, and unity has their own built-in version of umbra as well.  I've gotten them all, and customized many of them.  They all have their merits, but also some severe limitations.  After learning a ton from all of them, I coded my own from scratch for my own purposes, and it's way better performance than any of the others in my sort of scenario -- in terms of being realtime-calculated, I mean.  Some of them do perform better than mine IF they go through a length (7+ minutes in some cases) baking process for the occlusion data.  Since I'm working on dynamic levels, having in-the-moment occlusion culling that was realtime calculated without requiring insane numbers of raycasts was a big deal.  Took me a while, but I figured out a good solution to that.

Figuring out a nonstandard way to do some complex physics stuff with collisions between "attack zones" of the raptor (a claw that is swiping, etc) during animations has also been an interesting thing, although that went fast.  That plus using mecanim layers and some related tricks to have multiple attack animations possible for the same attack were fun things that were comparably easy, and that I'm pleased with in particular because various people state "oh that's not something you can do" with the animations in particular.  My answer to that is: haha, yes you can do that.  (And I think a variety of more experienced developers have also clearly figured that out).

Hmm, what else?  Oh, working with SSAO solutions for either ambient occlusion or ambient obscurance (I wound up going with the former) was a bit of experimenting to find the ideal quality vs performance solution, and to make it play nicely with the LUTs and bloom and so forth (just really a lot of hand-tuning again).  It's kind of shocking how much these sorts of things add, though.  Oh, and then working with lights and getting all the various assets set up for the deferred lighting pipeline and linear color space rather than gamma.  And then going full HDR -- of course.

A variety of things for exterior skies and related lighting effects took a while, because I set myself a very specific ms budget on that.  Got that working well, with both options for interior and exterior.

Oh, and a custom third-person-controller for the raptor itself, if that wasn't obvious already.  Really focusing on making it feel like a marionette that you can control yourself in a strong way, and not just some stiff like dinosaur-shaped-brick that you move around the environment.

Then beyond all that, lots of planning and prepping with other environments beyond the first one I'm working on, sound effects planning, AI and enemy design planning, etc.  A lot of that work is still ahead of me.  I've been focused chiefly on making the raptor feel awesome to play with, and to be a joy just to run around with.  And on making the environment and graphics look as stunning as possible while also letting things get turned down as needed, and keeping a sharp eye on the performance impact of things like shadows.  For people on lower graphics cards, they can turn shadows completely off and the SSAO still makes it look pretty darn awesome.  Or that can be turned off as well for really old machines.

Anyway, focusing on you and the camera and your environment before getting into enemy design too much has been my goal, because the enemy design and certain other related pieces comes down a lot to playing off those other bits.  Adding in environmental object destruction is my next thing after this current round of fighting with the tail of the raptor.  You can already kick over boxes and barrels and so forth, or bite at them to knock them, but next up comes actually shattering them and smacking computer screens off the wall and things of that nature.  Those same pieces of code then get forward-applied into the larger enemies, where you'll be able to take out things like a specific arm or whatever.

So... yeah.  Been super busy with all that.  My goals for the video have been: 1) show some actual dynamic levels, rather than the prefab one I'm mostly testing in or the barebones dynamic ones that I have right now that are not done up with real graphics yet; 2) have all the camera effects and other graphical quality things maximized -- which is done; 3) show some cool environmental interaction -- about halfway done; 4) have the raptor itself feel fully physically present and natural in the environment -- about 90% done.

I thought that a lot of those things would go quicker than they have, but it's been a bit of a crash course learning process.  I have a lot of background in mostly raytraced 3D graphics, and so moving back into the land of raster graphics has had some learning to it.  I'm super proud of how it's shaping up, though.  And that blooper reel will be hilarious when it's ready. ;)
Have ideas or bug reports for one of our games?  Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline chemical_art

  • Core Member Mark IV
  • *****
  • Posts: 3,952
  • Fabulous
Re: [video]
« Reply #4 on: April 13, 2016, 12:32:45 am »
Wow! That's a lot of insightful information. That is really exciting. Thank you for sharing this.
Life is short. Have fun.

Offline x4000

  • Chris McElligott Park, Arcen Founder and Lead Dev
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 31,651
Re: [video]
« Reply #5 on: April 13, 2016, 01:10:06 am »
My pleasure!  I feel guilty for not giving more updates, but the wait will be worth it. :)
Have ideas or bug reports for one of our games?  Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline Misery

  • Arcen Volunteer
  • Core Member Mark V
  • *****
  • Posts: 4,109
Re: [video]
« Reply #6 on: April 13, 2016, 09:13:04 am »
.... I understood maybe like, 3% of that.   As always I cant imagine how the hell you do all these things.  I'm lost just thinking about it.  In a forest of scary math.

That being said, why not at least show a screenshot or two?  I remember the one I saw (or was it more than one, heck if I remember) and it really looked pretty darn good to me.  Or is this another of those sorts of situations where you don't want to have some pic or other ending up in places it shouldn't too early on?  Still, it looked darned impressive to me really.

....and that's all I've got.  Cant think of any better way to try to get you to spill the beans on the forum here.  I've run out of ideas, anyone else want to try?

Offline x4000

  • Chris McElligott Park, Arcen Founder and Lead Dev
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 31,651
Re: [video]
« Reply #7 on: April 13, 2016, 01:54:05 pm »
That screenshot is suuuper dated at this point, heh.  It was a bit grainy and washed out compared to now.  It's also showing the raptor in a prefab level created by someone else (although heavy, HEAVILY visually improved by me), and I'd rather not show the raptor in that sort of scene at all.  I want to be sure and show the raptor in real environments.
Have ideas or bug reports for one of our games?  Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline crazyroosterman

  • Master Member Mark II
  • *****
  • Posts: 1,558
  • Cluck.
Re: [video]
« Reply #8 on: April 13, 2016, 04:11:35 pm »
.... I understood maybe like, 3% of that.   As always I cant imagine how the hell you do all these things.  I'm lost just thinking about it.  In a forest of scary math.

That being said, why not at least show a screenshot or two?  I remember the one I saw (or was it more than one, heck if I remember) and it really looked pretty darn good to me.  Or is this another of those sorts of situations where you don't want to have some pic or other ending up in places it shouldn't too early on?  Still, it looked darned impressive to me really.

....and that's all I've got.  Cant think of any better way to try to get you to spill the beans on the forum here.  I've run out of ideas, anyone else want to try?
ha? I don't remember there being show case videos being up??? still though id rather wait and see something a bit more fleshed out if you know what I mean.
c.r

Offline Aklyon

  • Core Member
  • *****
  • Posts: 2,089
Re: [video]
« Reply #9 on: April 13, 2016, 04:34:39 pm »
.... I understood maybe like, 3% of that.   As always I cant imagine how the hell you do all these things.  I'm lost just thinking about it.  In a forest of scary math.

That being said, why not at least show a screenshot or two?  I remember the one I saw (or was it more than one, heck if I remember) and it really looked pretty darn good to me.  Or is this another of those sorts of situations where you don't want to have some pic or other ending up in places it shouldn't too early on?  Still, it looked darned impressive to me really.

....and that's all I've got.  Cant think of any better way to try to get you to spill the beans on the forum here.  I've run out of ideas, anyone else want to try?
ha? I don't remember there being show case videos being up??? still though id rather wait and see something a bit more fleshed out if you know what I mean.
It was probably a secret dev/freaking volunteer pic from the description of it chris gave.

Offline x4000

  • Chris McElligott Park, Arcen Founder and Lead Dev
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 31,651
Re: [video]
« Reply #10 on: April 13, 2016, 04:58:08 pm »
Yep, just something from one of the dev/volunteer emails.
Have ideas or bug reports for one of our games?  Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline Misery

  • Arcen Volunteer
  • Core Member Mark V
  • *****
  • Posts: 4,109
Re: [video]
« Reply #11 on: April 13, 2016, 07:10:08 pm »
That screenshot is suuuper dated at this point, heh.  It was a bit grainy and washed out compared to now.  It's also showing the raptor in a prefab level created by someone else (although heavy, HEAVILY visually improved by me), and I'd rather not show the raptor in that sort of scene at all.  I want to be sure and show the raptor in real environments.

Oh, I hadn't thought of that bit.  I always forget there ARE prefab areas for a lot of 3D stuff.  Usually only hear about that when some developer somewhere gets complained at for actually putting one in a game.

Still, I thought it was pretty good as screenshots go, but if it's "dated" at this point, that speaks well for what's coming, eh?

Hm, I'm curious, do you have an estimated release time for the game as a whole at this point?  Is that still awhile off? 

Offline mrhanman

  • Hero Member Mark II
  • *****
  • Posts: 764
Re: [video]
« Reply #12 on: April 13, 2016, 07:24:26 pm »
I want to be sure and show the raptor in real environments.

Jurassic Park confirmed!