前言

从8月份開始。下定决心正式開始学习Unit3D啦。尽管自己写过两代端游引擎,被应用的项目也超过10个,Unreal Engine也搞过几年,只是做手游。哥确实还是个新手。Unity3D这个引擎我蛮喜欢的,乍看之下,不由得惊叹。这不就是我一直想搞的那套引擎嘛:整合的游戏开发工具,上层使用C#开发游戏逻辑。

。。

要是再支持LUA就好了。

:)
開始使用一个新的引擎,要学的东西太多了。所以打算写这一系列笔记。一来记录、分享。二来请Unity3D的高手指点。


要用Unity3D做项目,首先困扰我的就是这个项目文件夹结构的问题,主要有双方面:1是文件夹名称有什么特殊函数。2我想使用SVN做项目的版本号管理,Unity在设置上有什么讲究?查了一些资料。记录整理例如以下。


Unity3D的特殊文件夹名称


Unity预留了一些文件夹名称,这些文件夹有着特殊的含义。

比較重要的有:

  • Resources

    这个文件夹下的全部文件都会被打包到公布版本号中。程序能够通过文件路径来訪问它们。这个太实用了,像RPG游戏里面非常多策划编辑的数据都能够保存到这里。

    能够使用UnityEngine.Resources.Load()方法载入,相关的类还有TextAsset。

    具体的文档:http://docs.unity3d.com/Manual/LoadingResourcesatRuntime.html

  • Editor 

    在这里能够存放一些编辑器扩展脚本,这个文件夹里面的脚本能够使用namespace UnityEditor。

    对于RPG项目来说,常常有上百个怪物这样的编辑需求,假设每个都要在编辑器里面拖拖拉拉来创建Prefab,那岂不是非常累?能够写一个自己主动生成Prefab的脚本,在全部资源导入之后,自己主动创建Prefab供游戏执行时调用。

  • Plugins

    这里面就是放Native插件的,而引入的其它包不必要放在这里。

    它应该为目标平台建立子文件夹:"Plugins/Android"、"Plugins/iOS"等。

这些文件夹还涉及到脚本的编译顺序,具体可參见手冊:http://docs.unity3d.com/Manual/ScriptCompileOrderFolders.html
还有其它一些更全面的特殊文件夹名称列表,可參见WIKI:http://wiki.unity3d.com/index.php/Special_Folder_Names_in_your_Assets_Folder

好吧,关于引擎特殊文件夹名称的笔记就到这里。接下来要看看SVN版本控制问题。:)

版权声明:本文博主原创文章。博客,未经同意不得转载。

Unity3D-RPG项目实战(1):发动机的特殊文件夹的更多相关文章

  1. 项目工程的包package与文件夹的关系

    项目工程的包package与文件夹的关系: 1. 包名与文件夹是分层关系,包名只是一个字符串而已,包名.对应的是层级的文件夹. 如,com.Immoc.Access包,只是一个字符串.但他对应的win ...

  2. 关于不执行整个大项目而是执行其中一部分独立文件夹的时候的python运行方法

    这是项目的整个目录,如果是点击右键运行ic_kw_ks_func.py的话是会报ic_kw_ks_func.py里面import的那些其他路径下的类和函数找不到.而我们发现有个-m的python命令能 ...

  3. Scrapy框架——介绍、安装、命令行创建,启动、项目目录结构介绍、Spiders文件夹详解(包括去重规则)、Selectors解析页面、Items、pipelines(自定义pipeline)、下载中间件(Downloader Middleware)、爬虫中间件、信号

    一 介绍 Scrapy一个开源和协作的框架,其最初是为了页面抓取 (更确切来说, 网络抓取 )所设计的,使用它可以以快速.简单.可扩展的方式从网站中提取所需的数据.但目前Scrapy的用途十分广泛,可 ...

  4. 创建的项目如果没有src/main/resources文件夹,如何解决?

    这是刚创建的一个maven项目,由此可以看见,项目并没有存放配置文件的src/main/resources文件夹? 解决方案: (1)选中项目,右键单击,如图所示选择:Build Path --> ...

  5. Unity3d - RPG项目学习笔记(一)

    通过NGUI和工程素材,学习泰课项目——黑暗之光. 现阶段心得整理: 一.开始界面 开始界面显示顺序为:①白幕渐隐:②镜头拉近:③标题渐显:④按键响应. 1.1 白幕渐隐 NGUI是一个非常强大的插件 ...

  6. 【java项目实战】dom4j解析xml文件,连接Oracle数据库

    简单介绍 dom4j是由dom4j.org出品的一个开源XML解析包.这句话太官方.我们还是看一下官方给出的解释.例如以下图: dom4j是一个易于使用的.开源的,用于解析XML,XPath和XSLT ...

  7. 【SSH网上商城项目实战13】Struts2实现文件上传功能

    转自:https://blog.csdn.net/eson_15/article/details/51366384 上一节我们做完了添加和更新商品的功能,这两个部分里有涉及到商品图片的上传,并没有详细 ...

  8. maven 项目中没有src/test/java文件夹

    项目右键->buildPath configure Build Path->点击选项卡Libraries->选中JRE System Library->点击edit->选 ...

  9. SVN 中项目名字全是红色 和 文件夹图标上没标记绿钩解决办法

             没有绿色标记卸载Tortoise 小乌龟重装 ! 红色名字是 原来idea当前的project用了版本控制器, 那么建到这个project下面的所有项目就都是加入到版本控制里面的, ...

