[Unity3D] 和Unity3D的一些事
Before
一开始知道Unty3D引擎,貌似还是大一或者大二,那时Unity3D还是收费软件,不像现在Personal Version免费。
XNA|MonoGame
再后来,在Coursera上发现一门课Beginning Game Programming with C#,科罗拉多大学的课,总共12周,不过,最终却没拿到认证,因为中间有段时间公司安排出差。时间上错过了,不过,我还是完成了这门课,虽然时间已经晚了,Cousera和科罗拉多大学不会在颁发认证,但我还是看完了所有视频课程、完成了所有Assignments。
和别人不一样,我的开发环境是Linux+MonoDevelop+MonoGame,而不是Dr Tim用的Windows+VS2013+XNA,所以当时遇到了一些发生在Linux环境下的小问题,多数都解决了,不过也有一些问题仍然无解,比如MonoGame的声音。
课程完成之后,就准备做两款小游戏试试,其中,往坦克大战Clone上投入了不少时间,游戏的核心基本已经做出来了。
还记得当时遇到的一个非常有趣的Bug。坦克移动时,周围有障碍物时,很难转弯,屡思不得其解。后来突然搞懂了。
- XNA精灵移动都是按像素计算的,两个挨着的精灵,即使差一像素,也会被卡住
- 后来,就在移动时,做了些手脚,让坦克移动时,停止按键时,做一个5像素的取舍,避免出现就差一像素转弯的情况
最后,这个问题就解决了。
当时的Mind Map:

详细的介绍 Tank War
Unity3D
结果,Unity3D免费了。虚幻引擎4也免费了。我很快转到了Unity3D下,还获得了一份Michagen State University在Cousera上Introduction to Game Development的课程认证
还做了一个3D扫雷的Demo

