250306

lililllilillll·2025년 3월 6일

개발 일지

목록 보기
102/350

✅ What I did today


  • Project BCA


🎮 Project BCA


Completing main game

Bug : Error occurs when game resets while arm is moving

  • 킹 빼고 아무 기물도 없을 때 승부 결정하는 로직 추가
    • 로봇 팔 움직이던 와중에 게임 리셋되면 게임 오브젝트가 사라져서 nullref 뜸
      • MoveTo()로 상대 기물이 킹 빼고 아무것도 없어졌을 때 AI한테 정보를 보내지 말거나
      • 정보를 받더라도 로봇 팔 안 움직이거나
      • 로봇 팔 움직이다가도 다시 리셋을 해야됨
    • 지금 하던 시퀀스 종료하고 fold arm 하는 함수 만듬
      • 게임 오버나 다음 스테이지로 가기 위해 WaitingState로 바꿀 때 EnterState()에서 호출
    • 벨 눌렀을 때도 버그 생기길래 WaitingState()로 바꾸는 함수 호출
    • 애초에 AI한테 수 보낼 때 WaitingState인지 아닌지 확인하고 아니면 return하여 틀어막기

Bug : King can move next to enemy king

킹이 다른 킹의 공격 범위에 들어갈 수 있게 돼있음

킹 이동 로직에 이런 헛소리를 적어놨었다.

이미 아래쪽에서 캐슬링 무한 루프를 막기 위해 if문을 넣었으므로 헛소리 삭제하여 해결

Bug : Weird movement occurs when deleting a piece

삭제가 좀 느려서 1초에서 0.5초로 낮췄더니
두 번째 이동 때 약간 버벅이는 듯한 움직임 발생.

  • 디버깅 문구 삽입으로 PieceCommandManager의 실행 흐름을 확인해보았으나 모두 정상
    public void Fold_Arm()
    {
        print("RoboticArm :: Fold_Arm");
        x_axis_part.DOLocalRotate(new Vector3(-90, 0, 0), 1f);
        x_axis_part_2.DOLocalRotate(Vector3.zero, 1f);
        hand_part.DOLocalRotate(new Vector3(180, 0, 0), 1f);
    }

Fold_Arm()이 매개변수가 아니라 상수로 돼있었음.
마저 접히기도 전에 이동해서 그랬던 것.
move_time으로 바꿔서 해결.

이래서 매직 넘버가 위험하다.

Optimizing model

컴퓨터 모델 안에 미처 삭제하지 못한 키보드가 들어있었다.
안 그래도 이거 최적화 하려고 했는데 더 심각한 문제가 있었음.
이 꼬라지를 차마 지나치지 못해 후순위지만 먼저 작업.

키보드만 삭제했는데 폴리곤이 1/3이 되었다.
기왕 Blender 연 김에 추가 최적화.

필요없는 폴리곤 삭제.

머테리얼도 7개씩나 있어서 나중에 하나로 합쳐야 할듯.
시간 오래 걸릴 것 같으니 일단 보류.

profile
너 정말 **핵심**을 찔렀어

0개의 댓글