用Unity做App是否可行?
一般情况下我是拒绝的,因为在外行看来很简单的事情,在我们看来实际上算IT不同方向的技术,说“隔行如隔山”一点都不过分。
在知乎上也看到用游戏引擎做App是否可信的问题,但是现在那个问题由于不可描述的愿意已经无法回答。大部分的回答都给予了否定,主要原因集中在游戏引擎和App框架在渲染方面截然不同,一个是实时渲染,一个是脏渲染(也就是有改动的情况下重新刷新,由业务驱动)。我觉得这里面可以说道的地方还是挺多的,就开篇文章聊上一聊。
有这种困惑的人可能有以下几个特点:
1.大多数是和我一样的游戏开发人员,而且是游戏客户端人员。我们的技术主要集中在游戏引擎上,用起来当然轻车熟路;
2.另一部分人应该是App开发人员,并且是单端的App开发人员,比如iOS或者android,而且有这种需求估计是需要单独接一些私活,或者想创业。想利用游戏引擎的跨平台特性,解决劳动力有限的问题(Demo之王Unity可不是浪得虚名的);
3.不明真想群众想通吃App,游戏开发;
抛开不明真相群众(=゚ω゚)ノ,再看看这个问题,我还是保持乐观态度,但是需要理性权衡下利弊。
首先,原生开发的优势很明显:
1.平台API无缝调用;
2.性能优良,包大小合适;
3.开发流程明朗,有坑也基本爬完了;
缺点当然不是没有:
1.独立开发要做到全平台,虽然有诸如React Native,cordova,Qt等等解决方案,但是谁用谁知道,我没怎么用过,在这里只说一句:学习成本还是有的,其他不多做评价;
2.对于个人开发,同时维护多平台,精力有限
其次,再来看看用游戏引擎开发的优势:
1.跨平台性能久经考验,基本满足一端编译多端发布;
2.工具流稳定,做游戏没工具流真会出人命;
缺点很多,不少还是致命的:
1.平台API很多需要原生自己实现处理一下;
2.性能捉急,毕竟是逐帧渲染,一不小心做成了暖手宝;
3.包大小客观,不说别家,Unity打包个Hello World都要小10M;
4.有门槛,游戏引擎也不是说用就能用的溜的;
看我叨逼叨这么多,各位也是烦了,你倒是给个痛快,是行?还是不行?
其实大家都是成年人,哪里来的那么多的非黑即白。
先抛出利益相关:我用Unity制作的App赚过一些钱(数目不表)
针对利益相关给出以下可行性分析:
1.对游戏引擎有一定的把控能力。说到底游戏是App的一个子集,游戏也是App其中一种,只不过游戏是一种特殊的,重型的App,它集中处理图形,渲染相关的部分。看到一句话觉得很有道理:“用游戏引擎做游戏就是杀鸡用牛刀。”我认为这种表述没有问题;
2.开发工具流合理。我当时决定做这个App是因为目前的开发流程,我能在两到三天内作出一个多页面模式的App,这一点很重要,学习原声开发双端,可能需要两三个月吧。至于我的工具流是什么,未来的博客里也会慢慢介绍,最近真的忙不过来(◐‿◑);
3.需要制作的App对包大小,性能,有一定的宽容度,用户很少情况下会重度使用App,用游戏引擎开发问题就不大。现在手机在硬件方面已经表现出过剩的情况,主要短板就在电池上,过分纠结性能,我都已经做完了,那边还在调研,也是得不偿失;
4.如果App中需要用到图形渲染已经相关方面,用游戏引擎开发合适,例如3D展示类App;
没有最好的技术选型,就像没有最好的语言一样,归根结底语言,引擎还是我们开发人员手中的工具,如何用,什么时候用还是取决于我们自己,越限制,天花板来的越早。
目前用Unity开发的App最终打包的Apk大小这17M左右(核心功能),将来扩展,应该能控制这20M以内。性能instruments在红线边缘,差不多到Unity下限极值了。
有这方面经验的朋友欢迎交流,共勉之。
APP游戏开发技术有哪些需要了解的
如果是做3D游戏的开发,要用Unity3D引擎。另外Unity3D更适合初学者或者没有什么编程基础的人。总之,手游APP游戏开发需要用到的技术就是app开发技术以及游戏开发技术,在这个基础上就可以做游戏app开发了。原文地址:http:\/\/www.adinnet.cn\/bloginfo\/2017_06\/blog_1920.html ...
u3d和ue4有什么区别?
一、偏向不同 1、u3d:Unity3D适合开发手游,UE4更适合对于动画,美术感兴趣的设计师。2、ue4:Unity3D侧重轻量级的开发,偏向于移动端,所以在手游方面的开发是非常强大的,现在市面上有很多手游都是基于Unity3D开发的。二、优势不同 1、u3d:这种标准将使3D更容易结合到网络浏览器、手机浏览器等其它...
学unity能找什么工作
随着网络快速发展和不断成熟,我国游戏产业呈现快速稳定发展的良好趋势,拥有庞大的群众基础,与此同时,亦需要一大批游戏研发人员,助兴游戏产业开发。并且Unity不仅仅只是局限于游戏开发领域。虚拟现实,工业、医疗、App都有越来越多的厂商开始或正在使用,大部分是代替了现实去做虚拟化的模拟演练。因此即使...
Unity工程打包到iOS平台并上传app Store流程
公司需要将Unity工程打包上架,在这里记录一下流程供参考。总体流程:一.打开unity工程,点击运行,查看游戏图片显示等功能是否正常.二.导出该工程从xcode打开.三.在xcode上进行相关文件的添加.四.相关参数的编辑.五.在手机上测试无误后生成ipa文件.六.将生成的ipa文件上传到 itunes connect 提交审核.详细...
unity3d手机游戏开发有什么优势?
1、对于移动平台来说,unity3D编程周期短,模块丰富,适合小型开发团队 随着手游市场的崛起,大量新生的开发团队开始着手研发手机游戏,在游戏引擎的选择上,某游戏团队负责人认为unity3D有着很大的优势:“如果采用C++基础语言或者以此为基础的引擎来编写游戏,整个开发周期会很长,小团队无法承受如此漫长周期...
用unity开发ios程序,必须要用到xcode吗
5.点击Other Settings以展开该面板,并查找Bundle Identifier字段。为应用输入有效的软件包名称(如com.mycompany.cardboarddemo),该名称须遵循Java软件包和\/或.Net 命名空间的命名规则。该名称格式通常为: com.<yourcompany>.<appname> 6.点击Build。系统会提示您保存名称,并在[您的 Unity 项目]\/[...
unity导出安卓应用设置图标
1、首先,保存Scenes,点击BuidSettings,点击BuidSettings。2、其次,点击Android,并点击SwitchPlatform,然后点击PlayerSettings。3、最后,点击ResolutionandPresentation第二项Icon可以设置app的图标,点击Build,定导出的目录并给apk命名后点击保存,等待一分钟后就能导出安卓应用设置图标。
安卓app开发框架哪些csdn
5.PhoneGap\/Cordova:使用HTML、CSS、JavaScript构建跨平台应用的开发框架。在CSDN上搜索"PhoneGap"或"Cordova"可以找到相关的文章和教程。6.Unity3D:主要用于游戏开发,但也可用于开发3D交互式应用。在CSDN上搜索"Unity3D"可以找到与安卓App开发相关的资源。7.JavaFX:用于构建富客户端应用程序的框架,也...
如何配置unity3d的安卓手机开发环境
使用zipalign工具,会提升我们的APP性能,降低内存使用率,降低手机发热程度,这对于我们的由小米手机厂商开发的红米NOTE5A手机来说是“至关重要”的。使用cmd命令符进行zipalign优化如图3所示。图3 zipalign优化 Fig.3 the optimization of zipalign 4. Android SDK接口的设置及APK的生成 手机屏幕尺寸在主视...
unity android快速设置app icon
一:需求 unity 和 android 的设置app icon 的方法太麻烦 需要简化操作 最好拖入即可 二:实现 1.我们在在Plugins\/Android 下面 创建res文件夹 2.我们模仿 unity 打包是自动产生的 icon 文件夹 复制到res目录下 3.创建好了后 我们把对应的icon 放入即可 ic_launcher 是方图标 ic_launcher_round...
潜疤芦芛: Unity是由Unity Technologies开发的一个让玩家轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎.但是也可以做类似交互性的、虚拟现实的app,现在网上有很多制作app的开发网站,比如应用之星等等,unity的主要功能还是做游戏比较多.app目前也很少有3d的吧
路桥区19615386661: 有没有人用Unity3D不是做游戏而是做App的 - ?
潜疤芦芛: 有啊,可以做虚拟现实,可以做3d应用.做这些东西的时候,需要的只是unity3d的渲染模块,物理模块,其他xx模块都不大需要而已.
路桥区19615386661: unity能开发软件吗 - ?
潜疤芦芛: 能,但是不适合,没有专用的工具,有些细节会觉得别扭,而且不太容易做到产品级.
路桥区19615386661: 新人由衷的问一个问题,unity是否能开发安卓app应用(非游戏)?
潜疤芦芛: 这是何必呢,android开发不更简单吗,如果只是app的话原生的unity ui开发也没可视编辑器
路桥区19615386661: Unity3D可以用来制作手机应用吗 - ?
潜疤芦芛: 有一些特殊的功能实现不了,也要写android插件.你也说了它只是一个游戏引擎.用来做应用根本就不合适.
路桥区19615386661: 用Unity开发跨平台的非游戏应用有什么利弊 - ?
潜疤芦芛: 这个得具体看,是什么平台.就以安卓应用为例.优点:布局和组件便捷,能快速出版本.缺点:性能消耗比原生开发平台高,最后打包出来的大小比较大,存在比较多的冗余代码.总结一下:看你要怎么样做,想要快点出东西,用unity还是不错的;如果对运行性能、包的大小等等有要求,可以考虑用原生平台开发.
路桥区19615386661: unity3d制作手机应用 - ?
潜疤芦芛: 可以,unity3d 的2D能力不输于其他专门的2D引擎.具体的手机功能需要单独写插件,这个对别的也是一样.缺点是无法即时更新脚本,也就是再编译能力不足,不过这个事情见仁见智.
路桥区19615386661: unity能让它当作个制作桌面软件的软件吗 - ?
潜疤芦芛: 可以也不可以.桌面软件做好用原生微软的.net或者C++来做. 正好这两块我都做过. unity的定位是游戏引擎.不是桌面应用.
路桥区19615386661: unity开发ios游戏怎么样 - ?
潜疤芦芛: 1、首先unity3d是一款3d引擎,目前主要用于做游戏(包括2d和3d),还有用于做虚拟现实(或者虚拟现实增强),相比于其他的游戏引擎,有着跨平台(支持非常多的平台)、易上手易掌握、编辑器器可扩展型极强的特点.所以如果想从事于...
路桥区19615386661: Unity 3D 能用来开发跨平台的应用吗 - ?
潜疤芦芛: 当然可以了,这是untiy3d最大的优势之一,基本上各大流行平台全部囊括