x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

Office Holiday

Epic Games' offices will be on holiday from June 22nd to July 7th. During this period support will be limited. Our offices will reopen on Monday, July 8th. 

GEditor->OnBeginObjectMovement() only fires on Actors

Hello!

It seems the GEditor->OnBeginObjectMovement() does not fire for Components. (Specifically when moving components in the editor viewport)

However the GEditor->OnEndObjectMovement() does work fine for them. Would be great if that would get fixed!

EDIT2: It also seems that it only gets called on actors. Even though a SceneComponent was moved. Which is really not in line with the intended use of the delegate.

Cheers Jannes

Product Version: UE 4.13
Tags:
more ▼

asked Nov 09 '16 at 06:44 PM in Bug Reports

avatar image

JannesNagel
62 3 8 10

avatar image Matthew J Nov 10 '16 at 07:53 PM

Hello JannesNagel,

How are you going about using this function? What are you having it call? What kind of class are you overriding it in?

In trying to see what you're seeing, I did the most simple thing I could think of which was to just place a log message in the function itself, but that's not being called at all, whether I'm moving an actor or a component.

I'd be interested to see what kind of set up you're using.

avatar image JannesNagel Nov 14 '16 at 10:54 PM

Hi Matthew!

These two functions are supposed to fire when you edit objects in the editor - not in a running game. These functions should fire when you drag objects around using the transform gizmo in the editor viewport.

Just do something like this when starting up the editor:

 GEditor->OnEndObjectMovement().AddLambda([](UObject& Obj) {UE_LOG(LogTemp,Log,TEXT("EndMovement %s"),*Obj.GetPathName());});
     GEditor->OnBeginObjectMovement().AddLambda([](UObject& Obj) {UE_LOG(LogTemp,Log,TEXT("StartMovement %s"),*Obj.GetPathName());});


I am using a very similar setup in my own editor plugin.

Edit: I added an example project as a zip file that highlights the issue. Just drag actors and components around in the editor. UE4.13.2 Example

ue4bug.zip (16.6 kB)
(comments are locked)
10|2000 characters needed characters left
Viewable by all users

1 answer: sort voted first

Thank you for that information. Using the plugin you provided, I see the issue you're reporting. I've placed a bug report in for the issue which you can find here: UE-38646. You can track the report's status as the issue is reviewed by our development staff. Please be aware that this issue may not be prioritized or fixed soon.

Have a nice day!

more ▼

answered Nov 15 '16 at 09:24 PM

avatar image JannesNagel Nov 17 '16 at 09:20 PM

I fixed it already in my own engine build. If I find the time I made create a pull request for 4.14 that resolves the issue.

Edit: Never mind, I see the issue was already resolved.

(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question