本文整理汇总了C#中ConvertOperation.SuggestResultName方法的典型用法代码示例。如果您正苦于以下问题:C# ConvertOperation.SuggestResultName方法的具体用法?C# ConvertOperation.SuggestResultName怎么用?C# ConvertOperation.SuggestResultName使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ConvertOperation
的用法示例。
在下文中一共展示了ConvertOperation.SuggestResultName方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Convert
public override bool Convert(ConvertOperation convert)
{
List<object> results = new List<object>();
List<Material> availData = convert.Perform<Material>().ToList();
// Generate objects
foreach (Material mat in availData)
{
if (convert.IsObjectHandled(mat)) continue;
DrawTechnique tech = mat.Technique.Res;
LightingTechnique lightTech = tech as LightingTechnique;
if (tech == null) continue;
bool isDynamicLighting = lightTech != null ||
tech.PreferredVertexFormat == VertexC1P3T2A4.Declaration ||
tech.PreferredVertexFormat == VertexC1P3T4A4A1.Declaration;
if (!isDynamicLighting) continue;
Texture mainTex = mat.MainTexture.Res;
Pixmap basePixmap = (mainTex != null) ? mainTex.BasePixmap.Res : null;
GameObject gameobj = convert.Result.OfType<GameObject>().FirstOrDefault();
if (mainTex == null || basePixmap == null || basePixmap.AnimFrames == 0)
{
LightingSpriteRenderer sprite = convert.Result.OfType<LightingSpriteRenderer>().FirstOrDefault();
if (sprite == null && gameobj != null) sprite = gameobj.GetComponent<LightingSpriteRenderer>();
if (sprite == null) sprite = new LightingSpriteRenderer();
sprite.SharedMaterial = mat;
if (mainTex != null) sprite.Rect = Rect.Align(Alignment.Center, 0.0f, 0.0f, mainTex.PixelWidth, mainTex.PixelHeight);
convert.SuggestResultName(sprite, mat.Name);
results.Add(sprite);
}
else
{
LightingAnimSpriteRenderer sprite = convert.Result.OfType<LightingAnimSpriteRenderer>().FirstOrDefault();
if (sprite == null && gameobj != null) sprite = gameobj.GetComponent<LightingAnimSpriteRenderer>();
if (sprite == null) sprite = new LightingAnimSpriteRenderer();
sprite.SharedMaterial = mat;
sprite.Rect = Rect.Align(Alignment.Center,
0.0f,
0.0f,
(mainTex.PixelWidth / basePixmap.AnimCols) - basePixmap.AnimFrameBorder * 2,
(mainTex.PixelHeight / basePixmap.AnimRows) - basePixmap.AnimFrameBorder * 2);
sprite.AnimDuration = 5.0f;
sprite.AnimFrameCount = basePixmap.AnimFrames;
convert.SuggestResultName(sprite, mat.Name);
results.Add(sprite);
}
convert.MarkObjectHandled(mat);
}
convert.AddResult(results);
return false;
}
示例2: Convert
public override bool Convert(ConvertOperation convert)
{
// If we already have a renderer in the result set, consider generating
// another one to be not the right course of action.
if (convert.Result.OfType<ICmpRenderer>().Any())
return false;
List<object> results = new List<object>();
List<Material> availData = convert.Perform<Material>().ToList();
// Generate objects
foreach (Material mat in availData)
{
if (convert.IsObjectHandled(mat)) continue;
Texture mainTex = mat.MainTexture.Res;
Pixmap basePixmap = (mainTex != null) ? mainTex.BasePixmap.Res : null;
GameObject gameobj = convert.Result.OfType<GameObject>().FirstOrDefault();
if (mainTex == null || basePixmap == null || basePixmap.AnimFrames == 0)
{
SpriteRenderer sprite = convert.Result.OfType<SpriteRenderer>().FirstOrDefault();
if (sprite == null && gameobj != null) sprite = gameobj.GetComponent<SpriteRenderer>();
if (sprite == null) sprite = new SpriteRenderer();
sprite.SharedMaterial = mat;
if (mainTex != null) sprite.Rect = Rect.Align(Alignment.Center, 0.0f, 0.0f, mainTex.PixelWidth, mainTex.PixelHeight);
convert.SuggestResultName(sprite, mat.Name);
results.Add(sprite);
}
else
{
AnimSpriteRenderer sprite = convert.Result.OfType<AnimSpriteRenderer>().FirstOrDefault();
if (sprite == null && gameobj != null) sprite = gameobj.GetComponent<AnimSpriteRenderer>();
if (sprite == null) sprite = new AnimSpriteRenderer();
sprite.SharedMaterial = mat;
sprite.Rect = Rect.Align(Alignment.Center,
0.0f,
0.0f,
(mainTex.PixelWidth / basePixmap.AnimCols) - basePixmap.AnimFrameBorder * 2,
(mainTex.PixelHeight / basePixmap.AnimRows) - basePixmap.AnimFrameBorder * 2);
sprite.AnimDuration = 5.0f;
sprite.AnimFrameCount = basePixmap.AnimFrames;
convert.SuggestResultName(sprite, mat.Name);
results.Add(sprite);
}
convert.MarkObjectHandled(mat);
}
convert.AddResult(results);
return false;
}
示例3: Convert
public override bool Convert(ConvertOperation convert)
{
List<object> results = new List<object>();
List<Font> availData = convert.Perform<Font>().ToList();
// Generate objects
foreach (Font font in availData)
{
if (convert.IsObjectHandled(font)) continue;
GameObject gameobj = convert.Result.OfType<GameObject>().FirstOrDefault();
TextRenderer renderer = convert.Result.OfType<TextRenderer>().FirstOrDefault();
if (renderer == null && gameobj != null) renderer = gameobj.GetComponent<TextRenderer>();
if (renderer == null) renderer = new TextRenderer();
convert.SuggestResultName(renderer, font.Name);
if (!renderer.Text.Fonts.Contains(font))
{
var fonts = renderer.Text.Fonts.ToList();
if (fonts[0] == Font.GenericMonospace10) fonts.RemoveAt(0);
fonts.Add(font);
renderer.Text.Fonts = fonts.ToArray();
renderer.Text.ApplySource();
}
results.Add(renderer);
convert.MarkObjectHandled(font);
}
convert.AddResult(results);
return false;
}
示例4: Convert
public override bool Convert(ConvertOperation convert)
{
// If we already have a renderer in the result set, consider generating
// a tilemap to be not the right course of action.
if (convert.Result.OfType<ICmpRenderer>().Any())
return false;
List<object> results = new List<object>();
List<Tileset> availData = convert.Perform<Tileset>().ToList();
// Generate objects
foreach (Tileset tileset in availData)
{
if (convert.IsObjectHandled(tileset)) continue;
// Retrieve previously generated GameObjects and Tilemaps for re-use
GameObject gameobj = convert.Result.OfType<GameObject>().FirstOrDefault();
Tilemap tilemap = convert.Result.OfType<Tilemap>().FirstOrDefault();
TilemapRenderer tilemapRenderer = convert.Result.OfType<TilemapRenderer>().FirstOrDefault();
if (tilemap == null && gameobj != null) tilemap = gameobj.GetComponent<Tilemap>();
// Create a new Tilemap (and TilemapRenderer) if none did exist before
if (tilemap == null)
{
tilemap = new Tilemap();
TilemapsSetupUtility.SetupTilemap(tilemap, tileset);
// Add a renderer for this Tilemap to the result list, if there was none before
if (tilemapRenderer == null)
{
results.Add(new TilemapRenderer());
}
}
// Configure the Tilemap according to the Tileset we're converting
tilemap.Tileset = tileset;
// Add the Tilemap to our result set
results.Add(tilemap);
convert.SuggestResultName(tilemap, tileset.Name);
convert.MarkObjectHandled(tileset);
}
convert.AddResult(results);
return false;
}
示例5: Convert
public override bool Convert(ConvertOperation convert)
{
List<Sound> availData = convert.Perform<Sound>().ToList();
// Generate objects
foreach (Sound snd in availData)
{
if (convert.IsObjectHandled(snd)) continue;
GameObject gameobj = convert.Result.OfType<GameObject>().FirstOrDefault();
SoundEmitter emitter = convert.Result.OfType<SoundEmitter>().FirstOrDefault();
if (emitter == null && gameobj != null) emitter = gameobj.GetComponent<SoundEmitter>();
if (emitter == null) emitter = new SoundEmitter();
convert.SuggestResultName(emitter, snd.Name);
SoundEmitter.Source source = new SoundEmitter.Source(snd);
emitter.Sources.Add(source);
convert.AddResult(emitter);
convert.MarkObjectHandled(snd);
}
return false;
}
示例6: Convert
public override bool Convert(ConvertOperation convert)
{
List<object> results = new List<object>();
List<Material> availData = convert.Perform<Material>().ToList();
// Generate objects
foreach (Material mat in availData)
{
if (convert.IsObjectHandled(mat)) continue;
Texture mainTex = mat.MainTexture.Res;
GameObject gameobj = convert.Result.OfType<GameObject>().FirstOrDefault();
if (mainTex == null || mainTex.AnimFrames == 0)
{
SpriteRenderer sprite = convert.Result.OfType<SpriteRenderer>().FirstOrDefault();
if (sprite == null && gameobj != null) sprite = gameobj.GetComponent<SpriteRenderer>();
if (sprite == null) sprite = new SpriteRenderer();
sprite.SharedMaterial = mat;
if (mainTex != null) sprite.Rect = Rect.AlignCenter(0.0f, 0.0f, mainTex.PixelWidth, mainTex.PixelHeight);
convert.SuggestResultName(sprite, mat.Name);
results.Add(sprite);
}
else
{
AnimSpriteRenderer sprite = convert.Result.OfType<AnimSpriteRenderer>().FirstOrDefault();
if (sprite == null && gameobj != null) sprite = gameobj.GetComponent<AnimSpriteRenderer>();
if (sprite == null) sprite = new AnimSpriteRenderer();
sprite.SharedMaterial = mat;
sprite.Rect = Rect.AlignCenter(0.0f, 0.0f, mainTex.PixelWidth / mainTex.AnimCols, mainTex.PixelHeight / mainTex.AnimRows);
sprite.AnimDuration = 5.0f;
sprite.AnimFrameCount = mainTex.AnimFrames;
convert.SuggestResultName(sprite, mat.Name);
results.Add(sprite);
}
convert.MarkObjectHandled(mat);
}
convert.AddResult(results);
return false;
}