GPT-6 Astra로 변형 가능한 시뮬레이션 객체를 만드는 방법
How to create Deformable simulation Objects With GPT 6 Astra
핵심 요약
RobotGym과 GPT-6 Astra를 활용해 물리적으로 정확한 변형 가능 객체(물병)를 시뮬레이션하는 기술적 구현 과정을 설명함.
- 물리 시뮬레이션 — RobotGym과 VBD 솔버를 사용해 PET 재질의 물병 변형을 구현함.
- 소성 변형 — PET의 항복점을 넘어서면 형태가 유지되는 커스텀 소성 커널을 적용함.
- 유체 시뮬레이션 — 3만 2천 개의 입자와 위치 기반 유체 솔버로 물의 움직임을 구현함.
- 렌더링 기술 — 마칭 큐브와 패스 트레이싱을 통해 입자 느낌을 없애고 사실적인 액체 질감을 표현함.
RobotGym으로 변형 가능한 물체 만드는 법: GPT-6 Astra가 물리 엔진 제대로 적용해서 물병 찌그러뜨리는 모습임.
시뮬레이션 환경에서 LLM 기반 로봇 학습시킬 때 아주 유용하다.
물병은 0.3mm 두께 PET 재질이고 실제 물성치 그대로 때려 박았음: 강성 3 GPa, 항복 강도 55 MPa.
GPU에서 Newton의 VBD 솔버로 돌렸고, 자기 접촉(self-contact)까지 켜놔서 고무처럼 말랑하게 찌그러지는 게 아니라 플라스틱처럼 팍 꺾이게 만들었음.
제일 빡셌던 건 찌그러진 모양 그대로 유지하게 만드는 거였다.
그래서 커스텀 소성(plasticity) 커널을 따로 짰음. 벽면이 PET 항복점을 넘어서 꺾이면, 그 접힌 자국이 새로운 기본 형태가 되도록 설정한 거지.
손을 떼도 물병은 찌그러진 상태 그대로 유지된다.
물은 우리 자체 위치 기반 유체 솔버(position-based fluid solver)로 32,000개 입자를 구현했음.
부피가 보존되니까 병이 찌그러지면 물이 갈 데가 없어서 병 입구 쪽으로 솟구치거나 옆으로 흘러내리는 거임.
마지막으로 아파트 전체 배경에서 패스 트레이싱까지 돌렸다: 투명한 PET 재질, 굴절되는 물, 그리고 실제로 쥐어짜는 Franka 로봇까지 완벽함.
.buffering-track-fill { stroke-dasharray: 100; stroke-dashoffset: 50; }

