simeddk / GoThere

2209
0 stars 0 forks source link

#14 주간과제 #27

Closed simeddk closed 1 month ago

simeddk commented 1 year ago

힘들고 지쳤을 때 읽어보면 좋음 Image

Image

P.S. 다이렉트X는 포트폴리오 안만들어도 됨


제출자

이름 제출했는가?
권정훈 O
김건웅
김주연
남석원 O
서상원
유재우 O
윤대영 O
이규원
이해용
장현덕
최윤혁
Mrhoony commented 1 year ago
  1. 주간목표 프로젝트 서류 작성 및 정리 : 프로젝트 제안서, 기술정의서 초안 작성 고블린 에너미 생성 : 근거리, 원거리 2종류 검과 활을 사용하는 고블린 에너미 생성

  2. 구현결과

  3. 고찰

    • 내가 만들지 않은 코드를 분석해서 사용하는 것은 꽤나 어렵습니다.
    • 다른 학생분들이 만든 코드를 분석해 기술설명서를 작성하고 고블린 에너미를 만들면서 만들어진 코드를 타고 들어가며 구조를 파악하고 흐름을 이해하는 경험을 했는데 어려운 코드는 없었지만 전체적인 구조와 흐름을 머릿속에 담는데 꽤 시간이 필요했습니다. 회사에 가면 이미 만들어진 코드를 분석하고 내 것으로 만드는 과정이 필요할거라 생각되는데 잘 할 수 있을지 모르겠습니다. 배우면 배울수록 걱정만 느는것 같아요.
    • 문서작성하면서 알게된건데 보안상 구글드라이브나 깃허브를 접속하지 못하게 막아두는 회사도 있다고 들었습니다. 이런 곳은 포트폴리오를 어떻게 제출...?해야..
skacjstk commented 1 year ago
  1. 인벤토리 기능 구현 목표; Drag N Drop Chest ( 외부 컨테이너 ) 무기마다 RuneInventory장착하고, RuneInventory에 Rune을 장착 및 해제해 무기 스탯을 변화시키기

  2. 구현 결과 선요약: 원하던 모든 기능 구현 깃허브: https://github.com/skacjstk/CinderGuy/tree/Inventory_Ver2 블로그: https://blog.naver.com/skacjstk0818/223035589949

  3. 고찰 준비를 위한 준비를 위한 준비의 끝에 달했을 때의 기분이 아주 좋다. 이제 던전, 아이템 드랍, 반격 시스템을 만들면 얼추 끝난다

ooweaJ commented 1 year ago
  1. 주간 목표

    • 기존 코드 멀티화
  2. 구현 결과

    • https://youtu.be/9sEPRjl9ook
    • NetMulticast의 Reliable이 옵션이 있어도 코드가 실행이 안되는 경우도 있는 거 같다 이유를 모르겠다. (영상에 보면 1명이 RagDoll 이 안됨 )
  3. 고찰

    • 코드 한 줄만 바꿔도 계속 엔진이 터지는 신세계를 경험 했는데 스트레스가 장난 아니였다.
    • Replicated 잘 써야 할 거 같고 아직 해결해야 할 코드들이 많이 있다.
    • SimulateProxy 이 녀석이 정말 말썽이다 충돌 처리를 왜 서버에서만 하는지 또 다른 이유로 이 녀석은 PlayerController가 없다 보니 Enemy의 TakeDamage에 EventInstigator가 Null이여서 터진다. 근데 서버에서만 Attacker를 저장하면 Replicated가 안되는 Enemy들은 멤버변수 Attacker가 다를 거 같은데 머리가 점점 아파온다...
    • 멀티는 정말 어려운 거 같다.
  4. 질문

    
    void UCDeckComponent::BeginPlay()
    {
    Super::BeginPlay();
    
    OwnerCharacter = Cast<ACharacter>(GetOwner());
    OwnerState = CHelpers::GetComponent<UCStateComponent>(OwnerCharacter);
    }

//멀티캐스트 함수 (터지는 부분) if (OwnerState->IsIdle() == false) return;


OwnerState를 Replicated를 안하면 Null이 나옵니다. 
클라이언트에서 각각의 개체가 BeginPlay 실행한다면 Null값이 나오는게 이해가 안되고
Replicated는 플레이어 컨트롤러가 있는 주체만 복사가 되는 것으로 알고 있는데 그럼 SimulateProxy에서  Null 값으로 터저야 할 것 같은데 그건 또 아니더라구요 저의 개념이 너무 이상해졌습니다.
저가 잘못 이해하고 있는 것 인가요?
silberstar commented 1 year ago
  1. 목표 구르기 구현

  2. 결과 이제 목표 정해놓고 뒤늦게 작업하느라 완성 못하고 작업하던게 날아가서 일단 급하게 시점 변경만 했습니다.