Dev_Yangho
728x90
article thumbnail
[Unity] 코딩의 특징
Unity 2023. 5. 29. 12:29

코딩의 특징 코딩에는 C#, 파이썬(Python), 한국어, 영어와 같은 언어들이 갖고 있는 의사소통을 위한 언어적인 특징과 컴퓨터 사고력과 논리적인 사고를 키우기 위한 논리적인 특징이 있다. 코딩을 통해 문제를 해결하기 위한 필수 요소를 만들어 나가는 과정을 '문제 해결 능력'이라고 하며, 이를 컴퓨터 용어로 '알고리즘(Algorithm)'이라고 한다. 언어적인 특징 1. 문법에 맞게 코딩해야 한다. 2. 정해진 절차와 순서에 맞게 실행됨을 알아야 한다. 3. 의사를 명확하게 전달해야 한다. 논리적인 특징 문제를 해결하기 위해 논리적으로 세분화해야 한다. 예시 문제 : 마트에서 신발을 사고 싶다. 문제를 해결하기 위한 필요 요소찾기. 돈을 가지고 마트로 이동해서 신발을 산다. 이처럼 일의 우선순위와 논..

article thumbnail
[Unity] Time.timeScale
Unity 2022. 8. 23. 16:37

Time.timeScale이란? Time.timeScale 프로퍼티는 시간이 어떤 속도로 흘러가는지를 의미한다. 주로 게임의 일시정지나 게임의 전체적인 속도를 조정할 때 사용한다. Time.timeScale의 기본 값은 1.0f로 되어있다. 이 때는 유니티상의 해당 씬의 시간이 실제 시간으로 흐른다. 그럼 유니티의 씬을 일시정지 하는 방법은 당연히 시간이 흐르지 않게 하는 것이다. Time.timeScale = 0f; 로 해준다면 씬의 시간은 흐르지않는 일시정지 상태가 된다. 마찬가지로 씬의 속도를 2배 빠르게 하고 싶다면 Time.timeScale = 2.0f; 로 구현할 수 있다.

article thumbnail
[Unity] Coroutine(코루틴) 함수
Unity 2022. 8. 23. 16:26

Coroutine(코루틴) 함수 코루틴 함수에 대해 알아본다. Coroutine(코루틴)을 사용하는 이유 개발을 하다보면 실제 시간개념을 적용해 딜레이를 시켜야 하는 경우가 있다. 이 때 Update()함수에서는 60fps의 경우 1초에 60번을 실행할 것이다. 그러나 코루틴을 사용하면 매 프레임이 아닌 자신이 지정한 때에 실행할 수 있게 된다. Coroutine(코루틴) 예시 //코루틴 함수를 업데이트 함수에서 한번만 실행시켜 보겠다. //코루틴 변수를 하나 생성한다. private Coroutine co = null; void Update() { if(co == null) { co = StartCoroutine(Timer()); } } IEnumerator Timer() { print("0초"); y..

article thumbnail
[Unity] Normalize, Time.deltaTime
Unity 2022. 8. 21. 13:12

Normalize, Time.deltaTime 오브젝트가 이동하는 코드에서 자주보이는 Normalize or normalized, Time.deltaTime에 대해 알아본다. Normalize 오브젝트 움직이는 코드를 보다 보면 Normalize 또는 normalized를 흔히 보게 된다. normalize는 정상화되다 라는 뜻으로 주로 벡터를 정규화 하는데에 사용한다. 벡터에 x축, y축이 있다고 하면 캐릭터가 대각선의 방향으로 갈 때에는 x축과 y축에 힘이 동시에 작용된다. 이 때 두 힘이 합쳐지면서 단일 방향으로 나아갈 때보다 더 빠른 속도로 나가는 경우를 방지하기 위해서 벡터의 정규화를 사용한다. Normalize : Vector3.Normalize() : 현재 벡터값을 단위벡터 값으로 변경해버린..

article thumbnail
[Unity] 오브젝트 움직이기(transform)
Unity 2022. 8. 21. 12:54

transform을 활용해 오브젝트 움직이기 transform의 position값을 변경해 오브젝트를 움직인다. transform이란? 영어의 의미로는 변형시키다라는 뜻을 갖고 있는 transform은 해당 오브젝트의 위치, 크기, 회전의 상태를 나타낸다. 따라서 위치의 값을 갖고있는 position을 변경시키면 오브젝트가 움직이게 되는 원리를 이용해본다. // 움직일 스피드를 정할 실수형 변수를 선언해준다. public float speed; // 실시간의 값을 받기 위해 Update함수에서 코드를 작성해 보겠다. void Update() { // 1번째 방법 float h = Input.GetAxis("Horizontal"); float v = Input.GetAxis("Vertical"); Vect..

article thumbnail
[Unity] 접근 제한자
Unity 2022. 8. 19. 10:41

C# 접근제한자 이전에 리지드바디로 이동하는 게시글에서 private이라는 생소할 수도 있는 접근제한자를 보았을 것이다. 이번엔 유니티에서 사용하는 스크립팅언어인 C#의 접근 제한 용어 정리를 해본다. (public, private, protected, internal, protected internal) private 클래스 내부에서만 접근이 가능하다. [SerializeField]를 사용하면 private 변수이지만 인스펙터창에서 접근이 가능하다. 게임오브젝트나 컴포넌트들을 연결할 때 인스펙터에서만 관리가 가능하게 해준다. public 모든 곳에서 접근이 가능하다. 때문에 여러명과 작업할 경우에 예상치 못한 오류가 발생할 수도 있다. public 변수를 사용하면 인스펙터창에 변수를 직접 입력할 수 있..

article thumbnail
[Unity] 오브젝트움직이기(Rigidbody)
Unity 2022. 8. 19. 10:14

Rigidbody를 이용해 물체 움직이기 리지드바디를 이용해 물체를 움직여본다. Addforce Addforce에는 ForceMode가 4종류 있다. 변수 특징 Force 질량 사용, 연속적인 힘 O Acceleration 질량 무시, 연속적인 힘 O Impulse 질량 사용, 연속적인 힘 X VelocityChange 질량 무시, 연속적인 힘 X 우선 이 Addforce를 이용하여 오브젝트를 움직여 볼 것이다. 리지드바디 추가. 리지드바디 고정. 스크립트 생성. using System.Collections; using System.Collections.Generic; using UnityEngine; public class YH_Move : MonoBehaviour { private Rigidbody ..

article thumbnail
[Unity] Unity 함수 실행순서
Unity 2022. 8. 18. 17:27

이벤트 함수의 실행 순서 Unity 스크립트를 실행하면 사전에 지정한 순서대로 여러 개의 이벤트 함수가 실행된다. 이러한 이벤트 함수의 설명과 실행 순서를 알아본다. 가장 대표적인 함수 실행순서 요약 첫 번째 씬 로드 다음 함수는 씬이 시작할 때(씬에서 오브젝트마다 한 번) 호출됩니다. Awake: 항상 Start 함수 전에 호출되며 프리팹이 인스턴스화 된 직후에 호출된다. 게임 오브젝트가 시작하는 동안 비활성 상태인 경우 Awake 함수는 활성화될 때까지 호출되지 않는다. OnEnable: (오브젝트가 활성화된 경우에만): 오브젝트 활성화 직후 이 함수를 호출한다. 레벨이 로드되거나 스크립트 컴포넌트를 포함한 게임 오브젝트가 인스턴스화될 때와 같이 MonoBehaviour를 생성할 때 이렇게 할 수 있..

728x90
profile on loading

Loading...