3D 렌더링 소프트웨어 브이레이 렌더러 V-Ray ADV와 V-Ray RT 차이점(레거시, V-Ray GPU로 통합)V-Ray ADVV-Ray ADV(Advanced Renderer)는 CPU 기반 렌더링 방식을 사용합니다(멀티코어 CPU의 성능에 따라서 렌더링 속도가 결정)복잡한 GI(Global Illumination), 반사, 굴절, 섬세한 디테일등의 정밀한 처리에 유리하여 최종 고품질 및 고해상도 이미지 프레임 렌더링에 적합합니다. 모든 브이레이 기능이 지원되며 렌더링 속도가 상대적으로 느릴 수 있습니다. V-Ray RTV-Ray RT (Real-Time Renderer)는 GPU 기반 렌더링 방식을 사용하여 그래픽 카드 GPU(CUDA, 엔비디아 RTX, AMD GPT OpenCL등)를 활용하..
3D 마야(MAYA)에서 nParticle를 사용한 유체 시뮬레이션 기초1)실린더 오브젝트(Cylinder) 를 생성합니다. 2)menu set를 FX로 변경합니다. 3)상단 nParticles 메뉴의 Create Options에서 water에 체크합니다. 4)Create emiter를 선택하여 emitter를 생성합니다. 5)아웃라이너에 emitter, nParticle, nucleus 오브젝트가 생성된것을 확인할수있습니다. 6)애니메이션을 플레이하면 emitter에서 파티클이 방출되는것을 확인할수있습니다. 파티클 유형 water에 대한 프리셋 중력 및 쉐이더가 설정된것을 확인할수있습니다. 7)emitter를 선택하고 basic emitter attributes에서 emitter type을 volume..
3D 마야(MAYA)에서 구름 만들기(FX, 3D Container)1)좌측 상단에서 menu set을 FX로 변경합니다. 2)상단의 Fluids 메뉴에서 3D Container를 생성합니다. 3)씬에서 fluid 오브젝트를 선택하고 속성으로 이동합니다(단축키 ctrl+a) 4)container properties에서 keep voxels square를 체크해제하고 컨테이너(3D Container)의 해상도(Resolution) 및 크기(Size)를 설정합니다. 5)display의 boundary draw에서 컨테이너 경계 표시 방법을 선택합니다(바운딩 박스, boundary box) 6)contents method에서 모든 속성들을 off(zero)로 설정합니다. 7)dynamic simulation..
3D 그래픽 렌더링에서 발생하는 여러가지 문제들(플리커링, Flickering)과 해결방법플리커링(Flickering)이란 렌더링한 애니메이션 시퀀스에서 나타날수있는 광범위한 문제(깜빡이거나 불안정한)들을 의미합니다. 다양한 유형의 플리커링이 있으며 유형에 따라서 해결방법이 있습니다. 여러가지 플리커링 유형과 해결방법(브이레이 렌더러) Large splotches, Fireflies, Moire, Z-fighting https://support.chaos.com/hc/en-us/articles/7777270371473-How-to-fix-flickering-in-animations Large splotches Fireflies Moire Z-fighting
CG 및 게임 그래픽에서 장면을 사실적으로 만드는것들사실적인 모델링 (Realistic Modeling)현실 세계의 사물이나 환경을 가능한 한 정확하게 재현(정확한 크기와 비율, 모델의 디테일등). 3D 모델링 툴(Blender, Maya, ZBrush 등)을 사용하여 3D 모델을 제작 실시간 게임엔진에서 고해상도 모델은 성능에 영향을 미칠 수 있기 때문에 LOD(Level of Detail) 및 폴리곤 최적화를 고려해야함 자연스러운 모델의 배치(Placement of Models)실내 및 실외에서 잘 배치된 모델들은 장면의 몰입감을 향상시키고 현실감을 더합니다. 크기와 비율 - 현실적인 크기와 비율을 가지는 사물들 조화 - 주변 환경과 잘 어울리도록 모델을 배치 무작위성(Randomization) -..
3D 맥스 스캔라인 렌더러에서 볼륨 라이트(volume light) 이펙트 만들기 스캔라인 렌더러(scanline renderer)와 기본 조명을 사용하여 볼륨 라이트 효과 만드는 방법 1)렌더 설정(render setup)에서 스캔라인 렌더러(scanline renderer)를 선택합니다. 2)시스템 유닛을 설정합니다(units setup) 3)씬을 구성합니다. 4)씬에 조명 오브젝트를 생성하고(spot light) 렌더링해서 확인합니다. 5)environment and effects(단축키 8)의 environemnt에서 atmosphere로 이동합니다. 6)add를 클릭하고 볼륨 라이트 이펙트를 선택하고 확인합니다(volume light) 7)추가한 볼륨 라이트 이펙트의 파라미터를 확인할수있습니다...
3D 맥스에서 bake to texture 텍스처 베이크 사용하기(color, normap) (사용 버전 - autodesk 3ds Max 2023) 3D 스캔된 하이폴리곤 모델을 베이크하여 색상, 노말 텍스처를 생성하고 로우폴리곤 모델에 적용하는 방법 1)3D 스캔된 오브젝트와 텍스처를 준비합니다. 2)씬에 3D 오브젝트를 가져오기하고(import) 텍스처를 맵핑합니다. 3)하이폴리곤 모델과 동일한 크기와 형태를 가지는 로우폴리곤 모델을 생성합니다. 4)로우 폴리곤 모델의 텍스처 좌표(UV)를 생성하고(UnwrapUVW) 텍스처 좌표가 겹쳐지는 부분이 없도록 수정합니다. 5)editable poly 오브젝트로 변환합니다. 6)씬에서 로우 폴리곤 오브젝트를 선택하고 상단의 rendering 메뉴에서 ba..
3D 맥스에서 다수의 카메라 뷰를 일괄적으로 렌더링하기(bacth render) (사용 버전 - autodesk 3ds Max 2023) 배치 렌더(bacrh render)를 사용하여 여러개의 카메라 뷰를 일괄적으로 렌더링 하는 방법 1)다수의 카메라를 사용하여 씬을 구성합니다. 2)상단의 rendering 메뉴에서 batch render로 이동합니다. 3)add를 클릭하고 새로운 뷰(view)를 추가합니다. override preset 옵션에 체크하면 render setup의 기본 설정에 대해 렌더링 범위와 해상도를 오버라이드합니다(렌더링하는 뷰에 대한 프레임 범위와 해상도를 개별적으로 재설정할수있습니다) 렌더링 뷰의 카메라를 선택하고(Camera) 뷰의 이름(Name)과 파일의 저장 경로(Output..
밉맵(mipmaps) - 원본 텍스처의 다양한 해상도로 구성된 이미지 집합 밉맵(mipmaps, MIP maps)은 컴퓨터그래픽에서 텍스처 맵핑에 사용되는 기술로 원본 텍스처의 다양한 해상도(점차적으로 더 작아지는)로 미리 준비된 이미지 버전 목록을 의미합니다. MIP은 라틴어 'multum in parvo'의 약어로 '작은 공간에 많은 것'을 의미합니다. 카메라에서 먼곳에 존재하는 객체를 그리는 경우 원본 텍스처의 상세한 정보가 필요하지 않습니다. 원본 텍스처를 사용하면 품질과 성능에 부담이 생길 수 있기때문에 밉맵을 사용하여 텍스처 피라미드(가장 상위 원본 텍스처의 해상도부터 시작하여 2의 거듭제곱 비율로 점차적으로 작아지는 해상도를 가진 텍스처들)에서 적절한 해상도를 선택하고 멀리 떨어진 객체에 더..
Z-Test란(깊이 테스트) depth buffer(깊이 버퍼)의 값을 검사하여 pass 또는 fail 여부를 결정합니다. Z-Test(깊이 테스트)에서 통과(pass)한 픽셀은 깊이 값을 깊이 버퍼에 저장합니다(z-write) pass 새로운 픽셀의 깊이값이 기존 픽셀의 깊이값보다 작은 경우 새로운 픽셀이 깊이 버퍼에 저장됩니다. fail 새로운 픽셀의 깊이값이 기존 픽셀의 깊이값보다 크거나 같은 경우 새로운 픽셀이 깊이 버퍼에 저장되지않습니다. ShaderLab 커맨드 ZTest를 사용하여 객체가 깊이 테스트를 통과 또는 실패하는 조건을 설정할수있습니다. Less, Greater, LEqual, GEqual, Equal, NotEqual, Always https://docs.unity3d.com/kr..
z-write란(z-buffer, z-value, depth test) Z-write란 3D 그래픽에서 사용되는 Depth Buffering(깊이 버퍼링) 기술 중 하나로 3D 렌더링에서 객체의 깊이를 결정하고 표현하는 방법입니다. Depth Buffer(깊이 버퍼) 또는 Z-Buffer( Z-버퍼)는 화면에 그려지는 객체들의 깊이 정보를 저장하는 버퍼입니다. 렌더링 파이프라인에서 객체를 그리기 전에 각 객체의 깊이 값을 깊이 버퍼에 기록합니다. Z-write는 현재 그려지는 객체의 깊이 값을 깊이 버퍼에 쓰는 것을 의미합니다. Z-Write는 Depth Test(깊이 테스트)와 함께 사용됩니다. Depth Test는 현재 그려지는 객체의 깊이 값을 기존 깊이 버퍼의 값과 비교하여 객체가 가려지는지 결정..
3D그래픽에서 발생하는 z fighting 현상이란 z fighting https://en.wikipedia.org/wiki/Z-fighting 3D 그래픽스에서 Z-fighting은 카메라의 시점에서 두 개 이상의 폴리곤이 같은 위치에 있을 때 렌더링된 이미지에서 폴리곤이 겹쳐보이고 깜박거리는(flickering), 노이지한 래스터화(noisy rasterization)가 발생하는 현상입니다. 두개의 면이 동일한 공간을 차지하거나 매우 가까운곳에 위치할때 깊이를 추적하는 z -버퍼에서 거의 유사하거나 동일한 값을 갖게 됩니다(z - 버퍼의 제한된 정밀도로 인해) 이로인해 렌더링 시에 깊이 값이 번갈아가며 결정되어 시각적인 충돌 현상이 발생합니다. Z-Fighting을 방지하기 위해서 깊이 버퍼의 정밀도..