unity导出android工程无法打开工程是怎么回事

Unity3D安装设置(18)
在打开一个工程的情况下,去新建一个工程始终无反应。
解决办法:
1.EDIT-&Preferrences-&General-&Load previous project on Startup,把这个勾去掉
2.重启UNITY就可以新建了
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:440780次
积分:7357
积分:7357
排名:第3517名
原创:222篇
转载:404篇
(7)(37)(55)(13)(17)(4)(20)(16)(1)(4)(10)(2)(15)(1)(13)(2)(3)(8)(9)(11)(6)(1)(48)(24)(4)(7)(2)(5)(7)(16)(6)(2)(2)(20)(43)(185)程序写累了,就来玩玩酷跑小游戏吧,嘿嘿。
雨松MOMO送你一首歌曲,嘿嘿。
Unity3D研究院之程序工程和美术工程
Unity3D研究院之程序工程和美术工程
围观18227次
编辑日期: 字体:
做项目的时候一般会在SVN上保存两个工程,一个是客户端工程、一个是美术工程。我先说说我是怎么样做的, 最后我再说我为什么要这样做。
1.保证资源不出问题
如果给了美术或者策划上传资源的权限,那么很有可能他们上传了错误的资源,或者它们不小心上传了错误的资源,那么程序一更新就报错了。。有些错误往往找到最后都是资源的问题,所以我们要尽量避免出现资源错误的情况。我举个典型的例子,比如每个模型都有一个动画叫”Attack” ,那么美术写错了某一个模型的动画,一般游戏少说也有100多个模型,资源一起提交以后鬼知道那个模型的动画写错了。我现在的做法是,在美术SVN工程中,做了一个按钮专门用来检查资源,美术当把模型、动画、贴图制作完成以后,先运行一下查错工具,如果没有错误然后在上传SVN。最好不要让美术手动做Prefab,只让他们做最原始的模型、动画、贴图、根据项目的需求写工具来生成Prefab,总之就是要保证美术上传的资源一定要正确的。
客户端工程找一个合适的时间来同步美术工程,两个工程的目录结构要完全一样。同步工程的操作让策划来完成就可以了,因为策划不仅要同步美术工程,他还需要同步数据表格。以我对策划的了解他们写错表格的可能性非常大, 举个典型的例子,比如掉落表中有一个装备的掉落,它指向装备表中的主键是100的这件装备,如果装备表中恰巧策划忘配 主键为100的这个装备。那么程序获得到这件掉落的时候必然就报错了。。。。程序里面很多问题找到最后都是因为策划表格写错了字段引起的。。所以作为程序我们一样要给策划写检查错误的工具。
写到这里我要先声明一下,我并没有对美术和策划另眼相看。只是我觉得很多细节的东西,人脑操作肯定没有电脑操作安全,就拿表格来说吧如果是我我肯定也会写错的。既然能用工具来代替人脑来检查这是多么好的一件事情啊。 至于检查工具怎么写,这得根据你的项目而定,总之我们做程序就是要用工具来避免美术和策划犯错误。
2.常用检查工具
首先如果你的场景同步过来了很多Scene文件,需要在BuildSetting里面手动的Add Current进去,这样做很麻烦,不要手动,我们要自动嘿嘿。
创建一个文件夹命名Editor,无论它的目录在哪里都可以主要叫Editor就行,把如下代码放到Editor文件夹下。
123456789101112131415161718192021222324252627282930313233343536
using UnityEngine;using System.Collections;using UnityEditor;using System.Collections.Generic;using System.IO;public class Easy : Editor {& [MenuItem("Tools/同步所有场景到SceneSetting文件")] static void CheckSceneSetting() {
List&string& dirs = new List&string&();
GetDirs(Application.dataPath,ref dirs);
EditorBuildSettingsScene[] newSettings = new EditorBuildSettingsScene[dirs.Count];
for(int i =0; i& newSettings.Length;i++)
newSettings[i] = new EditorBuildSettingsScene(dirs[i],true);
EditorBuildSettings.scenes = newSettings;
EditorApplication.SaveAssets(); } private static void GetDirs(string dirPath, ref List&string& dirs) {
foreach (string path in Directory.GetFiles(dirPath))
if(System.IO.Path.GetExtension(path) == ".unity")
dirs.Add(path.Substring(path.IndexOf("Assets/")));
if (Directory.GetDirectories(dirPath).Length & 0)
foreach (string path in Directory.GetDirectories(dirPath))
GetDirs(path,ref dirs);
然后点击Tool/同步所有场景到SceneSetting文件 ,程序会自动将场景中的所有.unity 的Scene文件同步在BuildSetting中。
Unity提供了导出的功能,一般是选择一个需要导出的场景或者Prefab,然后选择Export Package.. 。我个人觉得这个东西非常难用,因为如果你的Prefab上面绑定有脚本,当你导出的时候Unity会自动关联上所有脚本,不管你用不用。。太恐怖了。。。。。 一大堆导出的文件。
也不是不可以用,有一个比较讨巧的方法。首先选择Prefab,然后右键Select Dependencies,这样就可以自动关联Prefab所有的文件。
关联好以后,在右键选择ExportPackage… 如下图所示,记住一定不要勾选Include dependencies 。这样因为我的Prefab只绑定了一个脚本,所以图中这里只会关联绑定的哪个脚本,别的脚步就不会被关联的。。
但是我觉得最好的最好还是自己写一个工具,嘿嘿。
12345678910111213
[MenuItem("Assets/new Export Assets")] static void Build() {
if(Selection.objects == null ) return;
List&string& paths = new List&string& ();
foreach(UnityEngine.Object o in Selection.objects){
paths.Add(AssetDatabase.GetAssetPath(o));
AssetDatabase.ExportPackage(paths.ToArray(), "Assets/UnityPackage/"+Selection.objects[0].name+"andxxx.unitypackage", ExportPackageOptions.IncludeDependencies);
AssetDatabase.Refresh();
Debug.Log("Build all Done!"); }
选择一个或多个Prefab 或者Scene文件,然后右键选择new Export Assets ,创建一个UnityPackage的文件夹, 这样导出的.unitypackage 就会放在里面啦。
导出出以后,然后双击装在客户端工程里面就可以了。
回到文章的开篇,为什么要用两个工程。如果用一个工程美术和策划必须很小心很小心,比如美术要做一个很庞大的场景,可能要做一周左右,如果在一个工程下,美术没做完是不应该上传的(可能程序就会出错),但是如果不上传SVN资源又不小心弄丢了几天的工作不就白费了么。而且一旦给了美术程序的权限,那么Unity里面那么多设置的选项,美术一不小心改了,有可能就是一个bug。
如果使用两个工程,美术可以每天都上传保证自己的工作,等整个场景都做完以后,使用检查错误的工具检查发现没有错误,此时在同步在客户端的工程中。 这样可以找一个合适的同步资源的时间点,既可以保证程序的正确,也可以保证资源的正确。
如果两个工程的目录,命名都严格按照规范,那么此法是必然可行的。
本文固定链接:
转载请注明:
雨松MOMO提醒您:亲,如果您觉得本文不错,快快将这篇文章分享出去吧 。另外请点击网站顶部彩色广告或者捐赠支持本站发展,谢谢!
作者:雨松MOMO
专注移动互联网,Unity3D游戏开发
如果您愿意花10块钱请我喝一杯咖啡的话,请用手机扫描二维码即可通过支付宝直接向我捐款哦。
您可能还会对这些文章感兴趣!扫一扫,访问微社区
后使用快捷导航没有帐号?
签到成功!您今天第{todayrank}个签到,签到排名竞争激烈,记得每天都来签到哦!已连续签到:{constant}天,累计签到:{days}天
当前位置: &
_____________________________________________________________________________________________________________
问答求助版块规则:
  1、问题尽量描述清楚
& && &2、代码要放在代码块里
& && &3、附件最好放到云盘,然后把链接放到TXT文档里,上传TXT文档。【最好没有附件,你懂得】
& && &4、本版块回复不得无意义,如:顶、呵呵、不错......以及擦边!【真的会扣分的哦】严重者,封IP!
& && &5、问题得到解决,请选择最佳答案。
& && &6、若问题是你自己解决了,可以联系管理员,返还蛮牛币,写下你的答案,另有蛮牛币奖赏。
_____________________________________________________________________________________________________________
查看: 2886|回复: 6
Unity项目打不开了怎么回事。
255/150排名<font color="#FF昨日变化30主题帖子积分
初来乍到, 积分 55, 距离下一级还需 95 积分
初来乍到, 积分 55, 距离下一级还需 95 积分
在线时间39 小时
已经一个小时了,项目一直卡在如图的地方,无法打开,系统重启过,Unity重新装过,工程检查了,也没有,有知道是怎么回事的吗?求助。(Unity版本是4.6.4)
(456.91 KB, 下载次数: 6)
15:08 上传
每日推荐:
4344/500排名<font color="#FF昨日变化5主题帖子积分
四处流浪, 积分 344, 距离下一级还需 156 积分
四处流浪, 积分 344, 距离下一级还需 156 积分
蛮牛币1930
在线时间127 小时
项目是不是比较大,如果是,那就只有等着。
我们这有个3G左右的工程文件,第一次打开需要半个小时
每日推荐:
255/150排名<font color="#FF昨日变化30主题帖子积分
初来乍到, 积分 55, 距离下一级还需 95 积分
初来乍到, 积分 55, 距离下一级还需 95 积分
在线时间39 小时
项目是不是比较大,如果是,那就只有等着。
我们这有个3G左右的工程文件,第一次打开需要半个小时 ...
应该不是项目的问题,之前平时很快就能打开了,我新建的Demo项目也打不开。
每日推荐:
61368/1500排名<font color="#FF昨日变化1主题帖子积分
蛮牛粉丝, 积分 1368, 距离下一级还需 132 积分
蛮牛粉丝, 积分 1368, 距离下一级还需 132 积分
蛮牛币2452
在线时间445 小时
是否版本不同,低版本的unity打开高版本会出现这种问题
每日推荐:
3275/300排名<font color="#FF昨日变化5主题帖子积分
偶尔光临, 积分 275, 距离下一级还需 25 积分
偶尔光临, 积分 275, 距离下一级还需 25 积分
在线时间84 小时
删除library试试
每日推荐:
9排名<font color="#FF昨日变化2主题帖子积分
蛮牛币9400
在线时间849 小时
除了Assets&&其他全部删掉是、
再在Assets 里面随便打开某个场景
就可以解决问题
每日推荐:
72597/5000排名<font color="#FF昨日变化1主题帖子积分
日久生情, 积分 2597, 距离下一级还需 2403 积分
日久生情, 积分 2597, 距离下一级还需 2403 积分
蛮牛币10155
在线时间993 小时
粗略判断是unity环境出问题了,之所以出问题是工程导致,
判断理由:Unity是老版本。
建议:& && &重装系统,删除unity安装目录(假如不在C盘),装unity4.6.3(这个貌似在4x版本里最稳定),新建工程,打开工程。 应该是没问题的。
& && && & 然后打开正式工程,ok就算了,不ok那就是版本因素造成的。
注意:任何地方,一定不要看见中文,老版本对中文支持不好。
每日推荐:
社区QQ达人
使用QQ帐号登录论坛的用户
游戏蛮牛给予质量较高、影响力较大的unity相关技术开发者的荣誉称号
认证开发者
经过游戏蛮牛认证的独立开发者扫一扫,访问微社区
后使用快捷导航没有帐号?
签到成功!您今天第{todayrank}个签到,签到排名竞争激烈,记得每天都来签到哦!已连续签到:{constant}天,累计签到:{days}天
当前位置: &
查看: 525|回复: 0
什么unity 启动工程
本帖为抢楼帖,欢迎抢楼!&
61474/1500排名<font color="#FF昨日变化5主题帖子积分
蛮牛粉丝, 积分 1474, 距离下一级还需 26 积分
蛮牛粉丝, 积分 1474, 距离下一级还需 26 积分
蛮牛币1357
在线时间57 小时
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
才可以下载或查看,没有帐号?
从iOS应用中,启动一个Unity App
Start a Unity app from inside a native iOS app
1. 首先,从Unity中将Unity项目导出Xcode工程。(因为Unity生成的工程目录比较麻烦,没有研究,所以从Unity生成工程的基础上进行开发)
2. 生成的Xcode工程包含以下文件。
  其中main.mm文件,是项目的入口文件。
  从代码来看。Unity是使用红色框中的文件(AppController)启动,没有用到蓝色框中的文件。所以我们可以直接使用(iPhone_targer2AppDelegate)
3. 修改入口文件,main.mm
  将启动类,由“AppController”改为“NSStringFromClass([iPhone_target2AppDelegate class])”
NSAutoreleasePool * pool = [NSAutoreleasePool new];
//&&UIApplicationMain(argc, argv, nil, @&AppController&);
UIApplicationMain(argc, argv, nil,&&NSStringFromClass([iPhone_target2AppDelegate class]));
[pool release];
4. 在“iPhone_target2AppDelegate”中,就可以正常的使用我们iOS项目了。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
& & self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
& & [self.window setRootViewController:[[MyViewController alloc] initWithNibName:@&MyViewController& bundle:nil]];
& & [self.window makeKeyAndVisible];
& & return YES;
5. 接下来就是本文的重点了,怎么启动Unity项目呢。
[[[AppController alloc] init] startUnity:[UIApplication sharedApplication]];
6. 从Unity项目退出,返回iOS项目。在AppController.mm中加入对Unity的响应,代码如下
  这里使用了Unity和Object-C之间的代码交互。& && && && && &float doExitSelector()
& & {& &/*
& && && &// 使用这个代码会导致应用Crash
& && && &// ReleaseViewHierarchy();
& && && &// UnityCleanup();
& && && &*/
& && &&&// 所以在这里,使用以下方法:讲Unity暂停,隐藏项目,将iOS项目Window显示& && &&&
& && &&&UnityPause(true);
& && &&&_didResignActive = YES;
& && &&&Profiler_UninitProfiler();
& && &&&[[[UnityGetMainWindow() rootViewController] view] setHidden:YES];
& && &&&[[[iPhone_target2AppDelegate shareApplicationDelegate] window] makeKeyAndVisible];
& && &&&return 0.0f;
7. 最后注意一点,startUnity方法只能使用一次。多次调用同样会导致应用Crash,并报错:“should not be reached at domain.c”。
  如果需要在Unity和iOS之间多次切换的话,可以在AppController.mm中加入以下方法
- (void)restartUnity {
& & [[[UnityGetMainWindow() rootViewController] view] setHidden:NO];
& & [UnityGetMainWindow() makeKeyAndVisible];
& & if (_didResignActive)
& && &&&UnityPause(false);
& & _didResignActive = NO;
  在需要的地方调用:
- (void)onClickTest:(id)sender {
& & if (appController) {
& && &&&[appController restartUnity];
& & }else {
& && &&&appController = [[AppController alloc] init];
& && &&&[appController startUnity:[UIApplication sharedApplication]];
unity启动不了;unity 多个工程;unity无法正常启动;unity 无法启动;unity 启动;unity 启动慢;怎么打开unity工程;unity 工程;unity自带的工程
每日推荐:今天打开工程整个人都傻啦,所有的脚本都无法使用【unity3d吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:81,543贴子:
今天打开工程整个人都傻啦,所有的脚本都无法使用收藏
首先我的脚本昨天还好好的,今天全部丢失,重新挂上去,会提示脚本名和类名不同,可我什么都没动啊,脚本没问题,求大神支招
你倒是发图和工程阿,光说怎么解决
点亮12星座印记,
unity的命名空间被你动了
登录百度帐号推荐应用}

我要回帖

更多关于 unity3d开发工程师 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信