목록전체 글 (8)
게임카레
다른 오브젝트가 가지고 있는 스크립트의 함수를 사용해야 하는 경우가 발생한다. 두 오브젝트의 이름을 각각 Object01, Object02 로 설정해주고 이름과 같은 스크립트를 작성하여 오브젝트에 상속시켜준다. 각각의 오브젝트들에는 TestScript1, TestScript2 스크립트들이 들어있다. 다른 스크립트에서 변수, 함수의 호출및 수정을 허용하려면 변수나 함수의 접근 제어자를 public 으로 설정 해주어야 한다. 우선 TestScript2 에서 접근제어자가 public 인 int 변수 TestNubmer 을 선언하여 10 으로 초기화 해준다. 이렇게 스크립트를 작성하면 처음 Start 에서 디버그로 10을 찍어낼 것이고 계속하여 TestNumber 를 출력할것이다. 변동사항이 없다면 계속하여 1..
요 며칠 최대 고민거리라 하면 BehaiorTree 시뮬레이팅이 제대로 되지 않아서 매우 고통받았는데... 오늘 해결 문제점 1 Build.cs 파일에서 모듈을 추가 해야하는데 대소문자가 틀림 "GameplayTasks" 로 해야하는데 "GamePlayTasks" 로 입력하여 모듈이 제대로 실행되지 않음. 이는 디버거에서도 캐치하지 못하는 부분이라 사용자가 주의깊게 살펴봐야 하는 부분이라고 생각된다. 꼼꼼한 사람이라면 이런 실수도 적겠지 싶은데 행여나 나같은 실수 하는 사람이 있을까봐 적어둠. 문제점 2 AI cpp 파일에서 부모인 AAIController 의 BeginPlay 를 실행 안해줌. 부모의 클래스에서도 준비해주는것이 많기 때문에 Super::BeginPlay 를 통해 부모 클래스의 Begin..
프로그래밍을 하다보면 가장 많이 쓰는 단어중 하나가 NULL 인데 물론 0 맞다 f12 로 타고 들어가보면 알수 있다. 독일어로 숫자셀때 0 을 NULL 이라고 읽는덴다. 발음대로라면 눌 인데 그냥 널 이라고들 많이 통하는것 같다 뜻만 통하면 된거지 뭐... 또한 포인터를 초기화 할때 NULL 혹은 nullptr 로 초기화 하는 경우가 많은데 둘이 의미하는것은 똑같지만 nullptr 으로 초기화를 하게 되면 가끔 오류를 발생할때가 있다. NULL 이 만능이기도 하지만 그렇다고 nullptr 을 안쓰는것도 아니니 오류터지면 그냥 이것도 넣어보고 저것도 넣어보고... 참고로 nullptr 은 nullptr_t 란다.