自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(203)
  • 资源 (8)
  • 论坛 (1)
  • 收藏
  • 关注

原创 Centos8开启firewalld后ssh被墙

以前用iptables,现在改用firewalld,刚启动firewalld,ssh就被墙了。重启,查看firewalld的配置发现:vi /etc/firewalld/zones/public.xml默认的确是放行ssh服务的啊!为什么被墙了?!仔细分析了一下,觉得可能是因为我改过ssh端口,然后不认了…… 尝试把ssh端口改回默认的22,也就是在/etc/ssh/sshd_config 里,把Port 前面的注释加回来。再次启动防火墙,好了,ssh可以连接了。结论:...

2020-09-23 17:31:02 99

原创 Centos 8.2 安装 Python 3.8.5

本文使用源码安装Python。从源代码编译Python需要C / C ++编译器和其他开发包。首先要做的是在CentOS 8上安装从源代码构建Python所需的软件包。为此,请以root或sudo用户身份运行以下命令:sudo dnf groupinstall 'development tools'sudo dnf install bzip2-devel expat-devel gdbm-devel ncurses-devel openssl-devel readline-devel wget sq

2020-09-22 14:58:51 99

原创 Unity UGUI 背包或商店的制作_快速上手

今天有人问我怎么做背包。我说:亲,百度呀。他说:度了,但还是觉得问你好。于是有了这篇文章。思路先行!背包需要的东西:1,背包背景:一般来讲,使用Image或者Panel。2,元素容器(可视区域):就是背包里的那些元素,滚动的时候不能超出的UI范围,一般使用panal,添加mask组件,或者3,元素:一般是Button,或者Image。4,元素排布:这个unity已经有现成组件了,5,下拉滚动条:用Scrollbar。...

2020-07-29 20:47:38 188

原创 Python版_自动定时截屏_PIL

在网上找了10多分钟自动截屏软件,都不太合适,甚至有的还带毒!掐指一算,写个这软件也就十几分钟,不找了,干脆自己写一个。目标功能:1,自动截屏、2,可设定截屏间隔、3,按天自动分文件。基于python2.7完整代码如下,加上运行测试,耗时19分钟:#! /usr/bin/env python# coding=utf-8# ==============================# Describe: 后台自动定时截屏# D&P Author:

2020-07-07 15:09:43 297

原创 面试被骗 :当了一小时讲师,最后反倒说我不合格

说实话今天我被气到了。今天很可能碰见:以面试为旗号,实为套技术(学你技术解决方案)的事儿。由于疫情,公司资金紧张,工资拖延,所以我考虑换一下工作。然后,业内某知名游戏公司(说实话我真想点名!排前五的),通过猎头找到我,说有个【服务器专家】职位,让我去面一下。为了养家糊口,跟对方HR约在今天上午10.30,开始了这场奇葩的语音面试。有些起疑一开始问问题,我就察觉有点不对。职位不是【服务器专家】么?怎么上来先问Go语法?!channel关闭之后能不能读数据?!我虽然有点狐疑,但人家既然问了.

2020-05-14 17:33:01 9514 30

原创 Unity 抛物线运动脚本(弓箭轨迹)

首先声明,脚本代码大部分来自:http://blog.csdn.net/pengdongwei/article/details/50373041我把这个脚本做了一些改动。需要注意的是:关于箭(炮弹)的制作:1, 资源原点, 在箭头上(一般是箭头产生攻击力)2, 箭头朝向, 是z轴的增长方向,以便LookAt脚本如下:using System.Collections;using System.Collections.Generic;using UnityEngine;..

2020-05-12 12:39:19 499

原创 Unity动态加载与内存关系3:AssetBundle (Addressable Assets)篇

接着前两篇,我们继续测试 AssetBundle 方式的资源加载,然后再销毁与卸载,观察对应的内存变化。这里不讲解AssetBundle的基本原理了,不了解的同学可以看官方手册:https://docs.unity3d.com/Manual/AssetBundlesIntro.htmlAddressable Assets说明文档:https://docs.unity3d.com/Packages/com.unity.addressables@1.8/manual/AddressableAss

2020-05-09 19:24:39 794

原创 Unity动态加载与内存关系2:Resources.Load 篇

接着上一篇,我们继续测试Resources.Load 资源加载,然后再销毁与卸载,观察对应的内存变化。先说结论:1,不触发时,不占用什么资源(请对比上一篇prefab模式,那个要占, 其实就相当于Resources.Load() )2,Resources.Load() 的时候,会载入Mesh。3,Instantiate()生成游戏体的时候,会载入对应的Texture,占用内存。4,Destroy() 会马上释放小部分显存。Unity等待GC时机,再释放部分mesh和texture资源。但

