![](https://img-blog.csdnimg.cn/abdffef7f9334b5087b15c8bc548b387.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
游戏开发经验
游戏踩坑心得
ShallsenSalt
这个作者很懒,什么都没留下…
展开
-
Shader学习笔记_1
1.渲染流水线应用阶段->几何阶段->光栅化阶段1.1应用阶段的三个任务:准备场景数据(摄像机位置、模型、光源)粗粒度的剔除(剔除不可见物体)设置渲染状态重点是:输出渲染图元1.2几何阶段:将顶点坐标变换到屏幕空间(二维顶点坐标、顶点深度值、着色)1.3光栅化阶段:决定哪些像素应该被绘制在屏幕上2.DrowCall由CPU发起GPU获取的命令GPU将DrowCall指定的图元,根据其材质、纹理、着色器和顶点数据来计算,将其输出3.顶点着色器(Vertex原创 2022-05-08 13:33:32 · 59 阅读 · 0 评论 -
string.Format多个参数(数组)使用
//明确个数的情况,比较好处理string str = "{0}xx{1}xx{2}";string.Format(str,param1,param2,param3);//但有时也会遇到str有n个不确定的参数string str = "{0}xx{1}...{n}"string[] m_params;m_params = GetParams() //通过读表等方法获取到参数列表string.Format(str,m_params);//m_params必须是字符串数组,否则会报错//m_原创 2022-04-29 17:26:35 · 4197 阅读 · 0 评论 -
c# list.sort 不稳定排序变为稳定排序(一)
结论如有错,请大佬批评指正~稳定排序:单次排序数据较少,用插入排序单次排序数据较大,用List.Sort的定制版(自己改一下)可以参考下图,几百以内可定义为数据较少,上千上万可认为数据较大1.起因因为List<T>的方便性,我在项目中常常使用,虽说知道有一定性能消耗,但没有具体研究过,直到(直到踩坑 )…在一个需要频繁排序,且需要是稳定的情况下,List.Sort()不再继续适用了。2.可能的解决方法一番查资料、翻书后,要么使用稳定且较快速的插入排序(含改进和二分搜索.原创 2022-05-02 18:46:03 · 1662 阅读 · 0 评论 -
C#反射_从简单例子出发
最近复习知识发现自己在C#反射这块搞得不是很清楚,查了很多资料,发现讲原理讲的多,举的示例都很复杂,自己研究了半天,总结出用1个简单的小示例作为从出发点:便于对反射使用方法的记忆,掌握了基本使用方法也更有利于举一反三,学习未来可能遇到的高级用法dll动态加载流程0.准备测试用例0.10.2using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Thre原创 2022-02-16 12:25:31 · 131 阅读 · 0 评论 -
AB包简单加密,offset加密
offset加密0.简单建个场景:Scene:1个GameObject,1个UIAssets:1个图片,1个Prefab,1个材质1.普通打包【未加密】AssetStudio验证游戏加载验证2.AB包前加入乱码 2.1 获取原AB包的HashCode 2.2 提取HashCode作为参数计算偏移量offset:for (int i = 0,iMax = hashchar.Length; i < 3; ++i){ offset += (int)hash原创 2022-04-23 23:41:05 · 2664 阅读 · 0 评论