RxTool(Android工具库)
前言
所谓:工欲善其事必先利其器! RxTool 是 Android 开发过程经常需要用到各式各样的工具类集合,虽然大部分只需谷歌一下就能找到。 但是有时候急需使用却苦苦搜寻不到,于是整理了自己平常用到的工具类,以便以后的使用。
★★★★★
★★★
★★
★
★
★
★
★
关键词
Android开发人员不得不收集的工具类集合
支付宝支付
微信支付(统一下单)
微信分享
Zip4j压缩(支持分卷压缩与加密)
一键集成UCrop选择圆形头像
一键集成二维码和条形码的扫描与生成
常用Dialog
WebView的封装可播放视频
仿斗鱼滑动验证码
Toast封装
震动
GPS
Location定位
图片缩放
Exif 图片添加地理位置信息(经纬度)
蛛网等级
颜色选择器
ArcGis
VTPK
编译运行一下说不定会找到惊喜
我的运行环境
Android Studio 3.6
Build #AI-192.7142.36.36.6200805, built on February 12, 20 ...
独立游戏的成功之母
前言🎲 独立游戏的高失败率与成功秘诀
为什么这款游戏会失败?或者这款,或者那款?感觉是五五开。如果你开发独立游戏,完全不知道骰子会怎么落,情况只会更糟。当你意识到只有 4%的游戏能盈利,这概率简直糟糕透了!
但有些却成功了,所以我为什么不能?我……这就是老生常谈的问题。肯定有方法在其中,某种能让游戏畅销的秘诀。
正如本杰明·安德森所说,如果你在寻找独立游戏开发大师,有制胜法宝或简单技巧,想成为成功开发者——然而,存在经过验证的商业流程,遵循后可大幅降低失败风险,确保独立游戏具备成功潜力的基础步骤。
正文💡 转变热情:从想法到开发过程
这一切始于转变你的热情。所有开发者遇到的第一个问题,就是过于专注想法。充满热情的项目,通常以他们热爱的游戏为模板。这些开发者初期很顺利,梦想游戏驱动他们前进,但随后遇到一些障碍。这些开发者意识到编程很难,或发现自己不够艺术,或音乐不够出色。无论怎样,自我怀疑的感觉涌上心头。这些曾经热情的开发者陷入“冒名顶替综合征”,觉得自己无法完成,或游戏开发不适合自己。
即使完成游戏的开发者也常犯错,因为当游戏上线无人问津时,他们选择放弃,认为自己是失败者。这种心 ...
Docker中MongoDB数据库的备份与恢复
前言在实际开发和部署过程中,我们经常需要在Docker环境中管理MongoDB数据库。本文将详细介绍如何在Docker中备份和恢复MongoDB数据库,并解决在此过程中可能遇到的各种问题。
正文1. MongoDB数据库导出1.1 导出工具选择
工具
格式
适用场景
数据保真度
mongodump
二进制BSON
完整备份/迁移
高,保留所有数据类型
mongoexport
JSON/CSV
数据分析/交换
可能损失部分数据类型
1.2 使用mongodump进行完整备份1234567891011# 在Docker容器内执行mongodumpdocker exec -it <mongodb_container_name> mongodump -h 127.0.0.1:27017 --authenticationDatabase=admin -u <username> -p <password> -d <database_name> -o /tmp/mongodb_backup --gzip# 在我本机使用的命令docke ...
Unity多线程渲染导致部分手机崩溃
前言测试环境:
Unity2021.3.24f1
崩溃堆栈Logcat
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179 E *** *** *** *** *** *** *** ** ...
好用的CDN之jsDelivr
前言CDN的全称是Content Delivery Network,即内容分发网络。CDN是构建在网络之上的内容分发网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。CDN的关键技术主要有内容存储和分发技术。——百度百科
由于某些原因,很多公用免费的 CDN 资源在中国大陆并不很好用,就算是付费的,也有一定的限制,例如每天的刷新次数有限之类的。那有没有一款造福人类的,或者造福中国大陆的公用 CDN 呢?
正文jsDelivr先看看官方的介绍:
这是在中国大陆唯一有 license 的公有 CDN,而且实际使用中的访问速度也是极快的(虽然官网打开速度慢
与 Github、NPM、WorldPress 整合官网地址:https://www.jsdelivr.com 没梯子访问可能有点慢,不过CDN的节点是很快的 可以引用的资源包括NPM、github、wordpress的所有资源,github可以是任意体积小于50M的仓库。
以github为例,只需要通过符合 JSDelivr 规则的 ...
Unity坐标系统
前言本文会详细介绍三维软件中7种坐标的特点与关系,还有在脚本编辑和shader系统中的使用方法后续更新
正文不同空间中坐标的转换方法七种坐标系简介
unity 使用的是左手坐标系,即:↑=Y,↓=-Y,前=Z,后=-Z,←=-X,→=X。总共有七种坐标系,分别是模型坐标、世界坐标、观察坐标、裁剪坐标、屏幕坐标、ui坐标,uv坐标这七种坐标会按照一定顺序转换在程序中运行,实际上这就是模型从计算到在屏幕上显示的过程。
一 模型坐标
Local Space (模型坐标):就是一个模型自己的坐标,如果该模型下有子模型,则子模型也拥有自己的模型坐标,多个子模型在父模型下共享父坐标。坐标:模型原点为(0,0)需要说明的是一个模型坐标的原点位置在创建模型的时候就定义好了。如果需要更改只能在blender或3dmax等建模软件中设定。unity是不能设置模型坐标原点的。获取方式:在unity脚本中:transform.localPosition在unity shader中:顶点着色器默认输入的就是模型坐标
二 世界坐标
World Space(世界坐标):场景中的一切物体,包括模型,灯具,相机都共 ...
Unity的ShaderLab着色器入门
前言如果你对cg glsl hlsl 顶点着色器 片段着色器 表面着色器 固定渲染管线 等等有所疑惑,或是想学会unity的渲染,看这一篇就足够了。另外我博客的shader分类中还有很多shader教程和源码,每篇源码都有实现思路、语法功能注释,还在不断更新添加中。感兴趣的请自行查看
正文让vs支持shader点击vs的工具>扩展和更新>联机>visual studio marketplace搜素shader点击下载重启vs弹出installer,点击修改 即可。
一,基础知识关于着色器语言与Shader Lab
着色器语言有三种:hlsl(DirectX)glsl(OpenGL)cg(支持以上两种)Shader Lab 是unity封装了cg、hlsl、glsl的unity专有着色器语言。shaderlab具有跨平台、图形化编程、便于着色器与unity通信等优点。在unity2018.3.5f以后版本,可以使用图形化工具shader graph来大幅缩减shader编程成本,使这个令人头疼的语言走入寻常百姓家。。。。。但作为一个unityer最好具有基本的Shade ...
C#中ReadOnly和Const的区别
前言这里是前言介绍。
C#基本知识点-Readonly和Const的区别目录
什么是静态常量(Const)和动态常量(Readonly)
静态常量(Const)和动态常量(Readonly)之间的区别
动态常量(Readonly)被赋值后不可以改变
总结
什么是静态常量(Const)和动态常量(Readonly) 先解释下什么是静态常量(Const)以及什么是动态常量(Readonly)。 ** 静态常量(Const)是指编译器在编译时候会对常量进行解析,并将常量的值替换成初始化的那个值。 ** 动态常量(Readonly)的值则是在运行的那一刻才获得的,编译器编译期间将其标示为只读常量,而不用常量的值代替,这样动态常量不必在声明的时候就初始化,而可以延迟到构造函数中初始化。
静态常量(Const)和动态常量(Readonly)之间的区别静态常量(Compile-time Constant)
动态常量(Runtime Constant)
定义
声明的同时要设置常量值。
声明的时候可以不需要进行设置常量值,可以在类的构造函数中进行设置。
类型限制
只能修饰基元类型 ...
Unity粒子特效的适配
前言最近在工作中使用粒子特效是发现了两个问题
1. 美术提供的粒子特效没有根据屏幕分辨率自适应调整大小
2. 粒子特效的层级比较奇怪
正文粒子特效自适应在Unity编辑器开发中,使用的是 1080*1920 的分辨率,粒子特效大小看起来完美契合。
在打包运行在手机上时,因为手机的分辨率为 1440*2960,粒子特效就明显大于了UI界面。
解决办法:
将粒子特效的 Scaling Mode [缩放模式] ,改为 Hierarchy [跟随父节点缩放]。
注意,改变了缩放模式之后,运行时会发现粒子变得特别小,这是因为Unity重置了该粒子特效的大小,只需要重新调整大小即可。
因为我是在FGUI的基础上穿插使用粒子特效,因为 FGUI 与 Unity 的比例不一致,比例为1:100,所以粒子特效需要将缩放比放大100倍。
Scaling Mode 为 Local 时不会有 FGUI 的比例问题,但是会有分辨率不适配问题,两害取其轻,所以选用 Hierarchy 模式。
1effect.transform.localScale = Vector3.one * 100;
粒子 ...
《守望先锋》架构设计和网络同步
前言《守望先锋》2017 GDC系列的分享前几年给了我很多帮助,尤其是kevinan大神的翻译更让我受益良多,如今我再想温习一下相关技术却发现很多网络上的文章图片都已经坏掉了,故在此收集网络资源发布重置版,当成备份。
重制版内容:新增多级标题,方便分块阅读,部分图片已由本人重置,一些必要的地方我录制了Gif图,方便观看。
全系列链接:《守望先锋》GDC2017技术分享精粹重制版总目录
原视频链接:https://www.youtube.com/watch?v=W3aieHjyNvw&t=2886s&ab_channel=GDC
ECSECS概述哈喽,大家好,这次的分享是关于《守望先锋》(译注:下文统一简称为Overwatch)游戏架构设计和网络部分。老规矩,手机调成静音;离开时记得填写调查问卷;换下半藏,赶紧推车!(众笑)
我是Tim Ford,是暴雪公司Overwatch开发团队老大。自从2013年夏季项目启动以来就在这个团队了。在那之前,我在《Titan》项目组,不过这次分享跟Titan没有半毛钱关系。(众笑)
这次分享的一些技术,是用来降低不停增长的代码库的复杂度 ...
