【Unity游戏开发之五】游戏目录结构之最佳实践和优化

游戏目录结构之最佳实践

前置条件

1.多人协作开发,git管理

2.游戏不大,所有Scene合并到一起Scene中,eg.RoleScene、MapScene、StoreScene

3.Master一人管理Scene,防止多人修改产生主场景(二进制)产生冲突

目标

1.多人并行开发,互不干扰影响

2.主场景在完美情况下,只在第一次分派目录的结构的时候由Master修改一次,以后不需要任何修改

开发过程

目录结构如图:

1.Hierarchy的目录结构,三个场景RoleScene、MapScene、StoreScene分别由三个空节点管理,坐标清0,目录下是每个界面的预制体

2.每个非动态加载的预制体放置到Dev-perfab目录,需要动态加载的放到Resources/perfabs目录,游戏打包时会将Resources/perfabs目录下所有的perfab预制体打包到游戏中(包括不用的),而其余目录的预制体只有场景中用到的才会被打包。

3.多人协作开发测试

因为最终我们将所有的Scene都合并到GameScene中,但是开发过程 并不这么做,分别建RoleScene、MapScene、StoreScene,开发过程中每人一个场景分别开发测试预制体。

4.所有的Scene都在一个场景中,UI叠加到一起比较混乱,在开发时,可以隐藏根节点,方便开发。

注意开发细节

1.预制体目录清0

坐标统一Reset,layer选UI

2.预制体根节点结构

包含UIPanel和UIAnchor(为了多分辨率下和屏幕对齐的),【Ui Camera】属性选None

总结

没有完美的开发方案,只有最合适的开发方案,目前开发方案的缺点:

1.因为所有场景合并到一起,最终只有一个Scene,导致场景加载慢

2.所有UI在一个场景中,开发时各个场景UI叠加,只能隐藏别的UI界面再开发指定界面,在游戏巨大,UI界面非常多的情况下不适合。

如有错误,希望大家批评指正,谢谢。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-08 01:33:21

【Unity游戏开发之五】游戏目录结构之最佳实践和优化的相关文章

【Unity NGUI游戏开发之五】多分辨率下完美分布式协同开发

NGUI多分辨率下完美分布式协同开发:不同分辨率下相对于屏幕坐标的Perfab数据不再丢失 NGUI多分辨率下完美分布式协同开发不同分辨率下相对于屏幕坐标的Perfab数据不再丢失 开发问题 原因分析 案例 完美过程 案例分析 实现过程 开发问题: NGUI分布式开发中,用git管理资源,团队成员每人负责一个perfab,所有现对于屏幕大小的相对位置的perfab因为引用了perfab外的数据,导致perfab的Anchor锚点数据丢失,最后的perfab集成后,必须重新设置,导致开发成本大幅度

cocos2d-x游戏开发之游戏主循环

首先还是就我个人的理解,讲讲游戏引擎的处理流程. 其实游戏逻辑简单化就是一个死循环,如下: 1 2 bool game_is_running = true; 3 4 while( game_is_running ) { 5 update_game(); 6 display_game(); 7 } 我们所看到的游戏画面,游戏音乐,以及一些触控,输入等.在逻辑上就是这么一个死循环.这个循环一直在跑,期间会处理一些列的事件,简化之就是上面的两个函数. cocos2d-x引擎也是如此,所有的逻辑都是在这

Android游戏开发之游戏帧动画的播放与处理

带你走进游戏开发的世界之游戏帧动画的处理<ignore_js_op> 1.帧动画的原理 帧动画帧动画顾名思义,一帧一帧播放的动画就是帧动画. 帧动画和我们小时候看的动画片的原理是一样的,在相同区域快速切换图片给人们呈现一种视觉的假象感觉像是在播放动画,其实不过是N张图片在一帧一帧的切换罢了.            如图所示:人物行走动画的实现方式, 4帧行走动画在播放区域 一帧一帧向左切换播放 给人们一种播放动画的假象 ,图片就动了起来, 很简单吧,其它三方向播放动画的方法类似我就不再一一举例

