From bf5cf1bb6f40779f67519da5f345373dfdd97fee Mon Sep 17 00:00:00 2001 From: dexy Date: Wed, 15 Jun 2022 08:25:17 +1000 Subject: [PATCH] Fix for .cut XML conversion: updated PSO structure definitions --- .../GameFiles/FileTypes/CutFile.cs | 111 +++++++++--------- .../GameFiles/MetaTypes/PsoTypes.cs | 102 ++++++++-------- 2 files changed, 103 insertions(+), 110 deletions(-) diff --git a/CodeWalker.Core/GameFiles/FileTypes/CutFile.cs b/CodeWalker.Core/GameFiles/FileTypes/CutFile.cs index 5d5716f..627c871 100644 --- a/CodeWalker.Core/GameFiles/FileTypes/CutFile.cs +++ b/CodeWalker.Core/GameFiles/FileTypes/CutFile.cs @@ -69,37 +69,36 @@ namespace CodeWalker.GameFiles [TC(typeof(EXP))] public class CutsceneFile2 : CutBase // rage__cutfCutsceneFile2 { - public float fTotalDuration { get; set; } // PsoDataType.Float, 268, 0, 0), - public string cFaceDir { get; set; } // PsoDataType.String, 272, 0, (MetaName)16777216), - public uint[] iCutsceneFlags { get; set; } // PsoDataType.Array, 528, 4, (MetaName)262146),//ARRAYINFO, PsoDataType.UInt, 0, 0, 0), - public Vector3 vOffset { get; set; } // PsoDataType.Float3, 544, 0, 0), - public float fRotation { get; set; } // PsoDataType.Float, 560, 0, 0), - public string cExtraRoom { get; set; } // PsoDataType.String, 564, 0, (MetaName)1572864), - public Vector3 vExtraRoomPos { get; set; } // PsoDataType.Float3, 592, 0, 0), - public Vector3 vTriggerOffset { get; set; } // PsoDataType.Float3, 608, 0, 0), - public object[] pCutsceneObjects { get; set; } // PsoDataType.Array, 624, 0, (MetaName)9),//ARRAYINFO, PsoDataType.Structure, 0, 3, 0), - public object[] pCutsceneLoadEventList { get; set; } // PsoDataType.Array, 640, 0, (MetaName)11),//ARRAYINFO, PsoDataType.Structure, 0, 3, 0), - public object[] pCutsceneEventList { get; set; } // PsoDataType.Array, 656, 0, (MetaName)13),//ARRAYINFO, PsoDataType.Structure, 0, 3, 0), - public object[] pCutsceneEventArgsList { get; set; } // PsoDataType.Array, 672, 0, (MetaName)15),//ARRAYINFO, PsoDataType.Structure, 0, 3, 0), - public CutParAttributeList attributes { get; set; } // PsoDataType.Structure, 688, 0, MetaName.rage__parAttributeList), - public CutFAttributeList cutfAttributes { get; set; } // PsoDataType.Structure, 696, 4, 0), - public int iRangeStart { get; set; } // PsoDataType.SInt, 704, 0, 0), - public int iRangeEnd { get; set; } // PsoDataType.SInt, 708, 0, 0), - public int iAltRangeEnd { get; set; } // PsoDataType.SInt, 712, 0, 0), - public float fSectionByTimeSliceDuration { get; set; } // PsoDataType.Float, 716, 0, 0), - public float fFadeOutCutsceneDuration { get; set; } // PsoDataType.Float, 720, 0, 0), - public float fFadeInGameDuration { get; set; } // PsoDataType.Float, 724, 0, 0), - public uint fadeInColor { get; set; } // PsoDataType.UInt, 728, 1, 0), - public int iBlendOutCutsceneDuration { get; set; } // PsoDataType.SInt, 732, 0, 0), - public int iBlendOutCutsceneOffset { get; set; } // PsoDataType.SInt, 736, 0, 0), - public float fFadeOutGameDuration { get; set; } // PsoDataType.Float, 740, 0, 0), - public float fFadeInCutsceneDuration { get; set; } // PsoDataType.Float, 744, 0, 0), - public uint fadeOutColor { get; set; } // PsoDataType.UInt, 748, 1, 0), - public uint Unk_619896503 { get; set; } // PsoDataType.UInt, 728, 0, 0), - public float[] cameraCutList { get; set; } // PsoDataType.Array, 752, 0, (MetaName)31),//ARRAYINFO, PsoDataType.Float, 0, 0, 0), - public float[] sectionSplitList { get; set; } // PsoDataType.Array, 768, 0, (MetaName)MetaTypeName.FLOAT),//ARRAYINFO, PsoDataType.Float, 0, 0, 0), - public CutConcatData[] concatDataList { get; set; } // PsoDataType.Array, 784, 1, (MetaName)2621475),//ARRAYINFO, PsoDataType.Structure, 0, 0, MetaName.rage__cutfCutsceneFile2__SConcatData), - public CutHaltFrequency[] discardFrameList { get; set; } // PsoDataType.Array, 5280, 0, (MetaName)37)//ARRAYINFO, PsoDataType.Structure, 0, 0, MetaName.vHaltFrequency), + public float fTotalDuration { get; set; } //fTotalDuration, PsoDataType.Float, 268, 0, 0), + public string cFaceDir { get; set; } //cFaceDir, PsoDataType.String, 272, 0, (MetaName)16777216), + public uint[] iCutsceneFlags { get; set; } //iCutsceneFlags, PsoDataType.Array, 528, 4, (MetaName)262146), + public Vector3 vOffset { get; set; } //vOffset, PsoDataType.Float3, 544, 0, 0), + public float fRotation { get; set; } //fRotation, PsoDataType.Float, 560, 0, 0), + public Vector3 vTriggerOffset { get; set; } //vTriggerOffset, PsoDataType.Float3, 576, 0, 0), + public object[] pCutsceneObjects { get; set; } //pCutsceneObjects, PsoDataType.Array, 592, 0, (MetaName)7), + public object[] pCutsceneLoadEventList { get; set; } //pCutsceneLoadEventList, PsoDataType.Array, 608, 0, (MetaName)9), + public object[] pCutsceneEventList { get; set; } //pCutsceneEventList, PsoDataType.Array, 624, 0, (MetaName)11), + public object[] pCutsceneEventArgsList { get; set; } //pCutsceneEventArgsList, PsoDataType.Array, 640, 0, (MetaName)13), + public CutParAttributeList attributes { get; set; } //attributes, PsoDataType.Structure, 656, 0, MetaName.rage__parAttributeList), + public CutFAttributeList cutfAttributes { get; set; } //cutfAttributes, PsoDataType.Structure, 672, 4, 0), + public int iRangeStart { get; set; } //iRangeStart, PsoDataType.SInt, 680, 0, 0), + public int iRangeEnd { get; set; } //iRangeEnd, PsoDataType.SInt, 684, 0, 0), + public int iAltRangeEnd { get; set; } //iAltRangeEnd, PsoDataType.SInt, 688, 0, 0), + public float fSectionByTimeSliceDuration { get; set; } //fSectionByTimeSliceDuration, PsoDataType.Float, 692, 0, 0), + public float fFadeOutCutsceneDuration { get; set; } //fFadeOutCutsceneDuration, PsoDataType.Float, 696, 0, 0), + public float fFadeInGameDuration { get; set; } //fFadeInGameDuration, PsoDataType.Float, 700, 0, 0), + public uint fadeInColor { get; set; } //fadeInColor, PsoDataType.UInt, 704, 1, 0), + public int iBlendOutCutsceneDuration { get; set; } //iBlendOutCutsceneDuration, PsoDataType.SInt, 708, 0, 0), + public int iBlendOutCutsceneOffset { get; set; } //iBlendOutCutsceneOffset, PsoDataType.SInt, 712, 0, 0), + public float fFadeOutGameDuration { get; set; } //fFadeOutGameDuration, PsoDataType.Float, 716, 0, 0), + public float fFadeInCutsceneDuration { get; set; } //fFadeInCutsceneDuration, PsoDataType.Float, 720, 0, 0), + public uint fadeOutColor { get; set; } //fadeOutColor, PsoDataType.UInt, 724, 1, 0), + public uint DayCoCHours { get; set; } //DayCoCHours, PsoDataType.UInt, 728, 0, 0), + public float[] cameraCutList { get; set; } //cameraCutList, PsoDataType.Array, 736, 0, (MetaName)30), + public float[] sectionSplitList { get; set; } //sectionSplitList, PsoDataType.Array, 752, 0, (MetaName)32), + public CutConcatData[] concatDataList { get; set; } //concatDataList, PsoDataType.Array, 768, 1, (MetaName)2621474), + public CutHaltFrequency[] discardFrameList { get; set; } //discardFrameList, PsoDataType.Array, 3344, 0, (MetaName)36) + public Dictionary ObjectsDict { get; set; } = new Dictionary(); @@ -113,8 +112,6 @@ namespace CodeWalker.GameFiles iCutsceneFlags = Xml.GetChildRawUintArray(node, "iCutsceneFlags"); vOffset = Xml.GetChildVector3Attributes(node, "vOffset"); fRotation = Xml.GetChildFloatAttribute(node, "fRotation", "value"); - cExtraRoom = Xml.GetChildInnerText(node, "cExtraRoom"); - vExtraRoomPos = Xml.GetChildVector3Attributes(node, "vExtraRoomPos"); vTriggerOffset = Xml.GetChildVector3Attributes(node, "vTriggerOffset"); pCutsceneObjects = ReadObjectArray(node, "pCutsceneObjects"); pCutsceneLoadEventList = ReadObjectArray(node, "pCutsceneLoadEventList"); @@ -134,7 +131,7 @@ namespace CodeWalker.GameFiles fFadeOutGameDuration = Xml.GetChildFloatAttribute(node, "fFadeOutGameDuration", "value"); fFadeInCutsceneDuration = Xml.GetChildFloatAttribute(node, "fFadeInCutsceneDuration", "value"); fadeOutColor = Xml.GetChildUIntAttribute(node, "fadeOutColor", "value"); - Unk_619896503 = Xml.GetChildUIntAttribute(node, "hash_24F2DEB7", "value"); + DayCoCHours = Xml.GetChildUIntAttribute(node, "DayCoCHours", "value"); cameraCutList = Xml.GetChildRawFloatArray(node, "cameraCutList"); sectionSplitList = Xml.GetChildRawFloatArray(node, "sectionSplitList"); concatDataList = XmlMeta.ReadItemArrayNullable(node, "concatDataList"); @@ -608,28 +605,27 @@ namespace CodeWalker.GameFiles } [TC(typeof(EXP))] public class CutLightObject : CutNamedObject // rage__cutfLightObject { - public Vector3 vDirection { get; set; } // PsoDataType.Float3, 112, 0, 0), - public Vector3 vColour { get; set; } // PsoDataType.Float3, 128, 0, 0), - public Vector3 vPosition { get; set; } // PsoDataType.Float3, 144, 0, 0), - public float fIntensity { get; set; } // PsoDataType.Float, 160, 0, 0), - public float fFallOff { get; set; } // PsoDataType.Float, 164, 0, 0), - public float fConeAngle { get; set; } // PsoDataType.Float, 168, 0, 0), - public float fVolumeIntensity { get; set; } // PsoDataType.Float, 172, 0, 0), - public float fVolumeSizeScale { get; set; } // PsoDataType.Float, 176, 0, 0), - public float fCoronaSize { get; set; } // PsoDataType.Float, 180, 0, 0), - public float fCoronaIntensity { get; set; } // PsoDataType.Float, 184, 0, 0), - public float fCoronaZBias { get; set; } // PsoDataType.Float, 188, 0, 0), - public float fInnerConeAngle { get; set; } // PsoDataType.Float, 192, 0, 0), - public float fExponentialFallOff { get; set; } // PsoDataType.Float, 196, 0, 0), - public int iLightType { get; set; } // PsoDataType.SInt, 200, 0, 0), - public int iLightProperty { get; set; } // PsoDataType.SInt, 204, 0, 0), - public int TextureDictID { get; set; } // PsoDataType.SInt, 208, 0, 0), - public int TextureKey { get; set; } // PsoDataType.SInt, 212, 0, 0), - public int Unk_34975788 { get; set; } // PsoDataType.SInt, 216, 0, 0), - public uint uLightFlags { get; set; } // PsoDataType.UInt, 220, 0, 0), - public uint uHourFlags { get; set; } // PsoDataType.UInt, 224, 0, 0), - public ushort Unk_1437992521 { get; set; } // PsoDataType.UShort, 228, 0, 0), - public bool bStatic { get; set; } // PsoDataType.Bool, 230, 0, 0) + public Vector3 vDirection { get; set; } // PsoDataType.Float3, 64, 0, 0), + public Vector3 vColour { get; set; } // PsoDataType.Float3, 80, 0, 0), + public Vector3 vPosition { get; set; } // PsoDataType.Float3, 96, 0, 0), + public float fIntensity { get; set; } // PsoDataType.Float, 112, 0, 0), + public float fFallOff { get; set; } // PsoDataType.Float, 116, 0, 0), + public float fConeAngle { get; set; } // PsoDataType.Float, 120, 0, 0), + public float fVolumeIntensity { get; set; } // PsoDataType.Float, 124, 0, 0), + public float fVolumeSizeScale { get; set; } // PsoDataType.Float, 128, 0, 0), + public float fCoronaSize { get; set; } // PsoDataType.Float, 132, 0, 0), + public float fCoronaIntensity { get; set; } // PsoDataType.Float, 136, 0, 0), + public float fCoronaZBias { get; set; } // PsoDataType.Float, 140, 0, 0), + public float fInnerConeAngle { get; set; } // PsoDataType.Float, 144, 0, 0), + public float fExponentialFallOff { get; set; } // PsoDataType.Float, 148, 0, 0), + public float fShadowBlur { get; set; } // PsoDataType.Float, 152, 0, 0), + public int iLightType { get; set; } // PsoDataType.SInt, 156, 0, 0), + public int iLightProperty { get; set; } // PsoDataType.SInt, 160, 0, 0), + public int TextureDictID { get; set; } // PsoDataType.SInt, 164, 0, 0), + public int TextureKey { get; set; } // PsoDataType.SInt, 168, 0, 0), + public uint uLightFlags { get; set; } // PsoDataType.UInt, 176, 0, 0), + public uint uHourFlags { get; set; } // PsoDataType.UInt, 180, 0, 0), + public bool bStatic { get; set; } // PsoDataType.Bool, 186, 0, 0) public override void ReadXml(XmlNode node) { @@ -647,14 +643,13 @@ namespace CodeWalker.GameFiles fCoronaZBias = Xml.GetChildFloatAttribute(node, "fCoronaZBias", "value"); fInnerConeAngle = Xml.GetChildFloatAttribute(node, "fInnerConeAngle", "value"); fExponentialFallOff = Xml.GetChildFloatAttribute(node, "fExponentialFallOff", "value"); + fShadowBlur = Xml.GetChildFloatAttribute(node, "fShadowBlur", "value"); iLightType = Xml.GetChildIntAttribute(node, "iLightType", "value"); iLightProperty = Xml.GetChildIntAttribute(node, "iLightProperty", "value"); TextureDictID = Xml.GetChildIntAttribute(node, "TextureDictID", "value"); TextureKey = Xml.GetChildIntAttribute(node, "TextureKey", "value"); - Unk_34975788 = Xml.GetChildIntAttribute(node, "hash_0215B02C", "value"); uLightFlags = Xml.GetChildUIntAttribute(node, "uLightFlags", "value"); uHourFlags = Xml.GetChildUIntAttribute(node, "uHourFlags", "value"); - Unk_1437992521 = (ushort)Xml.GetChildUIntAttribute(node, "hash_55B60649", "value"); bStatic = Xml.GetChildBoolAttribute(node, "bStatic", "value"); } } diff --git a/CodeWalker.Core/GameFiles/MetaTypes/PsoTypes.cs b/CodeWalker.Core/GameFiles/MetaTypes/PsoTypes.cs index c49dbb2..8ea0cd3 100644 --- a/CodeWalker.Core/GameFiles/MetaTypes/PsoTypes.cs +++ b/CodeWalker.Core/GameFiles/MetaTypes/PsoTypes.cs @@ -13323,46 +13323,45 @@ namespace CodeWalker.GameFiles new PsoStructureEntryInfo(MetaName.components, PsoDataType.Array, 72, 0, (MetaName)9) ); case MetaName.rage__cutfCutsceneFile2: - return new PsoStructureInfo(MetaName.rage__cutfCutsceneFile2, 0, 0, 5296, + return new PsoStructureInfo(MetaName.rage__cutfCutsceneFile2, 0, 0, 3360, new PsoStructureEntryInfo(MetaName.fTotalDuration, PsoDataType.Float, 268, 0, 0), new PsoStructureEntryInfo(MetaName.cFaceDir, PsoDataType.String, 272, 0, (MetaName)16777216), new PsoStructureEntryInfo((MetaName)MetaTypeName.ARRAYINFO, PsoDataType.UInt, 0, 0, 0), new PsoStructureEntryInfo(MetaName.iCutsceneFlags, PsoDataType.Array, 528, 4, (MetaName)262146), new PsoStructureEntryInfo(MetaName.vOffset, PsoDataType.Float3, 544, 0, 0), new PsoStructureEntryInfo(MetaName.fRotation, PsoDataType.Float, 560, 0, 0), - new PsoStructureEntryInfo(MetaName.cExtraRoom, PsoDataType.String, 564, 0, (MetaName)1572864), - new PsoStructureEntryInfo(MetaName.vExtraRoomPos, PsoDataType.Float3, 592, 0, 0), - new PsoStructureEntryInfo(MetaName.vTriggerOffset, PsoDataType.Float3, 608, 0, 0), + new PsoStructureEntryInfo(MetaName.vTriggerOffset, PsoDataType.Float3, 576, 0, 0), new PsoStructureEntryInfo((MetaName)MetaTypeName.ARRAYINFO, PsoDataType.Structure, 0, 3, 0), - new PsoStructureEntryInfo(MetaName.pCutsceneObjects, PsoDataType.Array, 624, 0, (MetaName)9), + new PsoStructureEntryInfo(MetaName.pCutsceneObjects, PsoDataType.Array, 592, 0, (MetaName)7), new PsoStructureEntryInfo((MetaName)MetaTypeName.ARRAYINFO, PsoDataType.Structure, 0, 3, 0), - new PsoStructureEntryInfo(MetaName.pCutsceneLoadEventList, PsoDataType.Array, 640, 0, (MetaName)11), + new PsoStructureEntryInfo(MetaName.pCutsceneLoadEventList, PsoDataType.Array, 608, 0, (MetaName)9), new PsoStructureEntryInfo((MetaName)MetaTypeName.ARRAYINFO, PsoDataType.Structure, 0, 3, 0), - new PsoStructureEntryInfo(MetaName.pCutsceneEventList, PsoDataType.Array, 656, 0, (MetaName)13), + new PsoStructureEntryInfo(MetaName.pCutsceneEventList, PsoDataType.Array, 624, 0, (MetaName)11), new PsoStructureEntryInfo((MetaName)MetaTypeName.ARRAYINFO, PsoDataType.Structure, 0, 3, 0), - new PsoStructureEntryInfo(MetaName.pCutsceneEventArgsList, PsoDataType.Array, 672, 0, (MetaName)15), - new PsoStructureEntryInfo(MetaName.attributes, PsoDataType.Structure, 688, 0, MetaName.rage__parAttributeList), - new PsoStructureEntryInfo(MetaName.cutfAttributes, PsoDataType.Structure, 696, 4, 0), - new PsoStructureEntryInfo(MetaName.iRangeStart, PsoDataType.SInt, 704, 0, 0), - new PsoStructureEntryInfo(MetaName.iRangeEnd, PsoDataType.SInt, 708, 0, 0), - new PsoStructureEntryInfo(MetaName.iAltRangeEnd, PsoDataType.SInt, 712, 0, 0), - new PsoStructureEntryInfo(MetaName.fSectionByTimeSliceDuration, PsoDataType.Float, 716, 0, 0), - new PsoStructureEntryInfo(MetaName.fFadeOutCutsceneDuration, PsoDataType.Float, 720, 0, 0), - new PsoStructureEntryInfo(MetaName.fFadeInGameDuration, PsoDataType.Float, 724, 0, 0), - new PsoStructureEntryInfo(MetaName.fadeInColor, PsoDataType.UInt, 728, 1, 0), - new PsoStructureEntryInfo(MetaName.iBlendOutCutsceneDuration, PsoDataType.SInt, 732, 0, 0), - new PsoStructureEntryInfo(MetaName.iBlendOutCutsceneOffset, PsoDataType.SInt, 736, 0, 0), - new PsoStructureEntryInfo(MetaName.fFadeOutGameDuration, PsoDataType.Float, 740, 0, 0), - new PsoStructureEntryInfo(MetaName.fFadeInCutsceneDuration, PsoDataType.Float, 744, 0, 0), - new PsoStructureEntryInfo(MetaName.fadeOutColor, PsoDataType.UInt, 748, 1, 0), + new PsoStructureEntryInfo(MetaName.pCutsceneEventArgsList, PsoDataType.Array, 640, 0, (MetaName)13), + new PsoStructureEntryInfo(MetaName.attributes, PsoDataType.Structure, 656, 0, MetaName.rage__parAttributeList), + new PsoStructureEntryInfo(MetaName.cutfAttributes, PsoDataType.Structure, 672, 4, 0), + new PsoStructureEntryInfo(MetaName.iRangeStart, PsoDataType.SInt, 680, 0, 0), + new PsoStructureEntryInfo(MetaName.iRangeEnd, PsoDataType.SInt, 684, 0, 0), + new PsoStructureEntryInfo(MetaName.iAltRangeEnd, PsoDataType.SInt, 688, 0, 0), + new PsoStructureEntryInfo(MetaName.fSectionByTimeSliceDuration, PsoDataType.Float, 692, 0, 0), + new PsoStructureEntryInfo(MetaName.fFadeOutCutsceneDuration, PsoDataType.Float, 696, 0, 0), + new PsoStructureEntryInfo(MetaName.fFadeInGameDuration, PsoDataType.Float, 700, 0, 0), + new PsoStructureEntryInfo(MetaName.fadeInColor, PsoDataType.UInt, 704, 1, 0), + new PsoStructureEntryInfo(MetaName.iBlendOutCutsceneDuration, PsoDataType.SInt, 708, 0, 0), + new PsoStructureEntryInfo(MetaName.iBlendOutCutsceneOffset, PsoDataType.SInt, 712, 0, 0), + new PsoStructureEntryInfo(MetaName.fFadeOutGameDuration, PsoDataType.Float, 716, 0, 0), + new PsoStructureEntryInfo(MetaName.fFadeInCutsceneDuration, PsoDataType.Float, 720, 0, 0), + new PsoStructureEntryInfo(MetaName.fadeOutColor, PsoDataType.UInt, 724, 1, 0), + new PsoStructureEntryInfo(MetaName.DayCoCHours, PsoDataType.UInt, 728, 0, 0), new PsoStructureEntryInfo((MetaName)MetaTypeName.ARRAYINFO, PsoDataType.Float, 0, 0, 0), - new PsoStructureEntryInfo(MetaName.cameraCutList, PsoDataType.Array, 752, 0, (MetaName)31), + new PsoStructureEntryInfo(MetaName.cameraCutList, PsoDataType.Array, 736, 0, (MetaName)30), new PsoStructureEntryInfo((MetaName)MetaTypeName.ARRAYINFO, PsoDataType.Float, 0, 0, 0), - new PsoStructureEntryInfo(MetaName.sectionSplitList, PsoDataType.Array, 768, 0, (MetaName)MetaTypeName.FLOAT), + new PsoStructureEntryInfo(MetaName.sectionSplitList, PsoDataType.Array, 752, 0, (MetaName)32), new PsoStructureEntryInfo((MetaName)MetaTypeName.ARRAYINFO, PsoDataType.Structure, 0, 0, MetaName.rage__cutfCutsceneFile2__SConcatData), - new PsoStructureEntryInfo(MetaName.concatDataList, PsoDataType.Array, 784, 1, (MetaName)2621475), + new PsoStructureEntryInfo(MetaName.concatDataList, PsoDataType.Array, 768, 1, (MetaName)2621474), new PsoStructureEntryInfo((MetaName)MetaTypeName.ARRAYINFO, PsoDataType.Structure, 0, 0, MetaName.vHaltFrequency), - new PsoStructureEntryInfo(MetaName.discardFrameList, PsoDataType.Array, 5280, 0, (MetaName)37) + new PsoStructureEntryInfo(MetaName.discardFrameList, PsoDataType.Array, 3344, 0, (MetaName)36) ); case MetaName.rage__parAttributeList: return new PsoStructureInfo(MetaName.rage__parAttributeList, 0, 0, 12, @@ -13482,33 +13481,32 @@ namespace CodeWalker.GameFiles new PsoStructureEntryInfo(MetaName.cName, PsoDataType.String, 40, 7, 0) ); case MetaName.rage__cutfLightObject: - return new PsoStructureInfo(MetaName.rage__cutfLightObject, 0, 0, 240, + return new PsoStructureInfo(MetaName.rage__cutfLightObject, 0, 0, 192, new PsoStructureEntryInfo(MetaName.iObjectId, PsoDataType.SInt, 8, 0, 0), - new PsoStructureEntryInfo(MetaName.attributeList, PsoDataType.Structure, 16, 0, MetaName.rage__parAttributeList), - new PsoStructureEntryInfo(MetaName.cutfAttributes, PsoDataType.Structure, 24, 4, 0), - new PsoStructureEntryInfo(MetaName.cName, PsoDataType.String, 32, 0, (MetaName)4194304), - new PsoStructureEntryInfo(MetaName.vDirection, PsoDataType.Float3, 112, 0, 0), - new PsoStructureEntryInfo(MetaName.vColour, PsoDataType.Float3, 128, 0, 0), - new PsoStructureEntryInfo(MetaName.vPosition, PsoDataType.Float3, 144, 0, 0), - new PsoStructureEntryInfo(MetaName.fIntensity, PsoDataType.Float, 160, 0, 0), - new PsoStructureEntryInfo(MetaName.fFallOff, PsoDataType.Float, 164, 0, 0), - new PsoStructureEntryInfo(MetaName.fConeAngle, PsoDataType.Float, 168, 0, 0), - new PsoStructureEntryInfo(MetaName.fVolumeIntensity, PsoDataType.Float, 172, 0, 0), - new PsoStructureEntryInfo(MetaName.fVolumeSizeScale, PsoDataType.Float, 176, 0, 0), - new PsoStructureEntryInfo(MetaName.fCoronaSize, PsoDataType.Float, 180, 0, 0), - new PsoStructureEntryInfo(MetaName.fCoronaIntensity, PsoDataType.Float, 184, 0, 0), - new PsoStructureEntryInfo(MetaName.fCoronaZBias, PsoDataType.Float, 188, 0, 0), - new PsoStructureEntryInfo(MetaName.fInnerConeAngle, PsoDataType.Float, 192, 0, 0), - new PsoStructureEntryInfo(MetaName.fExponentialFallOff, PsoDataType.Float, 196, 0, 0), - new PsoStructureEntryInfo(MetaName.iLightType, PsoDataType.SInt, 200, 0, 0), - new PsoStructureEntryInfo(MetaName.iLightProperty, PsoDataType.SInt, 204, 0, 0), - new PsoStructureEntryInfo(MetaName.TextureDictID, PsoDataType.SInt, 208, 0, 0), - new PsoStructureEntryInfo(MetaName.TextureKey, PsoDataType.SInt, 212, 0, 0), - new PsoStructureEntryInfo((MetaName)34975788, PsoDataType.SInt, 216, 0, 0), - new PsoStructureEntryInfo(MetaName.uLightFlags, PsoDataType.UInt, 220, 0, 0), - new PsoStructureEntryInfo(MetaName.uHourFlags, PsoDataType.UInt, 224, 0, 0), - new PsoStructureEntryInfo((MetaName)1437992521, PsoDataType.UShort, 228, 0, 0), - new PsoStructureEntryInfo(MetaName.bStatic, PsoDataType.Bool, 230, 0, 0) + new PsoStructureEntryInfo(MetaName.attributeList, PsoDataType.Structure, 20, 0, MetaName.rage__parAttributeList), + new PsoStructureEntryInfo(MetaName.cutfAttributes, PsoDataType.Structure, 32, 4, 0), + new PsoStructureEntryInfo(MetaName.cName, PsoDataType.String, 40, 7, 0), + new PsoStructureEntryInfo(MetaName.vDirection, PsoDataType.Float3, 64, 0, 0), + new PsoStructureEntryInfo(MetaName.vColour, PsoDataType.Float3, 80, 0, 0), + new PsoStructureEntryInfo(MetaName.vPosition, PsoDataType.Float3, 96, 0, 0), + new PsoStructureEntryInfo(MetaName.fIntensity, PsoDataType.Float, 112, 0, 0), + new PsoStructureEntryInfo(MetaName.fFallOff, PsoDataType.Float, 116, 0, 0), + new PsoStructureEntryInfo(MetaName.fConeAngle, PsoDataType.Float, 120, 0, 0), + new PsoStructureEntryInfo(MetaName.fVolumeIntensity, PsoDataType.Float, 124, 0, 0), + new PsoStructureEntryInfo(MetaName.fVolumeSizeScale, PsoDataType.Float, 128, 0, 0), + new PsoStructureEntryInfo(MetaName.fCoronaSize, PsoDataType.Float, 132, 0, 0), + new PsoStructureEntryInfo(MetaName.fCoronaIntensity, PsoDataType.Float, 136, 0, 0), + new PsoStructureEntryInfo(MetaName.fCoronaZBias, PsoDataType.Float, 140, 0, 0), + new PsoStructureEntryInfo(MetaName.fInnerConeAngle, PsoDataType.Float, 144, 0, 0), + new PsoStructureEntryInfo(MetaName.fExponentialFallOff, PsoDataType.Float, 148, 0, 0), + new PsoStructureEntryInfo(MetaName.fShadowBlur, PsoDataType.Float, 152, 0, 0), + new PsoStructureEntryInfo(MetaName.iLightType, PsoDataType.SInt, 156, 0, 0), + new PsoStructureEntryInfo(MetaName.iLightProperty, PsoDataType.SInt, 160, 0, 0), + new PsoStructureEntryInfo(MetaName.TextureDictID, PsoDataType.SInt, 164, 0, 0), + new PsoStructureEntryInfo(MetaName.TextureKey, PsoDataType.SInt, 168, 0, 0), + new PsoStructureEntryInfo(MetaName.uLightFlags, PsoDataType.UInt, 176, 0, 0), + new PsoStructureEntryInfo(MetaName.uHourFlags, PsoDataType.UInt, 180, 0, 0), + new PsoStructureEntryInfo(MetaName.bStatic, PsoDataType.Bool, 186, 0, 0) ); case MetaName.rage__cutfAnimatedLightObject: return new PsoStructureInfo(MetaName.rage__cutfAnimatedLightObject, 0, 0, 208,