小编Mak*_*rgy的帖子

std :: tuple_cat,但仅包含唯一元素

我需要一个constexpr非常类似于的函数std::tuple_cat,但是与其将所有元素合并为一个元组,而不必将所有元素合并到一个元组中,而是仅在尚未添加该类型的情况下,才需要添加该元素。

将谓词传递进来std::tuple_cat会很好,但是不存在这样的API(令我非常沮丧)。我已经看到了几种使用类型特征来查找合并类型的方法,但我还没有完全理解这些方法,但是没有任何形式的constexpr函数。我不确定如何将所有内容放在一起,尽管我确定可以做到。

像这样:

std::tuple<int, short, char> First;
std::tuple<short, float> Second;
std::tuple<int, double, short> Third;

std::tuple<int, short, char, float, double> Result = tuple_cat_unique(First,Second,Third);
Run Code Online (Sandbox Code Playgroud)

c++ templates tuples template-meta-programming c++17

10
推荐指数
1
解决办法
311
查看次数

有效地为地形物理提供几何图形

我现在一直在研究游戏引擎中地形系统的不同方法,试图熟悉这项工作。许多细节看起来很简单,但我对一个细节很感兴趣。

出于性能原因,许多地形解决方案利用着色器来生成部分或全部几何体,例如顶点着色器来生成位置或用于 LoD 的曲面细分着色器。起初我认为这些方法专门用于不关心物理模拟的渲染。

我这么说的原因是因为据我目前对着色器的理解,着色器计算的结果通常会在帧结束时被丢弃。因此,如果您严重依赖着色器,那么在您可以访问几何信息并将其发送到另一个系统(例如在 CPU 上运行的物理系统)之前,几何信息就会消失。

那么,我对着色器的看法是错误的吗?您可以存储它们生成几何图形的结果以供其他系统访问吗?或者我是否被迫将地形几何保留在 CPU 上,而将着色器留给其他细节?

c++ terrain game-physics

5
推荐指数
1
解决办法
1268
查看次数

如何禁止Xcode生成以cmake中的构建配置命名的文件夹?

我有一个cmake配置,适用于Windows和Linux上的项目.我们现在正在修改MacOS,我们正处于Xcode吐出库的地方,这些库构建了一个与我们定义的目录不同的目录.例如,它放在〜/ bin/Debug中,而不是放在〜/ bin中.最好的我可以告诉Xcode正在将自己的文件夹添加到路径中,我不希望这样.

如何在我的cmake配置中禁用Xcode?

xcode cmake

4
推荐指数
1
解决办法
1090
查看次数