2017-09-27 16:47:47 sinat_36806665 阅读数 2971
  • C#ForUnity游戏开发系列教程--入门篇

    《C#ForUnity系列教学课程》是面向0基础的免费课程,共分为入门篇、基础篇、提高篇和篇四个系列。大家通过对课程的系统学习,学成之后就可以利用Unity进行独立开发出第一人称射击游戏、2D游戏、塔防游戏、生存冒险游戏等。整个学习的过程就是在不断的开发游戏,在实战中学习,在实战中提高,可以更加的出效果,让学习者节省大量的时间。

    12301 人正在学习 去看看 杨显峰

         大家好,这是我第一次写记录型博客,有不足之处,望大家给予帮助。

         我写的这一系列文章主要内容是将自己在unity方面开发的经验和建议以及心得分享给大家,让大家在开发的路途中不再迷失方向。虽然我自己也是在网上自学的,但是我还是觉得有必要将自己学习的方法和历程分享给大家。一个可以帮助大家,另一方面也可以帮助我自己。因为毕竟一人的智慧不如大家的智慧。这一系列文章还有许多的案例分享,这些都是我自己研究和在网上学习的成果。有错误欢迎大家指出,我也会第一时间更改。先说说我是怎么接触的unity吧。大家都知道,去年2016年是VR元年。由此我关注上了虚拟现实这一方面,当时还不知道虚拟现实究竟是如何开发,据当时的了解是先要将三维模型制作出来然后再导入相关的引擎中去做最终的虚拟现实效果,通过朋友们的了解,我第一次接触了Unity这款软件。当时接触的时候只知道它是游戏引擎,还不知道它可以制作虚拟现实。后来,unity迎来了重大更新——unity5.0,也正是从这个版本开始,untiy支持了开发虚拟现实项目。于是,我在老师的带领下,进入了虚拟现实的开发中。我门学的是三维动画,所以在VR项目的第一个环节里我们并不吃力,但当到了引擎方面的工作的时候就完全不可以了。于是,我门选了一个人来专门学习引擎这块。于是,我就是那个研究引擎的成员。然而,当我真正开始学习unity开始,才发现这个软件蕴藏着巨大的潜力。我本人非常感兴趣,于是,我用了一个月的时间从不会到已经可以熟练使用。但是这个软件学到最后,则就完全是代码的天下了。于是乎,我毅然决然的开始了学习编程。你们知道,一个艺术生学习和专业不相关的东西有多么的困难吗?我几次想到要放弃,可是我的兴趣还是支撑着我继续学习下去.......终于,经过了3个月,学习了unity支持的C#语言的基础。但是,我知道这是远远不够的,所以,直到现在,我一直没有停下学习编程的理想。也一直没有停下unity的开发道路。好了,废话不多说了,开始我们的《unity独立开发之路》第一期吧。

第一期,我们主要讲的是unity引擎的下载,以及各个面板的认识。

一:引擎的下载

强烈建议大家从官网上去下载,一个是安全,另一个原因就是完整。

下载地址:https://unity3d.com/cn/get-unity/download/archive  打开链接之后,出现如下界面:


点击上方的获取unity即可跳转到如下界面:


根据个人需要下载对应版本。如果你是自学,初学者,个人版完全可以胜任了。

安装过程这里就不详细说了,根据向导就可以安装好了。最后,你需要在官网或者在之后的软件打开界面注册一个unity账号,然后就可以使用了。

然后就到了我们的建立项目步骤了。首先,我们运行软件:


二:引擎的项目创建

这就是软件的打开页面,你可以将注册的账号登录unity,也可以选择Work offline进行离线工作。接着,我们将进入以下界面:


我们选择新建项目:选择好项目名称和保存位置后,点击Creat创建。


三:引擎的面板认识

好了,经过以上步骤,我们终于进入了软件的工作界面了。


好了,这一期我们就到这里吧。请打家下载好软件,并建立好项目工程。在下一期,我们将进行引擎的基本操作和建立物体的教学。好了,我们下一期再见!最后,附上下一期将要实现的效果。


