top of page

More helping more Learning more Fun

After the last session of me helping me and the other groups had made great progress, so I continued to help, Minsoo's group need help with Tim's group need help as well so for minsoo we tackle the dialogue in which was very quick to go over. For tim we wanted to work on playing cinematics in the game and how to have a blueprint communicate to other blueprints. We covered the cinematics very easily. But the blueprint communication was quite tricky had me and Hossein stumped for a bit, but only for a bit. That even I went home and found out I was a bit confused and here's why.

In Unreal Engine we have blueprints. Blueprints are a visual scripting system, this was intended to make it easier for artist to script, well it kind of is and kinda isn't. Blueprints use a class system. This is because blueprints work like its underlying code C++ which is class structure this is to allow complex communication between systems and structures but was intended to allow you to create independent systems that wont easily get confused. In C++ coding it means you have to be very precise otherwise you have problems but in blueprints it opposite. In blueprints they have already built class systems in which allow use to create a blueprint class that will function as a gate but that gate class function won't get confused with a door function later on so that way both don't go off at the same time. This is great creates clean independant efficient events and functions for actions in the world. But what if I wanted to have my gate open but change the player health, or in other cases have a key for a door. Well then it gets complicated. At this point we want to communicate between one blueprint class to another blueprint class. Initially I thought to do this was to use something call casting this is a function in which I call for an element of a blueprint so I can change it. That great that works........ well not quite. Casting only allows a blueprint to access parent blueprint classes. This is where if I have a pawn blueprint, which a pawn blueprint is a class that has access to information similar to the player blueprint class but does inherit character movement information but can be controlled. This means that if I cast from a pawn which could be an AI character it could communicate to my player blueprint as is a child class of the player blueprints and it inherits aspects of the player blueprint class. But it cannot communicate to a widget class which they both don't inherit similar information

This meant if I wanted to communicate between UI and Player or Game mode information to require and item to progress then I require a new solution. This solution is called Blueprint Interface.

Blueprint Interface is a system that can be inherent of any blueprint and it holds functions. These functions act like questions. This allows me to say "Have I got Key" if so then I say to my Door "I have Key". This is the two questions or function I would create as an example and using the gamemode blueprint Im asking the game system to keep track of all my information and goals. This finally allows me to help the other groups implement goals in the game and objectives to drive that game and for me it allows me to track progress and create the outcome of our game too.

Unreal Engine=0 Sean and Hossein Beating Unreal Engine=1

https://docs.unrealengine.com/latest/INT/Engine/Blueprints/UserGuide/Types/Interface/

A breakdown of how to implement Blueprint Interfaces from Unreal Engine Documentation, in which I used to find our solution, which techniqually means Unreal Engine wins, oo darn.

Unreal Engine=1 Sean and Hossein Beating Unreal Engine=1


Featured Posts
Check back soon
Once posts are published, you’ll see them here.
Recent Posts
Archive
Search By Tags
No tags yet.
Follow Us
  • Facebook Basic Square
  • Twitter Basic Square
  • Google+ Basic Square
bottom of page