본문 바로가기

전체 글

(90)
4. 유니티 스크립트 ○ 유니티 스크립트 기본 개념 스크립트 기본 개념 유니티는 자바스크립트와 C# 기반 스크립트를 지원하고 있다. 현재 대부분의 자료들이 C#을 사용하고 있기 대문에 이 책에서도 C# 기준으로 설명하도록 하겠다. C#은 마이크로소프트에서 개발한 객체지향 언어로써 JAVA와 비주얼C++과 유사한 문법을 가지고 있다. C# 문법을 별도로 공부하지 않더라도 어느 정도 객체지향 프로그래밍에 대한 경험이 있는 사람이라면 어렵지 않게 코드를 이해할 수 있다. 객체지향 프로그래밍 경험이 없는 사람이면 C# 기본 문법에 대해 먼저 공부하는 것이 좋다. 유 니티는 게임 오브젝트 중심으로 개발되며 게임 오브젝트의 구체적인 기능을 정의하는 것이 스크립트이다. 유니티 스크립트는 이벤트 기반으로 동작한다. 객체가 움직이거나 프레임..
3. 유니티 Roll A Ball 기본 객체 만들기 ○ 플레인(Plane) 만들기 플레인(Plane) 만들기 먼저 편평한 바닥 모양을 한 플레인 객체를 추가해 보자. 플레인 객체는 모양에서 알 수 있듯이 게임에서 바닥의 역할을 한다. 플레인을 만들어 놓고 바닥으로 활용해서 공이 튀기거나 자동차가 움직이는 기반이 되는 바닥으로 사용한다. 객체를 추가할 때는 보통 계층 뷰에서 시작한다. 계층 뷰에서 마우스 오른쪽 버튼을 클릭해서 3D Object를 선택하고 그 중에서 Plane을 클릭한다. 3D 객체는 3차원 이기 때문에 x, y, z로 좌표가 결정되지만 플레인은 편평하기 때문에 y 좌표가 존재하지 않고 x,z 만 가지고 표현한다. 플레인은 또한 10단위 길이로 표현 된다. 플레인 이름 바꾸기 플레인 객채의 이름을 바꿔보자. 유니티에서 일반적으로 계층 뷰나 ..
2. 유니티 기본 예제 Roll A Ball 개요 ○ Roll A Ball 이란 Roll A Ball 실행 화면 Roll A Boll 게임은 유니티에서 초보자에게 툴 사용법을 익힐 수 있도록 만든 단순한 3D 게임이다. 게이머는 바닥을 움직이며 공의 이동 방향을 조절해 공이 큐브에 부딪힐 수 있도록 해야 한다. 공이 큐브에 부딪히면 큐브는 사라지게 된다. 게임의 목적은 모든 큐브를 없애는 것이다. Roll A Ball은 만들기 간단하지만 유니티의 핵심 요소가 모두 들어있기 때문에 초보자를 위한 튜터리얼로 적합한 게임이다. 유니티 튜토리얼 화면 유니티 공식 홈페이지에서는 쉽고 다양한 튜토리얼을 제공한다. https://unity3d.com/kr/learn/tutorials/s/roll-ball-tutorial 사이트에 접속하면 Roll A Ball을 설명..
1. 유니티 설치 및 기본개념 ○ 유니티 다운로드 유니티는 https://unity3d.com/kr/get-unity/download 에서 쉽게 다운로드 받을 수 있다. Unity 선택 및 다운로드와 Unity 허브 다운로드가 있는데 Unity 허브란 다양한 버전의 Unity를 데스크탑에서 관리하기 쉽게 지원해주는 툴이다. 전문적인 유니티 개발자라면 유니티 허브를 사용하는 것이 좋겠지만 이 책에서는 유니티를 이용한 머신러닝에 관심이 있기 때문에 상대적으로 단순한 오프라인 설치 모델을 사용하기로 한다. 유니티 다운로드 다음 화면에서 Plus, Pro, Personal 버전 세 개 중 하나를 선택할 수 있는데 테스트를 위해 무료로 제공되는 Personal 버전을 선택한다. 그리고 Windows용 설치 프로그램 다운로드를 클릭하면 설치 파..
프로젝트로 알아보는 보다 나은 시스템 만들기(개요) [프로젝트로 알아보는 보다 나은 시스템 만들기] 과정을 시작하며 필자는 이 과정에서 정보시스템 개발과 운영에 관련된 다양한 업무와 기술을 프로젝트라는 틀을 빌려 설명하고자 한다. 처리해야하는 업무와 처리하기 위해 필요한 기술 그리고 담당자를 기계 부품이라 생각한다면 프로젝트 관련 지식들은 기계를 잘 돌아가게 하는 기름과 같은 존재이다. 대부분 자료들이 기계 부품에 대해 잘아는 것이 중심이라며 이 과정에서는 기계 부품에 대한 설명뿐만 아니라 어떻게 하면 기계가 고장 없이 잘 작동할 수 있는지 설명하고자 한다. 프로젝트가 기획서라는 문서에서 출발해 거대한 시스템으로 탄생하기까지 모든 과정을 누가, 무엇을, 언제, 어떻게 해야 하는지 사례 중심으로 쉽고 자세하게 알아보자.다음과 같은 사람에게 본 과정을 추천하..
시스템운영에 필요한 운영체제 지식 □ 시스템운영에 필요한 운영체제 지식 ○ 윈도우와 리눅스 윈도우와 리눅스 윈도우는 그래픽 기반의 운영체제이다. 명령을 실행할 때는 직업 명령어를 입력하지 않고 마우스로 아이콘을 클릭한다. 반면에 유닉스 운영체제는 텍스트 기반의 운영체제이다. 물론 엑스 윈도우와 같이 그래픽 기반의 화면을 제공하지만 대부분의 작업은 텍스트 모드에서 진행된다. 작업을 수행하기 위해서는 명령어를 직업 손으로 입력해야 한다. 많은 프로그래머들이 윈도우 환경에 익숙해져 있으므로 개발 환경을 윈도우 기반의 데스크탑이나 노트북에 설치해서 프로그래밍을 한다. 개발이 완료된 후에 운영 환경의 웹서버가 설치되어 있는 유닉스로 프로그램을 전송한다. 사용자 편의성과 지원되는 다양한 개발 도구 측면에서 윈도우가 유닉스 보다 우수한 측면이 많다...
시스템운영에 필요한 보안 지식 □ 시스템운영에 필요한 보안 지식 ○ 네트워크 보안장비 네트워크 보안장비 종류 네트워크 보안장비는 네트워크 트래픽을 통해 유입되는 공격을 사전에 예방하거나 실시간 차단하는 시스템이다. 방화벽, IDS, IPS로 각각 발전했으나 최근에는 각각의 기술이 통합하는 추세로 보안장비의 경계가 모호해지고 있다. 모든 네트워크 보안 장비를 구입하기 어려운 중소 기업의 경우 세 가지 기능을 모두 지원하는 UTM(Unified Threat Management)의 도입이 증가하는 추세이다. 최근에는 방화벽, IDS, IPS에서 나오는 데이터를 통합 모니터링하고 관리하기 위해 ESM(Enterprise Security Management) 도입이 증가하고 있다. • 방화벽 방화벽(출처: https://www.cisco.co..
시스템운영에 필요한 네트워크 지식 □ 시스템운영에 필요한 네트워크 지식 ○ TCP/IP 프로토콜 TCP/IP 프로토콜은 인터넷의 기반을 이루는 전 세계적으로 가장 많이 사용되는 통신 프로토콜이다. 패킷 통신을 담당하는 IP(Internet Protocol)과 전송 조절을 담당하는 TCP(Transmission Control Protocol)로 구성된다. 두 개체가 TCP/IP를 사용해서 통신을 하기 위해서는 먼저 연결(Connection)을 맺어야 한다. 연결을 위해서는 연결 데이터를 여러 차례 교환하는데 이것을 핸드쉐이킹(handshaking)이라 하며 모두 세 번에 걸쳐 데이터가 전송된다고 해서 3 way handshaking이라고 한다. TCP/IP 프로토콜은 데이터 전송의 신뢰성을 보장하기 위해 재전송 타이머, 체크썸, 중복 데이..