好了,我们下期再见啦!如果有需要软件资源的请加我QQ:1589797819   说明你是在CSDN上看到的。

2017-02-25 23:43:19 q1105412681 阅读数 3893
  • C#ForUnity游戏开发系列教程--入门篇

    《C#ForUnity系列教学课程》是面向0基础的免费课程,共分为入门篇、基础篇、提高篇和篇四个系列。大家通过对课程的系统学习,学成之后就可以利用Unity进行独立开发出第一人称射击游戏、2D游戏、塔防游戏、生存冒险游戏等。整个学习的过程就是在不断的开发游戏,在实战中学习,在实战中提高,可以更加的出效果,让学习者节省大量的时间。

    12301 人正在学习 去看看 杨显峰

这周是我学习unity的第二周

这周我原本的计划是搭建起一个视角如LOL这样的摄像头显示,可以通过鼠标和键盘进行移动。但是我并没有架起来,我把一切都想的太简单了。我发现我要学习的东西真的太多太多了。比如说,我不清楚摄像头这个对象有什么属性,不清楚有什么方法,这样我应该如果去做我想要的功能呢。我发现,在it行业,任何一门技术,最重要的还是基础。没学会走路,怎么能奔跑呢?因此我下载了一本《Unity3D从入门到精通》,每天下班花40-90分钟时间看,看了四天,看了有一半了,其中很多东西是跳着看的,毕竟不少篇幅是关于3D模型制作的,美术方面的事情。我是要把精力放到程序上的,所以,模型尽可能简单就好,但是也知道模型的一些原理,比如说:为了减少模型对性能的消耗,要尽可能减少模型的面数。这些原理还是要了解的。前面那一半,我有认真细读大概只有三分之一左右。

本人目前也是在一家游戏公司工作,所以也会借助在公司中的一些方法来帮自己完成开发。其实开发游戏基本上就三样:美术、策划、程序,还有一个就是音乐,音乐这个暂且不谈,可以外包或自己调配(又要自学多一门技术)。

独立开发的几个要素:

【一】最基本的要会程序:不会编程怎么能做出游戏呢?

我选择unity3d作为游戏引擎,所以技术方面主要是在JavaScript和C#上,我决定两个都会去用,主要还是用C#吧,毕竟本比较喜欢强类型语言,并且C#对象操作和java很像。本人以前是学过java的,安卓和tomcat都有用过,对java算是比较熟悉的。但是JavaScript也不弱,做过HTML5的游戏,必然少不了用到JavaScript,而且现在工作中也用到。另外,游戏后台的话,我可能会尽量考虑性能,所以应该会用C/C++去做。不过目前还没有把这个游戏做成网络游戏的打算,只是一些弱交互的网络(排行榜、社交),所以可能会用HTTP的方式来实现也不一定。这个问题以后再去考量

【二】最重要的策划:一个游戏好不好玩,就是看策划的如何。趣味、扩展、玩法、创新等,这些都是靠策划出来的。

我现在每周都会写一下这周的总结以及下周的任务,其实最好是下两周的任务,因为有时候任务可能会变化,或者突然心血来潮,两天把一周的任务完成了,所以制定周计划时,应该制定两周的计划。当然,计划不能天马行空,要按照自己个人的时间和能力来决定。照我目前的情况,周一到周五,每天晚上大概是二十二点十五分左右开始有空,可以一直忙到二十三点四十五分左右,这样周一到周五,每天有一个半小时,加起来就7.5小时,按一天来算(工作效率没一天高),周六下班后再吃完饭、大概是7点左右有空,这段时间主要用来在steam上找游戏、写策划、写博客,所以这天的时间不算是工作内的。周日就有空,按工作8小时来计算。那么,我每周大概就是可以勉强凑到两天的工作日。所以我每周的计划可以根据两天的工作日来衡量。

【三】关乎游戏质量的美术:好的UI和模型,能使一个游戏变得高大上起来。