2020-05-08 19:01:33 437

原创 Unity动态加载与内存关系1:prefab篇

网上得来终觉浅,绝知程序要亲测。好不容易有点闲暇时间,打算把unity动态加载的几种方式,以及对应的内存占用/释放,测试一遍。这是第一篇,最简单的prefab的生成与销毁:本文使用unity2019.3测试。这里分为编辑器的【冷运行】和【热运行】。编辑器的冷运行:就是编辑器完全退出后,再启动编辑器,再运行程序。编辑器的热运行:就是在编辑器里,直接运行程序。冷热运行,profile的...

2020-05-08 13:21:00 272

原创 Unity-UGUI 血条制作-缓动效果(HP Slider)-多层血条

今天尝试用一个新方法做血条缓动效果:新建一个Slider,[隐藏]或者[删去]滑动按钮 Handle Slide Area,变成血条的样子:多层缓慢掉血的重点:加入一个新的Fill层,也就是相当于增加一个血条的上层表现。直接ctrl+d复制一个Fill就好,如图调整这个Fill的参数:...

2020-04-14 11:22:22 807

原创 Unity向量打印精度问题

今早测试一段代码,又忘记了Unity的向量打印,有精度问题,貌似是只取到小数点后1位。比如0.286,Debug.Log会显示为0.3如果想打印精确的数值,最好直接打印数值,如下: Vector3 the_vec3 = new Vector3(rnd_x, rnd_y, rnd_z); Debug.Log(the_vec3.ToString()); ...

2020-03-31 11:13:40 321

原创 Unity 碰撞位置

获取碰撞位置的方法1:使用 Collider.ClosestPointReturns a point on the collider that is closest to a given location.返回碰撞器上最接近给定位置的点。下方是子弹打到物体上,生成撞击火星的代码: // 碰撞体的检测 private void OnCollisionEnter(Co...

2020-01-03 16:10:33 999

原创 unity 远处模糊(贴图变模糊)

今天新做了一个场景,导入后发现,场景贴图越远越模糊,如图:第一反应是设置了LOD了,或者是渲染选项做了设置。仔细检查发现并没有。只好开始Google。最后确定,是【贴图设置】中的【Generate Mip Maps】选项被勾选了。取消勾选,问题解决:抄来的解释:Mipmap技术有点类似于LOD技术,但是不同的是,LOD针对的是模型资源,而Mipmap针对的纹理贴图资源,...

2019-11-21 10:49:17 2078 1

原创 Unity VideoPlayer Andriod卡顿/卡死

Unity VideoPlayer是个好东西,可以方便直接的在游戏里播放视频。简单的几下设置即可,如:但是,导出apk,到安卓机上测试时,播放发现了卡顿,之后干脆卡死!之后,发现视频的导入设置中,有安卓这么一项,尝试改了一下:之后,在手机上运行,发现不卡了。...

2019-11-15 15:13:52 2890

原创 Reached the maximum polygons limit (256). Consider simplifying your mesh.

升级unity 2019.3.0b8后,模型出现了一个新的报错:Failed to create Convex Mesh from source mesh "Car_1A". Reached the maximum polygons limit (256). Consider simplifying your mesh.根据报错提示,用建模软件,重新导出模型,都按照三角面去导出。之后问...

2019-10-31 15:55:23 403

原创 Unity使用Mesh Simplify 减面(网格简化)

基于性能的考虑,有些模型需要减面,然而做独立游戏的我,又找不到美术去做。只能想办法用程序减。然后,发现了Mesh Simplify这个插件:导入模型,进行试验:如下图,默认场景默认光,10.7k 三角面添加 Mesh Simplify 组件,之后选择想减到原来的百分之几。比如这里减掉40%,按优化后是原来的60%来算:之后点击【Compute mesh】,生成...

2019-10-31 15:49:18 5006 1

原创 Cinemachine 镜头异常抖动(画面抽搐twitch)

用Cinemachine做镜头跟随,结果发现有异常抖动,画面时不时会抽搐一下:各种查资料,没有发现解决办法。最后开始笨方法,一项一项设置做实验。最后发现,是cinemachine的 CinemachineBrain上的 update method 的问题,使用默认的 smart update 就不行,需要使用 late update。之后,抖动抽搐的BUG,解决。...

2019-10-29 16:33:52 1357

