removed compression step, added ninepatch stuff to pipeline.

This commit is contained in:
2018-12-23 11:04:11 -06:00
parent a97cfa0309
commit 5f525fbb9f
9 changed files with 102 additions and 32 deletions

View File

@@ -0,0 +1,22 @@
using Microsoft.Xna.Framework.Content;
using Newtonsoft.Json;
using RecrownedAthenaeum.DataTypes;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace RecrownedAthenaeum.Pipeline
{
class NinePatchDataReader : ContentTypeReader<DataTypes.NinePatch>
{
protected override DataTypes.NinePatch Read(ContentReader input, DataTypes.NinePatch existingInstance)
{
int length = input.ReadInt32();
byte[] bytes = input.ReadBytes(length);
return JsonConvert.DeserializeObject<DataTypes.NinePatch>(Encoding.UTF8.GetString(bytes));
}
}
}

View File

@@ -19,20 +19,8 @@ namespace RecrownedAthenaeum.Pipeline
protected override DataTypes.TextureAtlas Read(ContentReader input, DataTypes.TextureAtlas existingInstance)
{
int length = input.ReadInt32();
byte[] compressedBytes = input.ReadBytes(length);
byte[] decompressedBytes;
using (MemoryStream inStream = new MemoryStream(compressedBytes))
{
using (GZipStream gZStream = new GZipStream(inStream, CompressionLevel.Optimal))
{
using (MemoryStream outStream = new MemoryStream())
{
gZStream.CopyTo(outStream);
decompressedBytes = outStream.ToArray();
}
}
}
TextureAtlasData atlasData = JsonConvert.DeserializeObject<TextureAtlasData>(Encoding.UTF8.GetString(decompressedBytes));
byte[] bytes = input.ReadBytes(length);
TextureAtlasData atlasData = JsonConvert.DeserializeObject<TextureAtlasData>(Encoding.UTF8.GetString(bytes));
DataTypes.TextureAtlas atlas;
Texture2D atlasTexture = input.ContentManager.Load<Texture2D>(atlasData.textureName);

View File

@@ -63,6 +63,7 @@
<Compile Include="Input\InputUtilities.cs" />
<Compile Include="ParticleSystem\Particle.cs" />
<Compile Include="Persistence\PreferencesManager.cs" />
<Compile Include="Pipeline\NinePatchDataReader.cs" />
<Compile Include="Pipeline\TextureAtlasDataReader.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="ScreenSystem\ITransition.cs" />