随机推荐

  1. 【十一年】注入框架RoboGuice采用:(Your First Injection into a Custom View class)

    上一篇我们简单的介绍了一下RoboGuice的使用([十]注入框架RoboGuice使用:(Your First Testcase)),今天我们来看下自己定义View的注入(Custom View). ...

  2. C++ 在字符串中插入子串+推断字符串是否由空格组成

    // Example3.cpp : 定义控制台应用程序的入口点. #include "StdAfx.h" #include <string> #include < ...

  3. wamp在win7下64位系统memcache/memcached安装教程

    折腾了1个多小时,终于搞定.操作系统时64位的,php5.3.13 类似于上一篇的xdebug安装教程~~ memcache和memcached的区别  在自己的新程序中打算全面应用memcached ...

  4. ecshop网站建设手机版wap版出现lib.debug.php on line 303

    首先我们可以看到页面中提示\includes\lib.debug.php on line 303这样的错误,那么我们首先应该找到这个文件的低303行.代码是: $pa = &new Print ...

  5. 修改linux系统时间、rtc时间以及时间同步

    修改linux的系统时间用date -s [MMDDhhmm[[CC]YY][.ss]] 但是系统重启就会从新和硬件时钟同步. 要想永久修改系统时间,就需要如下命令:hwclock hwclock - ...

  6. Linux从零到高手的进阶心得(转)

    从2006年毕业至今,从事IT行业已经接近8个年头. 一路走来有很多心路历程和技术心得都写在了51CTO的博客中,不少文字现在看来已显稚嫩,但是这正是我真实的成长之路.这八年,从最基础的网络管理员开 ...

  7. Windows Phone开发(23):启动器与选择器之CameraCaptureTask和PhotoChooserTask

    原文:Windows Phone开发(23):启动器与选择器之CameraCaptureTask和PhotoChooserTask 这两个组件都属于选择器,而且它们也有很多相似的地方,最明显的上一点, ...

  8. Ext JS4百强应用: 做可编辑的,可checked的treegrid--第11强

    做一个可编辑的,可checked的treegrid,代码相当简洁: 请看代码: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN&quo ...

  9. Windows 7下一个:该应用程序不能正常启动(0xc0150002)

             在新系统中正确安装QQ2010无法执行,同一时候安装的TM2009也无法执行. 相同显示为"应用程序无法正常启动(0xc0150002). 请单击"确定" ...

  10. android下获取无线wif信号、ssid、MAC等操作类

    一个android下获取无线wif信号.ssid.MAC等操作的类. WifiAdmin.java package com.afu; import java.util.List; import and ...