原创 CharacterController爬坡和台阶问题

现在做的一款游戏,需求是不能让角色爬坡,不能让角色登上任何台阶。简单说就是不能离地。然后使用CharacterController就出现怎么设置都不行的尴尬境地(并且充满疑惑)。如图:爬坡高度Slope Limit 和 台阶高度 Step Offset 都已经设置为0了,可是依旧能上小坡度,小台阶。想了半天为什么。脑补是这样:胶囊形状的弧度碰撞导致很可惜,我们不能改变角色控制器...

2019-10-23 11:05:09 458

原创 Unity高性能网络通信研究(一) 延迟

■ 写在前面:最近做的项目,都是需要极低延迟的游戏。所以,哪怕是10毫秒的延迟,我都耗费了十几天的时间,努力降低下来。最终研发出一套极低延迟的网络通信框架。下面把一些研究结果,和心得写下来,与大家分享。原创不易,研究更不易,转载请注明出处。 ■ 发数据首先, 调用发送数据代码, 例如在update里进行数据发送,并不延迟。多次测试,从打印日志可以看到,从发送,到确认已经发送完数...

2018-12-09 12:30:42 1606 3

原创 Hinge Joint 铰链关节

Unity铰链关节的文档并不易懂。所以用白话文写一个说明,以门为例:门由门框、门板组成。门框不动,门板绕着门框(门轴)运动。铰链关节,是门板上的组件。门框:刚体Rigidbody门板:刚体Rigidbody、铰链关节Hinge JointConnected Body:连接到哪个刚体。(比如门框)Anchor:锚点,也就是连接点。连接点位置是从自身原点出发,向X,Y,Z轴偏移多少...

2018-08-15 15:32:07 4281

原创 pip 国内镜像源

ReadTimeoutError: HTTPSConnectionPool(host='files.pythonhosted.org', port=443): Read timed out.直接使用pip安装,由于连接国外,很慢,并且经常断链,导致无法正常安装扩展包。所以使用-i参数,指向国内源。阿里的还是挺好用的:https://mirrors.aliyun.com/pypi/s...

2018-07-30 18:11:08 2817

原创 django时区设置-python时区timezone字段

全球化运营,需要不同时区。但是,有的时候,不知道时区的字段怎么写。比如,为什么北京时间,可以写成 'Asia/Shanghai' ?为啥这么写,python和Django才认?TIME_ZONE = 'Asia/Shanghai'换一个时区,比如美国东部时间,这个字段要怎么写,python和Django才认? 找了半天,原来这样可以查看所有时区的字段:>>> fro...

2018-07-26 11:27:49 3548

原创 (Android Stdio 3)Unable to list target platforms. Please make sure the android sdk path is correct.

Unity 2017.3 + Android  Studio 3.1 打包报错:Unable to list target platforms. Please make sure the android sdk path is correct. See the Console for more details.原因是:新版的SDK tools里面,删除了一些打包命令,恰好是unity需要使用的。可...

2018-04-01 18:38:01 1404

原创 Unity面数显示不一致

同事的机器使用的MacOS,我这边主要使用Windows。同样使用Unity2017.3版本,使用SVN管理。但是,出现了面数显示不一致的问题,差了10万面,如图:  反复尝试,几经排查,最后确定,同事的Mac机器,没有安装Unity的安卓开发环境。导致ProjectSettings虽然是同步的,但是他那台机器,依然是默认PC平台为目标平台。结论:统一项目的目标平台,就可以了。比如:都统一为PC,...

2018-03-28 14:57:40 1805 1

原创 Unity安卓导出的色彩空间(Color Space)设置

关于色彩空间(Color Space)本文不再过多描述,简单来说,就是Linear(线性) 比Gamma(伽马) 渲染效果更好。但是需要注意的是,截止到2016年(新的统计资料我没有找到),有40%的移动设备(主要是旧设备),不支持Linear渲染。也就是说,你选择了更好的渲染效果,就意味着要放弃一批低端移动设备用户。游戏开发,趋势肯定还是更好的效果,所以我选择了Linear渲染。需要在Playe...

2018-03-12 16:26:50 3997

原创 Redis需要多少内存预留-内存占用多少才安全

上一篇文章,我已经尝试过,用设置的方式,去限制redis内存的占用大小,结果发现是不可行的。(redis不会区分冷热数据,保留冷数据在硬盘上)。那么如果要正常运行redis,就需要知道,redis最多可以占用多少内存,保留多少内存。结论:极限情况:留出一倍内存。比如你的redis数据占用了8G内存,那么你还需要再预留8G空闲内存。也就是内存需求是16G。内存占用率低于50%是最安全的。普通情况:正...

