c++ - 寻找合适的工具来编写 future 风格的 UI 项目

标签 c++ graphics 3d 2d

我一直受到动态的、 future 主义风格的用户界面的启发。我能描述的最好的是图形界面,例如最新的钢铁侠电影。

虽然我不会构建一个完整的应用程序,但我想制作一些我计划进行交互的动画片段。也许有一天把它们放在一起做更大的东西。不可否认,我将来会用于音频处理,但无论如何,这不是重点,因为我不确定这是动画/图形。

我知道可以在 Adob​​e After Effects 中制作此类动画。我只是很难思考要进行的过程(艺术性和可编程性)。

在我自己研究这个的过程中,我获得了 OGRE 3D 和 Blender 的基本经验。我已经在 OGRE 上导入并编译了网格,已经能够做一些基本的事情,比如围绕它移动网格。

我开始认为我可能以错误的方式处理这个问题,并且有更好的工具,或者如果 3D 对这些类型的动画来说太过分了,而 2D 就足够了并且可能提供更流畅的体验。

我无法理解这个过程,我想知道两件事:

1.)我无法理解的主要问题是如何获取静态图形来制作动画?网格是否保留来自 Blender 等程序的时间线,然后由 OGRE 等图形引擎读取时间线并播放它们?

最重要的是:

2.)我什至需要图形(网格)吗?大多数界面都是细边框框、文本和类似 LED 的透明颜色形状,可以动态移动以产生 future 主义效果。

请分享您的意见、建议以及任何您认为可以帮助我完成开发这些性感养眼糖果的事情!谢谢。

最佳答案

当你在电影中看到令人敬畏的 future 主义 UI 时,它们通常由

  • 基本原语
  • 去饱和的颜色,和/或一种色调
  • 透明度
  • 一两种很酷的字体
  • 高科技文字、图表或类似内容
  • 让事物看起来“生动”的简单动画、闪烁的灯光/文字和类似内容
  • 当然是触摸界面

也许你不能在触摸界面上做很多事情,但其余的并不是硬图形,而是精心制作的艺术品和以酷炫的方式组合简单元素的问题。

此外,我会研究 Adob​​e Photoshop 和花哨的纹理,而不是 Blender 和花哨的建模,因为您正在寻找花哨的 2D UI,而详细的 3D 模型并不是那么重要。尝试使用 photoshop(好吧,如果您想要免费的替代品,也可以使用 GIMP)可以帮助您发展艺术技能,并帮助您在 2D 表面上获得高科技、科幻的外观。

您知道,在尝试用代码解决这个问题之前,我会建议您制作一些您想要的风格的科幻壁纸。我想你会发现照片处理技巧和艺术眼光会在这里帮助你。看在上帝的份上,看看那些拥有你所针对的 UI 的电影(钢铁侠、少数派报告等),并分析它们到底是什么。像我在上面的列表中所做的那样分解它们。

至于“我应该使用哪些工具?”,我认为答案很简单:

  • OpenGL
  • Photoshop(或者 GIMP,如果你是一个挨饿的学生等等)
  • 编译器和工具链
  • 代码编辑器/IDE
  • 一杯

我看到它被标记为 C++,如果我可以这么说的话,它是编程语言的绝佳选择。

Ogre 是一个成熟的 3D 引擎,这很好,但并不完全针对您想要使用它的目的。你可能会发现你很难完成你想要完成的事情(免责声明:我没有在 Ogre 中尝试过这个,它可能很适合这个。然后,你最后一次看到 Ogre 在音频处理程序中使用是什么时候?)。我的建议是学习好的、简单的 OpenGL。这将使您拥有对 UI 的完全控制权,而不会以任何方式妨碍或限制您。它还是跨平台的,有据可查,并被全世界大量开发人员使用(也用于音频处理应用程序)。我看不出你怎么可能会出错。有趣的是,您可能不会花很长时间就可以熟练掌握它,开始开发一些非常漂亮的 UI。正如我提到的,它更像是一个艺术问题而不是编码问题。

顺便说一句,杯子是用来装咖啡的。 :)

关于c++ - 寻找合适的工具来编写 future 风格的 UI 项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4527519/

相关文章:

c++ - 不使用重新定义的符号时避免多定义链接器错误

java - 绘制输入的字符串

javascript - 计算螺旋半径,使螺旋中的模型位于平截头体内

algorithm - 连接点在空间中的位置

c++ - 使用 rand() 在除法表中生成数字

c++ - 防病毒软件将已编译的C++文件检测为木马

c++ - 在 C/C++ 中将数组拆分为 block

user-interface - 无障碍对比度与企业形象指南

c# - 如何更改 GraphicsPath 内的点的坐标?

3d - 将 .ply 文件导入到 unity 3D