Look Alive Plugin: Special Eyes for your Characters

What is it?

Look Alive is a plugin that adds two components to use on your actors. The first is the LookAliveComponent, a child class of skeletal mesh component used specifically for eyes, so they can be animated seperately from your character’s main skeleton. The second is the LookFocusComponent, a child of the BillboardComponent that is used to give the LookAliveComponent a place to look at.

How do I use it?

You need only add the components and tweak the properties to your liking. For example, on characters you could add a LAC and then parent a LFC to the LAC so that characters will make eye contact with each other. In the constructor you would add the LFC to the LAC’s IgnoreFocuses array, so it does not attempt to look at itself.

You can add LFCs to items and points of interest on the map as well. You could also and LACs to inanimate objects if you are going for a more cartoonish style.

What if my mesh already has eyes?

You have two options. Preferably, you can remove the eyes in a 3d modelling program. Alternatively, you could assign an invisible material to the eyes, assuming they use a separate material from the rest of the mesh. By invisible material, I mean a material set to ‘Opacity Masked’ and ‘Unlit’ with a value of zero plugged into the opacity mask.

Please comment if you have complaints, questions, or suggestions. Thank you.

ADVANCED DOCUMENTATION:

LookAlive - inherits from SkeletalMeshComponent
Variables
IPD - float - controls distance between eyes
EyeRadius - float - controls size of individual eyes
Dilation(L/R) - float - 0 to 1 control of pupil dilation
StareTime - float - length in seconds of the animation’s stare cycle
WanderTime - float- length in seconds of the animation’s wandering eyes cycle
WanderSpped - float - how fast the eyes wander from point to point in the animation’s wander cycle, equal to 1/time between points
SightConeHalfAngle - float - angle in degrees deviation from its +X axis it can make eye contact
ManualFocus - bool - enabling will override eyes to focus on ManualFocusLocation
FocusTime - float - time between changing focus
IgnoreFocuses - array - list of LookFocuses that will be ignored when making eye contact
ManualFocusLocation - vector - world space location to make eye contact with
JiggleEyes - bool - enabling will make eyes physics driven

LookFocus - inherits from BillboardComponent
Variables
FocusPriority - float - 0 to 1 likelihood of being chosen as the focus of a LookAlive
FocusRadius - float - max distance beteen LookFocus and LookAlive that LookAlive can make eye contact
VisibilityAngle - float - max angle in degrees line from LookFocus to LookAlive can deviate from +X and allow eye contact

*Version 3.0 submitted. New eye model, new material, new appearance controls in the component!*Look Alive v3.0 - YouTube

Version 4.0 submitted with asymmetric eye settings


TODO LIST:
More eye models

Hi I get this error when I load up a project in 4.12. This is installed to the official version of 4.12.
bdf2935f6408be3aedab8b88d17952c139cb7c04.jpeg

Hi I have a few questions about the support documentation. There are bits I don’t understand so hopefully you will be able to clear a few things up. You say

“From your blueprint you can call functions to set the focus location of the eyes manually.”

How would I go about doing that? Can you show screenshots from your project that I can copy or even PM them to me if you don’t want them here.

“You can also set the component to use Auto Focus which will cause it to look at LookFocusComponents based on
priority and viewing angle.”

I don’t see that option in this plugin. I did in the youtube video you provide but the option doesn’t seem to be in the latest build.
No Auto Focus.JPG

“For characters, you will want to add a LookFocusComponent parented to the
LookAliveComponent so that the characters appear to make eye contact.”

Again how would I go about doing this? Can you show any examples?

“In the constructor of that actor,
you can add the actor’s LookFocusComponent to the IgnoreFocuses array of its LookAliveComponent so that it
does not try to make eye contact with itself.”

What is the constructor of that actor? Do you mean construction script? If so how would I add those.

“Eyes will sometimes wander when they have no focus. This behavior
is controlled by the animation blueprint provided.”

I couldn’t find any animation blueprint provided with this plugin. Where would it be located?

To top off this seems like a fantastic plugin for people that want AI to make eye contact with the player. There are just a few things letting it down like the lack of proper instructions to be able to set it up. A lot of people buy plugins and Blueprints from the marketplace because they lack the skills to do it themselves so to release a plugin without any of the blueprints to get it working will make this useless for a lot of people. Right now I can’t use this plugin but I am sure if you answer my questions above I will be able to.

Hi I am having another issue with this plugin. I can see in your video that the eyes move with the mesh as the meshes animation BP plays however when I added the animation blueprint for my character the eyes wouldn’t move with the mesh. Why is this happening?


@tcla Yes, the construction script is the blueprint’s constructor. The animation blueprint is in the Animations folder of the plugin content directory. You can modify it or copy it and modify the copy to your needs. AutoFocus was replaced with ManualFocus, which is basically the inverse. With manual focus unchecked, it will automatically attempt to focus on a LookFocusComponent. With Manual Focus checked, it will look at the ManualFocusLocation. Did you parent the eyes to the head bone? It looks like you did not set the attachment socket. I am working with Epic on getting the documentation updated. The plugin was in ‘Epic purgatory’ since some time in 2015.

