gpt4 book ai didi

c++ - 3D 世界中 C/C++ 的好伴侣?

转载 作者:行者123 更新时间:2023-11-30 20:02:32 25 4
gpt4 key购买 nike

我不太相信 C/C++ 在某些情况下的表现,特别是在保持数学世界的方法简单高效时,我不知道如何解释这一点,因为我已经熟练了仅适用于其他 2 种语言:Python 和 Java(以及 www 世界的其他语言,如 html、js、php 等...),它们都与 C++ 完全不同,因为它们的设计方式。

我不喜欢的可能是语法和性能的混合,例如 C++ 本身不提供对矩阵或 vector 的支持,所有这些都归结为 double 和 float ,你需要始终关注什么您假设您正在这样做,因为二进制算术有时会给您带来意想不到的结果,并且由于您的矩阵不是原始类型,所以它被像任何其他自定义类一样对待,没有对数学进行任何特定的优化,即使它是“数学”并且有时可以优化。

我可能会重复一遍,但由于 C++ 它是我所知道的唯一编译语言,这对于某些性能来说是正确的,我无法真正将它提供的内容与其他语言进行比较,但 C++ 世界的某些方面是很麻烦,而且并没有真正满足我的需求,它可能是构建引擎的最佳语言和我的应用程序的最大部分,但我希望得到一些关于哪种语言可以成为 3D 应用程序中完美伴侣的建议基本上,这是一个包含大量数学知识的应用程序。

最佳答案

我不相信你的想法。

关于数学部分:我相信用原生 C++ 来做这件事很麻烦。然而,有许多可用的库可以帮助您以一种在开发和运行时性能方面都高效的方式进行数学计算。

例如,查看 Eigen library 。 Eigen 大量使用模板和编译器优化来充分利用您的数学。我还没有发现巨大的优化潜力(好吧,你总是可以通过使用处理器特定的优化(例如 BLAS)来获得一些,但这也可以使用 Eigen 来完成)。

不过,我不是 3D 部分的专家。

没有一种语言能够提供您自己可能需要的所有功能。这就是图书馆的用途。您应该能够找到适合您在 C++ 中遇到的大多数问题的库。

关于语法上的困难:我不知道你对C++的研究已经深入到什么程度了。我每天都会学到一些新东西 - 当我开始学习时,过去需要 10 行代码的事情现在可以用一行代码完成 - 不会损失性能或可读性,相反,通常会获得更清晰的代码。因此:一切都与经验有关。

关于c++ - 3D 世界中 C/C++ 的好伴侣?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13633657/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com