A Unity ID allows you to buy and/or subscribe to Unity products and services, shop in the Asset Store and participate
in the Unity community.
New Unity Live Help updates. Check them out here!
Discussion in 'Assets and Asset Store' started by sr388, Sep 1, 2015.
As always, your updates are amazing. Everything coming to this asset is just awesome.
Open door on car would be cool
I think: Horse Animset Pro
SCK? Not sure what that is....
Here a quick video showing the player state system, which allows to configure different states based on animations and other internal settings, like injured, drunk, cold, hot, hungry, etc...to change the current movement style of the player.
Other options included to configure a camera noise in the camera, so it applies a random input as the one you can see in the video, configure a duration for this state and the ability to configure the call to this state through the use of inventory objects, like a beer, which for example can refill health but cause this drunk state during a certain amount of time.
Nothing in the video is hard coded, all is configured through options, including a new inventory object type to affect to any stat of the player (to increase or decrease its value, like for the current health for example).
Thanks man, really happy to hear that
Yeah, I have an enter and exit vehicle animation example of mixamo, so I will add an example of using that on vehicles.
Yeah, that will arrive too SCK is space combat kit.
I really should check the demo scenes but for the GKC - "connecting different Scenes between each other ingame" feature. Does this mean if I had a setup where I have say 10 Scenes in unity with 10 different landscapes with related houses/cities/cars/interiors of buildings I can use GKC features to access those Unity scenes via events, triggers & travel stations etc. Do I need each or all scenes loaded at same time (thinking RAM requirement here) before I can link them? Or can I just reference the scene files whilst that scene is closed. e.g.
Lets say I was working on terrain/assets in Scene-Test-1.unity, using GKC can I reference the other scenes 2 & 3 using GKC to load them up as a next level, closing Scene-Test-1.unity? Hope this makes sense.
It is basically a way to connect two or more scenes between them, so the game knows the places where this change of scene can be made and where it goes. It is like an address system, so in a scene you can have an open city and lets say you have a building.
There are two scenes, one with the city and one with the interior of the building. In the outside of that building you can enter to each floor with one door. So in the city, you have multiple points to change to the other scene and according to the floor, you will be moved to that floor in the second scene, which is the interior of the building. Like address, on each "gate" you have the ID of the scene and and ID of the gate where appear.
Inside the building would be similar, you have multiple of these gates pointing to the city scene and to the floor where appear. But in the same scene you have have a gate to any other scene as well, so it is not to connect just 2 scenes, but any number of it. For example, that building could lead to a basement and from there, you could enter in another building, which would be a third scene and from there you could exit back to the city scene.
Not sure if I explain properly, it is very simple yet can be complicated to tell it (I never explain things as I would like haha). The best way to think about this system is to think in how borderlands games connect their scenes, with these gates.
Let me know if this solve your doubts. I think the demo scenes will solve any remain doubt.
So, if I have it right, basically you can have a starting scene that is like a hallway with many doors. Each door can be a trigger for a scene change, so that if the door is opened the player is teleported to a scene that is associated with the specific door that was opened.
I have been experimenting a little with shaders, most of it still being black magic, but here an effect for the drunk state:
it has options to configure the vertical and horizontal image noises, the blur amount and rate and also to invert the image in both axis, for example, in the video the image is inverted in the horizontal axis, so the input is normal, but the movement is inverted, giving a more confused feeling on this mode.
Also, I have just found the canvas group component, which allows to change the alpha value of a group of UI elements at once, so I have added this element for menus and other panels on screen. Instead of enabling or disabling a panel at once, it can use a smooth fade in and out instead.
Of course, this can be disabled if you prefer, to just keep the same enable/disable at once each UI panel.
Well since you have that shader, try that, instead of blending colors by sampling around, take the sample with max luminance and display that instead. Experiment with min luminance and also the shape of the sampling pattern.
Haha cool. Like I said, shaders programming still being a mystery for me yet (though I am learning a little more about them), but I will keep trying stuff with them in the future.
The good thing about this camera effect system is that it can trigger events for each state, so instead of shaders, so you can use the post processing system from unity or other solutions, to activate or deactivate them, allowing to have all kind of effects on any unity version.
Camera effects for certain states is a awesome idea. For example eat a mushroom and the camera state goes where everything looks crazy.
Might be a good idea where if you eat or drink something you might see something that wasn't there before as well. Like the effect with the mobile device that has already been added in. Eat a mushroom have a visual effect. Find a hidden door or item. Maybe even see a hidden enemy that wasn't there before. Example - I see dead people.
So we're not talking about linking separate "unity scenes" together as per muti-scene editing in unity?:
We're talking jump points within one Unity scene? e.g exterior of building to interior room of a building, where potentially you might not have built stairs etc. and you could potentially also have the interior room of a building 1000km high within the the scene where the room itself is not actually within the building prefab.
I will check demo scenes to improve my thoughts if still not clear from response to above.
Cool stuff, definitely icing on the cake
Yes, basically you can trigger any state on the player by using an inventory object, like eating a consumable, like rotten food that gives you strange illusions or potions like in witcher to see stuff in the level that is not usually visible. Or increase temporally the damage the weapons of the player produce, etc...
Using any object in the inventory can activate any state in the player with options to set a temporal duration on them or be like that any time needed.
I think that multi scene editing is a tool for the editor not for gameplay. What I mean is a way to along to change from one location of one scene to any location of any other scene. Of course, with elements that the developer has made and in places he has planned.
So yes, it would be like that. Like I said, the best example of this is how the different zones of borderlands are connected, or like most linear games work, having at some point a change of scene when the player moves to a new zone. It is a really easy and straight forward system but very useful to interconnect different scenes between each other. Maybe I didn't explained properly in my previous post.
If you will. Please add in the ability to. Create a trigger in a item. That when you use a item. That item has the ability to spawn another item. For example you might have a hand held teleporter. And when used it disappear's. And it may spawn a specific weapon, vehicle, or maybe even a robot friendly ai. Also it could also maybe be a enemy ai as well.
These type's of items could be used as things such as supply crates and even summoning potions. Just a thought for your head.
I think what he wants is additive scenes, not scene switching.
Additive scenes could be used to create streaming terrain games and infinite runner type games, but of course there's nothing stopping a developer from implementing their own additive scene streaming type solution in conjunction with GKC.
If someone wanted to implement it, basically they'd need a function to load a scene using async add, a function to delete an additive scene, and then there would also need to be a function that checks to see if the scene is loaded / is still loading. Any call to delete an additive scene would first check to see if it is loaded / is loading, and some game functions - like those linked to player movement - might want to be sure an additive scene has finished loading before proceeding into that area.
That would set you up for designing using additive scenes in the editor. If a developer wants to get more tricky with it, that would require a more complicated design.
It could be useful. I will think about that for next updates.
Interesting. Yeah, the load of scenes asynchronously is something I would like to work in next updates too.
Btw, I have aded a throw objects ability examples, one to throw rocks to use it as noise to call the attention of AI (or damage any object on impact) and grenades. I will show that tomorrow.
Good night people.
Thanks for your assistance chaps, it is scene switching I'm after. I just linked the prior video to show multiple distinct unity scenes.
I aim to target low end mobile and PC. Due to low end mobile my scene(s) will be small say 50m x 50m or 100m x 100m dependent on performance testing. You play a scene, maybe with different waves of bad dudes etc. and ultimately progress to a new scene level. So I would not have say a 5km x 5km scene where jump around within this via teleports etc. I would literally unload scene 1 and load scene 2 to conserve memory requirement. Hope this makes sense. Ultimately as an example I would have many scenes e.g. free to play on android 5-10 scenes and adverts, pro game 30 scenes no adverts.
I do have many many other assets GKC is amongst these, so I could perhaps explore scene switching in Playmaker or Node Canvas if GKC is scene switching within a single unity scene. I'm still unity noob and trying to figure out best approach to cater for low end mobile. Of course I could not do this and take route and target PC only where I could from my toolkit Gaia and sector complete.
But GKC scene switching may cater for above. I will explore demos to see.
MorpheusXI , if you want scene switching, Sector Complete is a very good tool, and I would recommend it. If you want scene streaming, then World Streamer is the way to go. World Streamer is the harder to set up of the two options, but the results in speed for the game are worth it. Sector Complete will be better for what you want to do.
I have added a new action to throw objects, allowing to use a parable for it based on what the player looking direction. It can be used for example to throw objects to call the attention of enemies in the level or even to damage them on impact (that can be disabled if you want to use it only for the first option):
The throw objects allow to instantiate the new object in any place, in this case, I have placed the hand of the player (the shoot zone used on it), and with the delays options, it allows to set when it is instantiated and when thrown, so it really looks natural haha.
And like I promised, here an example of the throw ability used to throw grenades:
@MorpheusXI yeah, like @helgarddebarros, those two assets are a good option for what you can need about scene management.
Related to scene management, for now GKC will focus in what was mentioned in the posts above, allowing to easily configure the change to an specific scene and specific position on that scene and connect any number of scenes in the same scene.
Let me know your results and conclusions when you try the demos of GKC (no rush).
On the topic of how to build out game worlds ... these days I'm leaning away from the multiple scene model, and more into a single scene with instantiation of prefabs, using a LOD approach like Unity's free AutoLOD, plus a pool.
My game has a large low res game world that acts as a backdrop, and smaller high res areas that the player directly experiences.
I haven't completed this phase yet, but my plan is to use something like the AutoLOD type approach to take my existing high res game world models to create the low res game world. In testing, I've found you can create a very large, detailed-looking environment that takes virtually zero FPS to render. It's quick to load and very efficient.
My plan is also to purposefully build my world out of smaller repeating objects, breaking them down by material. Small static objects can be combined at edit time (or runtime), and actually run faster than instancing. This works both for building the large world and the smaller, more detailed world.
Objects that repeat and are dynamic - which includes not only destructible and moving items, but also things like independently controlled lights - can be kept in a pool. This provides a savings in that I only need to load an original object of each type to the pool, and then clones from the pool are used as needed to fill out the scene as the player moves along. It's very fast, and it keeps garbage collection to a minimum (which can be an issue with scenes, even if you are running async additive scenes).
And that's basically it. So in the case mentioned a few posts above where you would open a door and switch scenes, I would instead instantiate a prefab that through scripting relocates cloned objects from a pool to that location. It's very efficient. And I can use a random factor as well, so that if - let's say - I was building out rooms in Victorian style, if you open one door, the seed associated with that door results in a room with a desk with a gas lamp, a couch, and fireplace, while a different seed on a different door results in two chairs, a rug, and a bookshelf. You can open door after door, leaving them open, with the player moving in an out of them, and not be forced to switch scenes.
The pooling keeps the game loading to a minimum (only unique meshes, and prefabs filled with objects that have only a transform and a tiny "spawn from pool" script) and the sceneLOD keeps the number of items in the hierarchy at any given time to a minimum.
With this pooling approach, you could have, say, fully detailed modeling for the interior of a skyscraper, but since the all the small objects are pooled, the game could be assembling it around the player as they move through the building, re-using furniture, file cabinets, doors, potted plants, floor segments, ceiling tiles, lighting fixtures, windows, vents, and even people.
I wrote a system to do exactly this as well. But then I asked the Gaia team if Storm would have this sort of feature and they basically told me that Storm would obsolete this concept and be far better. lol. Oh well.
I don't see how it possibly could be faster or more efficient. Do you have a link to "Storm" ...?
It's on the Procedural Worlds Discord channel.
Easy button FPS according to Adam
Thanks for info, I'll look to use SC
Mag & Hope - Instantiation sounds interesting. For now as it's my 1st game I'll go with SC. I completed Level 1 scene tonight and will create L2 this weekend. Then test with GKC, SecComp, AI & pickups next WE. Although I have other controllers, GKC is the one with most features out the box & integrated direct by dev + sr388 is awesome.
Thanks for directing me to Storm! After a bit of reading in an enthusiastic thread, it sounds like it's a system for essentially skipping Unity's objects and creating your game world vista in screenspace on the GPU. You only need to have objects on the CPU if you need to interact with them (that is, objects close to the player).
I'm not sure this is actually going to save me much. It seems it is really only for vast distances outside, not really indoors environments. But I can already set my camera far plane very distant and have miles of geometry in each direction with a small performance hit (desktop).
Storm says it will need to load a version of each unique object and process it, which is to some extent what is already being done with the pool approach I described, which also loads just one copy of each unique object. With the pool you have each object on the CPU, ready for the player to interact, which you would also need with Storm.
Also, you still need to build all of your models and place them. Storm won't do that for you. So you don't skip any production steps. And the initial version of Storm won't compute LODs, so you'll still be using something like the AutoLOD package at first.
I'll keep a weather eye on Storm, and it sounds interesting, but I don't know if I would really see much benefit from it.
Anyway ... I'm looking forward to the next release of GKC, I know @sr388 has been working hard on it, and I apologize for diverting the thread.
Absolutely agree. I have abandoned all my other controllers and now use GKC exclusively.
Snap. After trying out 8 to 10 other controllers, I can honestly say GKC is miles ahead for the needs of my project. Every time I think of something I need it is either there already or in the road map.
Still waiting for melee though, also I still have to work on GI stuff and terrain stuff (LOD), and then I have a convex stuff to finish XD so much to do.
After that my holidays will be to spend some time cloning some games for fun with GKC to push it to its limit. I also want to make a character model for sr388 if he accept, given the gkc started as being inspired with Gravity rush, I wanted to do a custom character hommage to that (with a very different take though).
Yeah, it is a very interesting approach for this kind of bigger or more open worlds. It is also cool the way to "recycle" objects in the pool by using the same according to player's location, assigning them a new place. It really gives me some ideas for this kind of management.
Yes, that happens a lot in the store, you may think about a new system or a solution for a certain element, and an asset for that appears suddenly at the store or you find that is already in the making haha.
Thanks to all of you @MorpheusXI, @magique, @helgarddebarros, @hopeful and @neoshaman. This kind of comments and feedback really helps a lot to keep working and make the asset as good as possible. You made not my day but the rest of the week
I am finishing update 3.02f very soon, and right after that, I will start with 3.03, which is the update that will include the melee weapon system. This new update has allowed me to improve my knowledge about the animator system (mostly for the new action system to configure and add new custom actions based on animations to any character), so that will allow to work better and faster in the combat system
I am really excited for this new version, because it has added a whole lot of customization and new possibilities with the new action system. And even bigger when combined with the ability system.
Oh yeah, really looking forward to know your results. And about the model, I can't avoid to smile each time I hear gravity rush, really one of my top 5 games of my life and one of the main reasons why GKC exists in the first place haha.
I would be very happy to accept the model you make, even more knowing it would be inspired/related by that game ^^
I only wanted to wish you a happy valentine's day (singles too, like myself haha), I love you people.....to death....
Quick question. I followed your top down tutorial for the fixed camera. I'm using your "locked camera system (empty)" and "player and game management" prefabs just to get a simple test off the ground. Upon starting the game and then running into the trigger I set, the camera switches to my top down view, but quickly zooms into the feet of the player, thus you only see the ground below the player as you move. I'm puzzled on this as I followed your tutorial and made no other changes in the settings of either prefab. I looked at some of the settings and couldn't find anything that might be causing this. It seems tied to the "follow player position" un-checking this will take me to my top down camera position without issue (though it doesn't follow the player then). Do you know why this might be? I'm using Unity 2019.3.1f1 and just the two prefabs I mentioned above in an empty scene (with a ground box)? Any help is appreciated!
I think that the pivot position of the camera is maybe placed on the air, so the camera position it self seems correct in height, but when it follows the player positions, the pivot is in a lower position, and the camera is closer to ground that it looks.
For example, in this default top down camera, the height of the view is 14, check the position of the Camera Axis transform in the hierarchy of the locked camera system gameObject:
You can activate the gizmo option in the locked camera system to see the height of the view too. Let me know your results, no rush. In other case, I could make a remote session with you, to take a better look at the issue.
Thanks for the quick feedback, that seemed to be the issue. I was using the "set camera to view" and forgot about changing the axis values. I'll mess around with it some more but that looks to have solved it. Thanks again!
I have added a prefab to activate a noise (that can be detected by the AI) that can be called by any element, like an event, the event trigger system, a function call from another component, etc… Examples of this is the radio system to examine, which has configured the play button to call this noise system or inventory places where once an inventory object is used, it can call to this noise system, like an engine that has been turned on and it is making noise which will alarm to the enemies. Here an example with a trigger:
Here with the radio:
Also, the player stops to use a device properly if he dies while using it, like a computer or this same radio in the gif above. And here a new camera effect example I have added, really like the moving painting style haha:
Thanks @CrazedArabMan. Really happy to hear is working now and always glad to help
I have added an option to change the fixed camera position closer or farther from its original position according to the distance of the player with respect an empty transform on the scene. This allows you to make camera pans easily, like many top down/isometric/2.5d games do, according to if the player is moving closer or farther to a specific object or position.
It includes options for the movement speed of the camera, distance multiplier, clamp values (forward and backward) and if this movement is directly or indirectly proportional to the distance of the reference position/object and the player. Here the position to compare distance is the red cube.
I have been also improving some touch input elements and other polish and details, along with more testing and checks.
I just wanted to mention that I recently tested the addressables version of UMA, which is still under development, with GKC. I've reported the results to @sr388, so that when it's time to add UMA compatibility, he'll have a leg up on understanding what's needed to get it working.
What I found is that there are two reasons why using the UMA bone builder isn't enough to get UMA working with GKC.
First, as UMA users know, each UMA model is built by a script component that is placed on a game object. I believe the script is called "Dynamic Character Avatar." Anyway, when this script runs, it looks locally on the same game object for the Animator component, and it adds the avatar to that component at runtime. If you don't get this avatar added, it will build, but not animate.
So, to get an UMA working with a GKC player object, you'll need to add the Dynamic Character Avatar script to the game object in GKC that holds the Animator component, which is "Player Controller."
Once you do that, the UMA can build, the avatar is added to the correct Animator component at runtime, and it will respond to movement commands.
Some things to watch out for ... well, I can't list them all, I guess, but one would be to be sure you're not automatically generating a capsule collider from recipe when the UMA is built. GKC already is set up with colliders, and the extra collider will probably cause either crazy camera jitter, or make your character fly away at high speed, or something like that. That kind of behavior is typical when you accidentally have overlapping character colliders.
The second thing that needs to be fixed with GKC to enable use with UMA, is that all things added to the rig have to have unique names. This is because UMA makes a dictionary of everything in the rig so it can rebuild itself on command but still retain all of the stuff you added.
Like, if you added a sword or wings or something, and then you wanted to change something with the UMA like an article of clothing or a color, then when you rebuild the UMA, those added rig points will remain, because they are in the dictionary.
But ... dictionaries require unique naming, so that means GKC will have to change the names of some things that are currently added to the rig. It's not a big deal to fix this, but it's not something a GKC user can easily do on their own.
I think that's it. I was able to half-tweak things and get an UMA to build and run around and even fire weapons and use the jetpack, but I had an ugly 999+ errors in the console. Any of you UMA users who wish to mess with it, the main thing under your control, I think, is to put the Dynamic Character Avatar script on the Player Controller object, and then you too can run around with a bazillion errors flooding into your console.
I have added grenades as new inventory object as a regular object with a health component attached, so when the object is a pickup in the scene and receives damage, it will “die”. This death triggers events to use the external shake camera system and the destroyable object component which creates an explosion applying damage and physics forces around a radius, so all combined creates a grenade pickup which can be stored in the inventory and being damage and explode too.
Also, I have added a component which allows to check if the player has units available of any inventory object, searching by name and triggering events in case the player has units available and in the other case. Along with that, the component allows to remove any amount of that object and trigger events in the case of successfully removing that amount of units from an inventory object and also in case there are not enough units. This is used for example for the new grenade inventory combined with the ability system to throw grenades.
Like that, the ability first checks if there are grenades available in the inventory and in case positive, the ability to throw grenades can be activated. Once that is done, one unit of the grenade inventory object is removed from the player’s inventory.
Yeah, thanks again for your tests so far with UMA. This info will come handy when I start to work in the integration with GKC
sorry if this is covered in the documentation, just being lazy. Is it possible to set a limit to the number of items of a certain type the player can carry? For example, 2 grenades max can be carried but those two could be made up from a mixture of incendiary, impact and poison gas grenades?
No, there is an option to limit the number of slots of the inventory (or being infinite) and limit the number of units per slot (or being infinite on each one). But there is not an option in the amount of units of a certain object. But it could be added an option for it, it would be very quick to add this setting.
I will put it on the todo list
I'd vote for that as well....it's more effective and simpler than a weight/encumbrance based system.
I'd vote for that as well. Character can carry one rifle, one pistol, one shotgun, etc, but can carry loads of ammo or food or med packs. This would be super useful.
Another possible way to limit what a player carries is to have specific holsters / mount points for each item. Once a mount point is filled, you can't place another object there without swapping them. Like, you can have only one thing on the back, whether it is a jetpack, bow/quiver, giant sword, or bazooka.
Just throwing that out there, in case it helps someone.
hopeful that would work for me, I'd just add 2 grenade slots.
The weight limit of the inventory is totally optional, so you can disable the weight limit option of the inventory if you prefer.
Yeah, the option to carry a certain amount of units per object will be added
Yes, that would be pretty much one of the options included.
Hi again @hopeful. Sorry, I was answering the last post of the forum almost falling asleep and in you case, I wanted to make a more detailed answer haha.
Yes, mount points for the inventory is something I would like to add too, similar to pockets, so you can only put a certain amount of objects (including just one) on each pocket.
That would be included in the same update as the option to use an inventory tetris type like resident evil 4 or deus ex.
This inventory option will be added between 3.03 and 3.04 updates
I have added a culling system for the player, so when the camera is close enough to him (all configurable in the editor), the shader of the player's meshes changes and is configured according to the remaining distance to fade it smoothly and see through him. I finally found a shader configuration that looks great for this, it has been a feature that I was looking since a long time ago: