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"

Bug with inherited Actor collisions

The setup I currently have is a empty Actor blueprint called "A", with nothing inside. I then use my existing "Bomb" Actor blueprint and now set its parent to "A". Now when I spawn my bombs, they fall through the terrain, which worked perfectly fine before inheriting the "A" blueprint. I didn't change any of the collisions yet it no longer works. It could be something to do with the "DefaultSceneRoot" which is inherited into "Bomb" from "A".

Product Version: UE 4.7
Tags:
more ▼

asked Jun 06 '15 at 06:59 AM in Bug Reports

avatar image

hardballs
23 8 12 14

avatar image RimmyD Jun 08 '15 at 12:11 AM

You say you didnt change anything but did you look to see if anything changed? Any defaults would be updated to new defaults.

avatar image Adam Davis STAFF Jun 08 '15 at 06:27 PM

Hi hardballs,

As RimmyD stated earlier, please check to see if the defaults of parent A are different than the original parent.

avatar image hardballs Jun 10 '15 at 06:22 AM

Sorry for the delay. The defaults are the same. So just to make sure we are on the same page.

Initially, I had: Actor <- Bomb (that is, a blueprint of the Actor type). It has essentially the same setup as the BPBomb blueprint in the UE4 official networking tutorial. I then created another Actor Blueprint called Item, and set replicates to true, just like in the Bomb blueprint. I then changed the setup to: Actor <- Item <- Bomb I double checked that the inherited class defaults were the same as before in the Bomb BP and they are.

The only thing I can see interfering with the collision is the inherited "DefaultSceneRoot", which I did not have in my Bomb BP before. My top level Sphere component attached to the Bomb BP now changed to be attached to this inherited "DefaultSceneRoot", which was not the case before. I attached some images to show this, look at the Top left component panel. alt text

alt text

before.jpg (321.3 kB)
after.jpg (316.4 kB)
avatar image Adam Davis STAFF Jun 10 '15 at 03:23 PM

Can you show me the setups you had for your initial parent as well as parent A?

avatar image hardballs Jun 11 '15 at 01:02 AM

I think I might have figured out why Bombs are falling through the world. The mechanism I am using for making them collide with the cube mesh that is currently my floor, is the "Should Bounce" boolean inside the Projectile Movement Component associated to my Bomb blueprint. I just tested it with a fresh Third Person Project and did this:

  • Create an Actor blueprint, call it Bomb.

  • Add a Sphere Component.

  • Add a Projectile Movement Component.

  • Set the Projectile Movement "Should Bounce" field to true.

  • Place one of these Bomb actors into the world and notice that it will collide with the floor mesh and bounce.

  • Create a new Actor blueprint, call it Item. Don't change anything inside it.

  • Change the Parent of Bomb to Item (instead of Actor).

  • Run the game and notice that the Bomb actor will now fall through the world.

My intuition is that the projectile movement doesn't get attached to the Sphere component when this type of inheritance is in place. Why? if you take a look at the images I added in the previous comment, you can see that with inheritance the Sphere component gets attached to the DefaultSceneRoot inherited from the Item Parent, whereas the ProjectileMovement component stays a top level component. Though this might just be a graphical bug, I don't know, I'm still new to this.

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

3 answers: sort voted first

Hi hardballs,

I attempted it on my end but I had clearly misunderstood what you were describing. While I did not get the projectile error per se, I did find an error in which reparenting an actor blueprint completely removed all components of the blueprint, even if the new parent was an empty actor blueprint. I have entered a bug report, UE-17070 to be assessed by the development staff.

more ▼

answered Jun 15 '15 at 07:29 PM

avatar image hardballs Jun 16 '15 at 12:46 AM

Thanks for looking into it Adam.

avatar image hardballs Jul 14 '15 at 04:03 AM

Just to add to this, my issue described also doesn't work if you put the projectile movement component in the parent class and then inherit from it (never gets applied to the actual mesh of the child).

avatar image hardballs Jul 14 '15 at 04:20 AM

I think it may be the "should bounce" field that is having issues being inherited.

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

Hi hardballs,

Ah that makes sense! The reason it doesn't get attached is because the projectile movement component acts as a component on the entire blueprint as opposed to an individual portion and cannot be parented to another component. If the component was not added to the child and instead was in the parent and the other parent did not have a projectile movement component or different specs within their projectile component, it will alter the child accordingly as it is losing access to those components until told otherwise (i.e: adding the component to the new parent or directly to the child blueprint).

more ▼

answered Jun 11 '15 at 03:36 PM

avatar image hardballs Jun 12 '15 at 01:21 AM

Your final sentence is confusing. Isn't this a bug? Even if I put the Projectile Movement component in my "Item" blueprint and remove the Projectile Movement component from my Bomb blueprint in the following hierarchy Actor <- Item <- Bomb, the sphere component of the Bomb blueprint still doesn't get affected by the Projectile Movement component inherited from the Item BP. I am not sure what other parent you are referring to. In either situation you describe it does not work, unless I am missing something.. Have you tried what I described in one of my comments and confirm that it works?

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

I have a solution. I followed the tutorial but I have 4.9 engine so the components are showing differently. All I did is move the Sphere into the root. This will replace the default scene root with the Sphere collision component. This way the projectile bounce works.

Before: alt text After: alt text

b1.png (9.3 kB)
b2.png (8.7 kB)
more ▼

answered Oct 21 '15 at 04:44 PM

avatar image

Levike
21 6 8 11

(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