저처럼 코드 입력하기 싫고 실행을 해보고 싶은 분들,
Ctrl+C, Ctrl+V 복사 붙여넣기 해서 사용하세요.
한 번 실행해 보면 유니티 구조적 이해에 많은 도움됩니다.
4. 김치런 게임 BackgroundScroll .cs 소스코드
2. 김치런 게임 GameManager .cs 소스코드
#Unity #유니티 #kimchirun #김치런 #게임개발 #유니티초보자
저처럼 코드 입력하기 싫고 실행을 해보고 싶은 분들,
Ctrl+C, Ctrl+V 복사 붙여넣기 해서 사용하세요.
한 번 실행해 보면 유니티 구조적 이해에 많은 도움됩니다.
4. 김치런 게임 BackgroundScroll .cs 소스코드
2. 김치런 게임 GameManager .cs 소스코드
#Unity #유니티 #kimchirun #김치런 #게임개발 #유니티초보자
저처럼 코드 입력하기 싫고 실행을 해보고 싶은 분들,
Ctrl+C, Ctrl+V 복사 붙여넣기 해서 사용하세요.
한 번 실행해 보면 유니티 구조적 이해에 많은 도움됩니다.
김치런 튜토리얼 영상 링크
https://www.youtube.com/watch?v=A58_FWqiekI
하트 Sprite 전환:
GameManager.Instance.lives
값을 기준으로 LiveNumber
와 비교.LiveNumber
이상이면 OnHeart
Sprite를, 그렇지 않으면 OffHeart
Sprite를 적용.하트의 역할:
Heart
오브젝트는 특정 체력 단계(LiveNumber)를 나타냄.LiveNumber
가 1인 하트는 체력이 1 이상일 때 활성화 상태, 그렇지 않으면 비활성화 상태.SpriteRenderer
:
GameManager
에서 관리하는 lives
값이 변경되면, 하트의 활성화 상태가 동적으로 업데이트됩니다.저처럼 코드 입력하기 싫고 실행을 해보고 싶은 분들,
Ctrl+C, Ctrl+V 복사 붙여넣기 해서 사용하세요.
한 번 실행해 보면 유니티 구조적 이해에 많은 도움됩니다.
김치런 튜토리얼 영상 링크
https://www.youtube.com/watch?v=A58_FWqiekI
오브젝트 위치 검사:
Update
메서드는 매 프레임마다 실행되며, 현재 게임 오브젝트의 x 좌표를 검사.Destroy(gameObject)
로 해당 오브젝트를 삭제.오브젝트 삭제:
Destroy(gameObject)
는 현재 스크립트가 붙어있는 게임 오브젝트를 메모리에서 제거.Start
메서드:
Start
메서드는 게임 오브젝트가 생성될 때 한 번 호출되지만, 이 스크립트에서는 사용하지 않음.저처럼 코드 입력하기 싫고 실행을 해보고 싶은 분들,
Ctrl+C, Ctrl+V 복사 붙여넣기 해서 사용하세요.
한 번 실행해 보면 유니티 구조적 이해에 많은 도움됩니다.
김치런 튜토리얼 영상 링크
https://www.youtube.com/watch?v=A58_FWqiekI
스폰 딜레이 설정:
minSpawnDelay
와 maxSpawnDelay
를 이용해 스폰 간격을 랜덤하게 조절.Random.Range(minSpawnDelay, maxSpawnDelay)
를 사용해 지정된 범위 내에서 지연 시간을 선택.게임 오브젝트 배열:
gameObjects
배열에 스폰할 수 있는 오브젝트를 등록.Random.Range(0, gameObjects.Length)
로 배열에서 무작위로 하나의 오브젝트를 선택.OnEnable
과 OnDisable
:
OnEnable
)되면 Spawn
호출을 예약.OnDisable
)되면 예약된 모든 호출을 취소(CancelInvoke
).Spawn
메서드:
Instantiate
를 통해 현재 위치(transform.position
)에 생성.Quaternion.identity
)을 가짐.Invoke
를 재귀적으로 호출.Spawn
메서드가 호출되어 오브젝트가 생성됨.Spawn
이 호출되며, 반복적으로 동작.저처럼 코드 입력하기 싫고 실행을 해보고 싶은 분들,
Ctrl+C, Ctrl+V 복사 붙여넣기 해서 사용하세요.
한 번 실행해 보면 유니티 구조적 이해에 많은 도움됩니다.
김치런 튜토리얼 영상 링크
https://www.youtube.com/watch?v=A58_FWqiekI
속도 조절 (scrollSpeed
):
scrollSpeed
는 기본 스크롤 속도를 조절하는 변수입니다.GameManager.Instance.CalculateGameSpeed()
와 결합하여 게임의 진행 상황에 따라 스크롤 속도를 동적으로 조절합니다.MeshRenderer 사용:
meshRenderer.material.mainTextureOffset
을 이용하여 텍스처의 오프셋을 변경합니다.GameManager와 연동:
GameManager.Instance.CalculateGameSpeed()
를 사용해 게임 진행 속도에 따라 배경 스크롤이 빨라지거나 느려지도록 설정./20
은 스크롤 속도를 조정하기 위한 비율로, 스크롤 속도가 지나치게 빨라지는 것을 방지.프레임 독립성:
Time.deltaTime
을 곱해 프레임 속도에 관계없이 일정한 스크롤 속도를 유지하도록 구현.저처럼 코드 입력하기 싫고 실행을 해보고 싶은 분들,
Ctrl+C, Ctrl+V 복사 붙여넣기 해서 사용하세요.
한 번 실행해 보면 유니티 구조적 이해에 많은 도움됩니다.
김치런 튜토리얼 영상 링크
https://www.youtube.com/watch?v=A58_FWqiekI
플레이어 점프 처리:
Update()
에서 스페이스바 입력 감지 후, Rigidbody2D
에 위쪽으로 힘을 가해 점프.isGrounded
를 이용해 플레이어가 땅에 닿아있을 때만 점프 가능.Settings
섹션:
moveSpeed
: 게임 오브젝트의 기본 이동 속도를 설정하기 위한 변수이지만, 현재 코드에서는 사용되지 않고 있음.Update()
메서드:
transform.position
을 변경하여 오브젝트를 왼쪽으로 이동시킴.GameManager.Instance.CalculateGameSpeed()
메서드에 의해 동적으로 계산됨.Time.deltaTime
을 곱해 프레임 속도에 관계없이 일정한 속도로 이동하도록 설정.GameManager
와 연동:
GameManager
의 CalculateGameSpeed()
메서드를 호출해 게임의 현재 속도에 따라 오브젝트의 이동 속도를 조정.GameManager
의 게임 상태에 따라 이동 속도가 동적으로 변경되며, 게임 난이도가 조절됨.moveSpeed
변수 활용:
moveSpeed
를 기본 이동 속도로 사용하고, 이를 GameManager.Instance.CalculateGameSpeed()
와 결합하여 속도를 조절할 수 있음.transform.position += Vector3.left * moveSpeed * GameManager.Instance.CalculateGameSpeed() * Time.deltaTime;
게임 상태 확인 추가:
GameManager
의 상태에 따라 움직임을 멈추거나 다르게 처리할 수 있음. 예를 들어, 게임이 GameState.Dead
상태일 때 오브젝트를 멈추도록 설정:if (GameManager.Instance.State == GameState.Playing) {
transform.position += Vector3.left * GameManager.Instance.CalculateGameSpeed() * Time.deltaTime;
}
이동 방향 변경:
Vector3.left
)으로만 이동하지만, 게임 디자인에 따라 다른 방향으로도 이동할 수 있도록 확장 가능.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Mover : MonoBehaviour
{
[Header("Settings")]
public float moveSpeed = 1f; // 기본 이동 속도
// Update is called once per frame
void Update()
{
if (GameManager.Instance.State == GameState.Playing) {
// 이동 방향: 왼쪽으로 기본 속도와 게임 속도를 곱하여 이동
transform.position += Vector3.left * moveSpeed * GameManager.Instance.CalculateGameSpeed() * Time.deltaTime;
}
}
}
이 코드는 GameManager
의 상태를 확인하고, moveSpeed
와 게임 속도를 결합하여 더 유연한 이동 속도 조정이 가능합니다.
저처럼 코드 입력하기 싫고 실행을 해보고 싶은 분들,
Ctrl+C, Ctrl+V 복사 붙여넣기 해서 사용하세요.
한 번 실행해 보면 유니티 구조적 이해에 많은 도움됩니다.
김치런 튜토리얼 영상 링크
https://www.youtube.com/watch?v=A58_FWqiekI
Singleton 패턴:
GameManager
클래스의 단일 인스턴스를 관리하며, 전역적으로 접근 가능.게임 상태 관리:
GameState
열거형으로 게임 상태를 관리하며, Intro
, Playing
, Dead
상태로 구분.점수 및 속도 계산:
CalculateScore()
: 게임 진행 중 경과 시간을 계산하여 점수로 표시.CalculateGameSpeed()
: 게임 속도를 동적으로 계산하여 최대 30f까지 증가.최고 점수 저장:
PlayerPrefs
를 사용하여 최고 점수를 저장하고 로드.게임 흐름 제어:
Update()
메서드에서 GameState
를 기반으로 게임 상태와 UI를 제어.PlayerPrefs
접근 시 기본값 설정 또는 에러 처리가 필요할 수 있음.저처럼 코드 입력하기 싫고 실행을 해보고 싶은 분들,
Ctrl+C, Ctrl+V 복사 붙여넣기 해서 사용하세요.
한 번 실행해 보면 유니티 구조적 이해에 많은 도움됩니다.
김치런 튜토리얼 영상 링크
https://www.youtube.com/watch?v=A58_FWqiekI
플레이어 점프 처리:
Update()
에서 스페이스바 입력 감지 후, Rigidbody2D
에 위쪽으로 힘을 가해 점프.isGrounded
를 이용해 플레이어가 땅에 닿아있을 때만 점프 가능.애니메이션 제어:
PlayerAnimator
를 사용해 점프(1) 및 착지(2) 상태에 따른 애니메이션 트리거.충돌 처리:
OnCollisionEnter2D
: "Platform"과 충돌 시 착지 처리.OnTriggerEnter2D
: 적, 음식, 황금과의 충돌을 처리하여 각각 목숨 감소, 회복, 무적 상태 부여.게임 상태 관리:
Hit()
및 Heal()
함수로 GameManager
의 lives
값을 조작.isInvincible
)를 5초 동안 유지하도록 구현.플레이어 사망 처리:
KillPlayer()
로 충돌체와 애니메이션을 비활성화하고 마지막 점프 효과를 부여.애니메이션 상태 관리 개선:
코드 중복 제거:
OnTriggerEnter2D
내에서 Destroy()
와 상태 변경 코드를 함수화하여 중복을 줄일 수 있음.에러 처리:
GameManager.Instance
가 null일 경우를 대비한 에러 처리 필요.물리 기반 코드:
PlayRigidbody.velocity
를 직접 설정해 물리적 결과를 더 세밀히 제어 가능.Driver Magician Lite: 드라이버 백업과 복원을 쉽게!
Driver Magician Lite는 Windows 사용자에게 꼭 필요한 무료 드라이버 백업 및 복원 도구입니다. 이 프로그램은 시스템에 설치된 모든 하드웨어 드라이버를 간편하게 저장하고, 필요할 때 복원할 수 있는 기능을 제공합니다. 운영 체제를 다시 설치하거나 문제가 발생했을 때, 시간을 절약하고 시스템을 정상적으로 복구하는 데 유용합니다.
드라이버 백업
현재 시스템에 설치된 하드웨어 드라이버를 탐지하여 파일로 저장할 수 있습니다. 이렇게 저장된 드라이버는 USB나 외장 하드에 보관해두면 안전합니다.
드라이버 복원
백업된 드라이버를 사용하여 시스템을 원래 상태로 복원할 수 있습니다. 운영 체제 재설치 후 매우 유용합니다.
가벼운 소프트웨어
설치 파일 크기가 작고, 시스템 자원을 거의 사용하지 않아 오래된 컴퓨터에서도 원활하게 작동합니다.
무료 제공
Driver Magician Lite는 상업 버전의 일부 기능을 제한적으로 제공하지만, 드라이버 백업 및 복원에는 충분히 유용합니다.
프로그램 실행
공식 웹사이트에서 Driver Magician Lite를 다운로드하여 설치합니다.
드라이버 백업
프로그램을 실행한 후, "Backup" 버튼을 클릭합니다.
백업할 드라이버를 선택한 뒤, 저장 경로를 설정합니다.
"Start Backup" 버튼을 누르면 선택한 드라이버가 지정된 폴더에 저장됩니다.
드라이버 복원
드라이버 업데이트 기능 부재
드라이버를 최신 상태로 유지하려면 별도의 업데이트 도구가 필요합니다.
기본적인 기능만 제공
Driver Magician(유료 버전)과 비교하면 업데이트, 삭제, 드라이버 다운로드 기능이 없습니다.
Driver Magician Lite는 공식 웹사이트에서 무료로 다운로드할 수 있습니다. 프로그램 크기가 작고 설치가 간단하며, 초보자도 쉽게 사용할 수 있습니다.
(Driver Magician Lite 검색해보세요)
Driver Magician Lite는 PC 드라이버 관리를 간소화하고, 불필요한 시간 낭비를 줄여줍니다. 드라이버 업데이트가 필요 없는 기본 사용자나, 운영 체제 재설치를 대비한 백업이 필요한 경우라면 꼭 추천하고 싶은 소프트웨어입니다. 지금 다운로드하여 PC를 더 안전하고 편리하게 관리해 보세요!