- 博客(25)
- 收藏
- 关注
原创 第一讲:Shader Forge
本人有个坏习惯,写完的代码没几天就忘了。所以以此博客来帮助自己回忆和记录一下。好了 不说废话 直接来内容。 首先你需要下载这Shader Forge这个插件。然后导入unity中。接下来是打开这个插件啦,这个就so easy了。点击window,有一个叫shader forge,再点击一下。你就会看见一个神奇的界面,这个就是shader forge操作界面。 此
2015-01-08 11:29:11 547
原创 Unity 图片计算
通过这个公式,我们可以大致估算出图片资源在Unity中占用的内存大小,从而进行合理的资源优化和管理。在Unity开发中,图片资源是非常重要的一部分,它们可以提高游戏的视觉效果和用户体验,但是也会占用大量的内存空间,影响游戏的性能和稳定性。因此,我们需要了解图片资源在Unity中占用的内存大小是如何计算的,以便优化我们的资源管理和加载策略。例如,我们有一张1024x1024的PNG图片,每像素占用4个字节,我们想要在Android平台上使用ETC2压缩格式,并且生成mipmap。
2023-03-28 16:23:34 472
翻译 unity性能优化之道
先共性性能优化,再兼容性方面的性能优化。但是这个解决慢的问题需要掌握三个前提。建议先ios,再优化android。Profiler常见的等待函数。
2022-10-27 13:57:09 482
翻译 unity编辑资源优化-物理
unity下的物理解决方案有哪些看项目设置2D的项目就用Physics 2D3D的项目就用Physics碰撞矩阵是这俩个设置的比较重要的一个地方。矩阵所有都勾选上是比较耗费性能的 ,这样就需要为每种项目设置不同的图层。
2022-10-27 10:50:07 453
翻译 unity编辑器创建资源优化UGUI
unity UI性能的四类问题Canvas负责管理UGUI元素,负责UI渲染网格的生成与更新,并向GPU发送DC指令。canvas绘制之前都需要一个合批的过程,如果canvas下的UI每帧保持不变,那么只需要合批一次,并且保存记录,下一帧还用这个结果。如果UI发生了变化,这是canvas需要重新匹配几何体,而这个canvas就会被diryt(脏标记),这是被标记的diryt的canvas就会触发Re-bacth。重新需要合批。Canvas Re-batch过程合批是多线程进行的。
2022-10-26 18:43:50 272
翻译 导入设置检查与优化
Hummannoid需要Kinematices骨骼重定向或anmatting等功能 只能用他。其他情况可以用Generic。一般在移动平建议用Generic,但是建议骨骼不要爆炸。一般情况下Genric比Huummannoid节省30%甚至更多的cpu时间。主要工作将外部资源导入分类,根据用途导入资源优化设置,并把这些工作做成流水线的方式去约束和管理项目,规范因为设置和导入造成性能的问题。合理的目录设计有助于资源分离,工作流的分配,打包方便。工程目录与Assets目录设置。
2022-10-26 16:01:25 138
翻译 unity纹理导入设置与优化
unity纹理基础概念:模型表面用来增加细节的位图图像。通常一个模型需要一张或者多张纹理。纹理需要材质着色器映射到表面。或者烘焙生成。纹理可以放到模型,ui ,精灵,地图等。
2022-10-26 14:52:58 596
原创 项目用到设计模式
设计模式六大原则目前不管是现有流行的设计模式还是我们不知道的设计模式,其实根本的都是围绕这个六大原则来的。用流程图简单讲解一下单一职责单一职责 开闭原则里氏替换原则继续用一个经理的悖论来解释一下.“正方形不是矩形”问题出现了,Rectangle类型的参数是不能被Square类型的参数所代替,如果进行了替换就得不到预期结果。因此,Square类和Rectangle类之间的继承关系违反了里氏代换原则,它们之间的继承关系不成立,正方形不是矩形。重写抽象矩形类作为父类,并实现 Figure
2022-06-23 18:37:40 783
原创 背包问题解决方案 贪婪策略--近优解 而不是最优解
2019最后一天 各位小伙伴加油啊 本周作业(12.30-1.12)本周作业内容如下:假设小偷有一个背包,最多能装20公斤赃物,他闯入一户人家,发现如下表所示的物品。很显然,他不能把所有物品都装进背包,所以必须确定拿走哪些物品,留下哪些物品。名称价格(美元)重量(kg)电脑 200 20收音机 20 4钟 175 10花瓶 50 2书 ...
2019-12-31 12:47:46 528
原创 五人分鱼
五人分鱼:# # A、B、C、D、E五人在某天夜里合伙捕鱼 最后疲惫不堪各自睡觉# # 第二天A第一个醒来 他将鱼分为5份 扔掉多余的1条 拿走自己的一份# # B第二个醒来 也将鱼分为5份 扔掉多余的1条 拿走自己的一份# # 然后C、D、E依次醒来也按同样的方式分鱼 问他们至少捕了多少条鱼# 假设有1~5条鱼。 由题意可知,如果是5条鱼是不够分的 所以直接从5开始,当然也可以从1开始de...
2019-12-31 11:06:08 532 1
原创 python 快速排序
#快速排序#快速排序的优化 主要是靠基准值的设定。基准值越合理 效率越高def qucikSort(listValue): if len(listValue) < 2: return listValue else: pivot = listValue[0] #选择基准 less...
2019-12-25 17:14:34 70
原创 python 翻转字典
#python翻转字典dic = {'a': 1, 'b': 2, 'c': 3, 'd': 4}#字典初始化tuple1 = zip(dic.values(), dic.keys())print(dict(tuple1))#字典推导式dic1 = {v: k for k, v in dic.items()}print(dic1)...
2019-12-25 17:13:27 633
原创 python 回文题
1编写:一个Python函数,用于计算一个数字(非负整数)的阶乘。函数接受数字作为参数2 编写一个Python函数,该函数将一个数字作为参数,并检查该数字是否为素数(返回True or False)3 编写一个Python函数,检查传递的字符串是否回文。from functools import reduceclass HomeWork: YINZI_NUM = 10 ...
2019-12-18 12:44:35 477
原创 打印出所有的"水仙花数"
打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。GenList = []ShuiXianHuanList = []#柯里化一下def GenListWrapper(fn):def _GenListWrapper(n=10):GenList = [i+1 for i...
2019-12-13 15:13:24 663
原创 输入某年某月某日,判断这一天是这一年的第几天?
判断了几种特殊服符号的去重,并且字母无效calendarList = [31,28,30,31,31,30,31,31,30,31,30,31]import reclass WhickDay:def __init__(self,date): # super().__init__() # #输入的年月格式为 1989/2/2 以后再补充其他的输入格式 self.d...
2019-12-13 14:08:48 145
原创 python面向对象
python面向对象的思想是和其他的一样,但是他们的写完和内部原理和其他的面向对象的不太一样我们先将一下通用的OOP类class:类是抽象的概念,万事万物的抽象,是一类事物的共同特征的集合,用计算机语言来描述类,就是属性和方法的集合对象instance,object:对象时类的具象,是一个实体面向对象的哲学1.一切皆对象2.对象是数据和操作的封装3.对象是对立的,但是对象这间可以...
2019-11-29 16:29:51 66
转载 unity 打包原理学习
一:AssetBundle介绍AssetBundle是将资源使用unity提供的一种用于存储的压缩格式打包后的集合,它可以存储任何一种untiy可以识别的资源,一般情况下AssetBundle的具体开发流程如下:创建AssetBundle,开发者在unity编辑器中通过脚本所需要的资源打包成AssetBundle文件上传服务器。开发者将打包好的AssetBundle文件上传至服务器中。使...
2019-08-20 13:28:13 1103
转载 值类型和引用类型
值类型和引用类型首先,什么是值类型,什么是引用类型值类型 直接存储数据。引用类型持有的是数据引用.值类型的实例通常是在线程栈上分配的(静态分配),但是在某些情形下可以存储在堆中。引用类型的对象总是在进程堆中分配(动态分配)值类型:byte,short,int ,long.float,double.decimal,char,bool,struct值类型变量声明后,不管是否赋值,编译器...
2019-08-08 17:33:48 43
转载 c++从入门到跑路(1)
此文章主要是为了记录自己和激励自己学习c++。如果有问题不吝赐教。c++指针要想成为一名优秀的c++程序员,学习指针是很有必要的正如你所知道的,每一个变量都有一个内存位置,每一个内存位置都定义了可以使用连子号(&)运算符访问的地址,它表示了在内存中的一个地址。什么是指针?指针是一个变量,其值为另一个变量的地址,即,内存位置的直接地址。就像其他变量或常量一样,你必须在使用指针存储...
2019-08-05 18:13:30 184 1
转载 设计模式之行为型模式
设计模式行为型模式观察者模式行为型模式行为型模式是对在不同的对象之间划分责任和算的抽象化。行为型模式不仅仅关注类和对象的结构,而且重点他们之间的相互作用。通过行为型模式,可以更加清晰的划分类与对象的职责,并研究系统在运行时实例对象之间的交互。在系统运行时,对象并不是孤立的,它们通过相互通信与协作完成某些复杂功能,一个对象在运行时也将影响到其他对象的运行。行为型模式分为类行为模式和对象行为模式...
2019-08-01 17:42:19 364
转载 设计模式之结构型模式
设计模式结构型模式适配器模式桥接模式装饰模式外观模式结构型模式结构型模式描述如何将类或者对象结合在一起形成更大的结构,就像搭积木,可以通过简单积木的组合形成复杂的,功能强大更为强大的结构结构模式可以分为类型结构和对象结构模式:类型结构模式关心类的组合,由多个类可以组合成一个更大的系统,在类结构模式中一般只存在继承关系和实现关系。对象结构模式关心类与对象的组合,通过关联关系使得在一个类中...
2019-08-01 13:28:35 117
转载 设计模式之创建型模式
设计模式简单工厂模式工厂方法模式抽象工厂模式简单工厂模式自我学习设计模式做的笔记1.1模式动机考虑一个简单的软件应用场景,一个软件系统可以提供多个外观不同的按钮(如圆形按钮、矩形按钮、菱形按钮等), 这些按钮都源自同一个基类,不过在继承基类后不同的子类修改了部分属性从而使得它们可以呈现不同的外观,如果我们希望在使用这些按钮时,不需要知道这些具体按钮类的名字,只需要知道表示该按钮类的一个参数...
2019-07-30 12:36:10 61
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人