Programming/Unity
[Unity3D] NVIDA Flex Error - ArgumentException: ComputeBuffer.SetData()
타임박스
2020. 11. 6. 17:50
반응형
✔ NVIDIA FLEX Error
ArgumentException: ComputeBuffer.SetData()
NVIDIA FLEX을 활용하여 유체역학을 적용하려고 시도했지만 생각보다 쉽지 않았다.

프로젝트를 실행하고 IsActive를 On/Off를 반복적으로 실행하면 아래와 같은 오류가 나타난다.
ArgumentException: ComputeBuffer.SetData() : Accessing 35100 bytes at offset 0 for Compute Buffer of size 35000 bytes is not possible.
이 오류의 해결방법은 __auxFlexDrawFluid.cs 파일의 245번 줄에 해당하는 내용을 수정해야한다.
if (m_indexBuffer != null)
{
m_indexBuffer.SetData(indices);
}
위 내용을 아래로 변경..
if (m_indexBuffer != null)
{
m_indexBuffer.SetData(indices, 0, 0, m_indexBuffer.count);
}
반복 실행을 해도 오류가 나타나지 않는다.
NVIDIA에서 제공되는 FLEX의 간략한 튜토리얼은 있지만 코드를 수정하여 사용하기는 매우 까다롭다.
현재 beta1.0에서 빨리 버전업그레이드가 되었으면 좋겠다.
반응형