Ok so it was a 4.12 project I was working on I didn’t realise that only 4.13 was supported. Thats why the Animation BP wasn’t showing up. Is there any way you can make a 4.12 compatible version.

I tried out testing it in a 4.13 project and I did exactally as you say here " With manual focus unchecked, it will automatically attempt to focus on a LookFocusComponent. " so I put a LookAliveComponent in a AI mesh and a LookFocusComponent in the main character. I left the manual focus unchecked but this alone doesn’t work. Can you take a look at this video and tell me what I am missing or where I am going wrong.

The video you have on youtube is over half a year old and has a different BP to the one in the finished package. Can you not just make a new video showing you setting it up in a new project so we can see exactly what to do? It took me quite literary 5 minutes to record and upload that video.

Also if you have new documentation can I get a copy of that rather than wait until its updated on the store. I’m pressing this because I have a deadline to make which is why I am keeping an eye on when you come online. Sorry if that sounds a bit much but these are very basic requests I am making for a project I need to update now.

@tcla75 You still have not set the parent socket. You should look for a tutorial on basic blueprinting and component parenting. In your case the parent socket should be set to the head bone of the mesh. Because the plugin was not intended for 4.12 the animation blueprint (saved with 4.13) will not work. Ergo, you will need to delete the abp from the plugin content directory and create a new one to replace it using 4.12. You will need to put it in the same location with the same name for it to be loaded as the default. Because the abp drives all motion of the eyes, they will not do anything without one.

"Because the plugin was not intended for 4.12 the animation blueprint (saved with 4.13) will not work. Ergo, you will need to delete the abp from the plugin content directory and create a new one to replace it using 4.12. You will need to put it in the same location with the same name for it to be loaded as the default. Because the abp drives all motion of the eyes, they will not do anything without one. "

Why have you ignored my questions in regard to the 4.13 project I talked about?

" You still have not set the parent socket."

Did you look at the video?

e4a70f5a042ce7988de0f7cb0b98b47cff1ba693.jpeg

The parent socket is attached. If you meant the lookfocus component then I have just done that and it still doesn’t work.
298fc2efe787c34a433b57ab6ed8166e5f10c11d.jpeg

I really want to be able to give you a good review for this plugin but the lack of answers here is making me want to do the opposite. Look I’m going to put this down to crossed wires here and maybe you are not understanding what I am asking so I am going to be as clear with the following questions and would appreciate as the seller to give me some support here. Again I am trying to go all out here and be as polite as I can. I think this would be a fantastic plugin but there are some things that you are not clear on and telling me I need to go off and learn about basic Blueprints is not great customer service.

  1. Once I have attached the LookAliveComponent and attached the head socket like I have done in the video to a A.I character and when I have put a LookFocusComponent in the main character BP ( I have tried both attached to a head socket and not attached to a head socket) is there anything else I am meant to do? If not then why didn’t it work when I did exactly that in the 4.13 project in the video?

  2. Can you confirm you watched the video?

  3. Are you planning on releasing a new video showing the updated BP and how to set it up in a new project?

  4. If the new documentation that you talk about address these issues can you email a copy to me rather than wait until its updated on the store?

Look all I want is for those 3 basic questions to be answered and I will leave you alone.

I can’t tell anything from the 2nd half of your video because you won’t stand still.

When I stand still the same thing happens. He doesn’t make eye contact. Are you serious? That is your answer to my 4 questions. Do you actually want to help me with this or not? How is it so hard to say

  1. Yes that is all you have to do. Have you tried x y and z? or no what you also need to do is this…

  2. Yes I am or No I am not

4 Yes here you go. No I can’t sorry.

If not I will go off and make my review now

Respectively: Yes, I am serious. No, I felt like trying to solve your issues with the plugin was more relevant than those questions at the moment. I am going out of my way to help you. You are welcome to review any of my content at any time, but I thought you would like to focus on resolving your issue.

Previous questions answered:

  1. You shouldn’t need to do anything else. It works for me out of the box.
  2. I watched the video.
  3. I am. If Epic told me when the plugin was scheduled for release in advance, there would already be one.
  4. The new documentation will likely not address your issue, because I have not identified what your issue is yet. I am going to edit documentation into the top post as I write it, so up to date info is always available independent of Epic.

It doesn’t at least not for me. There must be some information I am missing here. If you look at the following Video you can see me create a LookAliveComponent from scratch. You can see its 4.13 I’m working with. Can you take a look at the following Video and just please give me one of the following two possible answers?

  1. Yes you did everything right and it should have worked.
  2. No you missed something here (and then explain what I missed)

