小编Jes*_*tus的帖子

在Unity 2D中翻转2D Sprite动画

我有一个关于2D Sprite动画的快速问题,我无法在任何地方找到具体答案:

我有一个带有步行动画的精灵到右边.但是,当他向左走(2D侧卷轴)时,我显然想将动画向左翻转.

我可以轻松地翻转精灵本身transform.localscale.x,然而,使用只翻转精灵.不是动画片段.(这不再发生在Unity中)

因此,当精灵翻转时,动画片段开始播放的那一刻,它会向右翻转(因为我唯一的动画片段是面向右侧的精灵).

这是在Photoshop中翻转精灵的唯一方法,还是有办法在Unity中执行此操作?

谢谢!

更新:如果通过乘以它来缩放变换,则使用单位的实际版本-1,动画帧也会缩放.

c# animation 2d sprite unity-game-engine

12
推荐指数
1
解决办法
3万
查看次数

带有 Bootstrap Glyphicon 的 ASP.NET 按钮

我正在尝试使用字形作为 ASP 的图标Button

我知道您可以通过为<i>元素提供适当的glyphiconCSS来轻松完成此操作,然后将其置于所需按钮下。

但是,我想从 C# 端而不是 HTML 来执行此操作。我该怎么做呢?

我尝试了以下方法,但无济于事:

HtmlGenericControl i1 = new HtmlGenericControl("i");
i1.Attributes["class"] = "glyphicon glyphicon-backward";
i1.Attributes["aria-hidden"] = "true";

Button btnFirst = new Button();
btnFirst.ID = "btnFirst";
btnFirst.CommandName = "FirstPage";
btnFirst.CssClass = "btn btn-default pageButton";
btnFirst.Click += new EventHandler(btnFirst_Click);
btnFirst.Controls.Add(i1);
container.Controls.Add(btnFirst);
Run Code Online (Sandbox Code Playgroud)

如果我按上面的方式运行,则显示按钮,但没有图标。在 HTML 中,<i>按钮下方没有嵌套元素。事实上,它似乎不存在。

css c# asp.net twitter-bootstrap twitter-bootstrap-3

4
推荐指数
1
解决办法
1万
查看次数

在Unity3D中使用Singleton

我正在尝试使用Singleton作为我在Unity中制作的游戏中的任务组织的全局数据结构.

我的Singleton类代码如下:

public class TaskManager : MonoBehaviour 
{
    private List<Task> Tasks;

    private static TaskManager instance;
    private TaskManager() 
    {
        Tasks = new List<Task>();
    }

    public static TaskManager Instance
    {
        get
        {
            if(instance == null)
            {
                instance = new TaskManager();
            }
            return instance;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我用这个例子作为我班级的基础:https: //msdn.microsoft.com/en-us/library/ff650316.aspx

但是,问题是,当我尝试在不同的脚本中访问TaskManager时,值不会被保存.

例如,我在一个脚本中执行以下操作:

TaskManager tm = TaskManager.Instance;

Task newTask = new Task();
tm.PushTask(newTask);

print(tm.GetTaskList().Count);
Run Code Online (Sandbox Code Playgroud)

通过这个我可以看到TaskManager的计数为1,显示了新任务.

但是我的另一个脚本试图从TaskManager中读取:

TaskManager tm = TaskManager.Instance;
List<Task> l = tm.GetTaskList();
print(l.Count);
Run Code Online (Sandbox Code Playgroud)

当我这样做时,Count返回0,表明上面的任务来自世界尚未保存到TaskManager.

我很确定这个错误是因为我误解了如何使用Singletons.我是否需要为TaskManager实例实现set属性?或者我正在制造另一个错误?

谢谢!

编辑:

PushTask()代码如下:

public void PushTask(Task …
Run Code Online (Sandbox Code Playgroud)

c# singleton unity-game-engine unity3d-2dtools

3
推荐指数
1
解决办法
5332
查看次数