目前,在美术方面,本人只会使用Phostshop的一些简单功能。不会任何3D模型制作,但是我的游戏必须是制作成3D的,所以本人必须要去找并学一个简单的3D模型制作软件。另外,如果可以,本想会考虑外包美术这一块,或者找一些业余爱好者一起合作,如果日后游戏可以盈利,就分一部分利润给合作者。(估计是找不到这种业余爱好则了委屈


总结:这周并没有按照我原本的计划进行:构建基本游戏场景。而是找了一本书在看。

下周的话,我打算先把书看完,然后建立器真正的游戏项目,并且用git建立起本地的版本库,版本库这个东西真的很重要。有了版本库,相信我的项目进展会顺利很多,可以有效减少自己放弃这个项目的概率。


PS:这个项目还没有真正创建出来,但是我已经有了一种想要放弃的想法了,即使这种想法是一闪而过,但是也是很危险的,一不小心就会导致整个人毫无动力。上周我的博客一共有8人阅读过,真的不错,哪怕只是点开了没有看就关了的。我希望,我以后能成为一位比较优秀的程序员,写的博客也是很优秀的,能帮助到更多正在学习中的程序员。最后附上几句话:

1.我不喜欢写代码,但是我喜欢解决问题。

2.任何程序员都可以写出机器能读懂的代码,但是优秀的程序员可以写出让人看得懂的代码



2015-02-02 08:55:50 book_longssl 阅读数 3651
  • C#ForUnity游戏开发系列教程--入门篇

    《C#ForUnity系列教学课程》是面向0基础的免费课程,共分为入门篇、基础篇、提高篇和篇四个系列。大家通过对课程的系统学习,学成之后就可以利用Unity进行独立开发出第一人称射击游戏、2D游戏、塔防游戏、生存冒险游戏等。整个学习的过程就是在不断的开发游戏,在实战中学习,在实战中提高,可以更加的出效果,让学习者节省大量的时间。

    12301 人正在学习 去看看 杨显峰


设计目的
1.使工程结构更规范。
2.提高代码可读性,封装性,拓展性 
3.提高工作效率。
正文内容: 
1.Frame的组成结
(1)视图层(View)
(2) 控制层(Control)  
(3)数据层(Model)
整个Frame是由这三个部分组成,每一层管理属于自己的逻辑,核心思想是游戏逻辑和UI

逻辑独立开。目前遇到的项目工程大多数View和Control逻辑都写在一起,这样后期修改

和维护效率会很低,因为耦合性很高而View又是经常要修改的地方,所以造成Control方

面的逻辑也不得不修改。
2.视图层(View)
说明:视图层为展现给玩家的逻辑层(包括UI的表现和场景内的表现),它位于整个框架

逻辑的最顶层。
注意:View层中的任何逻辑都不可直接对Model层中的数据进行修改,可以看作它对

Model层拥有只读权限。
功能:
(1)负责管理自己所属面板(或场景)的逻辑。
(2)负责数据在视图层的刷新。
(3)实现用户界面按钮的操作逻辑。
3.控制层(Control) 

说明:整个Frame中唯一一个对Model层拥有读写权限的逻辑层。 
注意:Control层为整个框架的核心逻辑,请务必按照框架格式要求实现自己所需的功能。  
功能:
(1)判断玩家操作是否符合条件,若符合执行指令(网游即向服务器发送请求)。 
(2)根据逻辑(服务器返回数据)对Model层中的数据进行修改。 
(3)回调View层中的方法通知操作完成或失败。 
4.数据层(Model) 
说明:整个Frame的数据中心,位于框架逻辑结构的最底层注意:Model层对每个逻辑层

开放的权限不同,View层对有只读权限,Control层对其有读写权限。 
功能:  
(1)存放各个功能模块的相关数据。 
(2)提供数据修改的方法。 
5.一些经验 
正确的软件开发应该是懒惰式开发,也称作忍耐式开发;这种开发的表现是,在真正动手

写代码前,程序员要话费大量的时间考虑所有可能的解决方案和途径,者可以看作是延缓

写代码。先把问题理解清楚,确保将要写的代码能真正的解决问题,这将避免之后写出

大量的无用代码。程序员到后期的提升可以看作是设计思想的提升,因为在后期去学习

各种功能方法的实现并不需要花费太多的时间。在你代码量积累到一定程度后如果你依旧

没有自己的设计思想,那你的能力依旧是很普通的。 
6.总结与期望
每位程序员都有自己的书写风格与思维逻辑,但无规矩不成方圆,为了今后项目能够更有

效率的进行,所以编写了这个文档。本人也按照文档的设计思想编写了个代码框架,里面

包括了一些范例代码。作为程序员我相信大家都经历过对项目熟悉的过程,一个好的框架

结构能起到的作用我相信大家心里也都明白。本人经验有限所以设计肯定有不足之处,

希望后来者可以改进。

2017-03-07 22:41:20 q1105412681 阅读数 1885
  • C#ForUnity游戏开发系列教程--入门篇

    《C#ForUnity系列教学课程》是面向0基础的免费课程,共分为入门篇、基础篇、提高篇和篇四个系列。大家通过对课程的系统学习,学成之后就可以利用Unity进行独立开发出第一人称射击游戏、2D游戏、塔防游戏、生存冒险游戏等。整个学习的过程就是在不断的开发游戏,在实战中学习,在实战中提高,可以更加的出效果,让学习者节省大量的时间。

    12301 人正在学习 去看看 杨显峰

前言:本文章主要探讨独立开发的心得,较少讨论到技术问题!


本来应该是周六写周记的,但是周六那天和一起在广州的朋友一起吃了顿饭,晚上九点多才回到出租房。而且有周六放纵自己的想法,我以玩游戏学其中的设计理念为理由,在steam上找了一个游戏,并且下载盗版(作者原谅我),进行了一场游戏,结果就停不下来,没空写周记了。一直拖到今天。我甚至有了放弃独立开发的想法。

周日,我只做了摄像头移动和任务简单AI(到处乱跑)的功能,我觉得自己很有成就感,实际上,我花在上面的时间只有3-4小时左右,远远达不到预期的8小时。昨天我也没有动过我的项目,觉得这样不行,天天都偷懒。这就是独立开发的很大的一个难题:如何控制自己。今天我也没有做,不过我觉得也许补写周六的周记,会对我整体的项目进展更有好处。

要控制自己,首先要分析一下自己偷懒的原因。我做了一下自我分析,发现我偷懒的原因可能和这些因素有关:

1.来自社交的因数:

每天我都会去看【微信朋友圈】,有时候,这会直接用掉半个多小时。

我在想,我究竟有没有必要去看朋友圈,难道完全不看吗?本来生活中就很少有社交活动,如果连朋友圈都不顾,那岂不是和朋友们渐行渐远了吗?我看过有一些独立开发者的建议,其中有一项就是:多点参加社交活动,因为这会让一个人身心放轻松。人轻松了,对整体项目进展是有帮助的。

2.来自娱乐的因数:

偶尔会打开【bilibili】网站,打开后就很难停下来。还有一直有玩COC这个游戏(并且有一项年度计划:COC中游戏等级要达到一定程度的目标)

我为了做这个独立开发,放弃了去追我非常喜欢的一部电视剧《射雕英雄传2017》。但是我还是会去看bilibili上的《暴走大事件》和《飞碟说》,因为我觉得自己不能为了做独立开发放弃一切对“新鲜事”的接触机会,而从这两个节目中,可以获得比较多的新鲜事。但是,一旦打开了,就难免手贱去点其他视频,导致浪费时间。所以,我觉得我应该对我看视频的时间做出一个计划,就像我对自己洗衣服做的计划:一三五六洗衣服,每周有三天不用洗衣服。

3.来自学校的因数:

学校要求做一个毕业设计。

一开始我觉得做一个实时聊天网站,后来又想做java的,后来又想做一个网站爬虫算了,但是做这个势必会和我目前独立开发项目有冲突。两件写代码的事情加起来,还有工作,就给自己带来了烦躁的心情。我觉得,我应该先把毕业设计给完成了,再中心进行我这个独立开发项目。先要把让人烦躁的事情解决了,再去全心全意做自己的独立开发项目。

4.对独立开发要求不明:

有过没有白字黑字记录下来的计划:周一到周五,每天抽90分钟进展项目。周六可以做任何事情,如社交活动、打球、玩游戏并做策划等。周日抽8小时进行独立开发。然而这些都只是一些想法,并没有白字黑字列出来作为真正的时间表去执行。



分析出这些原因,我要为自己制定一些改变的计划了:

1.每天下班不允许看朋友圈,看朋友圈只能是中午在公司中的休息时间。(结果刚刚还是看了- -)改为:每天只能在上床后看和起床后看,其余在家时间不许看。

2.每周只有二四六可以打开bilibili,而且只能用公司中午休息的时间打开,下班后不允许打开。为了保证自己不打开,自己修改了hosts文件,屏蔽bilibili网站

3.毕业设计,就做爬虫程序,用python做,直接在网上找demo,改一下就交。(周日前完成)

4.每周六必须写好一份 周计划:内容包括:上周工作总结、下周工作内容、下下周工作内容(有时可能超额完成)



希望下周开始,我不会再拖更了。(虽然没人看,但是自己还是要坚持的)

2016-12-25 17:21:56 MirrorMan0 阅读数 383
  • C#ForUnity游戏开发系列教程--入门篇

    《C#ForUnity系列教学课程》是面向0基础的免费课程,共分为入门篇、基础篇、提高篇和篇四个系列。大家通过对课程的系统学习,学成之后就可以利用Unity进行独立开发出第一人称射击游戏、2D游戏、塔防游戏、生存冒险游戏等。整个学习的过程就是在不断的开发游戏,在实战中学习,在实战中提高,可以更加的出效果,让学习者节省大量的时间。

    12301 人正在学习 去看看 杨显峰
本人目前大四在读,热爱程序开发,在这里记录今后的独立开发生活,分享经验和技术。
我从很早的版本就开始接触Unity,学习过JAVA,C#,为了建模也学过3DMax,不过荒废的差不多了。。完全是出于兴趣爱好,开始了独立开发,从大四,也就是16年中旬,开始自己做手游,话说每天都被虐的很爽。。发博客也算是一个记录,但愿自己的游戏不被自己太监Unity独立开发的开始 - MirrorMan - MirrorMan的博客Unity独立开发的开始 - MirrorMan - MirrorMan的博客更新频率不会太高,一般是开发一段时间写一下总结。
PS:Unity确实是个很好的软件,想入坑的自己上网查,去官网下载,还不用翻墙,个人版是完全免费的。网上的新手教程啊、入门到精通视频啊很多,可以多看看,我也是看了很多学了很多之后,才开始自己独立开发的。希望自己一步一步走向大神。
—————————————————————分割线——————————————————————

 以上是现阶段已经好的模型与场景,类似于《我的世界》的Low-Poly风格。在上面的森林场景中尽量添加了BoxCollider,为了提高性能,尽可能少使用MeshCollider,因为添加多了以后真的很耗性能,对于接触不到的云、山等模型,只需要保留MeshRender及基本的TransForm组件即可。

像塔这种,一个BoxCollider即可。

然后就是项目建立以后,文件夹一定要管理好,代码、模型、材质、Prefabs等等,分门别类管理好,后期方便查找方便修改(处女座看着也特别舒服)。

Unity自带MonoDevelop,打代码自己感觉还是很好用的,还有AssetStone,里面有很多免费/付费资源素材供大家使用,很方便。

暂时先写这么多,下次更新会多写点技术性的东西,代码啦、模型啦什么的,也欢迎大家技术交流,给我更多指导。

没有更多推荐了,返回首页