Skip to content

EvSanz/IAV-P1

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IAV - Base para la Práctica 1

Autores

  • Nombre completo (Usuario GitHub)
  • Nombre completo (Usuario GitHub)
  • Nombre completo (Usuario GitHub)

Propuesta

Esta práctica consiste en...

El avatar del jugador será el flautista, que...

Las ratas tendrán el siguiente comportamiento:...

...

Punto de partida

Se parte de un proyecto base de Unity proporcionado por el profesor aquí: https://github.com/Narratech/IAV-P1

Consiste en...

Diseño de la solución

Lo que vamos a realizar para resolver esta práctica es...

El pseudocódigo del algoritmo de llegada utilizado es:

class Arrive:
    character: Kinematic
    target: Kinematic

    maxAcceleration: float
    maxSpeed: float

    # The radius for arriving at the target.
    targetRadius: float

    # The radius for beginning to slow down.
    slowRadius: float

    # The time over which to achieve target speed.
    timeToTarget: float = 0.1

    function getSteering() -> SteeringOutput:
        result = new SteeringOutput()

        # Get the direction to the target.
        direction = target.position - character.position
        distance = direction.length()

        # Check if we are there, return no steering.
        if distance < targetRadius:
            return null

        # If we are outside the slowRadius, then move at max speed.
        if distance > slowRadius:
            targetSpeed = maxSpeed
        # Otherwise calculate a scaled speed.
        else:
            targetSpeed = maxSpeed * distance / slowRadius

        # The target velocity combines speed and direction.
         targetVelocity = direction
        targetVelocity.normalize()
        targetVelocity *= targetSpeed

        # Acceleration tries to get to the target velocity.
        result.linear = targetVelocity - character.velocity
        result.linear /= timeToTarget

        # Check if the acceleration is too fast.
        if result.linear.length() > maxAcceleration:
            result.linear.normalize()
            result.linear *= maxAcceleration

        result.angular = 0
        return result

El pseudocódigo del algoritmo de movimiento de huida es...

También es posible mostrar diagramas...

diagram

Mejor que insertando imágenes, se puede usar Mermaid:

stateDiagram
    [*] --> Inicio
    Inicio --> Juego
    Juego --> Muerte
    Juego --> Victoria
    Muerte --> Inicio
    Victoria --> Inicio
Loading

Pruebas y métricas

Plan de pruebas dividido por características (C1, C2 y C3 serían las 3 pruebas que se han realizado de la característica C)

Ampliaciones

Se han realizado las siguientes ampliaciones

  • Los obstáculos del escenario se colocan...

Producción

Las tareas se han realizado y el esfuerzo ha sido repartido entre los autores.

Estado Tarea Fecha
Diseño: Primer borrador 2-12-2022
Característica A: Nosequé 11-12-2022
Característica B: Nosecuentos 12-12-2022
...
OPCIONAL
Generador pseudoaleatorio 3-12-2022
Menú 3-12-2022
HUD 12-12-2022

Referencias

Los recursos de terceros utilizados son de uso público.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 100.0%