728x90 반응형 분류 전체보기71 Day 35 - JSON (게임 재시작 시, 최근 저장한 위치에서 시작) 주제>> JSON으로 위치 정보 저장(PlayerData.cs) >> S 키를 눌러 현재 위치 저장(PlayerController.cs)>> 게임 재시작 시 저장된 위치로 플레이어 이동(PlayerController.cs)공부내용1. JSON으로 위치 정보 저장 JSON이란?JSON(JavaScript Object Notation)은 인터넷에서 자료를 주고받을 때 그 자료를 표현하는 방법.먼저 JSON 데이터를 유니티에서 쉽게 처리하기 위해, 필요한 라이브러리를 설치해야한다.(Unity Package Manager에서 'Json.Net for Unity' 패키지 설치) PlayerData.cs : 플레이어의 위치 정보를 저장하고 불러옴(위치 정보는 JSON 형식으로 변환되어 파일로 저장됨)using Un.. 2024. 5. 31. Day 34 - ScriptableObject & (프리팹 또는 GUID) 주제>> ScriptableObject>> 프리팹>> GUID 공부내용1. 개념ScriptableObject : 게임의 설정, 데이터 테이블, 게임 오브젝트의 프로토타입을 저장하는 데 유용하다.에디터에서 직접 데이터를 편집할 수 있어서 편하다. 프리팹: 재사용 가능한 게임 오브젝트의 템플릿으로, 한 번 정의하면 여러 곳에서 사용 가능하다. GUID: 전 세계에서 고유한 식별자를 생성하는 방법이다.한 마디로 하나 뿐인 고유 ID를 생성하여 게임 오브젝트에 부여할 수 있다.2. 프리팹을 사용하여 게임 오브젝트를 생성하는 예제 2-1. ScriptableObject 클래스 작성using UnityEngine;[CreateAssetMenu(fileName = "NewObjectData", menuName = ".. 2024. 5. 29. Day 33 - 3D 게임(해와 달) 주제>> 유니티 3D 조명 변화공부내용Gradient : 색상 변화를 표현하는 데 사용AnimationCurve : 시간에 따른 값을 정의하는 데 사용 lightSource.transform.eulerAngles : 광원의 회전을 설정RenderSettings.ambientIntensity : 환경 조명의 강도를 설정(낮에는 더 밝게, 밤에는 더 어둡게) 1. 단순한 낮과 밤의 조명 변화주기적으로 조명의 색상을 변화시켜 낮과 밤의 효과를 구현한 예제using UnityEngine;public class SimpleDayNight : MonoBehaviour{ public Light directionalLight; // 광원 public Gradient lightColor; // 색상 그라디언트.. 2024. 5. 28. Day 32 - 동기와 비동기(Coroutine) 주제>> 동기와 비동기(개념)(실생활 비유) >> Coroutine은 비동기적 동기(Coroutine이 사용되는 좋은 예)(나쁜 예)공부내용1. 동기와 비동기란?1-1. 동기(Synchronous): 작업이 순차적으로 실행된다.동기적 코드는 한 번에 하나의 작업만 처리되기 때문에,이전 작업이 완전히 끝날때까지 기다리느라 대기시간이 발생할 수 있다. 실생활 비유레스토랑에서 주문(작업) + 대기-> 주문한 음식이 준비될 때까지 기다린다. 1-2. 비동기(Asynchronous): 작업이 동시에 실행된다.비동기적 코드는 여러 작업을 동시에 처리하고, 작업이 완료되면 그 결과를 처리한다. 실생활 비유 온라인에서 주문(작업) + 배송 완료 전에 다른 주문(작업)-> 상품을 주문하고 나면, 주문한 상품이 배송되기.. 2024. 5. 27. Day 31 - 객체 지향 SOLID 원칙(표 정리, 예제) 주제>> 객체 지향 SOLID 원칙 (단일 책임 원칙 - S)(개방 폐쇄 원칙 - O)(리스코프 치환 원칙 - L)(인터페이스 분리 원칙 - I)(의존성 역전 원칙 - D) >> 사용자인증시스템을 주제로 하는 예제(나쁜 예)(좋은 예) *** SOLID원칙을 알고 있으면 다른 사람의 코드를 이해하는데 도움이 된다.(추가적인 기능 구현 가능)*** But, 많이 사용하면 그만큼 코드가 복잡해진다.공부내용1. SOLID 원칙(표)원칙개념장점단점단일책임원칙(SRP)각 클래스는 하나의 책임만코드 이해, 유지보수 용이클래스 수 증가개방폐쇄원칙(OCP)확장 가능, 수정 불가능코드 재사용성, 확장 용이초기설계가 복잡리스코프치환원칙(LSP)부모 클래스가 제공하는 모든 기능을자식 클래스도 제대로 사용코드 예측가능성 증가.. 2024. 5. 26. Day 30 - Rigidbody ForceMode 와 Raycast 주제>>Rigidbody ForceMode(개념 및 4가지 종류)(오브젝트에 힘 가하기) >>Raycast(개념)(오브젝트 감지) >>ForceMode, Raycast 둘 다 활용한 예제(플레이어가 총알을 발사, 타겟에 부딪히면 타겟과 총알 제거)공부내용1. ForceMode란?Rigidbody에 힘을 가할 때, 어떤 방식으로 힘을 적용할 것인지를 정하는 옵션이다.방식에는 다음 4가지가 있다. - Force: 매 프레임마다 일정한 힘을 가함(예: 지속적으로 힘을 가하고 싶을 때 사용)같은 힘이라도 물체의 질량에 따라 가속도가 다르게 적용된다.ex) A질량 1kg / B질량 10kg / 힘 10 ---> A가 B보다 더 빠르게 이동Rigidbody.AddForce(Vector3 force, ForceMod.. 2024. 5. 24. 이전 1 ··· 4 5 6 7 8 9 10 ··· 12 다음 728x90 반응형