zoukankan      html  css  js  c++  java
  • 使用Unity做项目的时候,一些好的建议

    内容来自这个网站http://devmag.org.za/2012/07/12/50-tips-for-working-with-unity-best-practices/

    ,我选取了目前我看得懂的一些,翻译了:

    1,避免素材分支:

    所有的素材应该只有一个版本,比如prefab, scene, mesh。

    2,每个成员必须有一个当前项目的备份来测试。

    3,使用其他的关卡编辑工具来编辑关卡。

    Unity不是一个完美的关卡编辑器。

    4,使用XML来保存关卡信息,而不是scene。

    5,考虑写一个通用的自定义属性面板


    组织场景:

    6,使用空的GameObject来做场景里的文件夹。

    7,将修改后的prefabs和文件夹(空的GameObject)的位置设置为0,0,0。

    8,将你世界的Y轴基础坐标设置为0,这样就让放置对象更加方便。

    9,让每个界面都可以单独运行

    这样会大大减少测试的时间,要做到所有的场景可以自己运行,需要完成以下两点:

    1,当数据不存在时,能够提供虚拟的数据以供当前场景使用。

    2,生成对象必须支持多个场景都可以加载,使用类似下面的习惯用法:

    myObject = FindMyObjectInScene();

     

    if (myObjet == null)

    {

       myObject = SpawnMyObject();

    }

    10,将角色和站立对象的pivots(中心点)设置在原点(左下),而不是中心位置。

    这样更容易摆放和设置其位置。

    11,将prefab用于所有对象。你的场景里面应该只有文件夹(空的gamobject)而不是prefab.甚至唯一的对象,只被使用一次也需要被设置为prafabs。这样就会使得改动不波及到场景。

    12,将一些复杂的prefab拆分为几个单独的prefab,不要对已经初始化的对象再进行设置。

    如果你有两种敌人,他们只有属性不一样,定义两种不一样的prefab给这种属性,然后再将它们引入,这样做的好处是:

    1,修改某个对象,只需要修改一个地方。

    2,修改不涉及scene。

    13,将prefab和prefab链接起来,而不是instance和instance。

  • 相关阅读:
    倒排索引
    线控的原理
    性格类型之ISFP艺术家型——有爱心的艺术工作者
    亚马逊面试题及解法
    关于过度设计的思考(zz)
    给Visual Studio 2010中文版添加Windows Phone 7模板
    MySQL性能优化zz
    上班玩游戏,老总是怎么知道的呢?
    基于AJAX的自动完成
    JavaScript在ASP.NET AJAX中的另类故事
  • 原文地址:https://www.cnblogs.com/beatless/p/4409566.html
Copyright © 2011-2022 走看看