public EffectResourceBuilder(EffectResourceBuilder original, bool cloneEffects) : base(0, null) { int i, count = original.mEffectSectionList.Count; // Initialize Effect Sections this.mEffectSectionList = new EffectResource.EffectSectionList(this.OnResourceChanged); EffectResource.EffectSection eSection; for (i = 0; i < count; i++) { eSection = original.mEffectSectionList[i]; this.mEffectSectionList.Add((int)eSection.Type, (int)eSection.Version); } this.InitEffectSectionIndices(); // Initialize Resource Sections count = original.mResourceSectionList.Count; this.mResourceSectionList = new EffectResource.ResourceSectionList(this.OnResourceChanged); EffectResource.ResourceSection rSection; for (i = 0; i < count; i++) { rSection = original.mResourceSectionList[i]; this.mResourceSectionList.Add((int)rSection.Type, (int)rSection.Version); } this.InitResourceSectionIndices(); // Initialize Visual Effect Builders this.mVisualEffectSection = new EffectResource.VisualEffectSection(0, this.OnResourceChanged, 2); //this.mVisualEffectBuilders = new SectionDataList<VisualEffectBuilder>(this.OnResourceChanged, null); // Initialize Reserved this.mReserved = new byte[] { 0xff, 0xff, 0xff, 0xff }; // Initialize Handle List this.mVisualEffectHandleList = new VisualEffectHandleList(this.OnResourceChanged); }
public EffectResourceBuilder() : base(0, null) { int i; // Initialize Effect Sections this.mEffectSectionList = new EffectResource.EffectSectionList(this.OnResourceChanged); for (i = 0; i < sEffectSectionCount; i++) { this.mEffectSectionList.Add((int)sEffectTypeList[i], sEffectVersionList[i]); } this.mEffectSectionIndices = new int[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 }; // Initialize Resource Sections this.mResourceSectionList = new EffectResource.ResourceSectionList(this.OnResourceChanged); for (i = 0; i < sResourceSectionCount; i++) { this.mResourceSectionList.Add((int)sResourceTypeList[i], sResourceVersionList[i]); } this.mResourceSectionIndices = new int[] { 0, 1 }; // Initialize Visual Effect Builders this.mVisualEffectSection = new EffectResource.VisualEffectSection(0, this.OnResourceChanged, 2); //this.mVisualEffectBuilders = new SectionDataList<VisualEffectBuilder>(base.OnResourceChanged, null); // Initialize Reserved this.mReserved = new byte[] { 0xff, 0xff, 0xff, 0xff }; // Initialize Handle List this.mVisualEffectHandleList = new VisualEffectHandleList(this.OnResourceChanged); }
private void FlushEffectNames() { VisualEffectBuilder builder; VisualEffectName handle; string effectName; int num, count = this.mVisualEffectSection.Items.Count /*this.mVisualEffectBuilders.Count/**/; this.mVisualEffectHandleList = new VisualEffectHandleList(base.OnResourceChanged); for (int i = 0; i < count; i++) { builder = this.mVisualEffectSection.Items[i] as VisualEffectBuilder; //builder = this.mVisualEffectBuilders[i] as VisualEffectBuilder; effectName = EffectHelper.CreateSafeEffectName(builder.EffectName, true); num = this.mVisualEffectHandleList.BinarySearch(effectName); if (num < 0) { handle = new VisualEffectName(0, base.OnResourceChanged); handle.EffectName = effectName; handle.Index = (uint)i; this.mVisualEffectHandleList.Insert(~num, handle); } } }
protected void Parse(Stream s) { BinaryStreamWrapper wrapper = new BinaryStreamWrapper(s, ByteOrder.BigEndian); this.mVersion = wrapper.ReadUInt16(); // Initialize Effect Sections this.mEffectSectionList = new EffectResource.EffectSectionList(this.OnResourceChanged, s); this.InitEffectSectionIndices(); // Initialize Resource Sections this.mResourceSectionList = new EffectResource.ResourceSectionList(this.OnResourceChanged, s); this.InitResourceSectionIndices(); // Initialize Visual Effect Builders this.mVisualEffectSection = new EffectResource.VisualEffectSection(0, this.OnResourceChanged, wrapper.ReadUInt16()); //this.mVisualEffectVersion = wrapper.ReadUInt16(); //this.mVisualEffectBuilders = new SectionDataList<VisualEffectBuilder>(this.OnResourceChanged, null, s); // Initialize Reserved this.mReserved = wrapper.ReadBytes(4); // Initialize Handle List this.mVisualEffectHandleList = new VisualEffectHandleList(this.OnResourceChanged, s); // Initialize Visual Effect Builder Properties this.InitEffectNames(); this.InitEffectBuilders(); }