Forum

Coquitlam >> UN502 >> 11:30 am - 12:30 pm

12/01/2018 - Solomon Yu
This lesson was a work week. Some of you worked on a sprinting mechanic, as well as adding more to your UI (user interface).

12/08/2018 - Solomon Yu
This lesson, we started working on our AR apps. Checkout the workbook for more details.

12/15/2018 - Solomon Yu
This lesson, we continued to create our AR games.

11/03/2018 - Solomon Yu
This week we worked on creating bullets and making our enemies shoot!

11/17/2018 - Solomon Yu
This week, we created a flag for our player to capture!



11/24/2018 - Solomon Yu
Hi everyone!

This week, we had a work week.

Some ideas for extra things to add to your game:

Change a flag's color when it is captured
Add health to the player (with a health bar)

10/13/2018 - Solomon Yu
Hey everyone!

Today, we worked on making our enemies push us back on a collision.

Some of us also created a maximum distance on how far our enemy can detect us.

If you have time, get another 3D model to use as a shooting enemy in addition to your basic enemy.



10/20/2018 - Solomon Yu
Hey everyone!

Today, we worked on inheriting our basic enemy's code onto a new enemy.

We'll be using our new enemy to create a shooting enemy next class!

10/27/2018 - Solomon Yu
Hey everyone!

This week, we worked on our shooting enemy.

Our public functions from last week on our basic enemy looks like this:

***
public void setVariables()
{
detectDistance = 15f;
navAgent = GetComponent<NavMeshAgent>();
player = GameObject.FindGameObjectWithTag("Player");
}

public void moveToPlayer()
{

if (Vector3.Distance(transform.position, player.transform.position) < detectDistance)
{
navAgent.destination = player.transform.position;
}
else
{
navAgent.destination = transform.position;
}

}

***

And we used those functions in our shooting enemy:

***
void Start () {
setVariables();
lastShotTime = Time.time;
fireRate = 5f;
}

// Update is called once per frame
void Update () {
print(Vector3.Distance(transform.position, player.transform.position));
if (Vector3.Distance(player.transform.position,transform.position) < 5f)
{
navAgent.destination = transform.position;
if (lastShotTime + fireRate < Time.time)
{
shootProjectile();
lastShotTime = Time.time;
}
}
else
{
moveToPlayer();
}
}
void shootProjectile()
{
GameObject bullet = Instantiate(projectile, transform.position, transform.rotation);
bullet.transform.LookAt(player.transform, Vector3.up);
}

***


09/08/2018 - Solomon Yu
Hi students!

Welcome to another semester at Under the GUI!

This semester we will be doing a 1st-person shooter type of game in 3D.

This week, we reviewed terrains, as well as the different tools we can use to shape our terrain.

The raise and lower terrain tool will be your primary tool in shaping your terrain. Make sure you have different levels of elevation throughout your world.

09/15/2018 - Solomon Yu
Today, we created a basic version of our character.

We used a capsule as the character, and then we added a script to it.

You character will need to move in 4 directions, and have the camera attached to it.

Remember that when you attach the camera to the player, the player is called the "parent", and the camera is called the "child".

Try to make your camera move around when you move your mouse.


09/22/2018 - Solomon Yu
Hi everyone!

This week, created a jump for our character, and added a navmesh (short for navigation mesh) to our game.

This navmesh will help us make our enemy AI later!
Rember that any area that is covered by the navmesh, which looks like blue plastic wrap, is an area that your enemy will be able to walk on.

09/29/2018 - Solomon Yu
Hey everyone!

Today, we made our enemy follow us on the navmesh using Unity's AI features. Now that you have a real enemy to follow the navmesh, think about what changes you could make to make the game have more depth.

Should enemies be able to get up every single wall? Consider making some ramps that enemies can traverse.

At this point, the paint height and smooth height tool becomes very useful.

See you all next week!

02/02/2019 - Solomon Yu


01/05/2019 - Solomon Yu


01/12/2019 - Solomon Yu


01/19/2019 - Solomon Yu
Finished AR

01/26/2019 - Solomon Yu
Finshed AR