private byte[] ConvertWorld(ImportedObject obj) { var world = new NwWorld(); { var texs = new List <NwTexture2D>(); foreach (var t in obj.Textures) { var bm = AssetConverter.ToNwTexture2D(t.SrcBitmap, t.Name); texs.Add(bm); } var cubes = new List <NwCubemap>(); cubes.Add(AssetConverter.ToNwTextureCube(new Bitmap[] { Resources.posx2, Resources.posy2, Resources.posz2, Resources.negx2, Resources.negy2, Resources.negz2, }, null)); var mats = new List <NwMaterial>(); foreach (var m in obj.Materials) { var mat = AssetConverter.ToNwMaterial(m, m.Name, ref texs, ref cubes); mats.Add(mat); } world.Texture2Ds = texs.ToArray(); world.Cubemaps = cubes.ToArray(); world.Materials = mats.ToArray(); var meshes = new List <NwMesh>(); foreach (var mesh in obj.Meshes) { meshes.Add(AssetConverter.ToNwMesh(mesh)); } world.Meshes = meshes.ToArray(); var colMeshes = new List <NwColliderMesh>(); foreach (var mesh in obj.Meshes) { colMeshes.Add(AssetConverter.ToNwColliderMesh(mesh)); } world.ColliderMeshes = colMeshes.ToArray(); world.Environments = new NwEnvironment[1]; world.Environments[0] = new NwEnvironment() { EnvMap = world.Cubemaps[0].Hash, }; } var json = Util.SerializeJson(world); var comp = Util.Compress(Encoding.UTF8.GetBytes(json)); return(comp); }
private NwObject ConvertObject(ImportedObject obj) { var o = new NwObject(); { o.Name = obj.Name; o.Description = obj.Description; o.Version = obj.Version; o.Editor = obj.Editor; o.EditorURL = obj.EditorURL; var texs = new List <NwTexture2D>(); foreach (var t in obj.Textures) { var bm = AssetConverter.ToNwTexture2D(t.SrcBitmap, t.Name); texs.Add(bm); } var cubes = new List <NwCubemap>(); var mats = new List <NwMaterial>(); foreach (var m in obj.Materials) { var mat = AssetConverter.ToNwMaterial(m, m.Name, ref texs, ref cubes); mats.Add(mat); } o.Texture2Ds = texs.ToArray(); o.Cubemaps = cubes.ToArray(); o.Materials = mats.ToArray(); if (obj.Bones != null) { var bones = new List <NwBone>(); foreach (var b in obj.Bones) { var bone = AssetConverter.ToNwBone(b); bones.Add(bone); } o.Bones = bones.ToArray(); } o.Mesh = AssetConverter.ToNwMesh(obj.Meshes[0]); o.CollisionShape = new NwCollisionCapsule() { Height = 1.6f, Radius = 0.3f, }; o.PhysicalMaterial = new NwPhysicalMaterial(); } return(o); }
private NwCharacter ConvertCharacter(ImportedObject obj) { var c = new NwCharacter(); { c.Name = obj.Name; c.Description = obj.Description; c.Version = obj.Version; c.Editor = obj.Editor; c.EditorURL = obj.EditorURL; var texs = new List <NwTexture2D>(); foreach (var t in obj.Textures) { var bm = AssetConverter.ToNwTexture2D(t.SrcBitmap, t.Name); texs.Add(bm); } var cubes = new List <NwCubemap>(); var mats = new List <NwMaterial>(); foreach (var m in obj.Materials) { var mat = AssetConverter.ToNwMaterial(m, m.Name, ref texs, ref cubes); mats.Add(mat); } c.Texture2Ds = texs.ToArray(); c.Cubemaps = cubes.ToArray(); c.Materials = mats.ToArray(); var bones = new List <NwBone>(); foreach (var b in obj.Bones) { var bone = AssetConverter.ToNwBone(b); bones.Add(bone); } c.Bones = bones.ToArray(); c.Mesh = AssetConverter.ToNwMesh(obj.Meshes[0]); c.CollisionShape = new NwCollisionCapsule() { Height = 1.6f, Radius = 0.3f, }; c.Mass = 50.0f; } return(c); }
private byte[] ConvertCharacter(ImportedObject obj) { var ch = new NwCharacter(); { ch.Name = obj.Name; var texs = new List <NwTexture2D>(); foreach (var t in obj.Textures) { var bm = AssetConverter.ToNwTexture2D(t.SrcBitmap, t.Name); texs.Add(bm); } var cubes = new List <NwCubemap>(); var mats = new List <NwMaterial>(); foreach (var m in obj.Materials) { var mat = AssetConverter.ToNwMaterial(m, m.Name, ref texs, ref cubes); mats.Add(mat); } ch.Texture2Ds = texs.ToArray(); ch.Cubemaps = cubes.ToArray(); ch.Materials = mats.ToArray(); var bones = new List <NwBone>(); foreach (var b in obj.Bones) { var bone = AssetConverter.ToNwBone(b); bones.Add(bone); } ch.Bones = bones.ToArray(); ch.Mesh = AssetConverter.ToNwMesh(obj.Meshes[0]); //ch.Height = 1.6f; //ch.WidthRadius = 0.3f; ch.EyePosition = new Vector3f(0.0f, 1.42f, 0.2f); ch.Mass = 50.0f; } var json = Util.SerializeJson(ch); var comp = Util.Compress(Encoding.UTF8.GetBytes(json)); return(comp); }
private byte[] ConvertObject(ImportedObject obj) { var o = new NwObject(); { o.Name = obj.Name; var texs = new List <NwTexture2D>(); foreach (var t in obj.Textures) { var bm = AssetConverter.ToNwTexture2D(t.SrcBitmap, t.Name); texs.Add(bm); } var cubes = new List <NwCubemap>(); var mats = new List <NwMaterial>(); foreach (var m in obj.Materials) { var mat = AssetConverter.ToNwMaterial(m, m.Name, ref texs, ref cubes); mats.Add(mat); } o.Texture2Ds = texs.ToArray(); o.Cubemaps = cubes.ToArray(); o.Materials = mats.ToArray(); o.Mesh = AssetConverter.ToNwMesh(obj.Meshes[0]); //o.Height = 1.6f; //o.WidthRadius = 0.3f; o.PhysicalMaterial = new NwPhysicalMaterial(); } var json = Util.SerializeJson(o); var comp = Util.Compress(Encoding.UTF8.GetBytes(json)); return(comp); }