2018-02-10 18:13:37 25330

原创 redis内存设置--结论是超过内存用量会删key

同事在内存很低(2G内存的云服务器)测试机上,跑了2个含有大量数据的redis库,结果内存不足,redis挂掉了。按照我脑补理解,应该是可以设置内存用量,把常用数据,部分加载到内存,不常用的,保存到硬盘上。结果,不是这样。在RDB模式下,数据就是整块的。如果超出,无论配置哪种淘汰策略,redis干的事儿,就是删key。没错,删key!问你怕不怕!结论:如果redis数据中,存的是关键数据,

2018-01-30 17:06:31 5439 1

原创 防止核心代码泄露-项目代码保护(游戏服务器端)

重要的核心代码,是不希望被非核心成员,或者新招来的程序接触到的。否则,招个新程序,人家试用期没过,反倒把你代码拷走了,回头想攻击、破解、贩卖,都是分分钟的事儿。这种事儿,我已经见过不止一次了。本文就讲一下,如何去做代码保护。防止核心(底层)代码泄露。代码保护的基本需求:1,不影响被防范的成员(比如新程序员)工作。让其能正常运行、调试、查看日志等。2,对核心代码完全封死,需要保护

2017-12-28 18:30:54 4909

原创 python随机数分布random均匀分布

因为概率问题,所以需要测试一下python的随机数分布。到底是平均(均匀)分布,还是正态(高斯)分布。结果是:平均(均匀)分布。

2017-10-26 10:49:30 18825

原创 redis进程占用CPU很高-达到100

