# How can I get a 3d object to always face player/camera?

**URL:** <https://forums.unrealengine.com/t/how-can-i-get-a-3d-object-to-always-face-player-camera/282682>\
**Category:** Cinematics & Media\
**Tags:** unreal-engine, player, question\
**Created:** [May 6, 2014, 11:31pm UTC](https://forums.unrealengine.com/t/how-can-i-get-a-3d-object-to-always-face-player-camera/282682 "2014-05-06T23:31:49Z")\
**Posts on this page:** 14\
**Page:** 1

<div class="post-metadata">

**Author:** ![anonymous\_user\_1ef5c06e](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_1ef5c06e](https://forums.unrealengine.com/u/anonymous_user_1ef5c06e)\
**Post date:** [May 6, 2014, 11:31pm UTC](https://forums.unrealengine.com/t/how-can-i-get-a-3d-object-to-always-face-player-camera/282682/1 "2014-05-06T23:31:49Z")

</div>

Hi folks, sorry for the rookie question. Whats the simplest blueprint to make a 3d object always face player or camera (2 ways: all axis, and just rotation). Thanks Guys

---

<div class="post-metadata">

**Author:** ![Jacky](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/jacky/32/918690_2.png) [@Jacky](https://forums.unrealengine.com/u/Jacky)\
**Post date:** [May 6, 2014, 11:40pm UTC](https://forums.unrealengine.com/t/how-can-i-get-a-3d-object-to-always-face-player-camera/282682/2 "2014-05-06T23:40:50Z")

</div>

Check the Math Hall in Content Examples project from Marketplace. It has exactly what you need.

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_1ef5c06e](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_1ef5c06e](https://forums.unrealengine.com/u/anonymous_user_1ef5c06e)\
**Post date:** [May 7, 2014, 2:55am UTC](https://forums.unrealengine.com/t/how-can-i-get-a-3d-object-to-always-face-player-camera/282682/3 "2014-05-07T02:55:00Z")

</div>

Sorry friend, I am not finding it. Math Hall is a level inside the content exemples?

---

<div class="post-metadata">

**Author:** ![Jacky](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/jacky/32/918690_2.png) [@Jacky](https://forums.unrealengine.com/u/Jacky)\
**Post date:** [May 7, 2014, 3:08am UTC](https://forums.unrealengine.com/t/how-can-i-get-a-3d-object-to-always-face-player-camera/282682/4 "2014-05-07T03:08:15Z")

</div>

Yeah. Full name is Math\_Hall. If you dont have it you need to download the 4.1 version of the project.

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_1ef5c06e](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_1ef5c06e](https://forums.unrealengine.com/u/anonymous_user_1ef5c06e)\
**Post date:** [May 7, 2014, 4:24am UTC](https://forums.unrealengine.com/t/how-can-i-get-a-3d-object-to-always-face-player-camera/282682/5 "2014-05-07T04:24:46Z")

</div>

Thanks man! I was using the 4.0.2 version. Now I found it on 4.1.

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_1ef5c06e](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_1ef5c06e](https://forums.unrealengine.com/u/anonymous_user_1ef5c06e)\
**Post date:** [May 7, 2014, 10:42pm UTC](https://forums.unrealengine.com/t/how-can-i-get-a-3d-object-to-always-face-player-camera/282682/6 "2014-05-07T22:42:52Z")

</div>

![5870-actor+faces+player+blue.png](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/f/a/2fa603013172b276b0210fc8d678e9332060d359.png)

---

<div class="post-metadata">

**Author:** ![xlar8or](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/xlar8or/32/710746_2.png) [@xlar8or](https://forums.unrealengine.com/u/xlar8or)\
**Post date:** [October 16, 2014, 10:14pm UTC](https://forums.unrealengine.com/t/how-can-i-get-a-3d-object-to-always-face-player-camera/282682/7 "2014-10-16T22:14:28Z")

</div>

Use FindLookRotation between both actor locations 🙂

---

<div class="post-metadata">

**Author:** ![Neilz0r](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Neilz0r](https://forums.unrealengine.com/u/Neilz0r)\
**Post date:** [February 21, 2015, 6:29am UTC](https://forums.unrealengine.com/t/how-can-i-get-a-3d-object-to-always-face-player-camera/282682/8 "2015-02-21T06:29:57Z")

</div>

This worked perfectly! Thanks!

---

<div class="post-metadata">

**Author:** ![TorQueMoD](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/torquemod/32/710746_2.png) [@TorQueMoD](https://forums.unrealengine.com/u/TorQueMoD)\
**Post date:** [November 2, 2016, 7:13am UTC](https://forums.unrealengine.com/t/how-can-i-get-a-3d-object-to-always-face-player-camera/282682/9 "2016-11-02T07:13:58Z")

</div>

This only works on a single object. As soon as you have multiple objects in the scene, they fight over the camera’s location. Also, shouldn’t you be adding a value into the rotate vector’s rotation… they’re all zeros.

---

<div class="post-metadata">

**Author:** ![Impostrophe](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Impostrophe](https://forums.unrealengine.com/u/Impostrophe)\
**Post date:** [September 3, 2017, 6:31pm UTC](https://forums.unrealengine.com/t/how-can-i-get-a-3d-object-to-always-face-player-camera/282682/10 "2017-09-03T18:31:10Z")

</div>

![212081-flipbookfacecameraimg.jpg](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/3/e/23e81dab4e2a4c07ac049ab4dfe5176a821cccd5.jpeg)

This solution was used for a 3rd person character. The function is called on tick. my character is moving (get Not sure how readable the pic is, but the important node in this solution is ‘get unit direction vector’. It takes two objects and finds the direction from one to the other. I used the camera and the flipbook here and only used the Z value when setting the new rotation (the other two make the flipbook spin as I move the camera around).

---

<div class="post-metadata">

**Author:** ![FinalZer0](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@FinalZer0](https://forums.unrealengine.com/u/FinalZer0)\
**Post date:** [January 26, 2018, 3:13pm UTC](https://forums.unrealengine.com/t/how-can-i-get-a-3d-object-to-always-face-player-camera/282682/11 "2018-01-26T15:13:32Z")

</div>

Easiest solution: Find look at rotation.

 ![228494-lookat.png](https://d3kjluh73b9h9o.cloudfront.net/original/4X/0/3/9/039bd7442dbe3ff0dfa48016a9198f9e931f1a6e.png)

---

<div class="post-metadata">

**Author:** ![enzyme42](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/enzyme42/32/703661_2.png) [@enzyme42](https://forums.unrealengine.com/u/enzyme42)\
**Post date:** [February 21, 2018, 12:24am UTC](https://forums.unrealengine.com/t/how-can-i-get-a-3d-object-to-always-face-player-camera/282682/12 "2018-02-21T00:24:47Z")

</div>

![231361-reflectwidget.jpg](https://d3kjluh73b9h9o.cloudfront.net/original/4X/4/f/5/4f534f45e52817700e254240de5e9ebf892971dc.jpeg)

Depending on your setup you may need to flip one of the other axes.

---

<div class="post-metadata">

**Author:** ![theonecalledtom](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@theonecalledtom](https://forums.unrealengine.com/u/theonecalledtom)\
**Post date:** [February 21, 2018, 4:42am UTC](https://forums.unrealengine.com/t/how-can-i-get-a-3d-object-to-always-face-player-camera/282682/13 "2018-02-21T04:42:24Z")

</div>

While we’re in the giving mood: my 3d solution for a space shooter (same deal with may have to flip something).

---

<div class="post-metadata">

**Author:** ![Opetrenko](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Opetrenko](https://forums.unrealengine.com/u/Opetrenko)\
**Post date:** [July 27, 2020, 4:08am UTC](https://forums.unrealengine.com/t/how-can-i-get-a-3d-object-to-always-face-player-camera/282682/14 "2020-07-27T04:08:45Z")

</div>

###There are two solutions I can think of and which one to use depends on what sort of label you want. I will do the most likely and easiest case first.

## **Widget 2D image dropped on top of the player’s viewport at the right spot:**

###If your goal is to really label something for the player as a part of the user interface this is what you want.

Use the “Project World Location To Screen” function to take a location vector in world space and match it to a location on screen.

 ![308218-first.png](https://d3kjluh73b9h9o.cloudfront.net/original/4X/3/1/3/313e2e957ff3c2bf50029241f543c083f5c07d94.png)

NOTE: Deciding whether to put this in the Event Tick of the UMG widget blueprint or somewhere else would depend on the game. You would have to ask what makes the most elegant solution for your application. Obviously if it was a mechanic that worked for a certain type of pawn or game mode you would not want to put in (for example) the level blueprint.

## **A floating “billboard” static mesh that will exist in 3D space**

### If a widget will not get the job done or you want to go for simple weird/fancy (but possibly look pretty cool) you could have something that is a label but also a part of the 3D world. **BUT you should keep in mind what this means…**

- Any other object could occlude/block it from view.
- The detail visible (and readability of any text) would depend on distance.
- Depending on the game/application it will appear somewhat “unnatural” as it is affected by lighting but looks the same from any angle. Unless someone was looking at it carefully, the extra work you do could ironically make the graphics look less sophisticated. (But if it was a survival horror game there could be good opportunities to create a creepy atmosphere).

As FinalZer0 noted the best way to do this is the Kismet Math function “Find Look At Rotation” which takes two vectors and outputs a rotator that would point an object at the first location towards the second. Just hook it up to the EventTick and update the transform. You could also change the scale of the transform as well on the Event Tick if you really wanted it to appear the same at any distance.

 ![308219-second.png](https://d3kjluh73b9h9o.cloudfront.net/original/4X/f/d/6/fd6e300e6de1c7a50e4ca84c84d43697df39479c.png)
