no image
유니티 머신러닝 1(Unity ML-Agents)
자세한 설명은 유니티 머신러닝 깃 허브에 잘 나와있습니다! https://github.com/Unity-Technologies/ml-agents/blob/develop/docs/Installation.md 유니티 머신러닝 깃허브 기준 설명서 -> docs -> Installation.md 로 들어가시면 됩니다! 현재 2024년 3월 기준으로 블로그를 작성하였고 다른 블로그를 참고하여도 계속 버전 문제가 커서 유니티 머신러닝 깃허브를 직접 참고하여 블로그를 새로 작성해봅니다! 일단 준비물은 https://github.com/Unity-Technologies/ml-agents GitHub - Unity-Technologies/ml-agents: The Unity Machine Learning Agents T..
2024.03.19
no image
유니티 Unity 보스 드래곤(Boss Dragon) 기획[졸업작품]
이번에 게임 졸업작품을 제작하기전 졸업작품 기획입니다! 이번에 기획을 해보면서 기획도 중요하다는걸 깨달았다예전에 잠깐 방학에 기획없이 친구들과 작은 게임 프로젝트를 진행했는데 확실히 방향과 틀을 잡고 시작하는것과그냥 맨땅에 헤딩하는것과는 다르다는걸 느꼈다게임제작이 기획대로 흘러갈지 모르겠지만 열심히 해보자@@ https://youtu.be/_tI3N9Zm87A프로토타입 1https://youtu.be/BD2RX2lEqpI프로토타입 2 https://youtu.be/bZN9wO0vHm4최종 프로토타입
2024.01.29
no image
유니티 퀘스트2 컨트롤러 셋팅
3D URP로 프로젝트를 생성해주며 Android가 있는 버전으로 프로젝트를 생성해주세요! • Edit - Project Settings 에서 • Install XR Plugin Management 를 설치해줍니다. Open XR을 체크해서 다운로드한뒤 yes버튼을 누르면 다시 프로젝트가 껏다 켜집니다. 기다려주세요! 그리고 노란색 경고 표시를 누르신다음 Fix All을 눌러주시면 됩니다. Open XR 에서 안드로이드를 클릭하신뒤 Oculus Touch Controller Profile을 추가해줍니다. Adroid를 추가하지 않으신분들은 보이지않으실거에요! 추가해주시면 보일겁니다. 그리고 Hand Interaction Poses를 체크해줍니다! 그리고 PC를 클릭해서 똑같이 추가해주고 체크해줍니다. X..
2023.11.24
no image
유니티 URP(Universal Render Pipeline) 설정방법
1. 첫 번째 방법 프로젝트 생성시에 바로 URP를 사용해서 프로젝트를 생성해준다 그러면 Global Volume 과 Readme, UniversalRenderPipelineGlobalSettings 가 생성되는걸 확인할수있다. 2. 두 번째 방법 일반적인 3D로 생성했을시에 URP 적용방법을 알려드리겠습니다. 3D로 생성했을때는 일반적으로 URP에대한 기본 셋팅이 되어있지 않은 상태. Window - Pakage Manager - Pakegaes 에서 Unity Registry를 선택후 - Univeral RP를 다운로드 해준다. URP를 다운받은후 Assets에 오른쪽 클릭을해줍니다. Create - 맨 밑에 있는 Rendering - URP Asset (with Universal Renderer) ..
2023.11.23
Unity 성결대 미소과 경진대회
3학년 1학기 게임엔진 수업을 들으면서 유니티 3D에 대한 공부를 진행했습니다. 그 결과로 성결대 미디어소프트웨어학과 경진대회에서 우수상을 받게 되었습니다. 경진대회에는 약 74명이 참가했고, 게임엔진 수업을 열심히 듣고 경진대회에 참여할 수 있다는 얘기를 듣고 약 2주간 혼자 개발을 하였습니다. 개인적으로 게임 개발에 대해 너무 재미있게 시간을 보냈고, 다른 프로그래밍 언어들을 공부하는 것도 재미있었지만 유니티만큼의 흥미를 느끼지 못했습니다. 유니티는 개발한 내용이 즉시 시각적으로 보여주고 오류가 있으면 게임이 실행되지 않고 어디서 문제가 발생했는지 자세하게 알려주기 때문에 장점이라고 생각했습니다. 이번 경진대회에서는 2등을 차지했는데, 1등 작품을 보았을 때 게임성은 많이 부족해 보였지만 퀄리티는 뛰..
2023.06.19
반응형

자세한 설명은 유니티 머신러닝 깃 허브에 잘 나와있습니다!

