楼主: buck

四零大龄程序员的求职面试经历

[复制链接]

2

主题

21

回帖

55

积分

注册会员

积分
55
 楼主| 发表于 2025-7-5 13:48:11 | 显示全部楼层
ue转小游戏

市面上小游戏开发用unity和cocos的比较多,我们公司大部分项目是ue,是否能转是个未知数,我花了半年时间证明这条路是可以的,首包(10m)和代码包大小(14m)可以做到跟unity差不多,具体做法是,去掉默认打包打出来的一些资源,去掉一些编译选项,比如如果不用phyx的话,也可以省不少。
我要说一句 收起回复
回复

使用道具 举报

2

主题

21

回帖

55

积分

注册会员

积分
55
 楼主| 发表于 2025-7-5 13:48:29 | 显示全部楼层
那么问题来了,为啥市面上没人用ue做小游戏?甚至ue官方都不支持?不知道是否ue开发难度大
我要说一句 收起回复
回复

使用道具 举报

2

主题

21

回帖

55

积分

注册会员

积分
55
 楼主| 发表于 2025-7-5 13:48:48 | 显示全部楼层
手机gpu和pcgpu区别
pc gpu主要是IMR (Immediate Mode Rendering),

每次都写framebuffer和depthbuffer,优点是可以处理大量几何体,可以

手机gpu主要用tilebasedrendering
我要说一句 收起回复
回复

使用道具 举报

2

主题

21

回帖

55

积分

注册会员

积分
55
 楼主| 发表于 2025-7-5 13:49:26 | 显示全部楼层
渲染到tiledbuffer,还使用hsr提出不渲染几何体,优点是节省带宽,提高性能,但是有分块有开销,尤其是几何体太多的话代价很大,而且不支持通用并行计算。tbr高度依赖本地缓存,如果缓存经常失效就没法优化了,比如一些高级技术如ao,gi,光追等高级技术都需要额外数据计算tile结果,这个时候本地缓存失效。

总结下:移动端几何体少而且没有复杂技术用tbr可以减小带宽使用,提升效率
我要说一句 收起回复
回复

使用道具 举报

2

主题

21

回帖

55

积分

注册会员

积分
55
 楼主| 发表于 2025-7-5 13:49:43 | 显示全部楼层
lua内存优化
这个问题还是没有头绪,在我们之前项目(ue)中,这种问题都是因为游戏中object太多了,把object降下去基本就搞定了。面试官的问题是加入一个项目lua占用内存很大,怎么办,可能第一个还是还是object数量太多了。如果object数量不多呢?
我要说一句 收起回复
回复

使用道具 举报

2

主题

21

回帖

55

积分

注册会员

积分
55
 楼主| 发表于 2025-7-5 13:50:01 | 显示全部楼层
修改lua内存分配器,统计各种内存大小?tbl,string,userdata,upvalue,proto

实在不行把每一个内存分配都记录下来,用分配栈做索引,看哪里分配最多?
我要说一句 收起回复
回复

使用道具 举报

2

主题

21

回帖

55

积分

注册会员

积分
55
 楼主| 发表于 2025-7-5 13:50:18 | 显示全部楼层
lua字节码优化
这个没有头绪,怎么优化呢?我们之前使用确实字节码很大,当然,跟texture比也就算不了什么了,也就没考虑。

采用类似js的方式?把字节码中用到所有字符串代替为较短的字符?
我要说一句 收起回复
回复

使用道具 举报

2

主题

21

回帖

55

积分

注册会员

积分
55
 楼主| 发表于 2025-7-5 13:50:34 | 显示全部楼层
hdr
什么是hdr,hdr怎么映射会ldr,这个映射方式有多种,我直接答忘了,可能下次还会这么回答,毕竟有很多种方式,各有各的特点。

其实这个问题比较简单,问的更多的是什么是tonemapping,tonemapping就是把计算的颜色空间映射到显示的颜色空间,当然最基本的就是hdr到ldr,其实pbr里面还有更复杂的。
我要说一句 收起回复
回复

使用道具 举报

2

主题

21

回帖

55

积分

注册会员

积分
55
 楼主| 发表于 2025-7-5 13:50:51 | 显示全部楼层
三角形渲染小于一个像素会有一个问题
这个问题在游戏中不应该出现,如果发生了那就是lod做的不好,需要修改lod,具体会有什么问题查了下是这样的:
我要说一句 收起回复
回复

使用道具 举报

2

主题

21

回帖

55

积分

注册会员

积分
55
 楼主| 发表于 2025-7-5 13:51:07 | 显示全部楼层
1.光栅化效率低下
每个亚像素三角形仍需遍历整个光栅化管线
产生大量无效或重复的片段处理
现代GPU的2x2像素quad渲染方式导致额外浪费(即使三角形只覆盖1个像素)
我要说一句 收起回复
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表