Giter Site home page Giter Site logo

standard-assets-characters's Introduction

Standard Assets: Character Package (BETA)

Note: this project is work in progress and currently considered a beta. It contains dependency on packages such as our new Input System which is in preview, and as such will continue to be in beta so long as it relies on in Preview tech. We will ship this content as a package in 2019.

READ ME FIRST

This package is intended for use in 2019.3.0f1 so we recommend you follow suit as fixes to aspects we use like new input will be applied to a 2019.3.0f1 compatible package first.

Feedback

The following forum should be used for feedback on this project -

https://forum.unity.com/threads/new-standard-asset-characters-third-person.526612/

Overview

This repository contains the new Standard Assets Character Controller Package, consisting of both code to drive a more advanced version of First and Third Person Characters than the old Standard Assets Character, as well as a demo scene and setup for Character prototyping purposes and example setup of First and Third Person Characters.

For more detailed documentation, please see the WIP Google Docs:

Overview:

https://docs.google.com/document/d/15bda-1wa4fn_ecUcWXTvxAZsNBIsI89zztKf2UxoQY4/edit?usp=sharing

Quick Start Guide:

https://docs.google.com/document/d/1DiyRG4FYeMhka8LfzXbkPFBS7oaYJo0Cg9asBbvYsDs/edit?usp=sharing

Open Character Controller:

https://docs.google.com/document/d/1TAodMmM8OlbFibyWvOKEU-zj-HI-yI4YJJx45S-hwTo/edit?usp=sharing	

First Person Controller:

https://docs.google.com/document/d/14C-a3P5o3tAXWd_Dzl8Zc-jh3uQUTaKcfWxPvqXv9w0/edit?usp=sharing

Third Person Contoller:

https://docs.google.com/document/d/1uU6SqWtDF0BPT81bYcVRBMZ2Li6XrKtGznItrfH8hvc/edit?usp=sharing

Movement Effects:

https://docs.google.com/document/d/1544ZvaGuWcW47CViHq1lHZkiuuqwVaxz7Cd4htyea-A/edit?usp=sharing	

Character Input:

https://docs.google.com/document/d/1f8HcBEjz-Fpd-FJPg7npfB8XOuSzAWaM4b_g_2aEhT0/edit?usp=sharing

Getting Started

From Repo

  • Pull the repository and open the project in the relevant version of Unity
  • Open the Protoland Scene
  • Enable either the First Person or the Third Person Game Object under Characters
  • Press Play

Importing the Package

  • Import the SAC package.
  • Make sure that you have the following Unity Packages added in your manifest.json:
    • "com.unity.cinemachine": "2.4.0-preview.8"
    • "com.unity.inputsystem": "1.0.0-preview.3"
    • "com.unity.postprocessing": "2.2.2"
    • "com.unity.probuilder": "4.1.2"
  • Open the Protoland Scene
  • Enable either the First Person or the Third Person Game Object under Characters
  • Press Play

Base Setup

  • Create a new Scene.
  • Make sure that the main scene camera has the Main Camera Tag set on it
  • Place a plane in the Scene to act as the floor and resize to preference.
  • Optional set-up for Movement Effects:
    • Drag in Movement Zone Manager prefab.
    • To change the level default effects, create a new LevelMovementZoneConfiguration via Create -> Standard Assets -> Characters -> Level Movement Zone Configuration and set it on this prefab
    • Set the plane’s layer to Ground, in order for Third Person footsteps to work.

First Person Setup

  • Drag in the First Person prefab.

Third Person Setup

  • Drag in the Third Person (Male) prefab.
    • Ensure that the Y value is greater than the Ground Plane’s Y value.
  • Drag in the Third Person Camera (Male) prefab.
  • There is also a female third person character. To use this instead, delete the male prefabs from the scene and drag in the female prefabs:
    • Third Person (Female)
    • Third Person Camera (Female)

Controls

  • First Person
    • Keyboard + Mouse
      • Movement: WASD / Arrow Keys
      • Look: Mouse Cursor
      • Sprint: Left Shift [HOLD]
      • Jump: Spacebar
      • Crouch: Left Ctrl [HOLD]
    • Gamepad
      • Movement: Left Thumbstick
      • Look: Right Thumbstick
      • Sprint: Left Thumbstick Click [TOGGLE]
      • Jump: PS4 [X] Xbox [A]
      • Crouch: Right Thumbstick Click [TOGGLE]
  • Third Person
    • Keyboard + Mouse
      • Movement: WASD / Arrow Keys
      • Camera: Mouse Cursor
      • Sprint: Left Shift [HOLD]
      • Jump: Spacebar
      • Strafe: Right Mouse Button [HOLD]
      • Recenter: V Key
    • Gamepad
      • Movement: Left Thumbstick
      • Camera: Right Thumbstick
      • Sprint: Left Thumbstick Click [TOGGLE]
      • Jump: PS4 [X] Xbox [A]
      • Strafe: Left Trigger [TOGGLE]
      • Recenter: Right Thumstick Click

Notable Content

/Assets/_Standard Assets/Characters/
  • Contains all code, models, and animation assets and related items for the logic of the First and Third Person Character Controllers

/Assets/_Standard Assets/Prototyping/
  • Contains the assets for the Pro Builder protoyping environment built to demonstrate the Character Controllers in

