Announcement

Collapse
No announcement yet.

Skydome Collision - Pawns Collide but Vehicles Don't

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Skydome Collision - Pawns Collide but Vehicles Don't

    I need to capture 'Touch' Events for the default Skydome. I'm using Skydome Interpactor Touch events (and Rigid-Body-Collision events for when the Skydome is converted to a Kactor for comparison testing). To make sure I capture everything, 'Class Proximity Types', 'Player Only', 'Force Overlapping', 'Max Trigger Count' etc filters aren't used...

    Basically when a player passes through a Skydome via aircraft or jetpack or just falls through, I want to trigger 'No Man's Sky' like atmospheric effects. So toggle player attached particles or meshes on / off as they enter or leave the 'planetary atmosphere'. I need this for the effect, but also to hide the awkward rendering of the Skydome 'reveal'.

    To activate Skydome collision I've tried the following: 1. Enabled Per-poly collision (unticked 'Use Simple Box Collision', unticked 'Use Simple Rigid Body Collision', ticked 'Complex Collide'), 2. Added Auto-Convex Collision. 3. Enabled Skydome collision i.e. TouchAll (and BlockAll for testing). I fear using a DrawScale-3D Z of less than 1.0 may be hampering the collision effort too (Edit: Ruled that out see below)...

    Creating a Trigger-Volume matching the Skydome hasn't proved to be an easy alternative solution either, as BSP Spheres are unreliable when the Sphere Extrapolation is above 2 or 3, because the newly created Trigger Volume lacks any collision... You need a higher number to make the volume curve against the skydome better. But I'm also finding anyway that its tricky to match a Trigger-Volume to such a large Static-Mesh.

    Q: Is there a way to create a Trigger-Volume out of an existing Static Mesh?

    Thanks to Obihb and Majic12 for their suggestions so far... Any more ideas for approaching this are very welcome... Cheers!

    #2
    OK, I can now detect Pawns falling through the Skydome but not vehicles... Turns out Skydome F4 Properties 'Collide Complex' which is supposed to force Per-Poly doesn't work! Instead 'Use Simple Box Collision" must be unticked which I'd been avoiding to avoid making changes to the UPK...

    I've also tried converting the Skydome to a KActor and enabling a host of Collision Detection options including "Enable Continuous Collision Detection", "No Encroach Check", "Notify Rigid Body", "Bock Rigid Body' etc.... But its always the same, Pawns have Collision detected, Vehicles do not...

    Comment


      #3
      UDK Collision switches are a host of confusion. Here's hoping UE4 simplifies things. Anyway this is what I've tried...


      Any ideas why Collision is different for Vehicles / Pawns in the scenario above:-




      Skydome -> F4 Properties ->
      1. Collide Complex -> no difference as it doesn't work...
      2. Notify Rigid Body collision -> no difference
      3. Block Actors -> no difference
      4. No Encroach check makes no difference, but its unticked in the Skydome by default anyway as its an Interpactor...
      5. Block RigidBody is NOT enabled by default. It makes no difference on the way down, but it blocks the Cicada on the way back up if 'Use Simple Rigid Body Collision' is unticked in the SM Editor. But the Pawn can still pass ok... Skydome collision is TouchAll too!

      Content Browser -> Skydome -> SM Editor ->
      6. Ticking "Enable Continuous Collision Detection" -> No difference..
      7. UnTicking 'Use simple line collision" -> No difference..
      8. UnTicking "Use Simple Rigid Body" collision picks up Mobile Projectiles passing through the Skydome. This confirms the Cicada isn't being treated as a fast projectile or anything like that. There's no difference using a scorpion either.
      9. If 'Block Rigid Body' is set in F4 properties and 'Use Simple Rigid Body collision' is unticked in the SM editor then the Cicada can pass through into the Skydome but it is blocked from getting back out... This is the only hint that vehicles can collide. Its pretty interesting too as the Skydome has TouchAll collision.

      Skydome F4 Properties -> RBCC
      10. Messing around with the RBCC settings has no discernable impact -> Pawn or Vehicle ticked -> No difference. Choosing RBCC_Vehicle over RBCC_Default -> No difference either.

      Skydome (Interpactor) :-
      StaticMesh'MapTemplates.Sky.SM_SkySphere'

      Comment


        #4
        have you set "use full precision uv's" for the skydome in the static mesh editor?

        Comment


          #5
          Cheers Gaz, gave it a shot but no joy.

          Comment


            #6
            hmm,works for me.full precision uv's on everything else off.

            have you set collision to block all?

            Comment


              #7
              No I'm using TouchAll... Because BlockAll makes the Skydome impenetrable.
              But here's what's interesting... Even with BlockAll enabled a Cicada can pass into the Skydome but not get back out... WTF???

              Overall I just want to detect objects passing through the Skydome, not block any of them...

              But just for the hell of it, I tried ticking 'use full precision uv' and turning the other main switches on / off, but sadly again no joy...

              Please keep those suggestions coming as I'm willing to try anything at this point...

              Comment


                #8
                @Tegleg
                Your inbox is full, and can't send PM, but if you're reading this please let me know if you have ideas.
                There's a larger question here about why Vehicles are behaving differently from Pawns in this case...
                Thanks in advance...

                Comment


                  #9
                  Has this any relevance, can't seem to make it work either way :-

                  bRigidBodyIgnoreVehicles

                  Comment


                    #10
                    Conclusions:

                    1. Vehicles don't register collision events unless BlockAll Collision is used.
                    2. I tested BlockAll Collision with a Rigid-Body-Collision event and temporarily changed collision to allow time for Vehicles or Pawns to pass through.
                    3. This works but only if you revert to 'Use Simple Box Collision', and even then Vehicle Collision requires that the Skydome has a Drawscale_3D Z >= 1.0..

                    But right now its half that at 0.5, and I've no idea how to address that...?

                    Comment


                      #11
                      make a bigger skydome?

                      Comment


                        #12
                        - Maybe attach an interpactor to a vehicle and add a trigger/triggers.
                        - In the VCTF-Necropolis.udk map, I saw there is only one Kismet node (a Vehicle Factory event). So maybe there is something to modify in the vehicle's code (.uc files).

                        Comment


                          #13
                          Originally posted by gaz661 View Post
                          make a bigger skydome?
                          Thanks Gaz, but can't for two reasons.... 1. UDK map space is limited. The default Skydome leaves very little room for anything other than one planet. 2. The Skydome is already sized for a planetary surface of 30,000 actors. So the knock on effect of changing that would be huge...

                          Comment


                            #14
                            Originally posted by ]Innuendo[ View Post
                            - Maybe attach an interpactor to a vehicle and add a trigger/triggers.
                            - In the VCTF-Necropolis.udk map, I saw there is only one Kismet node (a Vehicle Factory event). So maybe there is something to modify in the vehicle's code (.uc files).
                            -Turns out attaching an Interpactor to a Cicada is similar to binding two Rigid-Bodies together, in that they immediately and violently repel each other with pretty explosive results. So I tried with a KActor instead, and got the KActor attachment working by using bone name attachment. But its erratic, and produces some strange visual artefacts (a flickering ghost KActor at the original location), plus camera issues. Either way it didn't trigger the collision unfortunately...

                            -I also tried attaching an interpactor with TouchAll collision but its not detected either and it messes up the camera too...Attaching a KActor w/ Interpolating physics led to another explosive event.

                            -Even with a successful 'invisible' attachment I'd have to be careful not to screw up the overall collision while having the attachment large enough to force detection which is tricky... But thanks for the suggestion, it was worth a try and I'll play around with it some more...

                            -Edit: Lastly, I attached a KActor to the Cicada and converted the Skydome to a KActor also. Then I enabled Block Rigid Body, Notify Rigid Body, and unticked No Encroach check on the Skydome, and that still didn't work. So I guess that's it, I'm out of ideas...

                            Comment


                              #15
                              I don't understand the setup, but assuming your skydome is a sphere enclosing the playfield and you want to detect when a vehicle moves outside, then a simple range check of the vehicle's distance from the skydome's origin should do it without triggers or collision.

                              Code:
                              // psuedocode
                              if( VSize( vehicle.location - skydome.location ) > skydome.radius )
                              {
                                  // welcome to space...
                              }

                              Comment

                              Working...
                              X