using System.Runtime.InteropServices; using System.Text; using Newtonsoft.Json; namespace MindPowerSdk { [StructLayout(LayoutKind.Sequential, Pack = 1)] public struct CRawColor { public byte R, G, B; } [StructLayout(LayoutKind.Sequential, Pack = 4, CharSet = CharSet.Auto)] public sealed class CSceneObjInfo : CRawDataInfo { [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 16)] public string Name; // char[16] /// /// 类型 /// public int Type; /// /// 点光源颜色 /// public CRawColor PointColor; // byte[3] /// /// 环境光颜色 /// public CRawColor EnvColor; // byte[3] /// /// 雾颜色 /// public CRawColor FogColor; // byte[3] public int Range; public float Attenuation1; /// /// 点光源动画类型id /// public int AnimCtrlID; /// /// 风格 /// public int Style; public int AttachEffectID; /// /// 是否收点光源影响 /// public bool EnablePointLight; /// /// 是否收环境光影响 /// public bool EnableEnvLight; /// /// 其它标记 /// public int Flag; /// /// 尺寸标记, 如果物件是超大尺寸, 则可见性判断特殊 /// public int SizeFlag; /// /// char[11] /// [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 11)] public string EnvSound; public int EnvSoundDis; // 单位:厘米 public int PhotoTexID; // 图标贴图ID public bool ShadeFlag; public bool IsReallyBig; // 是否特大物件,Added by clp public int FadeObjNum; [MarshalAs(UnmanagedType.ByValArray, SizeConst = 16)] public int[] FadeObjSeq; public float FadeCoefficent; } }