유니티에서 윈도우 폴더의 이미지 파일을 로드하여 텍스처로 사용하기 1)윈도우 폴더에 텍스처로 사용할 이미지 파일을 위치시킵니다. 2)유니티에서 스크립트를 작성합니다. 지정한 경로의 이미지 파일을 읽기하고 텍스처로 로드하여 게임오브젝트의 메인 텍스처로 사용합니다.
유니티에서 윈도우 폴더의 파일 읽기 File.ReadAllBytes(String) 함수 File.ReadAllBytes함수는지정한 경로의 파일을 열기하고 파일의 내용을 바이트배열로 읽기하고 파일을 닫기합니다. https://learn.microsoft.com/ko-kr/dotnet/api/system.io.file.readallbytes?view=net-7.0 1)윈도우 폴더에 이미지 파일을 준비합니다. 2)유니티에서 스크립트를 작성합니다. 이미지 파일이 위치한 폴더의 경로와 파일명을 지정하여 File.ReadAllBytes함수를 사용합니다. 3)게임을 시작하면 콘솔 윈도우에서 해당 파일을 읽기하고 파일의 크기를 출력합니다. Debug.Log(bytes.Length); 4)해당 이미지 파일의 크기가 동일..
유니티 텍스처 이미지 로드함수 ImageConversion.LoadImage 이미지 파일(PNG, JPG, 기타 지원 파일 형식)의 바이트 배열을 텍스처로 로드하는 함수 사용방법 함수 사용에서 텍스처 형식, 압축형식, 색 공간, 기타에 대한 내용을 아래 웹사이트에서 확인 https://docs.unity3d.com/ScriptReference/ImageConversion.LoadImage.html 1)씬에 텍스처를 맵핑할 게임오브젝트를 준비합니다. 2)아래 스크립트를 작성하고 게임오브젝트에 추가합니다. 새로운 텍스처를 생성하고 이미지의 바이트 배열을 텍스처로 로드합니다. 해당 텍스처를 스크립트의 게임오브젝트 재질의 메인 텍스처로 사용합니다.
유니티에서 휴머노이드 캐릭터의 애니메이션 리타게팅 한 캐릭터 모델에서 다른 캐릭터 모델로 애니메이션을 적용하는 방법 애니메이션이 존재하지않는 첫번째 캐릭터에서 애니메이션이 존재하는 두번째 캐릭터의 애니메이션을 사용하기 1)유니티에서 휴머노이드 아바타를 생성한 첫번째 캐릭터 게임 오브젝트를 준비합니다. 유니티에서 3D 캐릭터 모델의 휴머노이드 아바타 생성하기(Humanoid Avatar) 첫번째 캐릭터(Ch46_nonPBR) 2)애니메이션이 완료된 두번째 캐릭터를 준비합니다. 예에서 지오메트리가 존재하지않고 본 오브젝트로만 구성된 애니메이션된 모델을 3D맥스에서 내보내기하였습니다. 3)유니티 프로젝트에 애니메이션된 두번째 캐릭터 모델을 가져오기합니다. 두번째 캐릭터(New_Recording_1) 4)3D프..
유니티에서 3D 캐릭터 모델의 휴머노이드 아바타 생성하기(Humanoid Avatar) 1)mixamo 웹사이트에서 T-Pose 캐릭터 모델을 다운로드합니다. https://www.mixamo.com/ 2)다운로드한 T-Pose 캐릭터 모델을 3D프로그램에서 확인합니다. 3D맥스에서 캐릭터 모델의 리깅이 완료되어있는것을 확인할수있습니다(rig, skin) 3)모델을 유니티 프로젝트에서 가져오기합니다(import) 4)씬에 해당 모델을 추가하고 계층 구조를 확인합니다(mixamorig) 5)모델의 import settings에서 rig의 animation type을 휴머노이드(humanoid)로 설정합니다. 6)avatar definition을 create from this model로 설정하고 apply..
커피 로스팅 단계와 원두의 온도 https://en.wikipedia.org/wiki/Coffee_roasting
인공지능 기반 및 음성 인식 키오스크 레퍼런스 모음 인천공항 AI기반 스마트 사이니지 https://youtu.be/kt9gPxR20-E 인천공항 안내로봇 에어스타 https://youtu.be/SQeULapRrhY 베리어프리 키오스크(시청각 장애인 사용) https://youtu.be/gk04AdcCJ1A
TeamLab의 인터렉티브(interactive) 라이브 스케치 콘텐츠 목록 sketch aquarium(스케치 아쿠아리움) https://youtu.be/jIQXMN7I2b4 스케치타운 https://youtu.be/GxUyKAMhHB0 Space City https://youtu.be/4M8l3UM9tLk FUTURE WORLD: WHERE ART MEETS SCIENCE https://youtu.be/au1-PuWYHTg
스피드트리(speed tree)에서 나무 높이 표시하기(height indicator) 1)뷰포트 상단의 도구 모음에서 view의 show를 클릭합니다. 2)show에서 현재 체크되어있는 대상들을 뷰포트 및 씬에서 표시합니다 3)나무의 높이를 표시하려면 height indicator에 체크합니다.
3D 맥스 네트워크 렌더링 사용법 문서(Network Rendering)3ds Max의 네트워크 렌더링(Network Rendering)은 여러 대의 컴퓨터를 연결하여 전체 렌더링 작업을 분산 처리하는 방법(3D 맥스와 함께 설치된 Autodesk Backburner가 작업을 분배하고 처리하는 방법을 조정)으로 렌더링 시간을 크게 단축시킬 수 있어 대규모 프로젝트나 복잡한 장면을 렌더링할때 유용합니다. Network Rendering https://help.autodesk.com/view/3DSMAX/2020/ENU/?guid=GUID-C3CD6E31-72F5-4646-A400-971E2DA1CFED네트워크 렌더링 작동 방식(How Network Rendering Works)3ds Max 에서 한 대의 ..
스피드트리(speedtree)에서 줄기 또는 가지의 갈래 생성하기 splits(분할)을 사용하여 나무의 줄기 또는 가지가 두 부분으로 갈라지는것을 표현하는 방법 1)generation 윈도우에서 나무 줄기(trunk) 제너레이터를 생성합니다. 2)뷰포트에서 모델의 와이어프레임(scribed)을 표시합니다. 3)trunk 제너레이터의 skin에서 splits의 chance에 수치를 입력합니다(1) 4)나무줄기의 갈래가 형성된것을 확인할수있습니다. 5)spread1, spread2의 수치를 조절하여 갈라진 갈래의 방향을 설정합니다. 6)balance의 수치를 조절하여 갈래의 균형을 설정합니다. 7)trunk 제너레이터를 선택하고 branch 제너레이터를 추가합니다. 8)나무줄기에 나무가지가 추가된것을 확인할..
스피드트리(speedtree)에서 나무 줄기(trunk)의 직경 및 반지름 설정하기 1)generation 윈도우에서 나무의 줄기(trunk) 제너레이터를 생성합니다. 2)trunk의 displacement에서 U scale, V scale 수치를 0으로 설정합니다 3)spine의 noise에서 early, late의 amount 수치를 0으로 설정합니다. 4)나무 줄기의 노이즈가 제거된것을 확인할수있습니다. 5)skin에서 radius의 absolute를 확인합니다. 6)아래 표시한 curve를 선택합니다. 7)커브를 수정하면 나무 줄기의 직경 및 반지름이 변경되는것을 확인할수있습니다. 8)커브의 시작과 끝 포인트를 선택하고 y값을 1로 설정합니다. 이것은 현재 나무줄기의 반지름이 높이에 따라서 변하지..