본문 바로가기

전체 글225

컴퓨터 네트워크 1. 개요 서론 데이터 통신과 네트워크는 현대 사회에서 핵심적인 역할을 담당하는 분야로, 정보를 주고받고 기기들이 상호 연결되는 기반을 제공한다. 이는 컴퓨터 및 기타 디지털 기기들이 서로 통신하고 데이터를 교환할 수 있는 방법을 제공하며, 인터넷을 비롯한 다양한 네트워크 시스템을 구축하는 핵심 개념들을 포함한다. 데이터 통신과 네트워크는 정보의 전송 속도와 신뢰성, 보안 등을 고려하여 데이터의 원활한 이동을 보장하고, 다양한 서비스 및 애플리케이션들을 지원한다. 이를 위해 프로토콜, 라우팅, 스위칭 등 다양한 기술과 방법이 사용되며, 전세계적인 컴퓨터 네트워크의 발전은 현대 사회의 정보화와 글로벌 커뮤니케이션의 핵심 요소로 인식되고 있다. 데이터 통신 데이터(data)는 데이터를 만들어 사용하는 사용자 간에 합의.. 2023. 6. 24.
C# 네이밍 서론 C# 코딩 컨벤션(C# coding Conventions)은 C# 코드를 작성할 때 사용되는 규칙과 가이드라인의 모음이다. 이러한 컨벤션은 코드의 가독성과 일관성을 유지하고 협업 시에도 작성자 간에 일관된 스타일을 유지하기 위해 사용된다. 일반적으로 Microsoft에서 제공하는 C# 코딩 컨벤션을 따르는 것이 일반적이지만, 팀 또는 프로젝트에서 독자적인 컨벤션을 사용하기도 한다. 변수 이름 짓기의 종류 변수 이름을 짓는 방법은 다양하나 대표적으로 아래와 같은 표기법이 존재한다. 여기서 C#은 주로 카멜 표기법과 파스칼 표기법을 사용한다. 카멜 표기법(Camel Case) 각 단어의 첫 글자를 대문자로 표기하되 첫 단어의 첫 글자는 소문자로 표기하는 방식이다. Java, C#, JS에서 많이 사용된.. 2023. 6. 12.
Canvas 서론 유니티의 캔버스(Canvas)는 게임 또는 애플리케이션에서 2D 그래픽 요소를 표시하는 데 사용되는 컴포넌트이다. 캔버스는 유니티의 UI 시스템의 일부로, UI 요소를 그리고 상호 작용하기 위한 기본적인 컨테이너이다. 캔버스를 사용하여 버튼, 텍스트, 이미지, 슬라이더, 패널 등과 같은 UI 요소를 배치하고 제어할 수 있다. 캔버스는 일반적으로 화면에 하나만 존재하며, 게임 또는 애플리케이션의 UI의 루트 역할을 한다. 여러 UI 요소를 하위 계층에 배치하고 조직화하기 위해 캔버스 내에 패널이나 그리드와 같은 다른 요소들을 사용할 수 있다. 캔버스(Canvas) 모든 UI 요소는 Canvas 안에 위치해야 한다. 캔버스는 Canvas 컴포넌트가 있는 게임 오브젝트이며 모든 UI 요소는 반드시 어떤 .. 2023. 6. 7.
이벤트 함수 서론 유니티에는 MonoBehaviour 클래스 메서드로서 이벤트를 호출하는 함수들이 존재한다. 이들은 유니티 사용의 기초이자 게임을 더욱 편하게 만들어주는 존재로서, 이 함수들을 알아보는 시간을 가져보자. 중요한 부분은 Bold체로 강조 되어 있으니 참고바란다. 이벤트 함수 실행 순서 Unity 스크립트를 실행하면 사전에 지정한 순서대로 여러 개의 이벤트 함수가 실행된다. 아래 다이어그램은 Unity가 스크립트의 수명 주기 동안 이벤트 함수의 순서를 지정하고 반복하는 방법을 요약한 다이어그램이다. 첫 번째 씬 로드 다음 함수는 씬이 시작할 때(씬에서 오브젝트마다 한 번) 호출된다. Awake: 이 함수는 항상 Start 함수 전에 호출되며 프리팹이 인스턴스화 된 직후에 호출된다. 게임 오브젝트가 시작하.. 2023. 6. 2.
슬라이드 바로 사운드 조절하기 서론 사운드(BGM, Effect Sound 등) 소리를 관리해 주는 기능들이 모든 게임에 기본적으로 탑재되어 있다. 그중 슬라이드 바로 조절하는 방법에 대해 알아보자. 관리 사운드는 보통 GameManager 혹은 SoundManager를 통해 관리가 된다. GameManager는 게임의 주요 로직을 관리하는 클래스이다. 게임 진행 상태, 게임 플레이어, 적의 움직임, 충돌 감지, 게임 상태 변화 등과 같은 게임 로직을 처리한다. GameManager는 게임의 주요 컨트롤러 역할을 수행하며, 게임 진행을 제어하고 조정한다. 작은 규모의 게임의 경우 사운드 크기 조절은 게임의 로직으로도 볼 수 있고, 큰 분류를 하기 모호하므로 이곳에서 관리를 하지만, 중 규모 이상부터 GameManager의 하는 역할이.. 2023. 6. 1.
Audio Source 설정 서론 사운드(뮤직, 효과음 등)와 관련된 Audio Source에 대해 낱낱이 알아보자. Audio Source 오디오 소스(Audio Source)는 씬에서 오디오 클립(Audio Clip)을 재생한다. 이 클립은 오디오 리스너(Audio Listener) 또는 오디오 믹서(Audio Mixer)를 통해 재생 가능하다. 오디오 소스 생성(Creating Audio Sources) 오디오 소스는 할당된 Audio Clip 이 없으면 아무것도 하지 않는다. 클립은 재생될 실제 사운드 파일이다. 오디오 소스는 해당 클립을 재생/정지하거나, 기타​오디오 프로퍼티를 수정하는 컨트롤러 역할을 한다. 새로운 오디오 소스를 생성하는 방법: Unity 프로젝트에 오디오 파일을 임포트한다. 이 파일이 오디오 클립이 된다.. 2023. 5. 30.
강화학습 실습 코드 보호되어 있는 글 입니다. 2023. 5. 23.
강화 학습 8. The Asynchronous Advantage Actor Critic(A3C) Network 서론 DQN(Deep Q Network)이 Atari 게임을 플레이하기 위해 학습을 일반화하는 데 어떻게 성공했는지 알아보았다. 그러나 많은 양의 계산 능력과 훈련 시간이 필요했다. 그래서 Google의 DeepMind는 A3C(Asynchronous Advantage Actor Critic) 알고리즘이라는 새로운 알고리즘을 도입했는데, 이 알고리즘은 계산 능력과 교육 시간이 덜 필요하다는 장점이 있다. A3C의 기본 아이디어는 병렬 학습을 위해 여러 에이전트를 사용하고 전체 경험을 집계한다는 것이다. 이 페이지에서 A3C 네트워크가 어떻게 작동하는지 알아보자. 사전 지식 Advantage Function Q 함수가 상태 𝑠에서 에이전트가 행동 𝑎을 수행하는 것이 얼마나 좋은지 지정하고 가치 함수(val.. 2023. 5. 23.
OS 14. File System Implementation 서론 파일 시스템은 데이터와 프로그램을 포함하여 파일 내용의 온라인 접근과 온라인 저장을 위한 기법을 제공한다. 보통 파일 시스템은 많은 양의 자료를 보관하도록 설계된 보조저장장치에 영구적으로 상주한다. File system implementation 파일 시스템 구현은 사용자와 저장 관리의 관점에서 이루어진다. 사용자 관점에서는 파일 시스템 인터페이스를 통해 파일과 디렉터리를 다루며, 저장 관리 관점에서는 논리적 파일 시스템을 저장 장치에 매핑하고 구현을 위한 레이아웃, 데이터 구조, 알고리즘 등을 고려한다. 파일 시스템은 저장 장치를 블록의 시퀀스로 다루며, 데이터는 블록 단위로 전송된다. 각 파일에는 속성과 파일 데이터가 저장되어야 한다. Unix 파일 시스템에서는 아이노드(Inode)를 사용하여 .. 2023. 5. 19.
반응형