Mercury's Blog

Always playing around

某玩家玩一个游戏:初始时,系统均匀随机生成 \(n\) 元全排列序列 \(s_n\),然后该玩家对序列进行若干次如下操作:

  • 选择 \(i, j \in [1, n]\),将序列中第 \(i\) 个和第 \(j\) 个元素置换。

若该玩家能在至多 \(m\) 次操作后将序列变为唯一顺序序列 \((1,2,\dots ,n)\),则称操作成功。求:

  • 操作成功的概率 \(p_{n,m}\)
  • \(p_{n,m}=1\) 时,直到操作成功,所需操作的期望次数 \(E_{n}\)
Read more »

本系列实验是笔者参与2023腾讯游戏课题的一部分,代码已开源

实验背景

渲染流程中存在许多参数。游戏开发流程中,将渲染结果调节至与原画美术风格或参考结果一致的过程,需要大量技术美术人员的工作。例如:

  • 给定一个现实中的材质球的照片,或离线渲染的参考结果,如何调节渲染中材质的各项参数,使得游戏中的实时渲染结果与这些参考最接近?
  • 对于图像后处理任务,给定美术色调风格,如何调节色调映射和白平衡等过程中的各项参数,使得生成图像与美术参考最接近?
  • 再如,给定高端机型上的参考结果,如何优化低端机型上低端光照模型的参数,使得渲染结果与参考最接近?

这些问题长久以来依赖人工手动调参,是时候将这个过程自动化了。

Read more »

本系列实验是笔者参与2023腾讯游戏课题的一部分,代码已开源。 本文是对 过去的旧文 的翻新。

实验背景

从实验 1 中我们已经知道,可微渲染可以优化的对象除了纹理贴图,还有模型的几何信息等。在游戏中,模型几何常用三角网格表示,可优化的对象包括顶点位置、边拓扑关系、UV 和法线,以及可能包含的蒙皮数据。

在游戏模型资产优化任务中,有一类很常见的任务是 LOD 的自动生成。位于相机远处,或在低端机型上显示的模型,游戏程序将会自动选择低精度(LOD 级别高)的模型,以减轻渲染压力。传统的基于几何处理的 LOD 低模自动生成算法(保 UV 或不保 UV)已经比较成熟,但它们所满足的指标往往是固定的,难以动态适配具体的游戏项目和渲染流程。

为此,可微渲染技术应运而出,根据相应的渲染流程,在迭代训练下自动生成匹配的,简化的模型拓扑,并且保持模型 UV。这样生成的低模自然也是理论上最优的。

Read more »

本系列实验是笔者参与2023腾讯游戏课题的一部分,代码已开源

实验背景

渲染过程是相机、场景二元组到图像的映射。在许多游戏应用中,往往会用到 LOD 技术,以减轻屏幕中小目标的渲染压力。采样小像素目标的纹理时,往往使用 mipmap 技术,主要是为了避免采样精度不高导致的摩尔纹等问题。

不过,本次实验解决的纹理贴图 LOD 问题与采样精度无关,它的背景主要是在低端设备上在达到性能要求,并且最大程度上保持贴图的高频细节。

Read more »

某种细胞每回合均匀随机地选择一项:

  • 无变化
  • 自我毁灭
  • 增殖 \(1\) 个相同的自身
  • 增殖 \(2\) 个相同的自身

现初始有 \(n\) 个细胞,求最终细胞数为 \(0\) 的概率。

本题只有一个吸收壁,但有可能吸收不了。

Read more »

甲、乙两人玩一个反复横跳游戏。首先决定先手、后手,以及固定值 \(a, b, S_1\)。随后的每一轮,第 \(i\) 轮依次进行如下操作:

  • 获取 \(X_i \sim U(0, 1)\),计算 \(S_{2i} = S_{2i-1} + X_i\)。若 \(S_{2i} \geq a\),则先手获胜,游戏结束。
  • 获取 \(Y_i \sim U(0,1)\),计算 \(S_{2i + 1} = S_{2i} - Y_i\)。若 \(S_{2i+1} \leq b\),则后手获胜,游戏结束。

所有的 \(X_i, Y_i\) 都是独立同分布的。

  1. \(S_1 = 0, a = 1/2, b = -1/2\),求先手获胜的概率。
  2. \(a = 1/2, b = -1/2\),求 \(S_1\) 的值,使得先手和后手获胜的概率一致。
  3. (很困难)试着继续推广结论至更一般的 \(a, b, S_1\)
Read more »

现有 \(n\) 人参与投票游戏:设每人均匀随机地选择剩余 \(n-1\) 人的其中一人,将其序号投入投票箱,最后从投票箱中统计每人获得的票数。设没有获得任何票的人的数目为 \(X\),获得了至少两票的人的数目为 \(Y\)。求:

  • \(P(X=0)\)
  • \(P(X=1)\)
  • \(P(X=k)\)
  • \(E(X)\)
  • \(E(Y)\)
Read more »

为汉字中的“多音字”分类

一个汉字在不同场景下可能发不同音,占用不同的汉语拼音音位,它们就是所谓的“多音字”。本文将总结能够被收录入字典的多音字产生的原因。

Read more »

某公司年会举办抽奖活动,共有 \(n\) 名员工参加,共有 \(m\) 件奖品。员工当中,有 \(k\) 人获得了额外的中奖权重:

  • 抽奖前,拥有额外中奖权重的员工,会将自己的一个“分身”加入抽奖参与名单内。
  • 对每件奖品抽奖时,抽奖程序从未中奖的参与名单中均匀随机选取一位,选取到自身或自身的“分身”均算作同一员工中奖。如果拥有额外的中奖权重的员工中奖,那么参与名单中会同时移除其本身和其“分身”。

求拥有额外的中奖权重的员工的中奖概率。

Read more »
0%