https://github.com/Unity-Technologies/ml-agents/blob/develop/docs/Installation.md

유니티 머신러닝 깃허브 기준 설명서 -> docs -> Installation.md 로 들어가시면 됩니다!

 

현재 2024년 3월 기준으로 블로그를 작성하였고

다른 블로그를 참고하여도 계속 버전 문제가 커서 유니티 머신러닝 깃허브를 직접 참고하여 블로그를 새로 작성해봅니다!

 

일단 준비물은

https://github.com/Unity-Technologies/ml-agents

 

GitHub - Unity-Technologies/ml-agents: The Unity Machine Learning Agents Toolkit (ML-Agents) is an open-source project that enab

The Unity Machine Learning Agents Toolkit (ML-Agents) is an open-source project that enables games and simulations to serve as environments for training intelligent agents using deep reinforcement ...

github.com

링크로 들어가셔서 

 

초록색 Code 버튼을 눌러 다운로드를 해줍니다!

 

현재 날짜 기준으로

  • Unity(2023.2 이상) 설치
  • Python(3.10.12 이상) 설치

라고 설명서에 나와있으므로 유니티허브를 다운로드해주시고

유니티 2023,2버전 이상과 파이썬 3.10.12 이상버전을 설치해줍니다!

저는 

유니티 2023.2.13f1 버전과 파이썬 3.11 버전을 설치하였습니다!

 

그리고 머신러닝은 가상환경에서 실행해야하기때문에

https://docs.conda.io/projects/conda/en/stable/

Conda에 들어가셔서 다운로드를 해줍니다!

 

모두 다운로드가 완료되었다면

 

검색을 하셔서 Anaconda Prompt (miniconda3) 를 실행해줍니다!

 

 

이런식으로 기본 가상환경 창이 나오는데

아까 맨 처음에 다운받았던 유니티 ml-agents-develop 로 들어가셔서 경로를 설정해줍니다!

저는 2번째라 2라고 적었으니 신경쓰지마세요!

 

경로로 들어가는법

cd C:\Users\Jean\Desktop\ml-agents-develop2\ml-agents-develop

각자의 경로로 들어가시길 바랍니다! 저는 바탕화면에 놔둬서 경로가 이런식으로 됩니다!

Jean은 제 이름이고 Desktop은 보통 바탕화면 입니다.

이 파일의 경로로 설정해주세요!

 

conda create -n mlagents python=3.10.12 && conda activate mlagents

명령어를 사용하여 파이썬 버전을 맞춰주고 conda를 사용하여 mlagents를 사용하여 가상환경을 셋팅해줍니다!

이런식으로 파이썬 버전3.10.12와  mlagents로 가상환경의 기본셋팅이 되었습니다! 

 

더 많은 예제를 다운로드 하고싶으시다면

git clone --branch release_21 https://github.com/Unity-Technologies/ml-agents.git

이 명령어를 사용하시면 됩니다! 저는 사용하지 않겠습니다.

 

자 이제 PyTorch를 설치해야하는데요 윈도우라면

pip3 install torch~=2.2.1 --index-url https://download.pytorch.org/whl/cu121

 

OS라면 GRPC 라이브러리를 설치합니다

pip3 install grpcio

 

둘중 하나만 하시면 돼요! 각자 맞는 운영체제로 다운하시면 됩니다!

 

 

자 이제 파이썬 패키지를 설치해야 합니다

2개의 명령어를 한줄씩 실행해줍니다!

python -m pip install ./ml-agents-envs
python -m pip install ./ml-agents

 

 

밑의 명령어도 실행해줍니다!

python -m pip install mlagents==1.0.0

 

 

마지막으로 파이토치에 필요한것과 나머지 명령어도 실행해주시면 됩니다!

pip3 install torch -f https://download.pytorch.org/whl/torch_stable.html
pip3 install -e ./ml-agents-envs
pip3 install -e ./ml-agents

 

 

이제 셋팅은 끝났습니다!

 

유니티에서 디스크에서 프로젝트 추가를 누르신다음

아까 저희가 지정했던 경로에 Project 파일이 있습니다.

이 프로젝트 파일로 프로젝트 추가를 눌러주시면 됩니다!

 

 

프로젝트가 열리는걸 기다려주세요!

다음 페이지에서 예제 다루는법을 소개하겠습니다!

 

반응형
반응형

 

이번에 게임 졸업작품을 제작하기전 졸업작품 기획입니다!

 

 

 

이번에 기획을 해보면서 기획도 중요하다는걸 깨달았다

예전에 잠깐 방학에 기획없이 친구들과 작은 게임 프로젝트를 진행했는데 확실히 방향과 틀을 잡고 시작하는것과

