public void Load(Map map, Camera cam) { IntPtr camPtr = BrowserInterop.vtsDrawsCamera(cam.Handle); Util.CheckInterop(); camera = (CameraBase)Marshal.PtrToStructure(camPtr, typeof(CameraBase)); celestial.Load(map); IntPtr group = IntPtr.Zero; uint cnt = 0; BrowserInterop.vtsDrawsOpaqueGroup(cam.Handle, ref group, ref cnt); LoadSurfaces(ref opaque, group, cnt); BrowserInterop.vtsDrawsTransparentGroup(cam.Handle, ref group, ref cnt); LoadSurfaces(ref transparent, group, cnt); BrowserInterop.vtsDrawsCollidersGroup(cam.Handle, ref group, ref cnt); LoadColliders(ref colliders, group, cnt); }