public void NewGazeTarget(HeadLookController headlook, GameObject newTarget) { headlook.target = newTarget.transform.position; randomEyesComp = headlook.gameObject.GetComponent <RandomEyes3D>(); randomEyesComp.lookTarget = newTarget; randomEyesComp.lookTargetTracking = newTarget; }
public MultiCharacterAgentController(SingleCharacterDemo.ScenarioData scenarioData, RolePlayCharacterAsset rpc, IntegratedAuthoringToolAsset iat, UnityBodyImplement archetype, Transform anchor, DialogController dialogCrt) { m_scenarioData = scenarioData; m_iat = iat; m_rpc = rpc; m_dialogController = dialogCrt; _body = GameObject.Instantiate(archetype); UnityEngine.Random.InitState((int)System.DateTime.Now.Ticks); var r = UnityEngine.Random.Range(0, 600); _body.GetComponentInChildren <Animator>().Play(0, -1, r); _body.tag = rpc.CharacterName.ToString(); just_talked = false; lastAction = null; var t = _body.transform; t.SetParent(anchor, false); t.localPosition = Vector3.zero; t.localRotation = Quaternion.identity; t.localScale = Vector3.one; HeadLookController head = _body.GetComponentInChildren <HeadLookController>(); head._target = GameObject.FindGameObjectWithTag("MainCamera"); m_dialogController.SetCharacterLabel(m_rpc.CharacterName.ToString()); // m_rpc.Perceive(new Name[] { EventHelper.PropertyChange("DialogueState(Player)", "Start", "world") }); lastDialog = new DialogueStateActionDTO(); }
// Update is called once per frame void Update() { for (uint i = 0; i < agents.Length; i++) { //Transform walker = agents[i].unity_walker; //float x = agents[i].anim_x.Evaluate(Time.time); float x = GetCenterOfMassX(reader, i, Time.time); //float z = agents[i].anim_z.Evaluate(Time.time); float z = GetCenterOfMassZ(reader, i, Time.time); agents[i].unity_walker.localPosition = new Vector3(x, 18, z); //Might be very dumb //float o = agents[i].anim_o.Evaluate(Time.time); float ox = GetOrientationX(reader, i, Time.time); //float o2 = agents[i].anim_o.Evaluate(Time.time - Time.fixedDeltaTime); float oz = GetOrientationZ(reader, i, Time.time); //Rotate the character by the change in its rotation from the last frame. //agents[i].unity_walker.Rotate(0,o-o2,0); float angle = Mathf.Atan2(ox, oz); Quaternion dfa = new Quaternion(0, angle, 0, 1); agents[i].unity_walker.localRotation = dfa; // localRotation(0, angle, 0); //Update the head's target. float tx = GetTargetX(reader, i, Time.time); float ty = 18.0f; float tz = GetTargetZ(reader, i, Time.time); HeadLookController otherscript = agents[i].unity_walker.GetComponent <HeadLookController>(); otherscript.target = new Vector3(tx, ty, tz); } }
/************** HEAD LOOK **************/ public void AddHeadLook() { //Dont add multiple scripts if (currentImportedModel.GetComponent <HeadLookController>()) { return; } HeadLookController hlc = currentImportedModel.AddComponent <HeadLookController>(); headLookAdded = true; HeadLookUI.SetActive(true); hlc.target = GameObject.Find("Camera (eye)").transform.position; //Set target for HLC hlc.overrideAnimation = true; hlc.rootNode = currentImportedModel.transform; //Set values for Neck and Head segment headAndNeckSegment.thresholdAngleDifference = 0; headAndNeckSegment.bendingMultiplier = 0.7f; headAndNeckSegment.maxAngleDifference = 30; headAndNeckSegment.maxBendingAngle = 80; headAndNeckSegment.responsiveness = 4; //Scan imported model for all bones and list them for the UI modelChildrenBones = currentImportedModel.GetComponentsInChildren <Transform>(); AddBonesToDropdown(NeckDropdown); AddBonesToDropdown(HeadDropdown); }
protected override void OnStart() { _headLook = GetComponent <HeadLookController>(); _timeLeftWandering = Settings.WanderTime; _timeSpentIdling = 0; _wanderZone = new Bounds(Vector3.zero, Vector3.zero); }
private void Start() { this.controller = GetComponent <HeadLookController>(); this.animator = GetComponent <Animator>(); itweenAnimationName = this.gameObject.name + "HeadLookAnimation"; iTween.Init(this.gameObject); }
private void Start() { this.controller = GetComponent<HeadLookController>(); this.animator = GetComponent<Animator>(); itweenAnimationName = this.gameObject.name + "HeadLookAnimation"; iTween.Init(this.gameObject); }
private void Awake() { if (this._head == null) { this._head = this.transform; } this._headLookController = this.GetComponent <HeadLookController>(); }
void Start() { // モデル未指定時にはunitychanを探します。 if (character == null) { character = GameObject.Find("unitychan"); } headLookController = character.GetComponent <HeadLookController>(); }
void Awake() { Transform = GetComponent<Transform>(); Self = gameObject; CharDetails = GetComponent<CharacterDetails>(); Animation = GetComponent<Animation>(); ViewController = GetComponent<HeadLookController>(); }
//////////////////////////////////////////////////////////////////////////// private void Awake() { animator = GetComponent <Animator>(); lookController = GetComponent <HeadLookController>(); if (driver == null) { SetDriver(GetComponentInParent <IBipedDriver>()); } }
private void Awake() { if (this._eye == null) { this._eye = this.transform; } this._seeing = false; this._headLookController = this.GetComponent <HeadLookController>(); this._defaultRotation = this._eye.transform.rotation; }
void Start() { m_Animator = GetComponent <Animator>(); m_HeadLookController = GetComponent <HeadLookController>(); m_AICharacterControl = GetComponent <AICharacterControl>(); m_AudioSource = GetComponent <AudioSource>(); //setMoveTarget(player.position, 15f); //setMoveTarget(objectTransform, 15f); setRandomMoveTarget(); }
private void ToggleDisableLocomotion(bool state) { disableLocomotion = state; for (int c = 0; c < clones.Count; c++) { LegAnimator legA = clones[c].GetComponent(typeof(LegAnimator)) as LegAnimator; legA.enabled = !state; HeadLookController head = clones[c].GetComponent(typeof(HeadLookController)) as HeadLookController; head.enabled = !state; } }
protected void Start() { rb = GetComponent<Rigidbody>(); anim = GetComponent<Animator>(); hlc = GetComponent<HeadLookController>(); head = transform.Find("Head").gameObject; LHand = Helper.FindComponentInChildWithTag<Transform>(gameObject, "Left Hand"); RHand = Helper.FindComponentInChildWithTag<Transform>(gameObject, "Right Hand"); xAxisClamp = 0.0f; }
private HeadLookController headLC; // HeadLookControllerコンポーネント // Use this for initialization void Start() { // HeadObjのタグが付いたオブジェクトを取得 FindHeadObjTag(); blink = BLINK_OFF; smile = SMILE_OFF; // HeadLookControllerコンポーネントを取得し非アクティブにする headLC = this.GetComponent <HeadLookController>(); headLC.enabled = false; }
void Start() { movement.ccOrigin = (movement.ccOrigin == null) ? this.transform : movement.ccOrigin; // helpers = new AIHelpers(); agent = this.GetComponent <NavMeshAgent>(); agent.speed = movement.walkSpeed; senses.eyes = (senses.eyes == null) ? transform : senses.eyes; currentState = AIStates.Calm; waypoint_target = movement.waypoints[0]; hlController = (hlController == null) ? GetComponent <HeadLookController>() : hlController; FindAllEnemies(); }
// Use this for initialization void Start () { headLookCont = GetComponent<HeadLookController>(); playerManager = GetComponent<PlayerManager>(); //thirdPersonController = GetComponent<ThirdPersonController>(); if (headLookCont==null) Debug.Log("Head Look Controller is null!"); //position when character is not on ground lookOriginalTransform = new Vector3(0 , 0, 10); }
private void Awake() { AssignDestinationPoints(); gameManager = FindObjectOfType <GameController>(); carScript = FindObjectOfType <ThiefCarScript>(); alarmController = FindObjectOfType <AlarmLight>(); soundScript = thiefAnim.gameObject.GetComponent <Footsteps>(); player = GameObject.FindGameObjectWithTag("Player").transform; headScript = GetComponent <HeadLookController>(); agent = GetComponent <NavMeshAgent>(); col = GetComponent <SphereCollider>(); agent.autoTraverseOffMeshLink = false; }
// Use this for initialization void Start() { headLookCont = GetComponent <HeadLookController>(); playerManager = GetComponent <PlayerManager>(); //thirdPersonController = GetComponent<ThirdPersonController>(); if (headLookCont == null) { Debug.Log("Head Look Controller is null!"); } //position when character is not on ground lookOriginalTransform = new Vector3(0, 0, 10); }
// Update is called once per frame void Update() { PetController colPet = pet.GetComponent <PetController>(); //コントローラのスクリプト取得 headLook = refObj2.GetComponent <HeadLookController>(); Transform playerPos = player.transform; Transform handPos = hand.transform; //視線先設定 if (colPet.dirStart == 1) //ハンドが離脱して30フレーム経過した { //次の視線先ターゲットをプレイヤー(カメラ)に設定 nextObj = player; nextTarget = playerPos; //現在の視線先ターゲットをFaceComplisionに切り替え headLook.lookTarget = transform; colPet.dirStart = 0; } else if (colPet.dirStart == 2 && headLook.lookTarget != handPos) //ペットとハンドが衝突した { Debug.Log("ターゲットをFaceComplisionに一時移動"); //次の視線先ターゲットをハンドに設定 nextObj = hand; nextTarget = handPos; //現在の視線先ターゲットをFacaComplisionに切り替え headLook.lookTarget = transform; colPet.dirStart = 0; } //移動距離 if (nextTarget == null) { direction = headLook.lookTarget.position - transform.position; } else { direction = nextTarget.position - transform.position; } //移動 direction = direction.normalized; transform.position = transform.position + (direction * speed * Time.deltaTime); }
private void Reset() { if (!searchNearPlayer) { searchNearPlayer = gameObject.GetComponent <SearchNearPlayer>(); } if (!facialController) { facialController = GameObject.FindWithTag("Model").GetComponent <FacialController>(); } if (!headLookController) { headLookController = GameObject.FindWithTag("Model").GetComponent <HeadLookController>(); } if (!anime) { anime = GameObject.FindWithTag("Model").GetComponent <Animator>(); } }
// Use this for initialization void Start() { thirdPersonController = GetComponent <ThirdPersonController>(); thirdPersonFlyingController = GetComponent <ThirdPersonFlyingController>(); mouseOrbit = GameObject.Find("LookTarget").GetComponent <MouseOrbit>(); mouseAimFlying = GameObject.Find("LookTarget").GetComponent <MouseFlying>(); //playerLookTarget = GetComponent<PlayerLookTarget>(); headLookController = GetComponent <HeadLookController>(); _lookDirection = thirdPersonController.MoveDirection(); _inAirVelocity = 0.0f; _health = 100; _catsCollected = 0; }
// Use this for initialization void Start() { thirdPersonController = GetComponent<ThirdPersonController>(); thirdPersonFlyingController = GetComponent<ThirdPersonFlyingController>(); mouseOrbit = GameObject.Find("LookTarget").GetComponent<MouseOrbit>(); mouseAimFlying = GameObject.Find("LookTarget").GetComponent<MouseFlying>(); //playerLookTarget = GetComponent<PlayerLookTarget>(); headLookController = GetComponent<HeadLookController>(); _lookDirection = thirdPersonController.MoveDirection(); _inAirVelocity = 0.0f; _health = 100; _catsCollected = 0; }
// Use this for initialization void Start () { armIK = GetComponent<ArmIK>(); gunAimer = GetComponent<GunAimer>(); lookController = GetComponent<HeadLookController>(); }
internal float AnimationSpeed = 1.0f; //How fast the animations should play. #endregion void Awake() { //Cache our frequent lookups. Transform = GetComponent<Transform>(); Self = gameObject; //Get our basic components. Animation = GetComponent<Animation>(); NavAgent = GetComponent<NavMeshAgent>(); ViewController = GetComponent<HeadLookController>(); CharDetails = GetComponent<CharacterDetails>(); NavAgent.enabled = false; //We disable the nav agent, so that we can move the Agent to its starting position (Moving with NavAgent enabled causes path finding and we simply want to "place" them at the start.) if(!StaticDemo) Transform.position = BedTarget.position; //Place the agent at the start. MoveDirection = Transform.TransformDirection(Vector3.forward); //Get their initial facing direction. //Add the basic animation info. AnimationKeys = new Dictionary<string, string>(); AnimationKeys.Add("run", "VB_Run"); AnimationKeys.Add("walk", "VB_Walk"); AnimationKeys.Add("idle", "VB_Idle"); AnimationKeys.Add("greet", "VB_Greeting"); AnimationKeys.Add("talk", "VB_Talk"); Inventory = new AgentInventory(this); }
// Use this for initialization void Start() { controller = GameObject.FindObjectOfType<HeadLookController>(); }
// Use this for initialization void Start() { controller = GameObject.FindObjectOfType <HeadLookController>(); }
private void LateUpdate() { if (Time.deltaTime == 0f) { return; } Vector3[] array = new Vector3[this.nonAffectedJoints.Length]; for (int i = 0; i < this.nonAffectedJoints.Length; i++) { IEnumerator enumerator = this.nonAffectedJoints[i].joint.GetEnumerator(); try { if (enumerator.MoveNext()) { Transform transform = (Transform)enumerator.Current; array[i] = transform.position - this.nonAffectedJoints[i].joint.position; } } finally { IDisposable disposable = enumerator as IDisposable; if (disposable != null) { disposable.Dispose(); } } } BendingSegment[] array2 = this.segments; for (int j = 0; j < array2.Length; j++) { BendingSegment bendingSegment = array2[j]; Transform transform2 = bendingSegment.lastTransform; if (this.overrideAnimation) { for (int k = bendingSegment.chainLength - 1; k >= 0; k--) { transform2.localRotation = bendingSegment.origRotations[k]; transform2 = transform2.parent; } } Quaternion rotation = bendingSegment.firstTransform.parent.rotation; Quaternion rotation2 = Quaternion.Inverse(rotation); Vector3 normalized = (this.target - bendingSegment.lastTransform.position).normalized; Vector3 vector = rotation2 * normalized; float num = HeadLookController.AngleAroundAxis(bendingSegment.referenceLookDir, vector, bendingSegment.referenceUpDir); Vector3 axis = Vector3.Cross(bendingSegment.referenceUpDir, vector); Vector3 dirA = vector - Vector3.Project(vector, bendingSegment.referenceUpDir); float num2 = HeadLookController.AngleAroundAxis(dirA, vector, axis); float f = Mathf.Max(0f, Mathf.Abs(num) - bendingSegment.thresholdAngleDifference) * Mathf.Sign(num); float f2 = Mathf.Max(0f, Mathf.Abs(num2) - bendingSegment.thresholdAngleDifference) * Mathf.Sign(num2); num = Mathf.Max(Mathf.Abs(f) * Mathf.Abs(bendingSegment.bendingMultiplier), Mathf.Abs(num) - bendingSegment.maxAngleDifference) * Mathf.Sign(num) * Mathf.Sign(bendingSegment.bendingMultiplier); num2 = Mathf.Max(Mathf.Abs(f2) * Mathf.Abs(bendingSegment.bendingMultiplier), Mathf.Abs(num2) - bendingSegment.maxAngleDifference) * Mathf.Sign(num2) * Mathf.Sign(bendingSegment.bendingMultiplier); num = Mathf.Clamp(num, -bendingSegment.maxBendingAngle, bendingSegment.maxBendingAngle); num2 = Mathf.Clamp(num2, -bendingSegment.maxBendingAngle, bendingSegment.maxBendingAngle); Vector3 axis2 = Vector3.Cross(bendingSegment.referenceUpDir, bendingSegment.referenceLookDir); bendingSegment.angleH = Mathf.Lerp(bendingSegment.angleH, num, Time.deltaTime * bendingSegment.responsiveness); bendingSegment.angleV = Mathf.Lerp(bendingSegment.angleV, num2, Time.deltaTime * bendingSegment.responsiveness); vector = Quaternion.AngleAxis(bendingSegment.angleH, bendingSegment.referenceUpDir) * Quaternion.AngleAxis(bendingSegment.angleV, axis2) * bendingSegment.referenceLookDir; Vector3 referenceUpDir = bendingSegment.referenceUpDir; Vector3.OrthoNormalize(ref vector, ref referenceUpDir); Vector3 forward = vector; bendingSegment.dirUp = Vector3.Slerp(bendingSegment.dirUp, referenceUpDir, Time.deltaTime * 5f); Vector3.OrthoNormalize(ref forward, ref bendingSegment.dirUp); Quaternion to = rotation * Quaternion.LookRotation(forward, bendingSegment.dirUp) * Quaternion.Inverse(rotation * Quaternion.LookRotation(bendingSegment.referenceLookDir, bendingSegment.referenceUpDir)); Quaternion lhs = Quaternion.Slerp(Quaternion.identity, to, this.effect / (float)bendingSegment.chainLength); transform2 = bendingSegment.lastTransform; for (int l = 0; l < bendingSegment.chainLength; l++) { transform2.rotation = lhs * transform2.rotation; transform2 = transform2.parent; } } for (int m = 0; m < this.nonAffectedJoints.Length; m++) { Vector3 vector2 = Vector3.zero; IEnumerator enumerator2 = this.nonAffectedJoints[m].joint.GetEnumerator(); try { if (enumerator2.MoveNext()) { Transform transform3 = (Transform)enumerator2.Current; vector2 = transform3.position - this.nonAffectedJoints[m].joint.position; } } finally { IDisposable disposable2 = enumerator2 as IDisposable; if (disposable2 != null) { disposable2.Dispose(); } } Vector3 toDirection = Vector3.Slerp(array[m], vector2, this.nonAffectedJoints[m].effect); this.nonAffectedJoints[m].joint.rotation = Quaternion.FromToRotation(vector2, toDirection) * this.nonAffectedJoints[m].joint.rotation; } }
private void Awake() { this._headLookController = this.GetComponent <HeadLookController>(); this._lookTarget = this.GetComponent <LookTarget>(); }
// Use this for initialization void Start() { controller = GetComponent <HeadLookController>(); }
void Start() { headController = GetComponent <HeadLookController>(); FPSController = GameObject.Find("FPSController"); }
private void Awake() { this._headLookController = this.GetComponent <HeadLookController>(); }
public void updateHeadController(string TargetName) { HeadLookController head = _body.GetComponentInChildren <HeadLookController>(); head._target = GameObject.FindGameObjectWithTag(TargetName); }
private void Awake() { _headLookController = GetComponent <HeadLookController>(); }
// Use this for initialization void Start() { armIK = GetComponent <ArmIK>(); gunAimer = GetComponent <GunAimer>(); lookController = GetComponent <HeadLookController>(); }