示例#1
0
 public override void Write(PackFileSerializer s, BinaryWriterEx bw)
 {
     base.Write(s, bw);
     bw.WriteSingle(m_characterHeight);
     bw.WriteUInt64(0);
     bw.WriteUInt32(0);
     s.WriteVector4(bw, m_up);
     bw.WriteSingle(m_quantizationGridSize);
     bw.WriteSingle(m_maxWalkableSlope);
     bw.WriteByte((byte)m_triangleWinding);
     bw.WriteUInt16(0);
     bw.WriteByte(0);
     bw.WriteSingle(m_degenerateAreaThreshold);
     bw.WriteSingle(m_degenerateWidthThreshold);
     bw.WriteSingle(m_convexThreshold);
     bw.WriteInt32(m_maxNumEdgesPerFace);
     m_edgeMatchingParams.Write(s, bw);
     bw.WriteUInt32((uint)m_edgeMatchingMetric);
     bw.WriteInt32(m_edgeConnectionIterations);
     bw.WriteUInt32(0);
     m_regionPruningSettings.Write(s, bw);
     m_wallClimbingSettings.Write(s, bw);
     bw.WriteUInt64(0);
     bw.WriteUInt32(0);
     bw.WriteUInt16(0);
     m_boundsAabb.Write(s, bw);
     s.WriteClassPointerArray <hkaiCarver>(bw, m_carvers);
     s.WriteClassPointerArray <hkaiMaterialPainter>(bw, m_painters);
     bw.WriteUInt64(0);
     bw.WriteUInt32(m_defaultConstructionProperties);
     bw.WriteUInt32(0);
     s.WriteClassArray <hkaiNavMeshGenerationSettingsMaterialConstructionPair>(bw, m_materialMap);
     bw.WriteBoolean(m_fixupOverlappingTriangles);
     bw.WriteUInt16(0);
     bw.WriteByte(0);
     m_overlappingTrianglesSettings.Write(s, bw);
     bw.WriteBoolean(m_weldInputVertices);
     bw.WriteUInt16(0);
     bw.WriteByte(0);
     bw.WriteSingle(m_weldThreshold);
     bw.WriteSingle(m_minCharacterWidth);
     bw.WriteByte((byte)m_characterWidthUsage);
     bw.WriteBoolean(m_enableSimplification);
     bw.WriteUInt16(0);
     m_simplificationSettings.Write(s, bw);
     bw.WriteInt32(m_carvedMaterialDeprecated);
     bw.WriteInt32(m_carvedCuttingMaterialDeprecated);
     bw.WriteBoolean(m_setBestFaceCenters);
     bw.WriteBoolean(m_checkEdgeGeometryConsistency);
     bw.WriteBoolean(m_saveInputSnapshot);
     bw.WriteUInt32(0);
     bw.WriteByte(0);
     s.WriteStringPointer(bw, m_snapshotFilename);
     s.WriteClassArray <hkaiNavMeshGenerationSettingsOverrideSettings>(bw, m_overrideSettings);
     bw.WriteUInt64(0);
 }
 public virtual void Write(PackFileSerializer s, BinaryWriterEx bw)
 {
     s.WriteClassPointer <hkaiVolume>(bw, m_volume);
     bw.WriteInt32(m_material);
     bw.WriteByte((byte)m_characterWidthUsage);
     bw.WriteUInt16(0);
     bw.WriteByte(0);
     bw.WriteSingle(m_maxWalkableSlope);
     m_edgeMatchingParams.Write(s, bw);
     bw.WriteUInt32(0);
     m_simplificationSettings.Write(s, bw);
 }
示例#3
0
 public override void Write(PackFileSerializer s, BinaryWriterEx bw)
 {
     base.Write(s, bw);
     s.WriteClassArray <hkaiNavMeshCutterMeshInfo>(bw, m_meshInfos);
     m_connectivityInfo.Write(s, bw);
     s.WriteClassPointer <hkaiStreamingCollection>(bw, m_streamingCollection);
     s.WriteUInt32Array(bw, m_forceRecutFaceKeys);
     s.WriteUInt32Array(bw, m_forceClearanceCalcFaceKeys);
     s.WriteVector4(bw, m_up);
     m_edgeMatchParams.Write(s, bw);
     bw.WriteUInt64(0);
     bw.WriteSingle(m_cutEdgeTolerance);
     bw.WriteSingle(m_minEdgeMatchingLength);
     bw.WriteSingle(m_smallGapFixupTolerance);
     bw.WriteBoolean(m_performValidationChecks);
     bw.WriteByte((byte)m_clearanceResetMethod);
     bw.WriteBoolean(m_recomputeClearanceAfterCutting);
     bw.WriteBoolean(m_useNewCutter);
     bw.WriteSingle(m_domainQuantum);
     bw.WriteUInt64(0);
     bw.WriteUInt32(0);
 }