多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 互聯網 > Unreal Engine 4 C++ 射線碰撞

Unreal Engine 4 C++ 射線碰撞

來源:程序員人生   發布時間:2014-10-08 08:00:01 閱讀次數:4448次

游戲開發中經常會用到射線碰撞,比如激光器打一槍,需要明確知道它集中的位置,然后在這個點釋放攻擊特效。

Unrea Engine 4中做射線碰撞也很簡單,主要功能的實現是World的LineTraceSingle這個方法,下面給出測試代碼。代碼我在ThirdPersonTemplate中測試。檢測角色正前方有無柯碰撞的Actor,有就在碰撞點上顯示一個調試用的圓球。代碼如下:

void ANanProjectCharacter::Raycast() { FHitResult hitResult(ForceInit); FVector pos, dir; FCollisionQueryParams ccq(FName(TEXT("CombatTrace")), true, NULL); ccq.bTraceComplex = true; ccq.bTraceAsyncScene = false; ccq.bReturnPhysicalMaterial = false; ccq.AddIgnoredActor(this); pos = GetActorLocation(); const FRotator Rotation = CapsuleComponent->GetComponentRotation(); const FRotator YawRotation(0, Rotation.Yaw, 0); // get forward vector dir = FRotationMatrix(YawRotation).GetUnitAxis(EAxis::X); FVector posBegin = pos; FVector posEnd = pos + dir * 500; GetWorld()->LineTraceSingle(hitResult, posBegin, posEnd, ECC_WorldStatic, ccq); DrawDebugLine(this->GetWorld(), posBegin, posEnd, FColor(1.0f, 0.f, 0.f, 1.f), false, 20.f); if (hitResult.GetActor()) { DrawDebugSphere(GetWorld(), hitResult.Location, 10, 10, FColor::Red, false, 20.f); } }


注意下,需要把角色自己從碰撞檢測中排除掉。最終效果如下:



生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 成人自拍视频在线观看 | 国内精品一级毛片免费看 | 国产一区二区不卡免费观在线 | 欧美性猛交99久久久久99 | jizz在线免费 | 亚洲国产精品免费在线观看 | 国产国语一级毛片 | 欧美自拍视频在线 | 久久都是精品 | 性新婚a大黄毛片 | 欧美日本一 | 亚洲国产精品乱码一区二区三区 | 亚洲天堂成人在线 | 久久91精品久久91综合 | 欧美精品99久久久久久人 | 欧美在线一级视频 | 亚洲美女色 | 国产一级做a爰片久久毛片 国产一级做a爰片久久毛片99 | 自拍偷拍2019 | 欧美 亚洲 一区 | 2022国产精品福利在线观看 | 亚洲91精品| 尤物视频在线看 | 免费观看69xxx视频在线 | 成人欧美一区二区三区视频不卡 | 大量喷潮free | 欧美日韩综合 | 国产精品一级视频 | 日韩中文字幕一区二区不卡 | 午夜看片福利 | 性生交大片免费一级 | 久久国产精品久久国产精品 | 国产免费不卡v片在线观看 国产免费叼嘿视频 | 亚洲成人h | 国产精品第二页 | 久久综合九九亚洲一区 | 欧美午夜理伦三级理论三级 | 欧美一级看片免费观看视频在线 | japanese日本护士com | 国产国产精品人在线观看 | 午夜老司机永久免费看片 |