Occlusion relation went wrong when applying transform to to geometry

Dear developer, I am currently applying transform to the geometry like the optixDynamicGeometry demo, I create the same acceleration structure as the demo use and also set the dirty flag to true when complete changing the transform matrix, but when it started to move , it will disappear when move to certain position.

void updateAnimatedActor(CacheStruct in_cache)
{
	for (int i = 0; i < m_meshs.size(); i++)
	{
		m_meshs[i].xform->setMatrix(false, Matrix4x4::translate(in_cache.actorCache[i].actorPosition - m_meshs[i].start_pos).getData(), 0);
		
	}
	h_top_group.get()->getAcceleration().get()->markDirty();
}

but I still get the wrong output

External Media
External Media

And I find https://devtalk.nvidia.com/default/topic/1045087/optix/applying-transforms-to-geometries/ radon199’s answer to add rtTransformPoint to the closehit, but still wrong

Anyone can tell me what the problem? Thanks!