Unity面试题——服务器数据库等杂项

简介: Unity面试题——服务器数据库等杂项

181. Unity 连接数据库

需要得到 Mono.Data.Sqlite.dll 文件与 System.Data.dll 文件

182. 如何与服务器交互

做游戏,基本上都避免不了与服务器端交互,与服务器端交互的方式也有几种,总结起来就是长连接模式(Socket)与短链接模式(Http)。

183. 如何处理网络异常下的可玩性

1)为游戏增加单机模式:比如故事模块,网络异常时可以阅读游戏的故事;丰富的技能或卡牌,网络异常时可以了解技能和卡牌;提供单机玩法,玩家可以与 AI 进行游戏等。

2)为游戏提供教程模块,网络异常时可以学习游戏技巧。

184. 怎样反外挂? 对外挂的看法

游戏外挂的原理:外挂分为多种,比如模拟键盘的,鼠标的;修改数据包的;修改本地内存的。

1)对于模拟用户的鼠标键盘输入的外挂,我们可以用网页上常用的验证码的方式来对付。模拟键盘鼠

标的外挂对游戏的影响比加速、修改封包、修改内存、脱机等要小得多,因此被一些人称为绿色外挂。2)让服务器不把在正常情况下玩家看不到的东西的数据传送给客户端。

3)把玩家操作记录发到服务器进行模拟,如果和客户端的计算结果偏差较大可以认为作弊。

185. 你对跨平台的了解。

跨平台就是在一个熟悉的平台上面开发的软件或者程序,直接可以在其他平台上正常的运行显示而不 需要对其原始文件或者原始代码进行修改。

186. 谈谈你们公司的网络编程

在我们公司基本是由服务端人员开发的,我这边只调用他们提供的客户端 SDK 和服务器端通信。服务 器端是公司用 C++自行研发的。

187. 会做数据库吗?有嵌套的数据库能做么?

会。用过关系型数据库 mysql。能做,只是这方面之前在公司没怎么负责这块,有些生疏,稍微熟悉一下就能做。(社区提供持续更新版本)

188. 了解代码管理么?在开发中使用什么代码管理工具?使用的接口多一点还是继承多一点?

了解。使用 SVN 进行代码管理。接口多一点。

189. 公司内部信息传递用的什么安全协议?

1、公司自定义的安全协议 或者 基于 SSL/TLS 协议 或者 SSH 协议

2、我们至少调用基于相关协议的 SDK

3、SSL/TLS 协议

SSL/TLS 协议(RFC2246 RFC4346)处于 TCP/IP 协议与各种应用层协议之间,为数据通讯提供安全支持。从协议内部的功能层面上来看,SSL/TLS 协议可分为两层:

  1. SSL/TLS 记录协议(SSL/TLS Record Protocol),它建立在可靠的传输层协议(如 TCP)之上,为上层协议提供数据封装、压缩、加密等基本功能。2. SSL/TLS 握手协议(SSL/TLS Handshake Protocol),它建立SSL/TLS 记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等初始化协商功能。SSH 是英文 Secure Shell 的简写形式。通过使用 SSH,你可以把所有传输的数据进行加密,这样”中间人”这种攻击方式就不可能实现了,而且也能够防止 DNS 欺骗和 IP 欺骗。使用 SSH,还有一个额外的好处就是传输的数据是经过压缩的,所以可以加快传输的速度。SSH 有很多功能,它既可以代替 Telnet,又可以为 FTP、Pop、甚至为 PPP 提供一个安全的”通道”。

190. 原公司服务器怎么实现多人在线?

使用 socket 基于 TCP 协议开发的多人在线。公司有自行开发的服务端程序

191. 项目问题,和美工想法冲突了怎么办?

找项目主管协调处理

192. 对 unity 的理解

可以做 VR、手游、工艺仿真、端游、页游跨平台的游戏引擎

193. 面试题:VR 相关问题用了哪些设备?接入了哪些 SDK?根据项目问如

何实现手势控制?

htc vive 和 oculus, htc vive 用到的是 steam vr 免费插件,Oculus 早期有 SDK,现在 Unity 原生支持

194. 开过什么平台?多线程的理解

PC、Android。

多线程是指从软件或者硬件上实现多个线程并发执行的技术。具有多线程能力的计算机因有硬件支持而能够在同一时间执行多于一个线程,进而提升整体处理性能。使用线程可以把占据时间长的程序中的任务放到后台去处理用户界面可以更加吸引人,这样比如用户点击了一个按钮去触发某些事件的处理,可以弹出一个进度条来显示处理的进度,程序的运行速度可能加快,在一些等待的任务实现上如用户输入、文件读写和网络收发数据等,线程就比较有用了。在这种情况下可以释放一些珍贵的资源如内存占用等等。