现在,正在筹划着正式Release一款小游戏,详细介绍暂时保密。 原则上来讲,我也是一个Indie Game Developer & Designer了。 ^^
后记
像在Begining Game Programming With C#里Dr Tim里讲的,
年轻时候,学吉他是用的旧的破木吉他学的。后来,换了更好的吉他,我就不会弹了吗?不是的。
他是借此来阐述自己开设这门c#和xna课程的理由,毕竟微软自己都不在支持XNA了。也正如Dr Tim所说,确实,从他的课里学到了很多C#及游戏引擎的知识,在Unity3D里也是无缝对接。
另外,对比一下XNA和Unity3D
- XNA很简陋,完成同样的工作,所写代码量远远高于Unity3D
- Unity3D跨平台支持性超强,其他游戏引擎很难望其项背,现在Editor连Linux都支持了,这点XNA要差很多
- Unity3D更新更快,XNA微软自己都不更新了,不过MonoGame开源项目依旧在继续
- 另外,很多VR/AR sdk都支持Unity3D
PS
一些资源分享
[Unity3D] 和Unity3D的一些事的更多相关文章
- 【Unity3D】Unity3D之 注册表动态存取游戏存档——PlayerPrefs类
[Unity3D]Unity3D之 注册表动态存取游戏存档--PlayerPrefs类 1.Unity3D提供了一个用于本地持久化保存与读取的类--PlayerPrefs.工作原理非常简单,以键值对的 ...
- 【Unity3D】Unity3D之 Resources.Load 动态加载资源
[Unity3D]Unity3D之 Resources.Load 动态加载资源 1.Resources.Load:使用这种方式加载资源,首先需要下Asset目录下创建一个名为Resources的文件夹 ...
- 【Unity3D】Unity3D开发《我的世界》之三、创建一个Chunk
转载请注明出处:http://www.cnblogs.com/shamoyuu/p/unity_minecraft_03.html 一.引入int类型的Vector3 我们都知道Unity3D里Vec ...
- 跟我从零基础学习Unity3D开发--Unity3D开发必备神器(Visual Studio Tools for Unity)
开发Unity3D程序你用的什么IDE呢? 1.MonoDevelop 2.VS 可能你的回答是这样的,我用的vs写代码MonoDevelop来做调试.这时有同学就会反驳了傻X不知道用unityVS吗 ...
- 【和我一起学习Unity3D】Unity3D的坐标控制
坐标这个东西,在Unity3D里面是分为几个类的,各自是Vector2,Vector3.Vector4:含义各自是:二维坐标系,三维坐标系,四维坐标系.一般做游戏呢,用到的最多的就是Vector3了. ...
- 【Unity3D】Unity3D开发《我的世界》之七、番外篇
转载请注明出处:http://www.cnblogs.com/shamoyuu/p/unity_minecraft_07.html 本来上一篇就结束了,但是有小伙伴私信我觉得还差了很多重要的内容,比如 ...
- 【Unity3D】Unity3D开发《我的世界》之六、创建地形(视频 + 源码)
转载请注明出处:http://www.cnblogs.com/shamoyuu/p/unity_minecraft_06.html 一.引入LibNoise 虽然Unity3D里也有一个Mathf.P ...
- 【Unity3D】Unity3D开发《我的世界》之五、创建无限地形(视频)
转载请注明出处:http://www.cnblogs.com/shamoyuu/p/unity_minecraft_05.html 一.导入Unity3D自带的第一人称角色控制器 直接导入就行,我们用 ...
- 【Unity3D】Unity3D开发《我的世界》之二、创建一个立方体
转载请注明出处:http://www.cnblogs.com/shamoyuu/p/unity_minecraft_02.html 这一篇的内容比较简单,因为所有理论内容都在上一篇中讲到了.但有两点需 ...
随机推荐
- 微信html5开发选哪一个
html5选哪个开发框架 ①. Justep起步 X5框架 : 专门用来开发web App的大型开发工具集,x5 v3.0有765.58M,不选. ②.Jquery Mobile ...
- 我在用的mac软件(1)--终端环境之iTerm2
之前一直有朋友要我分享下在用的mac软件,今天有空就来写一下,可能不止于软件,会有一些配置或者工具,或者叫环境更合适.有些可能一句话带过,有些会详细介绍.也不分类了,想到哪个就写出来.如果已经写的足够 ...
- 【转】Xcode托管代码到oschina中的教程
本文的以下内容较旧,常常会出现第一次配置成功可以用,但关机重启后就一直提示“username or password”不正确的bug,所以建议弃ssh方式转向https方式,更加稳定.传送门:点我. ...
- iOS OC内联函数 inline的详解
inline 在iOS中的一些框架中,static inline是经常出现的关键字组合. static自不用多说,表示在当前文件中应用,如 static A, 在其它文件中也可以出现static A. ...
- ReactiveCocoa中信号的使用
前言: 很早之前就有看过ReactiveCocoa,那会看的时候知道是一个新的框架关于响应式编程,具体什么也没有深入研究,今天也对ReactiveCocoa这个框架的使用进行了一定的了解.在githu ...
- Effective Java 19 Use interfaces only to define types
Reason The constant interface pattern is a poor use of interfaces. That a class uses some constants ...
- Effective Java 23 Don't use raw types in new code
Generic types advantage Parameterized type can provide erroneous check in compile time. // Parameter ...
- SQL Server同步复制问题排查方法
1.应用复制的命令时在订阅服务器上找不到该行 解决方法:用系统存储过程sp_browsereplcmds(返回分发数据库中存储的可读版本复制命令的结果集,并将其用作诊断工具. 此存储过程在分发服务器上 ...
- Sublime Text3 C++及Java开发环境配置
一.C++开发环境配置 1. 下载MingW 2. 环境变量配置,系统属性->高级设置->环境变量,如果Mingw装在c盘更目录,其它自己思考 (1)PATH 变量值中加入 C:\Min ...
- 在IT的路上,我在成长
在IT的路上,我在成长.很荣幸地加入了博客园这个大家庭. 岁月的航船在不断航行,在成长的脚印我要深深留下,回首已往经历,发现自己成长的路上,将来也会有很多美好的回忆,以及丰硕的果实.