[Unity] Projects & Study
-
사용자의 게임 기록 저장&불러오기 - Json파일 저장[Unity] Projects & Study/Loop - Interactive Movie 2023. 3. 9. 15:11
1. 파일이 존재하지 않으면 JsonMake()함수로 만들기 public void JsonMake() { SaveData saveData = new SaveData(); saveData.isVisit[0] = true; for (int i = 1; i < 21; i++) { saveData.isVisit[i] = false; } for (int i = 0; i < 9; i++) { saveData.ending[i] = false; } GameManager.I.continueScene = "Scene1"; saveData.continueScene = GameManager.I.continueScene; string json = JsonUtility.ToJson(saveData, true); File.Writ..
-
[Unity] fade out 퀄리티 개선[Unity] Projects & Study/Loop - Interactive Movie 2023. 2. 5. 10:44
지금껏 fade In/Out 효과를 쓸 일이 굉장히 많았는데, 이전 프로젝트까지는 늘 그저 time을 통해서 alpha값을 빼주는 코드로 구현했었다. 이번에는 문득 이 효과가 뚝뚝 끊기면서 밝아지거나 어두워지는, 조금은 부자연스럽다는 느낌이 들었다. 어떻게 하면 더 자연스럽게 구현할지 고민하다가, 예전에 Vector값을 옮길때 부드럽게 하기 위해서 Lerp함수를 썼던 것이 생각나서, Color도 Lerp함수가 제공되는지 찾아보니 예상대로 존재했다! Color.Lerp()를 이용하니 체감상 훨씬 자연스러운 Fade In/Out효과를 구현할 수 있었던 것 같다. 기존 코드 using System.Collections; using System.Collections.Generic; using UnityEngin..
-
[Unity]Interactive Movie Development[Unity] Projects & Study/Loop - Interactive Movie 2022. 9. 19. 21:03
1. 시작 과정 디자인미디어학과 학생들께서 인터랙티브 무비(게임) 제작을 준비하고 계시다고한다. 영상 제작팀과디자인팀은 있는데, 게임 제작을 위한 개발자가 없다고 의뢰를 주셨다. 유니티를 통해 이 게임의 영상 순서 컨트롤 등 개발을 해보려고 한다. 2. 출시 플랫폼 제공하고자 하는 플랫폼은 Steam, Google PlayStore이다. 기존에는 유튜브를 통해 제공하고, 영상이 끝날 쯤에 미리보기 기능으로 엔딩을 결정할 수 있도록 할 계획이라고 하셨었다. 그 다음 텀블벅으로 신청을 완료하신 분들께 유튜브 링크를 보내드릴 계획이라고 하셨다. 그러나 이 방식은 텀블벅을 통해서만 진입이 가능하므로 접근성이 상당히 떨어진다는 판단이 들었다. Steam이나 앱스토어에 게임을 출시하면 어떻겠냐는 의견을 드렸고, 그..
-
[Unity - VR 공포게임] 컨트롤러로 플레이어 움직이기[Unity] Projects & Study/우물 속에서 - VR 공포 게임 2022. 7. 7. 12:27
2021년 한이음 프로젝트에서 VR개발을 하게 되면서 오큘러스 퀘스트2를 지원받았었다. 이번 개발도 그래서 오큘러스 퀘스트2로 빌드해보면서 진행했다. 이 분 글을 참고해서 VR개발 세팅을 마쳤다. https://yoonstone-games.tistory.com/102 [Unity + Oculus] VR 개발하기 - 1 (환경 구현, 개발자 등록) 오큘러스와 유니티를 이용하여 콘텐츠를 개발하는 과정을 기록하는 게시글입니다. 사용한 오큘러스 기기는 '오큘러스 퀘스트2' 입니다 :) 1. 2020.3.22f1 버전 설치 후 프로젝트 생성 혹시나 해서 게 yoonstone-games.tistory.com 하이어라키에 추가해주고 우선은 맵을 만들었다. 맵은 적당히 나무, 돌, 집 등 에셋을 다운로드 해서 우물까지..
-
[Unity - VR공포게임] VR 공포게임 개발기[Unity] Projects & Study/우물 속에서 - VR 공포 게임 2022. 7. 7. 11:54
여름이고, VR공부도 할 겸 VR 공포게임을 제작하기로 했다. 예전에 free3d사이트 구경하다가 엄청나게 귀여운 우물을 발견했었는데, 어딘가에 꼭 사용해보고 싶어서 벼르고 있었다 그래서 이번 기회에 우물귀신이야기를 만들기로 했다ㅋㅋㅋ 엄마랑 집에서 저녁식사를 하다가 단수가 되어서 우물에서 물을 떠 오는 중 일어나는 파란만장 스토리ㅋㅋㅋㅋ이다 2주 정도동안 후다닥 만든 B급(어쩌면 한 E급..?!)감성의 게임이다 그래도 빌드할때마다 소리지르고 오큘러스 던질 정도로 꽤 무섭다ㅋㅋㅋㅋㅋ맨날 소리질러서 우정이가 많이 놀랐었다
-
[Unity][HandiLab] 화면터치와 UI터치 구별하기[Unity] Projects & Study/HandiLab - AR 과학 실험 2022. 7. 7. 11:37
우리 앱에서 실험을 처음 시작할 때 평면 인식 후 화면을 한번 터치하여 책상을 배치한다. 그런데 책상을 배치하려고 터치한 것이 아니라, 일시 정지하고 싶어서 좌측 상단의 정지 버튼을 누른 경우라면? 책상 배치와 정지 패널 활성화가 같이 이루어진다. 정지버튼을 터치한 것 / 책상배치를 위해 화면을 터치한 것을 구별하고 싶은데, 그렇지 못해서 두 동작이 동시에 일어나버리는 것. 이를 막기 위해서 EventSystem.current.IsPointerOverGameObject() 를 사용하면 된다. 터치한 부분이 UI이면 True, 아니면 False를 반환한다고 한다. void Update() { if (spawnedObject == null && placementPoseIsValid && Input.touch..
-
[Unity][HandiLab] AR에서의 Z축 드래그 고정[Unity] Projects & Study/HandiLab - AR 과학 실험 2022. 7. 7. 11:10
우리 AR콘텐츠 특성상? 카메라 화면 터치로 사용자와의 상호작용을 한다. 이 때 사용자 컨트롤에 따라 z축 값이 틀어지면서 collider와의 충돌감지가 불가해지고 실험 진행이 원활하지 않아지는 문제가 있었다. 처음 생각은 z값을 스크립트에서 고정시키는 것. 멘토님께도 다른 방안에 관해 여쭤봤다. 기즈모를 띄워 포지션을 컨트롤 가능하게 하는 방법 등 여러 조언을 해주셨다. 내가 생각한 방향과 사뭇 다른 해결책을 많이 들으면서, 개발에는 정말 셀 수 없이 다양한 방법이 있다는 걸 새삼 느꼈다. 그렇기 때문에 이 일이 어렵기도하고 재밌기도 한 거 같다. -> 여러 얘기들 끝에 z값을 고정시키는 것이 낫겠다는 결론이 났다 z값을 컨트롤할 스크립트를 만들어 드래그가 적용되는 오브젝트에 컴포넌트로 추가했다. Un..
-
[Unity][HandiLab] 오브젝트가 깜빡깜빡하는 효과 주기[Unity] Projects & Study/HandiLab - AR 과학 실험 2022. 7. 6. 18:09
사용자가 배양기 문을 열지 않았는데 배지를 넣으려고 시도한다거나, 여기를 터치하세요~하는 느낌 등을 줄 때 오브젝트를 깜빡깜빡거리는 강조효과를 줬다. fadeIn/out효과를 줬던 것 처럼 material의 투명도를 조절해주는 방식으로 구현하고자 했다. 투명도를 조절하려면 material의 redering mode가 opaque가 아니어야 한다. 그런데 fade나 trasparent 등 투명도 조절이 가능한 렌더링 모드를 설정해주면 천장쪽이 그려지지 않는 문제가 발생했다. 반투명 오브젝트의 핵심: 뒤의 오브젝트와 섞여야 함.(블렌딩) 엔진에서는 블렌딩을 위해 "Alpha Sorting"을 제공하고 있다. Alpha Sorting: Z-buffer(카메라 기준 깊이버퍼)를 기준으로 뒤에서부터 출력함으로써,..