[QUOTE=tcla75;608228]
It doesn’t at least not for me. There must be some information I am missing here. If you look at the following Video you can see me create a LookAliveComponent from scratch. You can see its 4.13 I’m working with. Can you take a look at the following Video and just please give me one of the following two possible answers?

  1. Yes you did everything right and it should have worked.
  2. No you missed something here (and then explain what I missed)
    - YouTube

Yes, you did everything right. In that video I can see that it is working. Here are some of the time stamps the npc makes eye contact with you.

3:12, 3:15, 3:20, 3:23, 3:32, 3:35, 3:43, 3:46, 4:08, 4:18, 4:23, 4:25, 4:29

Why does it look away all the time? Making eye contact means just that. It looks at you and continues to look at you like in your video. Even if you move around. https://youtu.be/fBO_taV3uRw?t=11

Are you saying this is the way its supposed to work? https://youtu.be/mzLduFALe_U?t=194

Yes. This version has been updated with a more realistic animation blueprint. It does bursts of eye contact intermixed with glances. If you would like a continuous stare, you need only to modify the animation blueprint to remove the other animation states.

I want to give you a few pointers because this has been a very frustrating experience for me.

1st for the plugin. people are going to buy it because in game they want to see their character go up and talk to a NPC and want that NPC to make eye contact with them continuously and not constantly glance at them for half a second and then spend the next 2 to 5 seconds looking at the floor, ceiling to the sides. Actually look away from the player so much they are not even sure if eye contact is being made. This should be built into the plugin not asking the customer to go off and mess around with a BP they are unfamiliar with.

2nd You have to brush up on your customer service and trouble shooting skills. Don’t pretend the reason you didn’t answer my questions was because in your words

“No, I felt like trying to solve your issues with the plugin was more relevant than those questions at the moment.”

No you didn’t, you made virtually no attempt at trying to trouble shoot my issue. In fact your answer just before that was

"I can’t tell anything from the 2nd half of your video because you won’t stand still. "

and I’m sure you would have been very happy to leave it at that if I didn’t follow up. But lets say you did try and help me with this issue. Lets pretend for a second you asked me loads of questions on what I was doing, did I try x y and z. Then still if I ask those questions its because I felt they were relevant. For you to turn around a decide which of my questions are relevant and which are not worthy of an answer is is highly ignorant. You made statements that showed you didn’t look at the video the 1st time. “You still have not set the parent socket.” or even read what I wrote properly

"Because the plugin was not intended for 4.12 the animation blueprint (saved with 4.13) will not work. Ergo, you will need to delete the abp from the plugin content directory and create a new one to replace it using 4.12. You will need to put it in the same location with the same name for it to be loaded as the default. Because the abp drives all motion of the eyes, they will not do anything without one. "

in response to

"I tried out testing it in a 4.13 project and I did exactally as you say here " With manual focus unchecked, it will automatically attempt to focus on a LookFocusComponent. " so I put a LookAliveComponent in a AI mesh and a LookFocusComponent in the main character. I left the manual focus unchecked but this alone doesn’t work. Can you take a look at this video and tell me what I am missing or where I am going wrong.

The video you have on youtube is over half a year old and has a different BP to the one in the finished package. Can you not just make a new video showing you setting it up in a new project so we can see exactly what to do? It took me quite literary 5 minutes to record and upload that video. "

If in future you avoid making these mistakes then I’m sure you will have great success but if not expect many more frustrating encounters like this one.

Sorry I had to based on the title.

@tcla75
With all due respect, you are very, very entitled. I am replying to you as fast as possible because you said you had a tight deadline. Your original post specified version 4.12. I am sorry that I misread your subsequent post. I was trying to reply to you as fast as possible. I find you assuming this is part of a conspiracy to give you bad support very alarming. I changed the animation blueprint based on the feedback I received. The video on YouTube is half a year old because I submitted the plugin last year. I then submitted updates for each engine version, based on feedback I received from people who purchased from me directly. Epic released the plugin without notifying me of a scheduled release date. As I have said, this is why there isn’t an up to date video available, although the written instructions have sufficed for the majority of users I have been in contact with. As with any marketplace content, you can contact Epic for a refund.

Are you kidding me? i don’t get proper support on a product I bought because you have two full time jobs? You made no attempt to help me. What questions did you ask me? What troubleshooting did you do? You say the youtube video is half a year old because you submitted the plugin last year. How does that stop you from releasing an updated video.

Look I’m going to give you one last piece of advice and then I’m done. Your customers will only care about the service you provide to them. Not excuses on why you give such lack luster support. Most people here work full time jobs as well as doing this so thats no excuse. People reading this thread will no be looking at how you interact with your customers, the support you give and think twice about buying your product. When you read this take a deep breath, don’t reply with the smart *** answer you want to, don’t make excuses and think of other potential customers that will want to buy your product and then make a professional statement showing that you do intend to support this product in a professional manner because you have not done that so far.

Edit: I had left a review on the main page giving out about your service but I decided to delete it because I knew it would harm sales and this is a product that I believe could be really great with an extra bit of work.