How to make a cone point to a direction?

Hi, I’m trying to make boids simulation in ue4. If you don’t know what boids simulation is, this is the idea [link][1]

I’ve already done this project in Unity and it is worked just fine (it’s not so nice like the video but it’s what I expected). So I decided to move to work in ue4 because this engine is very cool, the graphics is awesome, the blueprint system is good for a newbie like me.

First thing first, I tried to make a cone move with velocity direction (the velocity is just a vector). The movement part is working fine, but the rotation part has a headache problem.

The problem is I cannot make a cone (as a boid) point to a specific direction (the velocity direction) as I expected in Unity. In Unity, I just simply used LookAt function. The LookAt function in Unity simply ask you a target position to look at. To do that, I add the boid position to its velocity and then pass it as a target position. In ue4, I cannot even make it rotate as I wanted.

I tried to do something easier for a newbie is making a cone point to the player camera, whenever the camera moves, the cone will point to the camera position. The idea is simple. However, it didn’t work like I wanted

This is the picture

That was not I wanted. I want the top of the cone point to the camera, not the whole thing.

This is my blueprint

So, let’s me summary the problem. I want the cone move with its velocity direction (the top of the cone will point to velocity direction), how can I do that?

You have to consider the axis of the actor to rotate (x is forward).

To point a cone, you need to rotate the cone, so that the apex is pointing in the x direction. So, in you BP, turn the cone:

Now, the apex of the cone should point at the right direction.

Alternative for not having to rotate the cone:

Hi, thank you all. I found out a solution same as EvilCleric. It seems like pitch, yaw and roll in ue4 is totally different from Unity. So I had to break the rotation and switch some component in it to make it work.