데이터와 로직

Jaemyeong Lee·2024년 12월 6일

게임 서버1

목록 보기
3/220

이번 Step에서 잡아야 할 것

  • 데이터: 게임 세상의 현재 상태(HP/좌표/레벨/인벤토리/몬스터 상태…)
  • 로직: 데이터를 읽고/계산하고/조건을 판단해 다음 상태로 업데이트하는 규칙
  • 저장 위치: 데이터는 실행 중에 주로 RAM에 올라가 있고, CPU가 연산해 다시 RAM에 기록

프로그램의 핵심 요소

요소역할
데이터게임 세상 상태 (HP, MP, 레벨, 좌표, 쿨타임, 골드 등)
로직데이터를 가공하고 게임을 “진행”시키는 규칙 (피격/이동/전투/AI 등)

게임 = 데이터 쪼가리

  • 시간 정지 후 한 장면을 보면 → 모든 것이 데이터로 관리됩니다.
  • 예: 레벨, 스탯, HP/MP, 배고픔 게이지, 성향 수치, 좌표, 현재 맵/퀘스트 상태 등
  • 같은 데이터만 있으면 화면을 똑같이 복원할 수 있습니다. (렌더링은 “데이터를 보여주는 과정”)

데이터 저장 위치

  • 실행 중 데이터는 RAM에서 관리됩니다.
  • 흐름을 2단계로 기억하면 편합니다.
    • 1단계: 게임 세상을 데이터로 묘사한다 (무엇을 저장할지 정의)
    • 2단계: 로직으로 데이터를 가공해 게임을 진행한다 (어떻게 바꿀지 정의)

간단 예시는 이런 느낌입니다.

데이터: hp=100
로직 : 몬스터 공격력 10 → hp -= 10
결과 : hp=90

CPU와 RAM의 역할 분담

  • RAM: 데이터 저장
  • CPU: RAM에서 값을 꺼내 연산하고, 결과를 다시 RAM에 저장
  • 예: 체력 100 → 피격 로직 → 10 감소 → 90 저장
  • 체력이 0이 되면 → 죽음/부활/마을 이동 같은 “규칙”은 코드(로직)가 담당
[RAM: 데이터] ──(읽기)──> [CPU: 연산/판단] ──(쓰기)──> [RAM: 데이터 갱신]

체크 질문 (스스로 답해보기)

  • “데이터만 있으면 같은 장면을 복원할 수 있다”는 말은 왜 성립할까?
  • 로직은 결국 데이터에 어떤 변화를 주는가? (읽기/계산/조건/쓰기 중 무엇?)
  • “RAM에 데이터가 있다”는 말과 “CPU가 게임을 돌린다”는 말은 어떻게 연결될까?

profile
李家네_공부방

0개의 댓글