Android SVN开发实战之目录结构介绍

svn有一个很标准的目录结构,是这样的.比如项目是proj,svn地址为svn://proj/,那么标准的svn布局是 svn://proj/ | +-trunk +-branches +-tags 这 是一个标准的布局,trunk为主开发目录,branches为分支开发目录,tags为tag存档目录(不允许修改).但是具体这几个目录应该如何使 用,svn并没有明确的规范,更多的还是用户自己的习惯. 对于这几个开发目录,一般的使用方法有两种.我更多的是从软件产品的角度出发 (比如freebsd)

在线捉鬼游戏开发之一 - 游戏流程介绍与技术选用

看过芒果台某知名节目的朋友们应该对“谁是卧底”不会陌生:N人参与,N-1人拿到同一个词(如馒头),剩余一人拿到另一个词(如包子),N人都只能看到自己的词,故没人知道自己是否和别人描述的不一样.游戏采用轮流发言制,想尽办法描述自己手中的词,让自己不被怀疑,且又不能让真正的卧底猜出自己和别人不一样,直到猜出谁是卧底. 此类游戏的有趣之处在于描述的尺度要拿捏在明确且不点破之间,机器没有人的智慧那么发散,人的参与感就更重要了(不然好比我喜欢的飞行棋,你还真不知道网络对面的对手是不是条狗). 捉鬼 这个游

iOS开发总结——项目目录结构

1.前言 清晰的项目目录结构有利于项目的开发,同时也是软件架构的一部分,所以,项目开发之初搭建项目的目录结构很重要.刚转iOS时,自己并不知道如何搭建App的项目目录,在参与开发两个应用后,结合Web开发的目录习惯我整理了自己的目录结构.分享一下,欢迎交流. 2.我的项目目录结构 项目目录 ├── ThirdLib(三方库) │ ├── SDWebImage │ └── AFNetworking ├── Framework(自己封装的类库) ├── General(通用类目录) │ ├── Cl

JavaFX横幅类游戏开发 教训 游戏贴图

上一节课,我们即将完成战旗Demo有了一个大概的了解.教训这,我们将学习绘制游戏地图. 由于JavaFX 2.2中添加了Canvas相关的功能,我们就能够使用Canvas来实现游戏绘制了. 游戏地图绘制主要用到GraphicsContext.drawImage方法. drawImage(Image image,double sx,double sy,double sw,double sh,double dx,double dy,double dw,double dh); 当中image 表示源图

iOS项目开发中的目录结构

目录结构: 1.AppDelegate 这个目录下放的是AppDelegate.h(.m)文件,是整个应用的入口文件,所以单独拿出来. 2.Models 这个目录下放一些与数据相关的Model文件  里面大概是这样: Models |- BaseModel.h |- BaseModel.m |- CollectionModel.h |- CollectionModel.m 3.Macro 这个目录下放了整个应用会用到的宏定义,里面大概是这样: Macro |- AppMacro.h |- Not

COC+RTS+MOR游戏开发 一(游戏特色分析,和实践)

本场比赛的临时名称 游戏特色(-):COC风格 ,塔防养成类游戏. 一款史诗般的战斗策略游戏.玩家须要建立村庄,成千上万的网友训练玩家的军队和战斗. 游戏中玩家须要不断的提高军队的作战实力.而且能够完毕一定的任务后创建部落.玩家也能够对各种武器进行升级  游戏涉及到的技术:UI类:可伸缩菜单.地图随爽指的缩放.平移,多点与单点触摸,弹出相关UIbox 逻辑类:建筑的新建.拖放.回收.属性(攻击特效,防护,生命值~) 角色的单个/多个控制(攻击,移动,死亡) A star 角色智能寻路(单个/