- 博客(5)
- 收藏
- 关注
原创 C++:使用shared_ptr智能指针构造对象方法不同导致效率问题
make_shared分配的内存足够大,可以同时存储对象本身和shared_ptr所需的控制信息(如引用计数)。在引用计数机制中,每个动态分配的对象都有一个与之关联的计数器,这个计数器记录了当前指向该对象的指针数量。因此,std::make_shared是推荐的方式,用于创建由shared_ptr管理的对象,因为它更高效、更简洁,并且在多线程环境中更安全。😝代码背景:代码中遇到了使用智能指针shared_ptr构造对象,不同的方法会有不同的效率优劣,如下。第二行代码的效率会更高。
2024-05-24 21:38:21
899
1
原创 2024西山居Seed训练营游戏开发
编程题有点儿小难,但其实是很常见的考题55奈何太菜了没做出来,看来回去还要恶补知识,多敲代码。蹲一个后续不知道能不能进面。2.客户端与服务端数据交换,由于不同平台会编译成不同结果,用什么指令保证编译一样。总体题目偏基础,涉及计算机图形学、unity、数据结构、C++等。题目构成:单选、不定项选择、填空题、问答题、编程题。2.IO什么什么的 完全不会就没写了。1.光线追踪算法的计算量大在哪。2.unity内置函数生命周期。2.渲染管线可编程部分。1.游戏卡顿怎么优化。
2024-04-01 00:45:00
470
原创 FlowMap实现流动效果
什么是Flow Map?Flow Map的实质是一张记录了2D向量信息的纹理。Flow map上的颜色(通常为RG通道)记录该处向量场的方向,让模型上某一点表现出定量流动的特征。通过在shader中偏移uv再对纹理进行采样,来模拟流动效果。在UE4相对与unity中uv坐标翻转了绿通道,所以制作flowmap的时候需要注意...
2022-02-24 19:38:14
1279
原创 凹凸映射中的法线纹理贴图
凹凸映射(bump mapping)凹凸映射的目的:使用一张纹理来修改模型表面的法线,让模型看上去“凹凸不平”。主要有两种方法:一、高度纹理来模拟表面位移,得到一个修改后的法线值,称为高度映射(height mapping);二、另一种方法是使用一张法线纹理(normal map)来直接存储表面法线,这种方法称为法线映射(normal mapping)法线映射(Normal Mapping)描述:Normal Map是一张存有物体局部表面法线信息的一张贴图, 也就是我们常见的类似于一张浅蓝紫
2022-01-23 12:02:41
1060
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人