본문 바로가기

전체 글

Physics-inspired Estimation of Optimal Cloth Mesh Resolution 논문 링크: https://wanghmin.github.io/publication/zhang-2025-pie/이 논문은 사전 시뮬레이션 없이, cloth의 각 부분에서 주름을 잘 표현하기 위한 최적 mesh 해상도를 물리적으로 예측하는 방법을 제안한다.요약Cloth mesh가 너무 낮은 해상도면 작은 주름을 표현하지 못하고, 너무 높은 해상도면 계산량과 메모리 사용량이 증가하므로 적절한 mesh 해상도를 얻는 방법이 필요이 논문은 fabric의 물성과 경계 조건을 통해 발생 가능한 주름 크기를 예측해서, 각 부위 최적 mesh 해상도를 계산하는 방법을 제안이 논문의 방법은 사전 시뮬레이션 없이, 실험 물리학의 주름 이론을 기반으로 물리적으로 예측높은 해상도가 필요한 부분만 mesh를 촘촘하게 구성해, u..
Lifting the Winding Number: Precise Discontinuities in Neural Fields for Physics Simulation 논문 링크: https://arxiv.org/abs/2502.00626이 논문은 물체가 잘려도 변형 표현 모델을 다시 만들지 않고 simulation하는 방법을 제안한다. 요약 기존의 neural field 기반 ROM(Reduced Order Modeling)은 절단에서 생기는 불연속성을 network weight에 학습하기 때문에, 학습에서 본 절단에는 적용할 수 있지만 새롭게 절단된 형태에는 일반화하지 못함이 논문은 기존의 neural network로 basis를 표현하는 방식에 winding number를 입력으로 추가하여, 절단에서 생기는 불연속성을 연속된 문제로 바꾸어 처리하는 Wind Lifter라는 구조를 제안이를 통해 학습하지 않은 새로운 절단에도 적용할 수 있으며, simulation ..
Progressive Outfit Assembly and Instantaneous Pose Transfer 논문 링크: https://dl.acm.org/doi/10.1145/3757377.3763868이 논문은 여러 벌의 옷을 서로 겹치지 않게 T-pose 캐릭터에 입히고, 입은 옷을 다른 자세로 빠르게 바꾸는 방법을 제시한다.요약여러 벌의 옷의 겹침을 해결하는 것은 매우 어려운 문제이다.이 논문은 복잡한 garment mesh 그대로 처리하지 않고, midsurface로 단순화하여 겹침을 해결한다.이때, 여러 벌의 옷을 한 번에 처리하지 않고, 두 벌씩 순차적으로 합치며 처리한다.또한, T-pose의 캐릭터에 겹침없이 여러 옷을 입힌 후 다른 pose로 전환할 때, grid를 이용하여 겹침을 해결한 상태로 빠르게 변형하는 방법을 제시한다. T-pose에서 여러 garment 겹침 해결1. 각 garment..
MaskedManipulator: Versatile Whole-Body Manipulation 논문 링크: https://research.nvidia.com/labs/par/maskedmanipulator/이 논문은 물리 기반 캐릭터가 손으로 물체를 잡고 옮기는 동작을, 손이나 물체의 목표 위치 같은 간단한 조건만으로 그 조건에 자연스러운 전신 움직임을 만들어내는 방법을 제안한다. 요약물체를 잡거나 옮기는 manipulation은 정확한 손 위치와 contact가 필요하기 때문에, 단순한 캐릭터 이동보다 훨씬 정밀한 제어가 필요하다.사용자가 모든 동작을 지정하는 방식은 제어가 복잡하기 때문에, 이 논문은 손의 목표 위치나 object의 목표 위치처럼 일부 정보만 주어도 전체 전신 동작을 생성하는 것을 목표로 한다.이를 위해 다음의 2가지 단계로 학습을 진행한다. MimicManipulator: h..
[OpenGL] SSBO (Shader Storage Buffer Object) SSBO는 shader가 직접 읽고 쓸 수 있는 buffer 객체VBO와 마찬가지로 GPU memory의 data 객체이지만, shader가 data에 어떻게 접근하는지 차이가 있음VBO와의 차이VBO: VAO가 buffer data를 해석하여 Vertex Shader의 attribute로 전달 SSBO: Shader가 binding된 buffer memory의 구조를 직접 해석하여 읽고 씀SSBO 사용 흐름1. SSBO 생성 glCreateBuffers (n, buffers)n: 생성할 buffer 개수buffers: 생성된 buffer ID를 받을 위치 SSBO로 사용할 buffer object 생성 2. Buffer memory 및 data 설정glNamedBufferData(buffer, size..
[OpenGL] VAO & VBO VAO & VBOVBO (Vertex Buffer Object): rendering에 사용할 vertex data가 저장되는 bufferVAO (Vertex Array Object): VBO의 vertex data를 vertex shader에 전달하기 위한 설정을 저장하는 객체※ rendering에는 주로 VAO & VBO, simulation 계산에는 주로 SSBO를 사용 VBO는 단순히 data가 저장된 buffer일 뿐이므로, OpenGL이 내부 data를 사용하려면 각 data를 어떻게 해석하고 가져올지에 대한 설정을 알아야 한다.VAO는 각 vertex attribute(position, normal 등)가 어떤 VBO에서 어떤 형식으로 data를 가져올지에 대한 설정을 가지고 있다.render..
QT Signal & Slot 방식 Qt의 Signal & Slot 방식은 객체 간에 event 발생이나 상태 변화를 전달하기 위해 사용하는 방법이다. 객체에서 특정 event가 발생하면 signal이 emit되고, 이 signal은 connect를 통해 미리 연결된 slot(function)으로 전달되어 실행되는 구조이다. Connection 설정signal과 slot(function)의 연결은 connect를 통해 설정한다.connect를 호출하면 Qt는 어떤 sender의 signal이 어떤 receiver의 slot과 연결되는지 connection을 등록한다. connect(sender, signal, receiver, slot)sender: signal을 발생시키는 객체signal: sender가 emit하는 signalrecei..
A Multi-Scale Model for Simulating Liquid-Fabric Interactions 논문 링크: https://www.cs.columbia.edu/cg/wetcloth/영상 링크: https://www.youtube.com/watch?v=xvyGpBKevLM 이 논문은 물의 흡수와 확산을 포함한 천과 물의 양방향 상호작용을 시뮬레이션하는 방법을 제안한다. 요약fabric이 물에 닿으면 물이 내부에 스며들어 퍼지고, 물의 무게와 흐름에 따라 fabric의 움직임도 달라진다.이러한 현상을 표현하려면 fabric 안과 밖의 물 흐름을 함께 고려해야 하지만, fabric 내부의 작은 공간까지 grid로 표현하려면 cell 크기를 매우 작게 해야 하므로, 필요한 cell 수가 많아져 계산량이 커짐이 논문은 fabric 외부의 물과 fabric 내부에 흡수된 물을 나누어 계산하고 이를 연결하는 통..