一步一步学习Unity3d学习笔记系1.1
最近开始在学习Unity3D,在网上找到了一些教程利用晚上回家休息的时间自学了一下,我就是一个小白,对Unity3D什么都不懂,可能需要一些美工的功底。刚好有点,需要点编程的基础,也好我也有点,对C#很熟,看着Unity3D那么火,我也抽时间来研究研究,看看指不定哪天就用到了。
首先准备工作是要到官网上下载一个Unity3D软件 官网http://unity3d.com/cn/

下载喜欢的版本,至少要下载4.X以上的版本,初学者完全够用了。
下载安装完成以后先不要着急去学习菜单。因为菜单太多了不容易记住不说浪费时间,从菜单学习那是以前的学习软件的方法,现在我很不赞同,我的观点是在实用中掌握是最好的。
接下来我们就先了解一下游戏的开发,算说起点有点高了,但是慢慢来,我相信花钱买的课程不会让我失望。
先来认识一下网游和单机游戏的简单操作流程。
单机游戏

网游

单机游戏就是如图的操作流程很简单,一看就知道是怎么回事,就不做过多的说明,
主要做的笔记是网游部分的,大家都知道网游是和服务器有关的所以数据交互必要经过服务器,数据存储在服务器上数据安全性比较高,但是不排除恶意的攻击,
从图中可以看到网游有两套方案各有各的好处,首先说一下第一种方案,需要注意的,当服务器收到行走消息以后发送消息给所有的玩家 举例说明:A,B,C。。。多人同时在线A按下了行动按钮服务器收到消息以后发送给A,B,C..所有有玩家,只时候在场景中A,B,C 等其他在线玩家 在场景中可以看到A玩家所控制的角色是在行走的,此方案的优点是同步性比较高,缺点是当自身网络出现问题的时候有一定延迟,用户体验不是很好。那么么第二套方案刚好可以解决这个问题,从流程图可以看到,按下操作按钮的时候,自身客户端角色行走,在发送行动消息给服务器,服务收到消息后下发角色行动消息到给非操作客户端线客户端,那其他玩家者收到某角色行动,为什么要排除自身呢?因为服务器下发行动消息以前可能行动角色已经开始行走,不下发到自身角色就是避免弹回原地的不好体验。
两种方案在网络好的情况下相差不大,网络越不稳定差异性越大,一般都在一秒内推荐第二种。用户体验比好
一步一步学习Unity3d学习笔记系1.1的更多相关文章
- 一步一步学习Unity3d学习笔记系1.3 英雄联盟服务器集群架构猜想
说到了网游那就涉及到服务器了,时下最火的属英雄联盟了,我也是它的粉丝,每周必撸一把,都说小撸怡情,大撸伤身,强撸灰飞烟灭,也告诫一下同仁们,注意身体,那么他的服务器架构是什么呢,给大家分享一下, 具体 ...
- 一步一步学习Unity3d学习笔记系1.2 单机游戏和网游的数据验证概念
这一次的笔记的主要内容是单机和网游的数据存储,数据验证方式,在游戏的时候除了控制角色的行动,还涉及到用户角色的升级,经验,金钱赚取,道具购买,技能升级 等等一些数据的交易, 那么单机游戏和网游的区别如 ...
- 一步一步学习Unity3d学习笔记系1.4单服模式架构
单服模式更适合做手游,只有一个服务器,在程序中通过代码模块来实现各功能,而不是物理模块划分. 登录模块实现,账号数据处理, 用户模块,处理角色权限处理, 匹配模块,匹配战斗 好友模块,负责好友管理 战 ...
- 12.Linux软件安装 (一步一步学习大数据系列之 Linux)
1.如何上传安装包到服务器 有三种方式: 1.1使用图形化工具,如: filezilla 如何使用FileZilla上传和下载文件 1.2使用 sftp 工具: 在 windows下使用CRT 软件 ...
- (转) 一步一步学习ASP.NET 5 (四)- ASP.NET MVC 6四大特性
转发:微软MVP 卢建晖 的文章,希望对大家有帮助.原文:http://blog.csdn.net/kinfey/article/details/44459625 编者语 : 昨晚写好的文章居然csd ...
- (转) 一步一步学习ASP.NET 5 (二)- 通过命令行和sublime创建项目
转发:微软MVP 卢建晖 的文章,希望对大家有帮助. 注:昨天转发之后很多朋友指出了vNext的命名问题,原文作者已经做出了修改,后面的标题都适用 asp.net 5这个名称. 编者语 : 昨天发了第 ...
- 一步一步学习SignalR进行实时通信_1_简单介绍
一步一步学习SignalR进行实时通信\_1_简单介绍 SignalR 一步一步学习SignalR进行实时通信_1_简单介绍 前言 SignalR介绍 支持的平台 相关说明 OWIN 结束语 参考文献 ...
- 一步一步学习SignalR进行实时通信_8_案例2
原文:一步一步学习SignalR进行实时通信_8_案例2 一步一步学习SignalR进行实时通信\_8_案例2 SignalR 一步一步学习SignalR进行实时通信_8_案例2 前言 配置Hub 建 ...
- 一步一步学习SignalR进行实时通信_9_托管在非Web应用程序
原文:一步一步学习SignalR进行实时通信_9_托管在非Web应用程序 一步一步学习SignalR进行实时通信\_9_托管在非Web应用程序 一步一步学习SignalR进行实时通信_9_托管在非We ...
随机推荐
- apply()和call()的区别
这两个方法的用途都是在特定的作用域中调用函数,实际上等于设置函数体内this对象的值. apply()接收两个参数:一个参数是在其中运行的作用域,另一个是参数数组(可以是Array实例,也可以是arg ...
- LintCode "Expression Evaluation"
This is sth. for me to learn.. https://github.com/kamyu104/LintCode/blob/master/C++/expression-evalu ...
- 关于Tomcat自动加载更新class的小技巧
在Tomcat的server.xml或者Tomcat.xxx\conf\Catalina\localhost\project.xml文件中里Context标签内:<!-- reloadable为 ...
- 基于SpringMVC下的Rest服务框架搭建【1、集成Swagger】
基于SpringMVC下的Rest服务框架搭建[1.集成Swagger] 1.需求背景 SpringMVC本身就可以开发出基于rest风格的服务,通过简单的配置,即可快速开发出一个可供客户端调用的re ...
- linux命令(10)使用kill杀死含有指定关键字的进程
命令:ps -ef|grep keyword|grep -v grep|cut -c 9-15|xargs kill -9 批量杀死包含关键字“keyword”的进程. "ps -ef&qu ...
- JavaScript表单验证实例
1. 长度限制<script>function test(){if(document.a.b.value.length>50){alert("不能超过50个字符!" ...
- git 冲突解决(转载)
gerrit是不会解决冲突的,如果两个人同时改了一个文件的同一行,就会冲突,你将会看到Review in Progress并且最下面会有Your change could not be merged ...
- Python中将打印输出导向日志文件
a. 利用sys.stdout将print行导向到你定义的日志文件中,例如: import sys # make a copy of original stdout route stdout_back ...
- iOS设计模式反思之单例模式的进化
什么是单例模式? 单例模式想一个大独裁者,他规定在他的国度里面,所有数据的访问和请求都得经过他,甚至你要调用相关的函数也得经过它.学术一点就是,单例模式,为某一类 需求和数据提供了统一的程序接口.主要 ...
- FOOD
Serving order of food courses(上菜顺序)1. Appetizer(starter)2. Main Course3. Dessert Style of cooking1. ...