问题说明:    监控发现,redis进程占用CPU很高-达到100%。并且会有2个redis进程。如下图:    分析了一下,因为redis在持久化保存的时候,会fork出一个进程来。仔细观察进程号PID,会发现,占用CPU很高的那个进程,不是redis的主进程。而是fork出来的那个。这个fork出来的进程,由于任务就是持久化,所以它的工作,就是把内存中的数据(此时内存

2017-10-23 13:19:18 10870

原创 Unity标准着色器(Standard Shader)参数讲解(三)

接上文。6,遮挡图Occlusion Map简单来说,这个贴图是用来处理间接光照的(比如环境光)。遮挡图是灰度图像,白色指示区域应接收完全间接照明,黑色表示不间接照明。很多软件可以直接生成。下面是官网的说明图。左边,没有应用遮挡图,可以看到,在脖子上的织物褶皱处,被照亮得太亮了。右边,在分配环境遮挡图之后,这些区域不再被来自周围树木环

2017-09-17 19:52:01 5233

原创 Unity标准着色器(Standard Shader)参数讲解(二)

Unity标准着色器(Standard Shader)  第4个参数是:法线贴图(凹凸映射)Normal map (Bump mapping)没有什么参数,直接选择对应的法线贴图,贴上即可。法线贴图,在Unity里,可以有2张。第二张叫【次级法线贴图】,用来展示更微小的细节。一般来说,用不上。注意:一般来说,Unity会自动识别法线贴图。如果不识别,那可以手动选择贴图类

2017-09-17 17:22:29 6111

原创 Unity标准着色器(Standard Shader)参数讲解(一)

第一项为渲染模式:Rendering ModeOpaque - 不透明 - 是默认值,适用于没有透明区域的普通固体物体。 Cutout -  切割- 允许您创建透明效果,在不透明区域和透明区域之间具有硬边。 在这种模式下,没有半透明区域,纹理是100%不透明或不可见。 当使用透明度创建材料的形状(如叶子或具有孔和布料的布料)时,这是有用的。Transparent - 透明- 适用于

2017-09-16 14:50:20 16278

原创 ImportError: No module named incremental

更新twisted 17.0 后,报了这个错:ImportError: No module named incremental解决:去pypi 搜一个incremental,安装即可。或者pip安装。

2017-08-12 16:48:14 3377

原创 centos查看端口连接数

不是啥技术文章,就是命令记不住,记录一下。比如查看 18180 端口方法1,可以显示详细的端口连接信息:lsof -i:18180方法2,直接显示连接的数量:netstat -an |grep 'ESTABLISHED' |grep -i '18180' |wc -l效果如下图:

2017-06-28 11:33:45 17359

原创 Unity使用visual studio(VS)保存文件指定编码和行尾

unity 已经逐渐转向使用 Visual studio编辑器。但是在win下,这个编辑器的默认编码和行尾,非常尴尬。每次都需要手动另存为,然后指定行尾。非常烦。后来查到这样一款VS的插件,发现还挺好用的,介绍给大家:插件的下载地址:http://www.grebulon.com/software/stripem.php在下载页面里,找到对应版本的插件,这里

2017-05-27 20:00:45 2876 1

原创 Unity实现缓慢的LookAt (缓慢旋转对着目标)

写在前面:    游戏中,经常遇到的情况是,需要角色对着敌人(或者一个指定方向),或者敌人对着角色。如果直接用LookAt() 去实现,那么非常生硬(立即就转过去对着了),也没有手感,所以需要写一个算法,来解决这种情况。实现思路:    实现的办法有很多种,这里我用的是这种办法:1,记录转身前的角度。2,获得准备面向的角度,(就是LookAt() 之后的那个角度)。

2017-05-09 14:35:29 15107 2

原创 Python-Snappy的安装 以及报错解决

直接使用pip install ,会报错:    cc1plus: warning: command line option "-Wstrict-prototypes" is valid for Ada/C/ObjC but not for C++    snappymodule.cc:31:22: error: snappy-c.h: No such file or directory

2017-04-14 15:25:28 12837 1

原创 使用Python和C#对比跨语言压缩算法库LZ4, Snappy, LZO, gzip, glib

写在前面:    在游戏编程中,数据的处理部分,经常会遇到这样的需求:    1,服务器端(后端)传给客户端(前端)的数据需要压缩,以节省流量,加速游戏数据通信效率。    2,这种压缩/解压算法(库)必须尽量少的占用CPU资源,也就是说,压缩解压都要快!游戏卡不得!    3,这种压缩/解压算法(库)需要跨语言(有点像网络协议)。因为大多数情况下,后端和前端不是一种开发语言。

2017-04-14 12:37:38 4892 7

原创 腾讯云服务器申请SSL证书, 配置Nginx, 实现HTTPS

1,首先去腾讯云,申请SSL证书。我们这里申请的是免费的SSL,免费的可以用一年。收费的有点贵,5000起。2,按步骤申请后,得到四种主流web服务器的证书,如下:这里我们使用的是Nginx的证书:3,把证书上传到Linux服务器中。这里我新建一个了目录: /home/key_dir/ ,然后把这俩证书文件放进去。4,更改 nginx.conf 配置,使HTTPS生效:server { li...

2017-03-14 11:01:02 12382 1

iTween unity插件

将资源解压 放入unity工程中Assets下的Plugins文件夹下即可 需要unity4 3以上 Version: 2 0 46 2 May 31 2014

2014-09-23

litjson-0.7.0

Litjson的源码包。解压后把src下的源码取出,放在unity的Plugins文件夹下即可使用litjson处理json

2014-09-23

Unity中文API(3.30f4)

基于Unity 3.30f4 版本。unity圣典出品。 该版本较老,最后修改日期为2011年3月27日。

2013-10-22

wince6.0模拟器-win7可用

1,解压。 2,运行SDMMC 800.BAT 3,菜单栏:【文件】--配置--选择文件夹 4,在桌面:【我的设备】--SDMMC 5,找到对应要运行的程序,即可模拟。

2013-09-27

LitJson源码--cs文件

从google开源项目LitJson上取出的LitJson源码。为纯cs文件。将其解压,放到你的项目中即可使用LitJson库了。例如:unity不支持json的处理,把解压的文件放到Unity3d的assets中的plugins目录下,即可在项目中using LitJson了。

2012-10-18

unity官方换装例子

unity的官方换装例子:【Character Customization】,Requires Unity 3.1.0 or higher。留着自己备忘的。

2015-03-30

Stackless Python 并发式编程介绍.CHM

我刚才发了一个,下来不能看。对不起大家了。重发。 下载后不能看的解决方法是:右击文件--属性--解除锁定。就可以正常显示了。

2009-09-21

Stackless Python 并发式编程介绍

我在网上找的《Stackless Python 并发式编程介绍》做成了CHM帮助文档。拿出来共享下: Stackless Python 是Python编程语言的一个增强版本,它使程序员从基于线程的编程方式中获得好处, 并避免传统线程所带来的性能与复杂度问题。Stackless为Python带来的微线程扩展,是一种低开销、轻量 级的便利工具,如果使用得当,可以获益如下: + 改进程序结构 + 增进代码可读性 + 提高编程人员生产力 ……

2009-09-21

常城的留言板

发表于 2020-01-02 最后回复 2020-01-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除