본문 바로가기
프로그래밍/Unreal Engine 3

간추린 Controller.uc 번역

by neive 2012. 3. 7.
728x90



Controller.uc 의 모든 주석을 번역하던 중 AI에 그럭저럭 쓸만한 몇 가지(?) 를 정리해서 공유합니다

많은 도움이 될거라 확신하며~ 좋은 의견 있으면 댓글 주세요





* 지정된 Pawn가 우리 주변 시력 내에서 볼 수있는 경우 true를 반환
* If the pawn is not our current
* Pawn가 현재 적이 없다면 LineOfSightTo()를 대신 호출.

native(533) final function bool CanSee(Pawn Other);



* 검사 위치를 우리 주변 시력 내에서 볼 수있는 경우 true를 반환
* (from view location).

native(537) final function bool CanSeeByPoints( Vector ViewLocation, Vector TestLocation, Rotator ViewRotation );



* 지역의 Pawn들를 평가하고 지정된 FireDir에 가장 가까운 하나를 반환

native(531) final function Pawn PickTarget(class<Pawn> TargetClass, out float bestAim, out float bestDist, vector FireDir, vector projStart, float MaxRange);


* 언제 봤나라는 것은 눈에 우리의 선 이내
* if Seen.bIsPlayer==true.  << player
* if Seen.bIsPlayer==false. << monster

event SeePlayer( Pawn Seen );

event SeeMonster( Pawn Seen );



* 적이 눈앞 우리의 라인 내에 더 이상 없을 때마다 호출

event EnemyNotVisible();


* 잠복적(Latently)으로 원하는 위치에 우리의 폰을 이동

native(500) noexport final latent function MoveTo(vector NewDestination, optional Actor ViewFocus, optional float DestinationOffset, optional bool bShouldWalk = (Pawn != None) ? Pawn.bIsWalking : false);


* Latently 원하는 Actor 우리의 폰을 이동,
* Target에 캐시입니다.
* 다른 Pawn 및 Inventory Actor에게 이동할 때 네비게이션 네트워크 앵커 활용

native(502) noexport final latent function MoveToward(Actor NewTarget, optional Actor ViewFocus, optional float DestinationOffset, optional bool bUseStrafing, optional bool bShouldWalk = (Pawn != None) ? Pawn.bIsWalking : false);


* Latently Pawn의 DesiredRotation 일치하기위한 Pawn의 회전을 기다립니다.

native(508) final latent function FinishRotation();


* 주어진 시점에 가장 가까운 노드로 경로 탐색 네트워크를 검색합니다

native(518) final function Actor FindPathTo( Vector aPoint, optional int MaxPathLength, optional bool bReturnPartial );


* 특정 Actor에 가장 가까운 노드로 경로 탐색 네트워크를 검색합니다

native(517) final function Actor FindPathToward( Actor anActor, optional bool bWeightDetours, optional int MaxPathLength, optional bool bReturnPartial );


* 주어진 지점이 주어진 우리의 Pawn의 현재 운동 능력으로
* 직접적으로 도달할 수있는 경우 true를 반환.
*
* NOTE: 이 기능은 잠재적으로 고가이고 아껴서 사용해야합니다
* 가능하다면, ActorReachable()를 대신쓰세요
* PointReachable()를 통해 더 많은 가능성 최적화를 가지고 그 이후

native(521) final function bool PointReachable(vector aPoint);


* 특정 Actor가 주어진 우리의 Pawn의 현재 운동 능력에 직접 연결할 경우
* 네비게이션 네트워크 앵커 활용 가능한 경우
* NOTE: 이 기능은 잠재적으로 고가이고 아껴서 사용해야합니다.

native(520) final function bool ActorReachable(actor anActor);


 * APawn::moveToward 에서 포인트로인해 방해 또는 높이
 * 차에 의해 도달 할 수 없었을 때 호출

event MoveUnreachable(vector AttemptedDest, Actor AttemptedTarget)
{
}


* 방해를 뛰어넘을 수 있는지 검사 (무릎 높이 내에 경우)
* , 혹은 장애물의 양쪽에 이동하려는 시도

native(526) final function bool PickWallAdjust(vector HitNormal);


* Pawn가 착륙 때까지 Latently 기다립니다.
* PHYS_Falling 만 유효.
* 선택 기다릴 시간의 최대 크기을 지정, which defaults to 4 seconds.
*
* NOTE: 기간이 초과되기 전에 Pawn가 도착하지 않았을 경우
* 그것은 중단하고 LongFall()이 호출됩니다

native(527) noexport final latent function WaitForLanding(optional float waitDuration);


* Pawn가 벼랑에서 떨어져 내리듯 할 때 호출, 그리고
* 컨트롤러가 bCanJump을 toggling하여 낙하을 방지할 수 있습니다
*
* 이 이벤트는 반환은 층에 끄트머리 발견되면 합격, 그리고 바닥의 정상입니다.

event MayFall(bool bFloor, vector FloorNormal);


* 이 컨트롤러는 그것의 PendingMover으로 설정이있는 경우이
* 끝났을 때 InterpActor에 의해 호출

event bool MoverFinished()


 * 번역도 필요 없는 필수 함수
 * Returns Player's Point of View
 * For the AI this means the Pawn's 'Eyes' ViewPoint
 * For a Human player, this means the Camera's ViewPoint
*
 * @output out_Location, view location of player
 * @output out_rotation, view rotation of player

simulated event GetPlayerViewPoint( out vector out_Location, out Rotator out_rotation )


* 착륙 / 충돌 / 추락중 충돌

event bool NotifyLanded(vector HitNormal, Actor FloorActor);
event bool NotifyHitWall(vector HitNormal, actor Wall);
event NotifyFallingHitWall(vector HitNormal, actor Wall);


* 우리의 Pawn가 차단 플레이어와 충돌했을 때 호출,
* return true 면 Pawn에서 Bump() notification 막기.

event bool NotifyBump(Actor Other, Vector HitNormal);


* 우리의 Pawn가 점프의 정점에 도달경우 호출됩니다.

event NotifyJumpApex();


* Returns true 면 현재 입력한 잠복적 동작 중

native final function bool InLatentExecution(int LatentActionNumber);


* 활성 잠복적 동작을 멈춘다.

native final function StopLatentExecution();
728x90

댓글