그냥 맨땅에 헤딩하는것과는 다르다는걸 느꼈다

게임제작이 기획대로 흘러갈지 모르겠지만 열심히 해보자@@

 

https://youtu.be/_tI3N9Zm87A

프로토타입 1

https://youtu.be/BD2RX2lEqpI

프로토타입 2

 

https://youtu.be/bZN9wO0vHm4

최종 프로토타입

 

반응형
반응형

3D URP로 프로젝트를 생성해주며 Android가 있는 버전으로 프로젝트를 생성해주세요!

 

 

 

• Edit - Project Settings 에서

• Install XR Plugin Management 를 설치해줍니다.

 

Open XR을 체크해서 다운로드한뒤 yes버튼을 누르면 다시 프로젝트가 껏다 켜집니다.

기다려주세요!

그리고 노란색 경고 표시를 누르신다음

 

Fix All을 눌러주시면 됩니다.

 

Open XR 에서 안드로이드를 클릭하신뒤 Oculus Touch Controller Profile을 추가해줍니다.

Adroid를 추가하지 않으신분들은 보이지않으실거에요! 추가해주시면 보일겁니다.

 

그리고 Hand Interaction Poses를 체크해줍니다!

 

그리고 PC를 클릭해서 똑같이 추가해주고 체크해줍니다.

 

XR Plug-in Management를 다시 들어가셔서 안드로이드도 OpenXR을 체크!

 

Window - Pakage Manager - Unity Registry 클릭!

 

XR Interaction Toolkit 을 설치해줍니다!

 

제목에 보시면 com. 어쩌고 파란색으로 드래그한 부분을 복사해주세요

왼쪽 상단에 + 버튼을 눌러서 Add pakage form git URL을 클릭합니다.

복사한 주소를 넣어서 엔터를 누르시면 최신버전으로 다운받아져요!

그냥 사용하셔도 되지만 최신버전으로 사용하시는걸 추천합니다!

 

Samples 탭에서 2개의 샘플을 설치해줍니다!

1. Starter Assets

2. XR Device Simulator

 

Hands Interaction Demo 는 사용하실분만 다운로드 받아주세요! 위의 2개로도 충분합니다!

 

하이어라키 창에서 새로 추가해줍니다.

XR - XR Origin (VR)

그럼 이런식으로 추가가 됩니다.

Left, Right Controller의 Sorting Group을 삭제해줍니다!

 

Left Controller를 클릭하고 XR Controller 를 들어가 빨간색으로 표시된 곳을 눌러주시고

XRI Default Left Controller 을 클릭해줍니다!

Right Controller도 똑같은 방식으로 Right로 추가해주세요!

그럼 Left와 Right 둘다 기본 설정이 완료 됩니다.

Project 에서

Assets - Samples - XR Interaction Toolkit - 2.5.2 - Starter Assets - Presets -

XRI Default Left Controller 를 클릭한뒤 빨간색으로 표시된곳을 눌러주시면 됩니다!

XRI Default Right Controller 도 똑같은 방식으로 설정해주세요!

 

다시 Edit - Project Settings 를 들어가서

Preset Manager 을 들어가서

각 Controller에대한 이름 적어주세요!

 

빈 오브젝트를 만들어 줍니다 이름은 - XR Manager

하위에다가 Input Action Manager를 생성해주고

원래 있던 XR interaction Manager을 XR Manager에 넣어줍니다!

그리고 Input Action Manager에서 Add Component를 눌러서 Input Action Manager 스크립트를 추가해줍니다!

추가된 Input Action Manager 스크립트에 Element 값을 + 표시를 눌러 값을 하나 추가해줍니다.

 

Project의

Assets - Samples - XR Interaction Toolkit - 2.5.2 - Starter Assets - XRI Default Input Actions를 Element값에 넣어줍니다.

 

그리고 Starter Assets - Prefabs - Controllers 에있는 XR Controller Left를

하이어라키 창에있는 Left Controller 를 클릭해서 XR Controller 스크립트의 맨 밑부분 Model Prefab부분에 끌어당겨줍니다.

Right부분도 똑같이 해주세요!

 

 

그리고 마지막으로

XR Device Simulator 를 하이어라키 창에 추가해줍니다!

 

 

게임을 실행해보면 잘 되네요!

왼쪽 설명란에 버튼을 눌러보시면 잘 실행되는걸 보실수있습니다.

반응형
반응형

1. 첫 번째 방법

프로젝트 생성시에 바로 URP를 사용해서 프로젝트를 생성해준다

 

