internal float rotation; //MUST be 0 <= x < 360 static internal ObserverData *Create(Vector position, float rotation) // a little bit optimizable { ObserverData *result = (ObserverData *)Marshal.AllocHGlobal(sizeof(ObserverData)); result->position = position; result->rotation = rotation; return(result); }
public Observer(Vector position, float rotation) { unmanaged = ObserverData.Create(position, rotation); }
static internal void Delete(ObserverData *item) { Marshal.FreeHGlobal((IntPtr)item); }