195. 怎样实现植物的弯曲

1、max 做骨骼动画2、修改 Tree 组件的 Growth Angle 的值

196. 用过什么游戏框架?

SimpleFramework,基于 ulua 的框架,支持 ugui 和 ngui 的热更新

197. 模型导入 Unity 后怎么与数据库产生联系?类似打通程序和数据库通 道

例如 mysql 数据库,需要导入两个文件,就可以通过 sql 语句往数据库写数据,数据可以是模型信息

198. 用过什么传输协议,用什么语言

http,tcp(socket) 都是 C# 语言编写

199. 都在什么平台上开发过游戏或软件用的什么框架

Android

200. 会写框架么

设计模式了解一些,但是没写过框架

201. 请简述在客户端开发方面 你最擅长的模块系统,以及你觉得哪些模块 会出现的问题

擅长 UI 模块的制作,我认为热更新模块会出现问题,比如资源依赖不合理,导致资源包过大

202. 如何实现背包系统、宠物系统、装备系统的实时更新?

NGUI 做界面,使用 ulua 做热更新。之前公司使用的是 SimpleFramework 这样的框架。

203. 热更新的解决方案(资源以及代码)

ulua 框架、simpleFramework 框架 、bundle manager 插件

目录
相关文章
|
6天前
|
PHP 数据库 数据安全/隐私保护
布谷直播源码部署服务器关于数据库配置的详细说明
布谷直播系统源码搭建部署时数据库配置明细!
|
8天前
|
存储 关系型数据库 MySQL
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
169 1
|
2月前
|
消息中间件 安全 前端开发
面试官:单核服务器可以不加锁吗?
面试官:单核服务器可以不加锁吗?
47 4
面试官:单核服务器可以不加锁吗?
|
1月前
|
应用服务中间件 PHP Apache
PbootCMS提示错误信息“未检测到您服务器环境的sqlite3数据库扩展...”
PbootCMS提示错误信息“未检测到您服务器环境的sqlite3数据库扩展...”
|
2月前
|
存储 关系型数据库 MySQL
【Java面试题汇总】MySQL数据库篇(2023版)
聚簇索引和非聚簇索引、索引的底层数据结构、B树和B+树、MySQL为什么不用红黑树而用B+树、数据库引擎有哪些、InnoDB的MVCC、乐观锁和悲观锁、ACID、事务隔离级别、MySQL主从同步、MySQL调优
【Java面试题汇总】MySQL数据库篇(2023版)
|
2月前
|
存储 数据挖掘 数据库
服务器数据恢复—raid磁盘故障导致数据库数据损坏的数据恢复案例
存储中有一组由3块SAS硬盘组建的raid。上层win server操作系统层面划分了3个分区,数据库存放在D分区,备份存放在E分区。 RAID中一块硬盘的指示灯亮红色,D分区无法识别;E分区可识别,但是拷贝文件报错。管理员重启服务器,导致离线的硬盘上线开始同步数据,同步还没有完成就直接强制关机了,之后就没有动过服务器。
|
2月前
|
存储 关系型数据库 MySQL
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
111 5
|
1月前
|
SQL 数据库
SQL-serve数据库不能连接本地服务器的解决方案
SQL-serve数据库不能连接本地服务器的解决方案
130 0
|
2月前
|
存储 Oracle 关系型数据库
Oracle同一台服务器创建多个数据库
【8月更文挑战第30天】在 Oracle 中,可在同一服务器上创建多个数据库。首先确保已安装 Oracle 软件并具有足够资源,然后使用 DBCA 工具按步骤创建,包括选择模板、配置存储及字符集等。重复此过程可创建多个数据库,需确保名称、SID 和存储位置唯一。创建后,可通过 Oracle Enterprise Manager 进行管理,注意服务器资源分配与规划。
103 10
|
3月前
|
缓存 NoSQL 数据库
Web服务器与数据库优化:提升系统性能的最佳实践
【8月更文第28天】在现代的Web应用中,Web服务器与后端数据库之间的交互是至关重要的部分。优化这些组件及其相互作用可以显著提高系统的响应速度、吞吐量和可扩展性。本文将探讨几种常见的优化策略,并提供一些具体的代码示例。
157 1