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"

Raycasting doesn't return anything.

I am raycasting from c++ to a blutprint which is an actor.

The code looks like this:

     FHitResult f(ForceInit);
     FVector pos;
     FVector dir;
     FCollisionQueryParams CombatCollisionQuery(FName(TEXT("CombatTrace")), true, NULL); 
     CombatCollisionQuery.bTraceComplex = true;
     CombatCollisionQuery.bTraceAsyncScene = false;
     CombatCollisionQuery.bReturnPhysicalMaterial = false;
     pc->DeprojectMousePositionToWorld(pos, dir);
     FVector mouseEnd = dir * 100000;
     this->Mesh->LineTraceComponent(f, pos, mouseEnd, CombatCollisionQuery);
     FString s = FString(f.Location.ToString());
     auto a = pc->GetWorld();
     DrawDebugLine(a, pos, mouseEnd , FColor(1.0f,0.f,0.f,1.f),false,10.f);
     GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Blue, s);

Which looks like this

alt text

note that I have moved the camera a bit so that you can see the debug rays

The rays seem to be in the correct position. The object that you see is a Blueprint actor with a static mesh and the collision is set to block all, and a static light that I can trigger with the left mouse button via the OnClicked event, which is probably also doing a raycast.

The hit location is always 0 0 0, and it also doesn't find an actor.

What have I done wrong?

Product Version: Not Selected
Tags:
more ▼

asked Mar 26 '14 at 02:01 PM in C++ Programming

avatar image

maikklein
110 26 24 34

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

1 answer: sort voted first

I found the error, I just needed to use LineTraceSingle from UWorld.

 this->GetWorld()->LineTraceSingle(f, pos, mouseEnd, ECC_WorldStatic,CombatCollisionQuery);

more ▼

answered Mar 27 '14 at 02:40 PM

avatar image

maikklein
110 26 24 34

(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