ITCH.IO TUTORIAL DE MIS JUEGOS, VIDEOS CON AUDIO.




ANIMATOR, ANIMATION, CONTROLLER, COLLIDER, UNITY, BLENDER,
aqui el resultado final----https://asaco41515.itch.io/ovni20nivel40

 Me salen ideas como burbujas una detras de otra.

https://asaco41515.itch.io/ovniestudio4niveles




nivel 4 del juego ovni que estoy colgando en itch.io, explicacion de lo que estoy haciendo, aqui esta practicamente terminado, en los videos de youtube tambien se puede ver en texto lo que estoy explicando.....
juega este nivel esta genial pero aun e de acabarlo.....


...https://asaco41515.itch.io/ovni20nivel4actualizado

En este nivel que estoy trabajando de mi juego, are 5 niveles solamente para poder terminarlo, mejoro el personaje player en sus movimientos al caminar y e cambiado el fondo musical.

Este nivel me lo a inpirado una película del oeste de caravanas e indios atacándola..
El cine es muy buena fuente de inspiración para hacer juegos.

Tambien e puesto una cámara extra en el que se visualiza desde otro angulo mi personaje y sus disparos .







COMO HACER UN MARCADOR DE PUNTOS CON UNITY
 _____________________________________________________________
EN C#
________________________________________________________________
// Include the namespace required to use Unity UI
using UnityEngine.UI;

using System.Collections;

public class bapuntos : MonoBehaviour {

    // Create public variables for player speed, and for the Text UI game objects
    public float speed;
    public Text countText;
    public Text winText;

    // Create private references to the rigidbody component on the player, and the count of pick up objects picked up so far
    private Rigidbody rb;
    private int count;///










    /// //////////////////////////////////////////
    ///

    //private int PUNTOS;///










    /// /////////////////////////////////////////////////
    ///


    // At the start of the game..
    void Start ()
    {
        // Assign the Rigidbody component to our private rb variable
        rb = GetComponent();

        // Set the count to zero
        count = 0;

        // Run the SetCountText function to update the UI (see below)
        SetCountText ();

        // Set the text property of our Win Text UI to an empty string, making the 'You Win' (game over message) blank
        winText.text = "";
    }

    // Each physics step..












    //void FixedUpdate ()
    //{
        // Set some local float variables equal to the value of our Horizontal and Vertical Inputs
        //float moveHorizontal = Input.GetAxis ("Horizontal");
        //float moveVertical = Input.GetAxis ("Vertical");

        // Create a Vector3 variable, and assign X and Z to feature our horizontal and vertical float variables above
        //Vector3 movement = new Vector3 (moveHorizontal, 0.0f, moveVertical);

        // Add a physical force to our Player rigidbody using our 'movement' Vector3 above,
        // multiplying it by 'speed' - our public player speed that appears in the inspector
    //    rb.AddForce (movement * speed);
    //}












    // When this game object intersects a collider with 'is trigger' checked,
    // store a reference to that collider in a variable named 'other'..
    void OnTriggerEnter(Collider other)
    {
        // ..and if the game object we intersect has the tag 'Pick Up' assigned to it..



        if (other.gameObject.CompareTag ("popo"))


            //if (other.gameObject.CompareTag ("Pick Up 1"))


        {
            // Make the other game object (the pick up) inactive, to make it disappear
            other.gameObject.SetActive (false);///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            // Add one to the score variable 'count'
            count = count + 1;

            // Run the 'SetCountText()' function (see below)
            SetCountText ();
        }
    }

    // Create a standalone function that can update the 'countText' UI and check if the required amount to win has been achieved
    void SetCountText()
    {
        // Update the text field of our 'countText' variable
        //countText.text = "Count: " + count.ToString ();

        countText.text = "puntos: " + count.ToString ();
        // Check if our 'count' is equal to or exceeded 12
        if (count >= 18)
        {
            // Set the text value of our 'winText'
            winText.text = "You Win!GANASTES";
        }
    }
}

_____________________________________________________________________________
________________________________________________________________________________



https://asaco41515.itch.io/los-7-siete-malos

Juega directamente sin instalar nada



------------------------c# --------------------------script de como poner sonido con las capsulas que puntuan y suman.
------------------------------------------------------------------------------------------------------------------
 https://asaco41515.itch.io/77puntos3
https://asaco41515.itch.io/77puntosedificando
--------------------------------------------------------------------------------------------------------------

using System.Collections.Generic;
using UnityEngine;

public class personalsonido : MonoBehaviour {


    public AudioSource tickSource;


   public float Destroy = 0.2f;
    // Use this for initialization
    void Start () {



        tickSource = GetComponent<AudioSource> ();



    }

    void Update () {
    }

    void OnCollisionEnter (Collision collision){
        if (collision.gameObject.tag == "PUYO modelo"){


            tickSource.Play ();


        Destroy (gameObject, 0.2f); 


           
}
   
    }

}


Descripción de la demo y comentarios de realización:

La principal idea es que el juego sea muy corto, para poder terminarlo, así que pensé que un sistema de puntuación, con un tope de puntos, que se puede manipular con premio al final, es una estupenda idea, ya que así puedo ir alargando el proceso o acortándolo según me baya entusiasmando el juego.

En el juego e conseguido introducir animaciones externas, no echas por mi, que seria un proceso muy lento a los personajes que estoy introduciendo, de momento el juego si no sigo ampliándolo termina al conseguir el personaje que manejamos 77puntos, entonces sale una pantalla con el personaje protagonista flotando en el aire y un cartelazo con el texto ¡¡¡GANASTE EL JUEGO¡¡¡¡

No es para tirar cohetes pero al ir destruyendo enemigos y recogiendo los cubos con sus capsulas y escuchando un sonido de que el marcador va sumando puntos, te vas picando para seguir jugando y ver que pasara al llegar a los 77 puntos, creo que consigo mantener cierto interés de ver que pasa al final.

Aun tengo que trabajar el modelado del cañón, que lo are con blender,, quitar algún sonido o cambiarlo, que creo se hace irritante a los 5 minutos de empezar el juego por ser excesivamente repetitivo, y agregar un fogonazo ala especie de bazo oca que maneja mi personaje yebandolo insertado en el hombro.

He aprendido a poner un efecto de viento con unity, WindZone, que se añade desde GameObject luego 3D Object.

He descubierto un programa muy interesante para modelar edificaciones rápidamente y con incrible sencillez que se pueden exportar en formato “ obj.”, formato que reconoce y se puede manipular con blender e unity, MagicaVoxel, me encanta este descubrimiento, creo que es algo limitado ala hora de texturizarlo pero ya encontrare algún apaño o solucion para que resulte mas interesante.

Tambien e aprendido a insertar una película de vídeo pero solo me funciona cuando compilo el juego para pc al compilarlo para jugar en web directamente no funciona, tengo que seguir estudiando y practicando a tope todos los temas....y aprendí un script en c# para emitir sonidos personalizados con el nombre del tag de los elementos que quiero me agan los efectos.


using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class personalsonido : MonoBehaviour {



    public AudioSource tickSource;






    public float Destroy = 0.2f;
    // Use this for initialization
    void Start () {






        tickSource = GetComponent ();









    }

    void Update () {
    }

    void OnCollisionEnter (Collision collision){
        if (collision.gameObject.tag == "PUYO modelo"){



            tickSource.Play ();





        Destroy (gameObject, 0.2f); 


            //Destroy (gameObject, 0.2f); 





    
    }}

}

No hay comentarios:

Publicar un comentario