그러면 Global Volume 과 Readme, UniversalRenderPipelineGlobalSettings 가 생성되는걸 확인할수있다.

 

 

2. 두 번째 방법

일반적인 3D로 생성했을시에 URP 적용방법을 알려드리겠습니다.

 

3D로 생성했을때는 일반적으로 URP에대한 기본 셋팅이 되어있지 않은 상태.

 

Window - Pakage Manager - Pakegaes 에서 Unity Registry를 선택후 - Univeral RP를 다운로드 해준다.

 

 

URP를 다운받은후 Assets에 오른쪽 클릭을해줍니다.

Create - 맨 밑에 있는 Rendering - URP Asset (with Universal Renderer) 클릭

 

그럼 2개의 파이프라인 렌더가 생성되는데 이걸 다시 설정해줘야합니다.

 

Edit - Project Settings… 클릭!

 

Graphics 를 클릭해줍니다.

New Universal Render Pipeline Asset 을 끌어당겨서 적용시켜줍니다.

 

그러면 원래 이랬던 집이

이렇게 핑크색으로 바뀝니다.

 

일단 기본적인 퀄리티 셋팅을 하기위해

다시 Project Settings - Quality 에 들어가서 - High를 클릭해주고 다시 New Universal Render Pipeline Asset 를 등록해줍니다!

퀄리티 셋팅을 하는 이유는 URP가 반짝거림이 심해질수있는데 High로 하는것이 제일 안정적이고 반짝거림이 있지않아서 입니다.

 

 

핑크색 없애기!

핑크색을 없애기 위해서는

Window - Rendering - Render Pipeline Converter 를 들어가줍니다.

 

그러면 이러한 창이 뜨게 되는데

전부 체크를 해준뒤 Convert Assets을 클릭해줍니다!

그러면 다시 원상복귀!

 

URP 적용하기전

 

궁금하신게 있으시다면 댓글 달아주세요!

반응형
반응형


3학년 1학기 게임엔진 수업을 들으면서 유니티 3D에 대한 공부를 진행했습니다. 그 결과로 성결대 미디어소프트웨어학과 경진대회에서 우수상을 받게 되었습니다. 경진대회에는 약 74명이 참가했고, 게임엔진 수업을 열심히 듣고 경진대회에 참여할 수 있다는 얘기를 듣고 약 2주간 혼자 개발을 하였습니다.

개인적으로 게임 개발에 대해 너무 재미있게 시간을 보냈고, 다른 프로그래밍 언어들을 공부하는 것도 재미있었지만 유니티만큼의 흥미를 느끼지 못했습니다. 유니티는 개발한 내용이 즉시 시각적으로 보여주고 오류가 있으면 게임이 실행되지 않고 어디서 문제가 발생했는지 자세하게 알려주기 때문에 장점이라고 생각했습니다.

이번 경진대회에서는 2등을 차지했는데, 1등 작품을 보았을 때 게임성은 많이 부족해 보였지만 퀄리티는 뛰어났습니다. 물론 물리적인 요소의 디테일은 부족해 보였지만, 가져온 캐릭터 등을 사용하는 것도 실력에 해당한다고 생각합니다. 저도 에셋을 가져와서 활용하는 데에 어려움을 겪었는데, 이해하는 데 시간이 걸렸습니다. 하지만 이것도 새로운 것을 배울 때의 쾌감을 느낄 수 있어서 너무 재미있었습니다. 개발자로서의 천직일지도 모르겠습니다.

또한 1인 개발로 진행했을 때 기획 부분이 부족하다는 것을 느꼈습니다. 게임을 만들기 전에 기획을 탄탄하게 준비해야 게임 제작이 원활하게 진행될 수 있다는 생각을 했습니다. 처음 경진대회 작품을 만들 때는 아이디어가 생각나면 그때그때 추가하는 방식으로 개발을 진행했는데, 이로 인해 막히는 경우도 있었고 어떤 것을 추가해야 할지 방향성을 잡지 못하는 경우도 있었습니다.

3학년 1학기가 끝난 후에는 편입생 친구들과 함께 3인 개발로 프로젝트를 시작했습니다. 우선 기획적인 부분을 탄탄하게 준비한 뒤 각자 파트를 나눠서 개발하기로 했습니다.

마지막으로, 경진대회에 제출한 탱크 게임의 결과물을 보여드리며 이 글을 마무리하겠습니다.

 

https://youtu.be/bgEv87ISU84

 

 

밑의 영상은 게임엔진 수업을 들으며 중간과제물 입니다.

 

https://youtu.be/EHLeTEsUcNM

 

 

반응형