Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
brasil:courses:blender_unity:unity:4_moving_objects [2026/08/25 19:17] – [The Earth rotates...] yannbrasil:courses:blender_unity:unity:4_moving_objects [2026/09/17 20:16] (Version actuelle) – [Exercise] yann
Ligne 79: Ligne 79:
  
 <code csharp> <code csharp>
-using Unity.AppUI.UI; 
 using UnityEngine; using UnityEngine;
    
Ligne 136: Ligne 135:
  
 {{ :brasil:courses:blender_unity:unity:unityconsoledebug.png |}} {{ :brasil:courses:blender_unity:unity:unityconsoledebug.png |}}
 +
 +Hide and display again : we need to hide the children of the paretn GameObkject which have the script : script is disabled when parent GameObject is disabled.
 +
 +<code csharp>
 +//using Unity.App.UI;
 +using UnityEngine;
 +
 +public class earthManager : MonoBehaviour
 +{
 +    // Start is called once before the first execution of Update after the MonoBehaviour is created
 +    void Start()
 +    {
 +        
 +    }
 +
 +    // Update is called once per frame
 +    void Update()
 +    {
 +        // if the spacebar is pressed
 +        //if (Input.GetKeyDown("space")) old input system
 +        if (UnityEngine.InputSystem.Keyboard.current.spaceKey.wasPressedThisFrame)
 +        {
 +            // log a message to the console
 +            Debug.Log("The spacebar was pressed");
 +
 +            // `this` represents the script instance
 +            // `this.gameObject` provides access to the script's GameObject
 +            // `activeSelf` indicates the GameObject's visibility
 +            // can't deactivate and reactivate the parent directly -> scripts are disabled when object is inactive
 +            // gets all the direct children from the parent through "Transform" property, because every object has a transform property
 +            foreach (Transform child in this.transform) 
 +                {
 +                bool isActive = child.gameObject.activeSelf;
 +                if (isActive)
 +                {
 +                    // if the GameObject is active (visible)
 +                    Debug.Log("Hiding the 'earth' GameObject");
 +
 +                    // set the GameObject to inactive (hide it)
 +                    child.gameObject.SetActive(false);
 +                }
 +                 
 +                else
 +                {
 +                    // if the GameObject is inactive (not visible)
 +                    Debug.Log("Showing the 'earth' GameObject");
 +
 +                    // set the GameObject to active (show it)
 +                    child.gameObject.SetActive(true);
 +                }
 +                
 +            }
 +
 +            
 +        }
 +    }
 +}
 +
 +</code>
  
 ===== The Earth rotates... ===== ===== The Earth rotates... =====
Ligne 168: Ligne 226:
 Set the Y-axis to 50. Set the Y-axis to 50.
  
-{{:brasil:courses:blender_unity:unity:unityearthrotationscript.png|}}+{{ :brasil:courses:blender_unity:unity:unityearthrotatescriptannoted.png?1024 |}}
  
 This variable is of type Vector3, meaning it’s a 3-dimensional vector that can store a value for the X axis, a value for the Y axis, and a value for the Z axis. This variable is of type Vector3, meaning it’s a 3-dimensional vector that can store a value for the X axis, a value for the Y axis, and a value for the Z axis.
Ligne 177: Ligne 235:
 In the editor, you can see in real time that your script is changing the GameObject’s rotation along the Y-axis. In the editor, you can see in real time that your script is changing the GameObject’s rotation along the Y-axis.
  
-{{:brasil:courses:blender_unity:unity:unitytransformrotationupdated.png|}}+{{ :brasil:courses:blender_unity:unity:unityearthrotationvalue.png |}}
  
 ===== Conclusion ===== ===== Conclusion =====
Ligne 185: Ligne 243:
 ===== Exercise ===== ===== Exercise =====
  
-  - Add a Milky Way skybox; to do this, use the Asset Store (Milky Way Skybox)+  - Add a Milky Way skybox; to do this, use the Asset Store (Milky Way Skybox) or the file {{ :brasil:courses:blender_unity:unity:milkywayskybox.unitypackage |}}
   - Make the moon rotate on its axis   - Make the moon rotate on its axis
   - Make the moon orbit the Earth   - Make the moon orbit the Earth
Ligne 192: Ligne 250:
 {{:brasil:courses:blender_unity:unity:earthandmoon.png?1024|}} {{:brasil:courses:blender_unity:unity:earthandmoon.png?1024|}}
  
-{{ :brasil:courses:blender_unity:unity:earthturning.mp4 |}}+{{ :brasil:courses:blender_unity:unity:earthandmoonrotating.mp4 |}} 
 + 
 +<code csharp | turnAround.cs> 
 + 
 +using UnityEngine; 
 + 
 +public class TurnAround : MonoBehaviour 
 +{ 
 +    // Drag & drop the player in the inspector 
 +    // public Transform Target; 
 +    public GameObject Target; 
 +    public float RotationSpeed = 1; 
 +    public float CircleRadius = 1; 
 +    public float ElevationOffset = 0; 
 + 
 +    private Vector3 positionOffset; 
 +    private float angle; 
 +    //private Transform TargetT; 
 + 
 +    // Start is called before the first frame update 
 +    void Start() 
 +    { 
 +        //TargetT = Target.transform; 
 +    } 
 + 
 + 
 +    void Update() 
 +    { 
 +        positionOffset.Set(Mathf.Cos(angle) * CircleRadius, ElevationOffset, Mathf.Sin(angle) * CircleRadius); 
 +        transform.position = Target.transform.position + positionOffset; 
 +        angle += Time.deltaTime * RotationSpeed; 
 +    } 
 + 
 + } 
 +</code> 
 + 
 +<code csharp | lookAt.cs> 
 +using UnityEngine; 
 + 
 +public class LookAt : MonoBehaviour 
 +{ 
 +    public Transform target; 
 +    // Start is called before the first frame update 
 +    void Start() 
 +    { 
 + 
 +    } 
 + 
 +    // Update is called once per frame 
 +    void Update() 
 +    { 
 +        // Rotate the camera every frame so it keeps looking at the target 
 +        transform.LookAt(target); 
 + 
 +        // Same as above, but setting the worldUp parameter to Vector3.left in this example turns the camera on its side 
 +        //transform.LookAt(target, Vector3.left); 
 +    } 
 +} 
 +</code>
brasil/courses/blender_unity/unity/4_moving_objects.1787678237.txt.gz · Dernière modification : de yann
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0