Scenes

/Assets/_Standard Assets/Prototyping/Scenes/Protoland
  • Main prototyping and demo scene for the Character Controller project

/Assets/_Standard Assets/Characters/Exmpales/SimpleMovementController/Scenes/SimpleMovementController
  • Example scene to demonstrate a simple custom character controller using both the Default Unity Character Controller as well as the new C# Open Character Controller

/Assets/_Standard Assets/Characters/Exmpales/SimpleMovementEffects
  • Example scene that demonstates how to set up different Movement Effects on the contactable meshes in a scene to allow for per-material footstep sounds and particles

/Assets/_Standard Assets/Characters/Exmpales/SimpleMovementController/Scenes/SimpleNavMeshInputController
  • Example scene to demonstrate a simple NavMesh input driven character controller

standard-assets-characters's People

Contributors

alec24bg avatar chippit avatar dave24bg avatar diorgo24bit avatar gabrielw-us avatar glabute avatar guerro323 avatar h24bg avatar kevin24bitgames avatar kevinnoelm avatar lukelamothe avatar projectx1989 avatar redmoonlily avatar steph24bg avatar willgoldstone avatar willgoldstonesd avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

standard-assets-characters's Issues

Editor crashes after including SAC in my own project

After I tried the new SAC in a separate project I decided to copy the _StandardAssets and Gizmo folders to my own project. Got compile errors because Cinemachine and InputSystem were not installed. Installed Cinemachine and then InputSystem (I think I chose the same version as in the Github project, version 1.0.0 preview, not the preview.1 version). Then I got a message about upgrading native backend, which required a restart of the editor. Clicked yes and the editor closed.

And then my project wouldn't open anymore. Unity 2019.2.6 starts, I get a message Compiling Assembly Definition Files scripts and then the editor crashes.
I tried restarting the editor and then restarting the PC, no effect. Tried removing the inputsystem line from the manifest.json in the Packages folder, but that also made no difference.
Decided to go all the way back and delete the _StandardAssets folder and the cinemachine line from the manifest. Now I could open the project again, thankfully.

Tried to do it in a different order, first import Cinemachine, but already at that step the editor crashed again. After I removed the cinemachine line again from the manifest and reopened the project it started recompiling pretty much everything!

I'm not sure if this is related to SAC or InputSystem or Cinemachine, but something is causing the editor to crash.

Where is InputActionAssetReference?

Have gotten multiple compiler errors due to not having a namespace labelled InputActionAssetReference. Where is it supposed to be?

Assets\_Standard Assets\Characters\Scriptable Objects\Control Map\StandardControls.cs(9,33): error CS0246: The type or namespace name 'InputActionAssetReference' could not be found (are you missing a using directive or an assembly reference?)

How can i import SAC as a package?

I simply create a package.json file in ./Assets/_Standard Assets/Characters fold, and when import it from other project i got these error:
image

Any suggestion?

Missing "SettingsScope"

Hey Unity, I've just pulled these files from the repo here and put everything into a new 2018.3 project.
I get this compile error and I am unable to load up the test scene.

Library\PackageCache\[email protected]\PostProcessing\Editor\Utils\GlobalSettings.cs(55,72): error CS0103: The name 'SettingsScope' does not exist in the current context

sacerror

I took a look at the file and it is has a #if UNITY_EDITOR directive...I am confused but I hope I've given enough context here to find a solution to the problem. Any guidance would be great, thanks!

State of this project ?

Hi,

I'm integrating a character controller in Unity and discovered SAC, what is the state of the project?

Thanks

The UI Virtual Touch Zone is not working

The UI Virtual Touch Zone does not act like a touch zone. When a finger is pressed onto the screen and dragged across it, it functions like a joystick, continuing to provide a non-zero vector output while the finger is stationary.

The output value of the ui virtual touch zone should be Vector2.zero if a finger is held stationary on/after a drag, but it still produces non-zero values. I have tried to fix this myself but the documentation surrounding the events of the touch zones is lacking.

Here is an example of others encountering the same problem on the unity forums: https://forum.unity.com/threads/virtual-touch-zone-to-rotate-camera-android.1191586/

Asset for 2022.x

Hi all, I would like to know if this asset is too installable in a Unity 2022.3 project. Thank you

New timeline?

Thanks for making this asset. I'm not able to get it working because of lots of dependency errors. I'd rather wait for this to become a package, but the docs say:

We will ship this content as a package in 2019.

Now that we're in 2020, is there an updated timeline for this package?

100+ "never assigned to" warnings.

When I import this package I get over 100 warnings in the console, regarding variables never assigned to. Is there a way to fix this?

Feature request: IK example

It would be great if you could add an example of the third person character using Unity's Animation Rigging IK.

Jittering & unexpected turnaround on moving platform

as you can see, only when the platform is rotating and after release moving input, the character automatically turn around to face platform's forward direction (last couple of frames in gif)
mp-bug

Another problem is jittering when move down slope:
mp-bug2

also found some other jittering cases, happens quite often but i can't reproduce them (happens even on flat plane)

Rename Editor namespace

The Editor namespace causes conflicts with other projects and classes that inherit from UnityEditors.Editor. I re-namespaced all SAC Editors locally to StandardAssets.Editor to resolve it in my local projects.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.