본문 바로가기

전체 글

[멋쟁이사자처럼 유니티 게임 스쿨 TIL]7일차 노드 jsapp.get은 await 함수랑 비슷함. url요청이 들어올때 호출되기 때문 오늘 사용한게 node.js의 npm 패키지에 있는 express.js 웹프레임 워크고 해당 웹 프레임 워크가 rest API 구조로 설계된것오늘 배운것을 상기시켜 보면 nodejs로 간단한 rest api 서버를 유니티에 붙여 특정 키를 누를때 마다 서버에 있는 데이터를 콘솔창에 출력하도록 해보았다.Node.js란?자바스크립트 실행 환경:Node.js는 브라우저 외부에서도 자바스크립트를 실행할 수 있게 해줍니다. 원래 자바스크립트는 웹 브라우저에서만 동작했는데, Node.js 덕분에 서버에서도 자바스크립트를 사용할 수 있습니다.비동기 I/O:Node.js는 비동기 입출력을 사용합니다. 이는 여러 작업을 동시에 처리할.. 더보기
[멋쟁이사자처럼 유니티 게임 스쿨 TIL]6일차 코어는 물리적인 개념이고 스레드는 소프트웨어 적인 개념.코어는 일꾼이고이고 스레드는 일을 하는 행위이다 .싱글 코어, 싱글 스레드 CPU: 한 명의 작업자가 하나의 일을 순서대로 처리하는 것. 싱글 코어, 멀티 스레드 CPU: 한 명의 작업자가 여러 일을 번갈아 가면서 처리하는 것 멀티 코어, 멀티 스레드 CPU: 여러 명의 작업자가 여러 일을 동시에 처리하는 것.코루틴 : 작은 양의 데이터를 단발성으로 기다릴때어싱크 : 방대한 양의 데이터를 기다릴때 예를들면 네트워크 등등 이 둘은 성능 최적화를 위해 쓴다.코루틴은 싱글스레드 기반으로 멀티스레드 처럼 보이게 하지만 어싱크는 멀티스레드를 쓴다.코루틴은 유니티에서 공식적으로 제공하지만 어싱크는 c#에서 제공하고 유니티 공인은 아니다 .코루틴(Coroutin.. 더보기
[멋쟁이사자처럼 유니티 게임 스쿨 TIL] 5일차 foreach ,group by, linq, list , array 등등 포이치, 그룹바이, 링큐, 리스트, c#어레이List, Array일단 Array는 선호되지 않음.Array - 수정에 닫혀있고 자신의 크기 내에서만 수정이 가능함. 기능은 빠르나 크기를 변경하는 작업은 비효율적 이라는 단점이 있다. 이러한 문제점 때문에 Array는 배열을 수정하지 않을때만 쓰고 수정을 위한 배열은 List를 쓴다.List - 동적 배열이다. 배열은 보통 추가나 수정의 과정에서 자신의 크기를 넘어가게 되면 자신을 복사해 새 배열을 생성하고 추가 작업을 진행하기에 순간 메모리 사용량이 증가할 순 있지만 List는 이런 작업을 최적화 하여 성능을 유지함.foreach배열의 요소를 순서대로 확인하는 for문의 진화형 반복문for문은 그냥 몇번할까? 라면 foreach는 이 배열(리스트, 딕셔너.. 더보기
[멋쟁이사자처럼 유니티 게임 스쿨 TIL] 4일차 오브젝트 회전 키 입력 유니티에서 움직임 구현.3일차에서는 wasd로 움직임을 구현했고이제는 회전을 이용해 ad를 누르면 좌우로 회전하도록 만듦using System.Collections;using System.Collections.Generic;using UnityEngine;public class CharacterController : MonoBehaviour{ public float speed; public float rotSpeed; void Start() { } void FixedUpdate() { Vector3 direction = Vector3.zero; Vector3 rotDirection = Vector3.zero; .. 더보기
A*(에이스타) 알고리즘 기본개념(1) 💡 Astar 알고리즘이란 ?각 노드들 사이의 거리를 비교해 더 짧은 길을 찾아 목적지에 최단거리에 도착하는 알고리즘.1968년도 SRI에서 모바일 자율 행동 로봇 Shakey 프로젝트의 일환으로 고안. 원래는 dijkstra 알고리즘이 1959년에 발표되었지만 astar알고리즘은 이 버전의 확장 버전이라고도 할 수 있다. 💡 Dijkstra 알고리즘 1959년 발표. 그래프의 모든 경로를 탐색하고 최적의 경로 계산.  다이스트 알고리즘은 모든 경로를 알고 그 경로의 거리를 계산해야 하기 떄문에 비용이 많이 발생한다. a*알고리즘은 이러한 문제점을 개선한 것. 이러한 a*알고리즘에 샤키프로젝트를 진행한 스탠포드 연구소는 A new heuristic search method라는 제목을 붙였다.여기서 휴.. 더보기
[멋쟁이사자처럼 유니티 게임 스쿨 TIL] 3일차 겟키다운과 겟키의 차이점은겟키는 지속겟키 다운은 그 눌렀을때 한번만  이걸 해오면 네트워크 알려주신다고 하심 더보기
[멋쟁이사자처럼 유니티 게임 스쿨 TIL] 2일차 C# 클래스 문법까지 💡 forstatic void funtion(int min, int max) { for (int i = min; i 이렇게 나온다이는 j는 0으로 초기화 되었고 10 미만이 충족될 때 j를 1씩 증가 시킨다 라는 의미이고 j가 1씩 증가 될 때 {}안의 조건을 실행시키고 1을 증가 시킨다. 💡 스코프{} 로 쓰고 로컬 변수는 이 스코프 내에서만 살아있다. 스코프를 벗어나면 변수는 쓸 수 없다. 💡 함수계산식의 묶음. 💡 static지역함수와 전역함수가 있다. 전역함수에 static이 붙고 따로 뭔가 붙지 않은 상태는 지역함수라고 한다.전역함수는 프로젝트 내에 유일한 함수이며 그 함수 내에 실행되는 함수들은 static이 되어야 한다. 💡 매개변수파라미터라고 부르고.. 더보기
[멋쟁이사자처럼 유니티 게임 스쿨 TIL] 강의 1일차 C#네이티브 기초 문법 연습 c#의 역사 - B언어 → C++ → C++++이 C++++을 모양을 가만보니 ++++의 모양쌓아보면 C#이 되어있음 everything - 파일찾기 프로그램notepad++ - 메모장 상위호환 int - 정수float - 실수short - 작은수long - 큰수(약 21억 까지 표현)long long - 더 큰수(롱보다 더 큰수도 표현) ,빅인티저와 같은 개념이다. 128비트로 가면 개념이 약간 달라지지만 당장은 같은 개념이다.char - 단일 문자 (한글자일 때는 일반 따옴표)string - 문자열 (문자열일 경우 쌍따옴표)1byte == 8bitbit는 플래그를 표시하고 00000000 식으로 이진수를 표현한다 .  💡 반복문의 등장while, for, foreachwhile - 조건값이 참이면 .. 더보기